From bb198fb66045329b6dc47a031f202aabc6b8a1dd Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 31 五月 2020 21:33:01 +0800
Subject: [PATCH] 优化代码
---
Api/src/main/java/com/java110/api/bmo/user/impl/UserBMOImpl.java | 206 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 206 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..a8a8dfe 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,29 @@
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.po.org.OrgStaffRelPo;
+import com.java110.po.store.StoreUserPo;
+import com.java110.po.store.StoreUserRelPo;
+import com.java110.po.user.UserPo;
+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.BeanConvertUtil;
+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 +35,189 @@
**/
@Service("userBMOImpl")
public class UserBMOImpl extends ApiBaseBMO implements IUserBMO {
+
+ @Autowired
+ private IUserInnerServiceSMO userInnerServiceSMOImpl;
+
+ public void addStaffOrg(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+ 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"));
+ OrgStaffRelPo orgStaffRelPo = BeanConvertUtil.covertBean(businessOrgStaffRel, OrgStaffRelPo.class);
+ super.insert(dataFlowContext, orgStaffRelPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ORG_STAFF_REL);
+ }
+
+ /**
+ * 娣诲姞鍛樺伐
+ *
+ * @param paramInJson
+ * @return
+ */
+ public void addStaff(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+ 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"));
+
+ StoreUserPo storeUserPo = BeanConvertUtil.covertBean(businessStoreUser, StoreUserPo.class);
+ super.insert(dataFlowContext, storeUserPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_STORE_USER);
+ }
+
+ /**
+ * 娣诲姞鐢ㄦ埛
+ *
+ * @param paramObj
+ */
+ public void 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", "涓嶆槸鏈夋晥鐨勯偖绠辨牸寮�");
+ }
+
+
+ UserPo userPo = BeanConvertUtil.covertBean(refreshParamIn(paramObj), UserPo.class);
+ super.insert(dataFlowContext, userPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_USER_INFO);
+ }
+
+ /**
+ * 娉ㄥ唽鐢ㄦ埛
+ *
+ * @param paramObj
+ */
+ public void 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", "涓嶆槸鏈夋晥鐨勯偖绠辨牸寮�");
+ }
+
+ //paramObj.put("userId","-1");
+ paramObj.put("levelCd", UserLevelConstant.USER_LEVEL_ORDINARY);
+ //璁剧疆榛樿瀵嗙爜
+ String userPassword = paramObj.getString("password");
+ userPassword = AuthenticationFactory.passwdMd5(userPassword);
+ paramObj.put("password", userPassword);
+
+ if (paramObj.containsKey("openId") && !"-1".equals(paramObj.getString("openId"))) {
+ JSONArray userAttr = new JSONArray();
+ JSONObject userAttrObj = new JSONObject();
+ userAttrObj.put("attrId", "-1");
+ userAttrObj.put("specCd", "100201911001");
+ userAttrObj.put("value", paramObj.getString("openId"));
+ userAttr.add(userAttrObj);
+ paramObj.put("businessUserAttr", userAttr);
+ }
+
+ UserPo userPo = BeanConvertUtil.covertBean(paramObj, UserPo.class);
+ super.insert(dataFlowContext, userPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_USER_INFO);
+ }
+
+
+ /**
+ * 瀵硅姹傛姤鏂囧鐞�
+ *
+ * @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 void modifyStaff(JSONObject paramObj, DataFlowContext dataFlowContext) {
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+ UserPo userPo = BeanConvertUtil.covertBean(builderStaffInfo(paramObj, dataFlowContext), UserPo.class);
+ super.update(dataFlowContext, userPo, BusinessTypeConstant.BUSINESS_TYPE_MODIFY_USER_INFO);
+ }
+
+ /**
+ * 鏋勫缓鍛樺伐淇℃伅
+ *
+ * @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 void deleteStaff(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+ JSONObject businessStoreUser = new JSONObject();
+ businessStoreUser.put("storeId", paramInJson.getString("storeId"));
+ businessStoreUser.put("userId", paramInJson.getString("userId"));
+
+
+ UserPo userPo = BeanConvertUtil.covertBean(businessStoreUser, UserPo.class);
+ super.delete(dataFlowContext, userPo, BusinessTypeConstant.BUSINESS_TYPE_DELETE_STORE_USER);
+
+ }
+
+ /**
+ * 鍒犻櫎鍟嗘埛
+ *
+ * @param paramInJson
+ * @return
+ */
+ public void deleteUser(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+ //鏍¢獙json 鏍煎紡涓槸鍚﹀寘鍚� name,email,levelCd,tel
+ JSONObject businessStoreUser = new JSONObject();
+ businessStoreUser.put("userId", paramInJson.getString("userId"));
+
+ UserPo userPo = BeanConvertUtil.covertBean(businessStoreUser, UserPo.class);
+ super.delete(dataFlowContext, userPo, BusinessTypeConstant.BUSINESS_TYPE_REMOVE_USER_INFO);
+
+ }
+
+
}
--
Gitblit v1.8.0