소스 검색

优化代码

java110 3 년 전
부모
커밋
1b209c9c19

+ 0 - 51
service-api/src/main/java/com/java110/api/listener/returnPayFee/DeleteReturnPayFeeListener.java

@@ -1,51 +0,0 @@
-package com.java110.api.listener.returnPayFee;
-
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.returnPayFee.IReturnPayFeeBMO;
-import com.java110.api.listener.AbstractServiceApiPlusListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.utils.constant.ServiceCodeReturnPayFeeConstant;
-import com.java110.utils.util.Assert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-
-/**
- * 保存小区侦听
- * add by wuxw 2019-06-30
- */
-@Java110Listener("deleteReturnPayFeeListener")
-public class DeleteReturnPayFeeListener extends AbstractServiceApiPlusListener {
-
-    @Autowired
-    private IReturnPayFeeBMO returnPayFeeBMOImpl;
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-        Assert.hasKeyAndValue(reqJson, "returnFeeId", "returnFeeId不能为空");
-
-    }
-
-    @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
-        returnPayFeeBMOImpl.deleteReturnPayFee(reqJson, context);
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeReturnPayFeeConstant.DELETE_RETURNPAYFEE;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-
-}

+ 0 - 144
service-api/src/main/java/com/java110/api/listener/store/SaveStoreServiceListener.java

