Browse Source

接口修改

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@5913 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
yingp 9 years ago
parent
commit
b10b55ac7b

+ 31 - 2
src/main/java/com/uas/platform/b2b/v2/controller/EnterpriseController.java

@@ -6,9 +6,15 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.uas.account.entity.UserSpace;
 import com.uas.account.entity.UserSpaceDetail;
+import com.uas.platform.b2b.model.Enterprise;
+import com.uas.platform.b2b.support.SysConf;
 import com.uas.platform.b2b.v2.service.EnterpriseService;
+import com.uas.sso.common.util.HttpUtil;
+import com.uas.sso.common.util.HttpUtil.ResponseWrap;
 
 @Controller("v2.EnterpriseController")
 @RequestMapping(value = "/public/enterprise")
@@ -16,16 +22,39 @@ public class EnterpriseController {
 
 	@Autowired
 	private EnterpriseService enterpriseService;
+	@Autowired
+	private SysConf conf;
 
 	@RequestMapping(method = RequestMethod.POST)
 	@ResponseBody
-	public UserSpace save(UserSpace userSpace, UserSpaceDetail userSpaceDetail) {
+	public UserSpace save(UserSpace userSpace, UserSpaceDetail userSpaceDetail) throws Exception {
 		if (userSpace != null && userSpaceDetail != null) {
-			return enterpriseService.save(userSpace, userSpaceDetail);
+			Enterprise enterprise = enterpriseService.save(userSpace, userSpaceDetail);
+			userSpace.setDialectUID(String.valueOf(enterprise.getUu()));
+			// 为兼容以前模式,同时知会下管理系统。管理系统主要为了获取企业uu
+			try {
+				userSpace = syncToManager(userSpace, userSpaceDetail);
+				enterprise.setEnMasterId(Long.parseLong(userSpace.getDialectUID()));
+				enterpriseService.save(enterprise);
+			} catch (Exception e) {
+				e.printStackTrace();
+				throw e;
+			}
+			return userSpace;
 		}
 		return null;
 	}
 
+	private UserSpace syncToManager(UserSpace userSpace, UserSpaceDetail userSpaceDetail) throws Exception {
+		JSONObject formData = JSON.parseObject(JSON.toJSONString(userSpace));
+		formData.putAll(JSON.parseObject(JSON.toJSONString(userSpaceDetail)));
+		ResponseWrap res = HttpUtil.doPost(conf.getManageInner() + "/public/enterprise", formData);
+		if (!res.isSuccess())
+			throw new Exception(res.getContent());
+		else
+			return JSON.parseObject(res.getContent(), UserSpace.class);
+	}
+
 	@RequestMapping(method = RequestMethod.DELETE)
 	@ResponseBody
 	public void remove(UserSpace userSpace) {

+ 4 - 1
src/main/java/com/uas/platform/b2b/v2/service/EnterpriseService.java

@@ -2,10 +2,13 @@ package com.uas.platform.b2b.v2.service;
 
 import com.uas.account.entity.UserSpace;
 import com.uas.account.entity.UserSpaceDetail;
+import com.uas.platform.b2b.model.Enterprise;
 
 public interface EnterpriseService {
 
-	UserSpace save(UserSpace userSpace, UserSpaceDetail detail);
+	Enterprise save(UserSpace userSpace, UserSpaceDetail detail);
+
+	Enterprise save(Enterprise enterprise);
 
 	void delete(UserSpace userSpace);
 

+ 8 - 4
src/main/java/com/uas/platform/b2b/v2/service/impl/EnterpriseServiceImpl.java

@@ -24,7 +24,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 	private UserDao userDao;
 
 	@Override
-	public UserSpace save(UserSpace userSpace, UserSpaceDetail detail) {
+	public Enterprise save(UserSpace userSpace, UserSpaceDetail detail) {
 		Enterprise enterprise = getEnterprise(userSpace);
 		boolean isNew = false;
 		if (enterprise == null) {
@@ -50,8 +50,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 		enterprise.setEnType(detail.getType());
 		enterprise.setEnUrl(detail.getUrl());
 
-		enterpriseDao.save(enterprise);
-		userSpace.setDialectUID(String.valueOf(enterprise.getUu()));
+		enterprise = enterpriseDao.save(enterprise);
 
 		if (isNew) {
 			final Long enUU = enterprise.getUu();
@@ -62,7 +61,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 			}.start();
 		}
 
-		return userSpace;
+		return enterprise;
 	}
 
 	private Enterprise getEnterprise(UserSpace userSpace) {
@@ -85,4 +84,9 @@ public class EnterpriseServiceImpl implements EnterpriseService {
 		}
 	}
 
+	@Override
+	public Enterprise save(Enterprise enterprise) {
+		return enterpriseDao.save(enterprise);
+	}
+
 }