From 78a08b81c08fb718d3b868a61d53afbbc741358b Mon Sep 17 00:00:00 2001
From: 吴学文 <wuxuewen@wuxuewendeMacBook-Pro.local>
Date: 星期二, 07 四月 2020 22:29:01 +0800
Subject: [PATCH] 加入业主注册功能
---
Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java | 234 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 234 insertions(+), 0 deletions(-)
diff --git a/Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java b/Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java
index 55dcab9..771623e 100644
--- a/Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java
+++ b/Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java
@@ -1,8 +1,24 @@
package com.java110.api.bmo.user.impl;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.java110.api.bmo.ApiBaseBMO;
import com.java110.api.bmo.user.IUserBMO;
+import com.java110.core.context.DataFlowContext;
+import com.java110.core.factory.AuthenticationFactory;
+import com.java110.core.smo.user.IUserInnerServiceSMO;
+import com.java110.dto.user.UserDto;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.BusinessTypeConstant;
+import com.java110.utils.constant.CommonConstant;
+import com.java110.utils.constant.MappingConstant;
+import com.java110.utils.constant.UserLevelConstant;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import java.util.List;
/**
* @ClassName UserBMOImpl
@@ -14,4 +30,222 @@
**/
@Service("userBMOImpl")
public class UserBMOImpl extends ApiBaseBMO implements IUserBMO {
+
+ @Autowired
+ private IUserInnerServiceSMO userInnerServiceSMOImpl;
+
+ public JSONObject addStaffOrg(JSONObject paramInJson) {
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ORG_STAFF_REL);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONArray businessOrgStaffRels = new JSONArray();
+ JSONObject businessOrgStaffRel = new JSONObject();
+ businessOrgStaffRel.put("relId", "-1");
+ businessOrgStaffRel.put("storeId", paramInJson.getString("storeId"));
+ businessOrgStaffRel.put("staffId", paramInJson.getString("userId"));
+ businessOrgStaffRel.put("orgId", paramInJson.getString("orgId"));
+ businessOrgStaffRel.put("relCd", paramInJson.getString("relCd"));
+ businessOrgStaffRels.add(businessOrgStaffRel);
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessOrgStaffRel", businessOrgStaffRels);
+
+ return business;
+ }
+
+ /**
+ * 娣诲姞鍛樺伐
+ *
+ * @param paramInJson
+ * @return
+ */
+ public JSONObject addStaff(JSONObject paramInJson) {
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_STORE_USER);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONArray businessStoreUsers = new JSONArray();
+ JSONObject businessStoreUser = new JSONObject();
+ businessStoreUser.put("storeId", paramInJson.getString("storeId"));
+ businessStoreUser.put("storeUserId", "-1");
+ businessStoreUser.put("userId", paramInJson.getString("userId"));
+ businessStoreUser.put("relCd", paramInJson.getString("relCd"));
+ businessStoreUsers.add(businessStoreUser);
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessStoreUser", businessStoreUsers);
+
+ return business;
+ }
+
+ /**
+ * 娣诲姞鐢ㄦ埛
+ *
+ * @param paramObj
+ */
+ public JSONObject addUser(JSONObject paramObj, DataFlowContext dataFlowContext) {
+
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+ Assert.jsonObjectHaveKey(paramObj, "name", "璇锋眰鍙傛暟涓湭鍖呭惈name 鑺傜偣锛岃纭");
+ //Assert.jsonObjectHaveKey(paramObj,"email","璇锋眰鍙傛暟涓湭鍖呭惈email 鑺傜偣锛岃纭");
+ Assert.jsonObjectHaveKey(paramObj, "tel", "璇锋眰鍙傛暟涓湭鍖呭惈tel 鑺傜偣锛岃纭");
+ Assert.jsonObjectHaveKey(paramObj, "orgId", "璇锋眰鎶ユ枃鏍煎紡閿欒鎴栨湭鍖呭惈閮ㄩ棬淇℃伅");
+ Assert.jsonObjectHaveKey(paramObj, "address", "璇锋眰鎶ユ枃鏍煎紡閿欒鎴栨湭鍖呭惈鍦板潃淇℃伅");
+ Assert.jsonObjectHaveKey(paramObj, "sex", "璇锋眰鎶ユ枃鏍煎紡閿欒鎴栨湭鍖呭惈鎬у埆淇℃伅");
+ Assert.jsonObjectHaveKey(paramObj, "relCd", "璇锋眰鎶ユ枃鏍煎紡閿欒鎴栨湭鍖呭惈鍛樺伐瑙掕壊");
+
+
+ if (paramObj.containsKey("email") && !StringUtil.isEmpty(paramObj.getString("email"))) {
+ Assert.isEmail(paramObj, "email", "涓嶆槸鏈夋晥鐨勯偖绠辨牸寮�");
+ }
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_USER_INFO);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessUser", refreshParamIn(paramObj));
+
+ return business;
+ }
+
+ /**
+ * 娉ㄥ唽鐢ㄦ埛
+ *
+ * @param paramObj
+ */
+ public JSONObject registerUser(JSONObject paramObj, DataFlowContext dataFlowContext) {
+
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+ Assert.jsonObjectHaveKey(paramObj, "name", "璇锋眰鍙傛暟涓湭鍖呭惈name 鑺傜偣锛岃纭");
+ //Assert.jsonObjectHaveKey(paramObj,"email","璇锋眰鍙傛暟涓湭鍖呭惈email 鑺傜偣锛岃纭");
+ Assert.jsonObjectHaveKey(paramObj, "tel", "璇锋眰鍙傛暟涓湭鍖呭惈tel 鑺傜偣锛岃纭");
+ Assert.jsonObjectHaveKey(paramObj, "password", "璇锋眰鍙傛暟涓湭鍖呭惈password 鑺傜偣锛岃纭");
+
+
+ if (paramObj.containsKey("email") && !StringUtil.isEmpty(paramObj.getString("email"))) {
+ Assert.isEmail(paramObj, "email", "涓嶆槸鏈夋晥鐨勯偖绠辨牸寮�");
+ }
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_USER_INFO);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+
+ //paramObj.put("userId","-1");
+ paramObj.put("levelCd", UserLevelConstant.USER_LEVEL_ORDINARY);
+ //璁剧疆榛樿瀵嗙爜
+ String userPassword = paramObj.getString("password");
+ userPassword = AuthenticationFactory.passwdMd5(userPassword);
+ paramObj.put("password", userPassword);
+
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessUser", paramObj);
+
+ return business;
+ }
+
+
+ /**
+ * 瀵硅姹傛姤鏂囧鐞�
+ *
+ * @param paramObj
+ * @return
+ */
+ private JSONObject refreshParamIn(JSONObject paramObj) {
+ //paramObj.put("userId","-1");
+ paramObj.put("levelCd", UserLevelConstant.USER_LEVEL_STAFF);
+ //璁剧疆榛樿瀵嗙爜
+ String staffDefaultPassword = MappingCache.getValue(MappingConstant.KEY_STAFF_DEFAULT_PASSWORD);
+ Assert.hasLength(staffDefaultPassword, "鏄犲皠琛ㄤ腑鏈缃憳宸ラ粯璁ゅ瘑鐮侊紝璇锋鏌�" + MappingConstant.KEY_STAFF_DEFAULT_PASSWORD);
+ staffDefaultPassword = AuthenticationFactory.passwdMd5(staffDefaultPassword);
+ paramObj.put("password", staffDefaultPassword);
+ return paramObj;
+ }
+
+ public JSONObject modifyStaff(JSONObject paramObj, DataFlowContext dataFlowContext) {
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_MODIFY_USER_INFO);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessUser", builderStaffInfo(paramObj, dataFlowContext));
+
+ return business;
+ }
+
+ /**
+ * 鏋勫缓鍛樺伐淇℃伅
+ *
+ * @param paramObj
+ * @param dataFlowContext
+ * @return
+ */
+ private JSONObject builderStaffInfo(JSONObject paramObj, DataFlowContext dataFlowContext) {
+
+ UserDto userDto = new UserDto();
+ userDto.setStatusCd("0");
+ userDto.setUserId(paramObj.getString("userId"));
+ List<UserDto> userDtos = userInnerServiceSMOImpl.getUserHasPwd(userDto);
+
+ Assert.listOnlyOne(userDtos, "鏁版嵁閿欒鏌ヨ鍒板鏉$敤鎴蜂俊鎭垨鍗曟潯");
+
+ JSONObject userInfo = JSONObject.parseObject(JSONObject.toJSONString(userDtos.get(0)));
+
+ if (!paramObj.getString("oldPwd").equals(userDtos.get(0).getPassword())) {
+ throw new IllegalArgumentException("鍘熷瀵嗙爜閿欒");
+ }
+ userInfo.putAll(paramObj);
+ userInfo.put("password", paramObj.getString("newPwd"));
+
+ return userInfo;
+ }
+
+ /**
+ * 鍒犻櫎鍟嗘埛
+ *
+ * @param paramInJson
+ * @return
+ */
+ public JSONObject deleteStaff(JSONObject paramInJson) {
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_STORE_USER);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONArray businessStoreUsers = new JSONArray();
+ JSONObject businessStoreUser = new JSONObject();
+ businessStoreUser.put("storeId", paramInJson.getString("storeId"));
+ businessStoreUser.put("userId", paramInJson.getString("userId"));
+ businessStoreUsers.add(businessStoreUser);
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessStoreUser", businessStoreUsers);
+
+ return business;
+
+ }
+
+ /**
+ * 鍒犻櫎鍟嗘埛
+ *
+ * @param paramInJson
+ * @return
+ */
+ public JSONObject deleteUser(JSONObject paramInJson) {
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_REMOVE_USER_INFO);
+ business.put(CommonConstant.HTTP_SEQ, 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessStoreUser = new JSONObject();
+ businessStoreUser.put("userId", paramInJson.getString("userId"));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessUser", businessStoreUser);
+
+ return business;
+
+ }
+
+
}
--
Gitblit v1.8.0