@@ -1,144 +0,0 @@
-package com.java110.api.listener.store;
-
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.account.IAccountBMO;
-import com.java110.api.bmo.store.IStoreBMO;
-import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.core.factory.DataFlowFactory;
-import com.java110.core.factory.GenerateCodeFactory;
-import com.java110.dto.account.AccountDto;
-import com.java110.entity.center.AppService;
-import com.java110.po.account.AccountPo;
-import com.java110.po.store.StorePo;
-import com.java110.utils.constant.CommonConstant;
-import com.java110.utils.constant.ServiceCodeConstant;
-import com.java110.utils.constant.StoreTypeConstant;
-import com.java110.utils.util.Assert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.*;
-
-/**
- * 保存商户信息
- * Created by Administrator on 2019/3/29.
- */
-@Java110Listener("saveStoreServiceListener")
-public class SaveStoreServiceListener extends AbstractServiceApiListener {
-
-    @Autowired
-    private IStoreBMO storeBMOImpl;
-
-    @Autowired
-    private IAccountBMO accountBMOImpl;
-
-    @Override
-    public int getOrder() {
-        return 0;
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_SAVE_STORE_INFO;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-
-    }
-
-    @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-        //获取数据上下文对象
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
-        AppService service = event.getAppService();
-        String paramIn = dataFlowContext.getReqData();
-        Assert.isJsonObject(paramIn, "添加员工时请求参数有误,不是有效的json格式 " + paramIn);
-
-        //校验json 格式中是否包含 name,email,levelCd,tel
-        Assert.jsonObjectHaveKey(paramIn, StorePo.class.getSimpleName(), "请求参数中未包含businessStore 节点,请确认");
-        JSONObject paramObj = JSONObject.parseObject(paramIn);
-        HttpHeaders header = new HttpHeaders();
-        dataFlowContext.getRequestCurrentHeaders().put(CommonConstant.HTTP_USER_ID, "-1");
-        dataFlowContext.getRequestCurrentHeaders().put(CommonConstant.HTTP_ORDER_TYPE_CD, "D");
-        JSONArray businesses = new JSONArray();
-        //添加商户
-        businesses.add(storeBMOImpl.addStore(paramObj));
-        //添加员工
-        businesses.add(storeBMOImpl.addStaff(paramObj));
-        //添加公司级组织
-        businesses.add(storeBMOImpl.addOrg(paramObj));
-        //公司总部
-        businesses.add(storeBMOImpl.addOrgHeadCompany(paramObj));
-        //总部办公室
-        businesses.add(storeBMOImpl.addOrgHeadPart(paramObj));
-        businesses.add(storeBMOImpl.addStaffOrg(paramObj));
-        businesses.add(storeBMOImpl.addPurchase(paramObj));
-        //businesses.add(storeBMOImpl.addCollection(paramObj)); //物品领用 各个小区设置各自的流程  废弃次操作
-        businesses.add(storeBMOImpl.contractApply(paramObj));
-        businesses.add(storeBMOImpl.contractChange(paramObj));
-        //物品调拨流程
-        businesses.add(storeBMOImpl.allocationStorehouse(paramObj));
-
-        //新建账户 目前只有商家创建账户
-        JSONObject businessStoreObj = paramObj.getJSONObject(StorePo.class.getSimpleName());
-        if (StoreTypeConstant.STORE_TYPE_MALL.equals(businessStoreObj.getString("storeTypeCd"))) {
-            //物品调拨流程
-            businesses.add(storeBMOImpl.addAccount(paramObj,AccountDto.ACCT_TYPE_CASH));
-            businesses.add(storeBMOImpl.addAccount(paramObj,AccountDto.ACCT_TYPE_INTEGRAL));
-//            businesses.add(storeBMOImpl.addAccount(paramObj,AccountDto.ACCT_TYPE_GOLD));
-        }
-
-        //super.doResponse(dataFlowContext);
-        ResponseEntity<String> responseEntity = storeBMOImpl.callService(dataFlowContext, service.getServiceCode(), businesses);
-        dataFlowContext.setResponseEntity(responseEntity);
-        //如果不成功直接返回
-        if (responseEntity.getStatusCode() != HttpStatus.OK) {
-            return;
-        }
-
-
-        //赋权
-        privilegeUserDefault(dataFlowContext, paramObj);
-    }
-
-
-    /**
-     * 用户赋权
-     *
-     * @return
-     */
-    private void privilegeUserDefault(DataFlowContext dataFlowContext, JSONObject paramObj) {
-        ResponseEntity responseEntity = null;
-        AppService appService = DataFlowFactory.getService(dataFlowContext.getAppId(), ServiceCodeConstant.SERVICE_CODE_SAVE_USER_DEFAULT_PRIVILEGE);
-        if (appService == null) {
-            responseEntity = new ResponseEntity<String>("当前没有权限访问" + ServiceCodeConstant.SERVICE_CODE_SAVE_USER_DEFAULT_PRIVILEGE, HttpStatus.UNAUTHORIZED);
-            dataFlowContext.setResponseEntity(responseEntity);
-            return;
-        }
-        String requestUrl = appService.getUrl();
-        HttpHeaders header = new HttpHeaders();
-        header.add(CommonConstant.HTTP_SERVICE.toLowerCase(), ServiceCodeConstant.SERVICE_CODE_SAVE_USER_DEFAULT_PRIVILEGE);
-        storeBMOImpl.freshHttpHeader(header, dataFlowContext.getRequestCurrentHeaders());
-        JSONObject paramInObj = new JSONObject();
-        paramInObj.put("userId", paramObj.getJSONObject(StorePo.class.getSimpleName()).getString("userId"));
-        paramInObj.put("storeTypeCd", paramObj.getJSONObject(StorePo.class.getSimpleName()).getString("storeTypeCd"));
-        paramInObj.put("storeId", paramObj.getString("storeId"));
-        paramInObj.put("userFlag", "admin");
-        HttpEntity<String> httpEntity = new HttpEntity<String>(paramInObj.toJSONString(), header);
-        doRequest(dataFlowContext, appService, httpEntity);
-        responseEntity = dataFlowContext.getResponseEntity();
-
-        if (responseEntity.getStatusCode() != HttpStatus.OK) {
-            dataFlowContext.setResponseEntity(responseEntity);
-        }
-    }
-}

+ 0 - 52
service-api/src/main/java/com/java110/api/listener/store/UpdateStoreAttrListener.java

@@ -1,52 +0,0 @@
-package com.java110.api.listener.store;
-
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.store.IStoreAttrBMO;
-import com.java110.api.listener.AbstractServiceApiPlusListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.utils.constant.ServiceCodeStoreAttrConstant;
-import com.java110.utils.util.Assert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-
-
-/**
- * 保存商户属性侦听
- * add by wuxw 2019-06-30
- */
-@Java110Listener("updateStoreAttrListener")
-public class UpdateStoreAttrListener extends AbstractServiceApiPlusListener {
-
-    @Autowired
-    private IStoreAttrBMO storeAttrBMOImpl;
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-
-        Assert.hasKeyAndValue(reqJson, "attrId", "attrId不能为空");
-
-    }
-
-    @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
-        storeAttrBMOImpl.updateStoreAttr(reqJson, context);
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeStoreAttrConstant.UPDATE_STOREATTR;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-}

+ 16 - 37
service-api/src/main/java/com/java110/api/listener/store/ListStoresByCommunityListener.java

@@ -1,31 +1,30 @@
-package com.java110.api.listener.store;
+package com.java110.store.cmd.store;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.intf.community.ICommunityInnerServiceSMO;
-import com.java110.intf.store.IStoreInnerServiceSMO;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
 import com.java110.dto.CommunityMemberDto;
 import com.java110.dto.store.StoreDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.utils.constant.*;
+import com.java110.intf.community.ICommunityInnerServiceSMO;
+import com.java110.intf.store.IStoreInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.vo.api.store.ApiStoreDataVo;
 import com.java110.vo.api.store.ApiStoreVo;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.*;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
 
+import java.text.ParseException;
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- * 查询商户信息
- * Created by Administrator on 2019/3/29.
- */
-@Java110Listener("listStoresByCommunityListener")
-public class ListStoresByCommunityListener extends AbstractServiceApiListener {
+@Java110Cmd(serviceCode = "store.listStoresByCommunity")
+public class ListStoresByCommunityCmd extends Cmd {
+
 
     @Autowired
     private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
@@ -34,31 +33,13 @@ public class ListStoresByCommunityListener extends AbstractServiceApiListener {
     private IStoreInnerServiceSMO storeInnerServiceSMOImpl;
 
     @Override
-    public int getOrder() {
-        return 0;
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_LIST_STORES_BY_COMMUNITY;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
-    }
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         super.validatePageInfo(reqJson);
         Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区信息");
-
     }
 
     @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
-
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
         CommunityMemberDto communityMemberDto = BeanConvertUtil.covertBean(reqJson, CommunityMemberDto.class);
         int storeCount = communityInnerServiceSMOImpl.getCommunityMemberCount(communityMemberDto);
         List<CommunityMemberDto> communityMemberDtos = null;
@@ -99,6 +80,4 @@ public class ListStoresByCommunityListener extends AbstractServiceApiListener {
 
         return storeIds.toArray(new String[storeIds.size()]);
     }
-
-
 }

+ 356 - 0
service-store/src/main/java/com/java110/store/cmd/store/SaveStoreInfoCmd.java

@@ -0,0 +1,356 @@
+package com.java110.store.cmd.store;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.account.AccountDto;
+import com.java110.dto.workflow.WorkflowDto;
+import com.java110.intf.acct.IAccountInnerServiceSMO;
+import com.java110.intf.common.IWorkflowV1InnerServiceSMO;
+import com.java110.intf.community.ICommunityMemberV1InnerServiceSMO;
+import com.java110.intf.community.ICommunityV1InnerServiceSMO;
+import com.java110.intf.store.IOrgStaffRelV1InnerServiceSMO;
+import com.java110.intf.store.IStoreAttrV1InnerServiceSMO;
+import com.java110.intf.store.IStoreUserV1InnerServiceSMO;
+import com.java110.intf.store.IStoreV1InnerServiceSMO;
+import com.java110.intf.user.*;
+import com.java110.po.account.AccountPo;
+import com.java110.po.org.OrgPo;
+import com.java110.po.org.OrgStaffRelPo;
+import com.java110.po.privilegeUser.PrivilegeUserPo;
+import com.java110.po.store.StoreAttrPo;
+import com.java110.po.store.StorePo;
+import com.java110.po.store.StoreUserPo;
+import com.java110.po.workflow.WorkflowPo;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.MappingConstant;
+import com.java110.utils.constant.StoreTypeConstant;
+import com.java110.utils.constant.StoreUserRelConstant;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
+
+@Java110Cmd(serviceCode = "save.store.info")
+public class SaveStoreInfoCmd extends Cmd {
+
+    public static final String CODE_PREFIX_ID = "10";
+
+    @Autowired
+    private IStoreV1InnerServiceSMO storeV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IStoreAttrV1InnerServiceSMO storeAttrV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IStoreUserV1InnerServiceSMO storeUserV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IOrgV1InnerServiceSMO orgV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IOrgStaffRelV1InnerServiceSMO orgStaffRelV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IWorkflowV1InnerServiceSMO workflowV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IPrivilegeUserV1InnerServiceSMO privilegeUserV1InnerServiceSMOImpl;
+
+    @Autowired
+    private ICommunityMemberV1InnerServiceSMO communityMemberV1InnerServiceSMOImpl;
+
+    @Autowired
+    private ICommunityV1InnerServiceSMO communityV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IMenuGroupV1InnerServiceSMO menuGroupV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IMenuGroupCommunityV1InnerServiceSMO menuGroupCommunityV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IAccountInnerServiceSMO accountInnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.jsonObjectHaveKey(reqJson, StorePo.class.getSimpleName(), "请求参数中未包含businessStore 节点,请确认");
+    }
+
+    @Override
+    @Java110Transactional
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+        addStore(reqJson);
+        //添加员工
+        addStaff(reqJson);
+        //添加公司级组织
+        addOrg(reqJson);
+        //公司总部
+        addStaffOrg(reqJson);
+        addPurchase(reqJson);
+        //businesses.add(storeBMOImpl.addCollection(paramObj)); //物品领用 各个小区设置各自的流程  废弃次操作
+        contractApply(reqJson);
+        contractChange(reqJson);
+        //物品调拨流程
+        allocationStorehouse(reqJson);
+
+        //新建账户 目前只有商家创建账户
+        JSONObject businessStoreObj = reqJson.getJSONObject(StorePo.class.getSimpleName());
+        if (StoreTypeConstant.STORE_TYPE_MALL.equals(businessStoreObj.getString("storeTypeCd"))) {
+            //物品调拨流程
+            addAccount(reqJson, AccountDto.ACCT_TYPE_CASH);
+            addAccount(reqJson, AccountDto.ACCT_TYPE_INTEGRAL);
+//            businesses.add(storeBMOImpl.addAccount(paramObj,AccountDto.ACCT_TYPE_GOLD));
+        }
+        //赋权
+        privilegeUserDefault(reqJson);
+    }
+
+    public void addAccount(JSONObject paramInJson, String acctType) {
+        JSONObject businessStoreObj = paramInJson.getJSONObject(StorePo.class.getSimpleName());
+
+        AccountPo accountPo = new AccountPo();
+        accountPo.setAcctId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_acctId));
+
+        accountPo.setAcctName(businessStoreObj.getString("name"));
+        accountPo.setAcctType(acctType);
+        accountPo.setAmount("0");
+        accountPo.setObjId(paramInJson.getString("storeId"));
+        accountPo.setObjType(AccountDto.OBJ_TYPE_STORE);
+        int flag = accountInnerServiceSMOImpl.saveAccount(accountPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+
+    /**
+     * 调拨审核
+     *
+     * @param paramInJson
+     * @return
+     */
+    public void allocationStorehouse(JSONObject paramInJson) {
+
+        WorkflowPo workflowPo = new WorkflowPo();
+        workflowPo.setCommunityId("9999"); //所有小区
+        workflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+        workflowPo.setFlowName("物品调拨");
+        workflowPo.setFlowType(WorkflowDto.FLOW_TYPE_ALLOCATION_STOREHOUSE);
+        workflowPo.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
+        workflowPo.setStoreId(paramInJson.getString("storeId"));
+        int flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    /**
+     * 合同变更
+     *
+     * @param paramInJson
+     * @return
+     */
+    public void contractChange(JSONObject paramInJson) {
+
+
+        WorkflowPo workflowPo = new WorkflowPo();
+        workflowPo.setCommunityId("9999"); //所有小区
+        workflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+        workflowPo.setFlowName("合同变更");
+        workflowPo.setFlowType(WorkflowDto.FLOW_TYPE_CONTRACT_CHANGE);
+        workflowPo.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
+        workflowPo.setStoreId(paramInJson.getString("storeId"));
+        int flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    /**
+     * 合同申请续签
+     *
+     * @param paramInJson
+     * @return
+     */
+    public void contractApply(JSONObject paramInJson) {
+
+        WorkflowPo workflowPo = new WorkflowPo();
+        workflowPo.setCommunityId("9999"); //所有小区
+        workflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+        workflowPo.setFlowName("合同申请续签");
+        workflowPo.setFlowType(WorkflowDto.FLOW_TYPE_CONTRACT_APPLY);
+        workflowPo.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
+        workflowPo.setStoreId(paramInJson.getString("storeId"));
+        int flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    public void addPurchase(JSONObject paramInJson) {
+
+        WorkflowPo workflowPo = new WorkflowPo();
+        workflowPo.setCommunityId("9999"); //所有小区
+        workflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+        workflowPo.setFlowName("采购流程");
+        workflowPo.setFlowType(WorkflowDto.FLOW_TYPE_PURCHASE);
+        workflowPo.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
+        workflowPo.setStoreId(paramInJson.getString("storeId"));
+        int flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    public void addStaffOrg(JSONObject paramInJson) {
+
+
+        JSONObject businessOrgStaffRel = new JSONObject();
+        businessOrgStaffRel.put("relId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_relId));
+        businessOrgStaffRel.put("storeId", paramInJson.getString("storeId"));
+        businessOrgStaffRel.put("staffId", paramInJson.getJSONObject(StorePo.class.getSimpleName()).getString("userId"));
+        businessOrgStaffRel.put("orgId", paramInJson.getString("levelOneOrgId"));
+        businessOrgStaffRel.put("relCd", StoreUserRelConstant.REL_ADMIN);
+        //计算 应收金额
+        OrgStaffRelPo orgStaffRelPo = BeanConvertUtil.covertBean(businessOrgStaffRel, OrgStaffRelPo.class);
+
+        int flag = orgStaffRelV1InnerServiceSMOImpl.saveOrgStaffRel(orgStaffRelPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    /**
+     * 添加一级组织信息
+     *
+     * @param paramInJson 接口调用放传入入参
+     * @return 订单服务能够接受的报文
+     */
+    public void addOrg(JSONObject paramInJson) {
+
+        String orgId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_orgId);
+        paramInJson.put("levelOneOrgId", orgId);
+
+        JSONObject businessOrg = new JSONObject();
+        businessOrg.put("orgName", paramInJson.getJSONObject(StorePo.class.getSimpleName()).getString("name"));
+        businessOrg.put("orgLevel", "1");
+        businessOrg.put("parentOrgId", orgId);
+        businessOrg.put("belongCommunityId", "9999");
+        businessOrg.put("orgId", orgId);
+        businessOrg.put("allowOperation", "F");
+        businessOrg.put("storeId", paramInJson.getString("storeId"));
+
+        //计算 应收金额
+        OrgPo orgPo = BeanConvertUtil.covertBean(businessOrg, OrgPo.class);
+
+        int flag = orgV1InnerServiceSMOImpl.saveOrg(orgPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+
+    /**
+     * 添加商户
+     *
+     * @param paramInJson
+     * @return
+     */
+    public void addStore(JSONObject paramInJson) {
+        int flag = 0;
+        String storeId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_storeId);
+        paramInJson.put("storeId", storeId);
+        if (paramInJson.containsKey(StorePo.class.getSimpleName())) {
+            JSONObject businessStoreObj = paramInJson.getJSONObject(StorePo.class.getSimpleName());
+            businessStoreObj.put("storeId", storeId);
+            if (!businessStoreObj.containsKey("password")) {
+                String staffDefaultPassword = MappingCache.getValue(MappingConstant.KEY_STAFF_DEFAULT_PASSWORD);
+                Assert.hasLength(staffDefaultPassword, "映射表中未设置员工默认密码,请检查" + MappingConstant.KEY_STAFF_DEFAULT_PASSWORD);
+                businessStoreObj.put("password", staffDefaultPassword);
+            }
+
+            if (!businessStoreObj.containsKey("mapX")) {
+                businessStoreObj.put("mapX", "");
+            }
+
+            if (!businessStoreObj.containsKey("mapY")) {
+                businessStoreObj.put("mapY", "");
+            }
+            StorePo storePo = BeanConvertUtil.covertBean(businessStoreObj, StorePo.class);
+            flag = storeV1InnerServiceSMOImpl.saveStore(storePo);
+
+            if (flag < 1) {
+                throw new CmdException("保存数据失败");
+            }
+        }
+
+        if (paramInJson.containsKey(StoreAttrPo.class.getSimpleName())) {
+            JSONArray attrs = paramInJson.getJSONArray(StoreAttrPo.class.getSimpleName());
+
+            for (int businessStoreAttrIndex = 0; businessStoreAttrIndex < attrs.size(); businessStoreAttrIndex++) {
+                JSONObject attr = attrs.getJSONObject(businessStoreAttrIndex);
+                attr.put("storeId", storeId);
+                attr.put("attrId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+                StoreAttrPo storeAttrPo = BeanConvertUtil.covertBean(attr, StoreAttrPo.class);
+                flag = storeAttrV1InnerServiceSMOImpl.saveStoreAttr(storeAttrPo);
+                if (flag < 1) {
+                    throw new CmdException("保存数据失败");
+                }
+            }
+        }
+    }
+
+    /**
+     * 添加员工
+     *
+     * @param paramInJson
+     * @return
+     */
+    public void addStaff(JSONObject paramInJson) {
+
+        JSONObject businessStoreUser = new JSONObject();
+        businessStoreUser.put("storeId", paramInJson.getString("storeId"));
+        businessStoreUser.put("storeUserId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_storeUserId));
+        businessStoreUser.put("userId", paramInJson.getJSONObject(StorePo.class.getSimpleName()).getString("userId"));
+        businessStoreUser.put("relCd", StoreUserRelConstant.REL_ADMIN);
+        StoreUserPo storeUserPo = BeanConvertUtil.covertBean(businessStoreUser, StoreUserPo.class);
+        int flag = storeUserV1InnerServiceSMOImpl.saveStoreUser(storeUserPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+
+    }
+
+    /**
+     * 用户赋权
+     *
+     * @return
+     */
+    private void privilegeUserDefault(JSONObject paramObj) {
+
+        String defaultPrivilege = MappingCache.getValue(MappingConstant.DOMAIN_DEFAULT_PRIVILEGE_ADMIN, paramObj.getJSONObject(StorePo.class.getSimpleName()).getString("storeTypeCd"));
+
+        Assert.hasLength(defaultPrivilege, "未配置默认权限");
+        PrivilegeUserPo privilegeUserPo = new PrivilegeUserPo();
+        privilegeUserPo.setPrivilegeFlag("1");
+        privilegeUserPo.setStoreId(paramObj.getString("storeId"));
+        privilegeUserPo.setUserId(paramObj.getJSONObject(StorePo.class.getSimpleName()).getString("userId"));
+        privilegeUserPo.setpId(defaultPrivilege);
+        privilegeUserPo.setPuId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+
+        int flag = privilegeUserV1InnerServiceSMOImpl.savePrivilegeUser(privilegeUserPo);
+        if (flag < 1) {
+            throw new CmdException("注册失败");
+        }
+    }
+}

+ 54 - 0
service-store/src/main/java/com/java110/store/cmd/store/UpdateStoreAttrCmd.java

@@ -0,0 +1,54 @@
+package com.java110.store.cmd.store;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.store.StoreAttrDto;
+import com.java110.intf.store.IStoreAttrInnerServiceSMO;
+import com.java110.intf.store.IStoreAttrV1InnerServiceSMO;
+import com.java110.po.store.StoreAttrPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
+import java.util.List;
+
+@Java110Cmd(serviceCode = "storeAttr.updateStoreAttr")
+public class UpdateStoreAttrCmd extends Cmd {
+
+    @Autowired
+    private IStoreAttrInnerServiceSMO storeAttrInnerServiceSMOImpl;
+
+    @Autowired
+    private IStoreAttrV1InnerServiceSMO storeAttrV1InnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.hasKeyAndValue(reqJson, "attrId", "attrId不能为空");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+        StoreAttrDto storeAttrDto = new StoreAttrDto();
+        storeAttrDto.setAttrId(reqJson.getString("attrId"));
+        List<StoreAttrDto> storeAttrDtos = storeAttrInnerServiceSMOImpl.queryStoreAttrs(storeAttrDto);
+
+        Assert.listOnlyOne(storeAttrDtos, "未找到需要修改的活动 或多条数据");
+
+        JSONObject businessStoreAttr = new JSONObject();
+        businessStoreAttr.putAll(BeanConvertUtil.beanCovertMap(storeAttrDtos.get(0)));
+        businessStoreAttr.putAll(reqJson);
+
+        StoreAttrPo storeAttrPo = BeanConvertUtil.covertBean(businessStoreAttr, StoreAttrPo.class);
+
+        int flag = storeAttrV1InnerServiceSMOImpl.updateStoreAttr(storeAttrPo);
+
+        if (flag < 1) {
+            throw new CmdException("修改异常");
+        }
+    }
+}