Ver código fonte

Merge branch 'master' of http://192.168.31.240:3000/MTP2.0_New/MTP2.0_NEWMANAGE_SERVICE

deng.yinping 7 meses atrás
pai
commit
d312abbb02
43 arquivos alterados com 626 adições e 87 exclusões
  1. 7 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/CommonController.java
  2. 16 2
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/OrganController.java
  3. 8 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/ReportFormController.java
  4. 15 2
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/TaAccountController.java
  5. 3 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/ICommonService.java
  6. 2 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IOrganService.java
  7. 2 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IReportFormService.java
  8. 2 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/ITaaccountService.java
  9. 35 21
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/CommonServiceImpl.java
  10. 14 2
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganServiceImpl.java
  11. 1 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganSonServiceService.java
  12. 1 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/ProfitSharServiceImpl.java
  13. 38 5
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/ReportFormServiceImpl.java
  14. 177 7
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/TaaccountServiceImpl.java
  15. 14 4
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/UseraccountServiceImpl.java
  16. 68 12
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/WskhUserinfoServiceImpl.java
  17. 8 0
      mtp3-century/src/main/resources/mapper/EnumdicitemMapper.xml
  18. 5 1
      mtp3-century/src/main/resources/mapper/ISystemRunService.xml
  19. 3 0
      mtp3-century/src/main/resources/mapper/MarketMapper.xml
  20. 94 3
      mtp3-century/src/main/resources/mapper/ReckonDaydividecountdetailMapper.xml
  21. 1 4
      mtp3-century/src/main/resources/mapper/SystemmanagerMapper.xml
  22. 7 5
      mtp3-century/src/main/resources/mapper/UseraccountMapper.xml
  23. 2 5
      mtp3-century/src/main/resources/mapper/WskhUserinfoMapper.xml
  24. 1 0
      mtp3-century/src/main/resources/message_en.properties
  25. 1 0
      mtp3-century/src/main/resources/message_th.properties
  26. 1 0
      mtp3-century/src/main/resources/message_vi.properties
  27. 1 0
      mtp3-century/src/main/resources/message_zh-cn.properties
  28. 1 0
      mtp3-century/src/main/resources/message_zh-hk.properties
  29. 1 0
      mtp3-century/src/main/resources/message_zh-tw.properties
  30. 1 0
      mtp3-common/src/main/java/com/muchinfo/mtp3common/enumtype/MessageType.java
  31. 4 0
      mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IEnumdicitemMapper.java
  32. 1 1
      mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IMarketMapper.java
  33. 4 0
      mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IReckonDaydividecountdetailMapper.java
  34. 8 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Enumdicitem.java
  35. 3 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Taaccount.java
  36. 1 1
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/DealerQueryParam.java
  37. 1 1
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/DealerQueryResult.java
  38. 6 3
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/UserAccountDetailVo.java
  39. 9 3
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/organ/MemberGoodsLimitResult.java
  40. 3 1
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/reportform/ShareAmountQueryParam.java
  41. 45 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountInitResultDetail.java
  42. 5 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountQueryResult.java
  43. 6 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountUpdateParam.java

+ 7 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/CommonController.java

@@ -419,4 +419,11 @@ public class CommonController {
         }
         return iCommonService.queryOrganSelect(vo, request);
     }
+
+    @RequestMapping(method = RequestMethod.GET, value = "queryConfig")
+    @ApiOperation("根据配置id获取相关配置信息")
+    @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
+    public AjaxResult<WskhOpenaccountconfig> queryConfig(Long configid, HttpServletRequest request) {
+        return iCommonService.queryConfig(configid, request);
+    }
 }

+ 16 - 2
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/OrganController.java

@@ -212,6 +212,14 @@ public class OrganController {
         return iOrganService.initAdd(role, request);
     }
 
+    @ApiOperation("会员机构管理-->机构管理-->获取角色权限信息")
+    @RequestMapping(method = RequestMethod.GET, value = "/getOragnDefaultManager")
+    @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
+    private AjaxResult<String> getOragnDefaultManager(Long userid, HttpServletRequest request) {
+        return iOrganService.getOragnDefaultManager(userid, request);
+    }
+
+
     @ApiOperation("会员机构管理-->机构管理-->新增、修改")
     @RequestMapping(method = RequestMethod.POST, value = "/roleadd")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
@@ -243,8 +251,14 @@ public class OrganController {
     @ApiOperation("会员机构管理-->机构管理-->商品限制设置--> 新增、修改")
     @RequestMapping(method = RequestMethod.POST, value = "/addlimit")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
-    private AjaxResult addlimit(@RequestBody MemberGoodsAddParam vo, HttpServletRequest request) {
-        return iOrganService.addlimit(vo, request);
+    private AjaxResult addlimit(@RequestBody String vo, HttpServletRequest request) {
+        try {
+            MemberGoodsAddParam current = JsonUtils.toBean(CenturyDecryptUtil.decryptForJson(vo, request), MemberGoodsAddParam.class);
+            return iOrganService.addlimit(current, request);
+        } catch (Exception e) {
+            log.error("商品限制设置-->新增、修改失败,失败原因:" + Arrays.toString(e.getStackTrace()));
+            return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM002.getCode(), request.getHeader("Accept-Language"));
+        }
     }
 
     @ApiOperation("会员机构管理-->机构管理-->商品限制设置--> 删除")

+ 8 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/ReportFormController.java

@@ -27,12 +27,19 @@ public class ReportFormController {
     private IReportFormService iReportFormService;
 
     @RequestMapping(method = RequestMethod.GET, value = "/shareAmountQuery")
-    @ApiOperation("报表管理-->分润报表")
+    @ApiOperation("报表管理-->分润报表(机构)")
     @ApiResponse(code = 200, message = "成功", response = PageResult.class)
     public PageResult<ShareAmountQueryResult> selectShareAmount(ShareAmountQueryParam param, HttpServletRequest request) {
         return iReportFormService.selectShareAmount(param, request);
     }
 
+    @RequestMapping(method = RequestMethod.GET, value = "/shareAmountQueryPlat")
+    @ApiOperation("报表管理-->分润报表(平台)")
+    @ApiResponse(code = 200, message = "成功", response = PageResult.class)
+    public PageResult<ShareAmountQueryResult> shareAmountQueryPlat(ShareAmountQueryParam param, HttpServletRequest request) {
+        return iReportFormService.shareAmountQueryPlat(param, request);
+    }
+
     @RequestMapping(method = RequestMethod.GET, value = "/queryRefUserSelect")
     @ApiOperation("报表管理-->推荐成交报表-->推荐人信息")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)

+ 15 - 2
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/TaAccountController.java

@@ -41,11 +41,24 @@ public class TaAccountController {
         return iTaaccountService.queryDetail(request, accountId);
     }
 
+    @ApiOperation("资金账户管理-->资金账户信息修改--> 初始化")
+    @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
+    @RequestMapping(method = RequestMethod.GET, value = "/updateTaAccountInit")
+    public AjaxResult<TaAccountInitResultDetail> updateTaAccountInit(Long accountId, HttpServletRequest request,String orgztypes) {
+        return iTaaccountService.updateTaAccountInit(request, accountId,orgztypes);
+    }
+
     @ApiOperation("资金账户管理-->资金账户信息修改")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
     @RequestMapping(method = RequestMethod.POST, value = "/updateTaAccount")
-    public AjaxResult updateTaAccount(@RequestBody TaAccountUpdateParam param, HttpServletRequest request) {
-        return iTaaccountService.updateTaAccount(param, request);
+    public AjaxResult updateTaAccount(@RequestBody String param, HttpServletRequest request) {
+        try {
+            TaAccountUpdateParam taAccountPwd = JsonUtils.toBean(CenturyDecryptUtil.decryptForJson(param, request), TaAccountUpdateParam.class);
+            return iTaaccountService.updateTaAccount(taAccountPwd, request);
+        } catch (Exception e) {
+            log.error("资金账户信息修改失败,失败原因:" + e);
+            return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM002.getCode(), request.getHeader("Accept-Language"));
+        }
     }
 
     @ApiOperation("资金账户管理-->资金流水信息列表查询/查询管理-->资金流水信息列表查询")

+ 3 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/ICommonService.java

@@ -55,7 +55,7 @@ public interface ICommonService {
 
     AjaxResult<CommonResult> queryCommonFlag(CommonParam commonParam, HttpServletRequest request);
 
-    Boolean checkOranCardNumOrMobile(int type, String message, Long userid);
+    Boolean checkOranCardNumOrMobile(Integer checkType, Integer checkField, Long userid, String message);
 
     AjaxResult<BankAccountsign> getBankAccountSign(Long accountcode, Integer signstatus, HttpServletRequest request);
 
@@ -80,4 +80,6 @@ public interface ICommonService {
     AjaxResult<Userinfo>  queryUserinfoUserId(Long userid, HttpServletRequest request);
 
     AjaxResult<OrganSelectResult> queryExchSonOrgin(OrganSelectParam vo, HttpServletRequest request);
+
+    AjaxResult<WskhOpenaccountconfig> queryConfig(Long configid, HttpServletRequest request);
 }

+ 2 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IOrganService.java

@@ -79,4 +79,6 @@ public interface IOrganService {
     AjaxResult logout(Long userid, HttpServletRequest request);
 
     AjaxResult<InitInvestorTradeResult> initAccTrade(String searchName, HttpServletRequest request);
+
+    AjaxResult<String> getOragnDefaultManager(Long userid, HttpServletRequest request);
 }

+ 2 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IReportFormService.java

@@ -52,4 +52,6 @@ public interface IReportFormService {
     AjaxResult<Map<Long, List<GoodsReportResult>>> daygoodscount(GoodsReportParam param, HttpServletRequest request);
 
     AjaxResult goodscountexport(GoodsReportParam param, HttpServletRequest request);
+
+    PageResult<ShareAmountQueryResult> shareAmountQueryPlat(ShareAmountQueryParam param, HttpServletRequest request);
 }

+ 2 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/ITaaccountService.java

@@ -41,4 +41,6 @@ public interface ITaaccountService extends IService<Taaccount> {
     AjaxResult recover(Long areaid, HttpServletRequest request);
 
     AjaxResult rebackChange(Long areaid, HttpServletRequest request);
+
+    AjaxResult<TaAccountInitResultDetail> updateTaAccountInit(HttpServletRequest request, Long accountId,String orgztypes);
 }

+ 35 - 21
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/CommonServiceImpl.java

@@ -187,7 +187,7 @@ public class CommonServiceImpl implements ICommonService {
 
     @Override
     public AjaxResult getEnumType(String typeCode, HttpServletRequest request) {
-        List<Enumdicitem> enumdicitems = iEnumdicitemMapper.selectList(new QueryWrapper<Enumdicitem>().eq("ENUMDICCODE", typeCode));
+        List<Enumdicitem> enumdicitems = iEnumdicitemMapper.selectInternational(typeCode);
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), enumdicitems);
     }
 
@@ -382,28 +382,32 @@ public class CommonServiceImpl implements ICommonService {
         return u.getSubarealevelpath().indexOf("," + fUserId + ",") >= 0;
     }
 
-    public Boolean checkOranCardNumOrMobile(int type, String message, Long userid) {
+    public Boolean checkOranCardNumOrMobile(Integer checkType, Integer checkField, Long userid, String message) {
         if (StringUtils.isBlank(message)) return true;
-        List<WskhUserinfo> wskhUserinfoList;
-        List<Userinfo> userinfoList;
-        if (type == 1) {
-            wskhUserinfoList = iWskhUserinfoMapper.selectList(new QueryWrapper<WskhUserinfo>()
-                    .eq("CARDNUM", message)
-                    .eq(userid != null, "userid", userid)
-            );
-            userinfoList = iUserinfoMapper.selectList(new QueryWrapper<Userinfo>()
-                    .eq("CARDNUM", message)
-                    .eq(userid != null, "userid", userid));
-        } else {
-            wskhUserinfoList = iWskhUserinfoMapper.selectList(new QueryWrapper<WskhUserinfo>()
-                    .eq("MOBILEPHONE", message)
-                    .eq(userid != null, "userid", userid));
-            userinfoList = iUserinfoMapper.selectList(new QueryWrapper<Userinfo>()
-                    .eq("MOBILE", message)
-                    .eq(userid != null, "userid", userid));
+        Long wskhUserinfoList = 0L;
+        Long userinfoList = 0L;
+
+        if (checkType == 1) {
+            wskhUserinfoList = iWskhUserinfoMapper.selectCount(new QueryWrapper<WskhUserinfo>()
+                    .eq(checkField == 1,"cardnum", message)
+                    .eq(checkField == 2,"mobile", message)
+                    .ne(userid != null, "userid", userid));
+        } else if (checkType == 2) {
+            userinfoList = iUserinfoMapper.selectCount(new QueryWrapper<Userinfo>()
+                    .eq(checkField == 1,"cardnum", message)
+                    .eq(checkField == 2,"mobile", message)
+                    .ne(userid != null, "userid", userid));
+        } else if (checkType == 3) {
+            wskhUserinfoList = iWskhUserinfoMapper.selectCount(new QueryWrapper<WskhUserinfo>()
+                    .eq(checkField == 1,"cardnum", message)
+                    .eq(checkField == 2,"mobile", message)
+                    .ne(userid != null, "userid", userid));
+            userinfoList = iUserinfoMapper.selectCount(new QueryWrapper<Userinfo>()
+                    .eq(checkField == 1,"cardnum", message)
+                    .eq(checkField == 2,"mobile", message)
+                    .ne(userid != null, "userid", userid));
         }
-
-        return wskhUserinfoList.size() + userinfoList.size() == 0;
+        return wskhUserinfoList + userinfoList == 0;
     }
 
     @Override
@@ -791,6 +795,16 @@ public class CommonServiceImpl implements ICommonService {
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), organSelectVo);
     }
 
+    @Override
+    public AjaxResult<WskhOpenaccountconfig> queryConfig(Long configid, HttpServletRequest request) {
+        // 获取网上开户参数54:手持证件照是否显示
+        WskhOpenaccountconfig config = iWskhOpenaccountconfigMapper.selectOne(new QueryWrapper<WskhOpenaccountconfig>().eq("configid",configid));
+        if (config != null && StringUtils.isNotBlank(config.getConfigvalue())) {
+            return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), config);
+        }
+        return AjaxResult.error(Constants.Success_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM002.getCode(), request.getHeader("Accept-Language"));
+    }
+
 
     public List<TaAccountQueryResult> queryTAAccount(TaAccountReportParam param) {
         return iTaaccountMapper.queryTAAccount(param);

+ 14 - 2
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganServiceImpl.java

@@ -579,7 +579,7 @@ public class OrganServiceImpl implements IOrganService {
             } else {
                 roletype.add(role);
             }
-            List<Market> markets = iMarketMapper.getMarketsNameByUseridAndrole(userid, roletype);
+            List<Market> markets = iMarketMapper.getMarketsNameByUseridAndrole(userid, roletype,null);
             result.setMarkets(markets);
         } else if (role == SysEnums.OrganRole.industry.getCode().intValue()) {
             String sm = iCommonService.getSysparmById(SysConstants.SYSPAMA_CODE_NINESERVENNINE);
@@ -588,7 +588,7 @@ public class OrganServiceImpl implements IOrganService {
                 //会员   已选市场
                 List<Integer> roletype = new ArrayList<Integer>();
                 roletype.add(6);
-                List<Market> markets = iMarketMapper.getMarketsNameByUseridAndrole(userid, roletype);
+                List<Market> markets = iMarketMapper.getMarketsNameByUseridAndrole(userid, roletype,null);
                 result.setMarkets(markets);
             }
         } else if (role == SysEnums.OrganRole.marketer.getCode().intValue()) {
@@ -1037,6 +1037,10 @@ public class OrganServiceImpl implements IOrganService {
             config.setUserid(vo.getUserid());
             config.setGoodsid(vo.getGoodsid());
             config.setRoletype(vo.getRoletype());
+            config.setUpdatetime(new Date());
+            config.setIsnodisplay(vo.getIsnodisplay());
+            config.setIscannotbuy(vo.getIscannotbuy());
+            config.setIscannotsell(vo.getIscannotsell());
             iMembergoodslimitconfigMapper.insert(config);
         } else {
             config.setUpdatetime(new Date());
@@ -1905,6 +1909,14 @@ public class OrganServiceImpl implements IOrganService {
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), results);
     }
 
+    @Override
+        public AjaxResult<String> getOragnDefaultManager(Long userid, HttpServletRequest request) {
+        Systemmanager user = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>()
+                .eq("areauserid", userid)
+                .eq("isdefault", 1));
+        return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), user == null ? "" : user.getLogincode() + "(" + user.getUsername() + ")");
+    }
+
     private void editARoleModifyMember(OrganRoleModifyParam vo, Systemmanager opeartion) {
         Date date = new Date();
 

+ 1 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganSonServiceService.java

@@ -450,7 +450,7 @@ public class OrganSonServiceService implements IOrganSonService {
         // 机构开户证件号码是否唯一
         String areacardflag = iCommonService.getSystemParam(Constants.REDIS_HEADER_SYSPARAM, Constants.SYSPARAM_CARD_NO);
         //验证证件号码是否存在
-        Boolean checkFlag1 = iCommonService.checkOranCardNumOrMobile(1, EncryptionUtils.encryptByAES(param.getCardnum().trim()), null);
+        Boolean checkFlag1 = iCommonService.checkOranCardNumOrMobile(3, 1, null, EncryptionUtils.encryptByAES(param.getCardnum().trim()));
         if (areacardflag != null && areacardflag.equals("1") && checkFlag1) {
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
         }

+ 1 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/ProfitSharServiceImpl.java

@@ -184,7 +184,7 @@ public class ProfitSharServiceImpl implements IProfitSharService {
         }
         List<Integer> r = new ArrayList<>() ;
         r.add(7);
-        List<Market> mks = iMarketMapper.getMarketsNameByUseridAndrole(uid, r);
+        List<Market> mks = iMarketMapper.getMarketsNameByUseridAndrole(uid, r,null);
         for (int i = 0; i < mks.size(); i++) {
             if (mks.get(i).getMarketid() < 1000 || !trademodeMap.containsKey(mks.get(i).getTrademode())) {
                 mks.remove(i);

+ 38 - 5
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/ReportFormServiceImpl.java

@@ -66,10 +66,6 @@ public class ReportFormServiceImpl implements IReportFormService {
     @Override
     public PageResult<ShareAmountQueryResult> selectShareAmount(ShareAmountQueryParam param, HttpServletRequest request) {
         Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
-        if (systemmanager.getReletype() != 1) {
-            param.setAreaid(systemmanager.getAreauserid());
-            param.setAreaname(iUseraccountMapper.selectOne(new QueryWrapper<Useraccount>().eq("userid", systemmanager.getAreauserid())).getAccountname());
-        }
         Object devidetype = redisServiceUtil.getCacheMapValue(Constants.REDIS_HEADER_SYSPARAM, SysConstants.SYSPARAM_CODE_DIVIDE);
         if (devidetype == null || "1".equals(devidetype.toString())) {
             param.setSearchtype(3);
@@ -95,8 +91,8 @@ public class ReportFormServiceImpl implements IReportFormService {
                 param.setTradedate(param.getTradedate() + param.getQuarter());
             }
             if (param.getCycletype() == 4 && param.getTradedate().length() == 8) {
-                param.setTradedate(null);
                 param.setCycletime(param.getTradedate());
+                param.setTradedate(null);
             }
             resultIPage = detailMapper.queryReportDivide(page, param);
         }
@@ -113,6 +109,43 @@ public class ReportFormServiceImpl implements IReportFormService {
     }
 
     @Override
+    public PageResult<ShareAmountQueryResult> shareAmountQueryPlat(ShareAmountQueryParam param, HttpServletRequest request) {
+        //只能查询自己和下一级的
+        Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
+        if (systemmanager.getReletype() != 1) {
+            if (param.getIsson() != null && param.getIsson() == 1) {
+                param.setParentareaid(systemmanager.getAreauserid());
+            } else {
+                param.setParentuserid(systemmanager.getAreauserid());
+            }
+        }
+
+        IPage<ShareAmountQueryResult> page = new Page<>(param.getPageNum(), param.getPageSize());
+        IPage<ShareAmountQueryResult> resultIPage;
+
+        if (param.getCycletype() == 0) {
+            resultIPage = detailMapper.queryByDate(page, param);
+        } else {
+            //周、月、季、年、全
+            if (param.getCycletype() == 2) {
+                //季报表
+                param.setTradedate(param.getTradedate() + param.getQuarter());
+            }
+            resultIPage = detailMapper.queryByOther(page, param);
+        }
+        PageResult<ShareAmountQueryResult> pageResult = new PageResult<>();
+        pageResult.setCode(Constants.Success_Code_Design);
+        pageResult.setMessage(AjaxResult.dealMsg(MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language")));
+        pageResult.setPages(resultIPage.getPages());
+        pageResult.setCurrent(resultIPage.getCurrent());
+        pageResult.setTotal(resultIPage.getTotal());
+        pageResult.setPageSize(resultIPage.getSize());
+        pageResult.setData(resultIPage.getRecords());
+        return pageResult;
+    }
+
+
+    @Override
     public AjaxResult<RefUserResult> queryRefUserSelect(String searchcode, HttpServletRequest request) {
         Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
         Long refereeuserid = systemmanager.getAreauserid();

+ 177 - 7
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/TaaccountServiceImpl.java

@@ -89,6 +89,10 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
     private IDraftUseraccountNewMapper iDraftUseraccountNewMapper;
     @Resource
     private IDraftUserinfoMapper iDraftUserinfoMapper;
+    @Resource
+    private IMarketMapper iMarketMapper;
+    @Resource
+    private IMsExtendroleMapper iMsExtendroleMapper;
 
     @Override
     public PageResult<TaAccountQueryResult> queryUserMsg(HttpServletRequest request, TaAccountQueryParam taAccountQueryParam) {
@@ -380,6 +384,26 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
                 return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM003.getCode(), request.getHeader("Accept-Language"));
             }
         }
+        if (ta.getIsmain() == 0 && param.getRelateduserid() != null &&
+                param.getRelateduserid().compareTo(ta.getUserid()) == 0) {
+            return AjaxResult.error(Constants.Error_Code_Design, MessageType.INVESTOR_ERROR_CODE_012.getCode(), request.getHeader("Accept-Language"));
+        }
+        //原来的状态
+        Integer oldtradestatus = ta.getTradestatus();
+        if (param.getRelateduserid() != null) {
+            ta.setRelateduserid(param.getRelateduserid());
+        }
+        ta.setRelatedaccountstatus(param.getRelatedaccountstatus());
+        iTaaccountMapper.update(ta, new QueryWrapper<Taaccount>().eq("accountid", ta.getAccountid()));
+
+        List<Logintaaccount> logintaaccounts = iLogintaaccountMapper.selectList(new QueryWrapper<Logintaaccount>().eq("accountid", param.getAccountId()));
+        List<Long> list = logintaaccounts.stream().map(Logintaaccount::getAccountid).collect(Collectors.toList());
+
+        Set<Long> set = new HashSet<>();
+        Set<Long> set_msg = new HashSet<>();
+        if (!list.isEmpty()) {
+            set.addAll(list);
+        }
         //处理当前登录账户资金权限
         if (CollectionUtils.isNotEmpty(param.getLoginIds())) {
             iLogintaaccountMapper.delete(new QueryWrapper<Logintaaccount>().eq("ACCOUNTID", param.getAccountId()));
@@ -390,8 +414,17 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
                 lt.setModifytime(new Date());
                 lt.setModifierid(systemmanager.getAutoid());
                 iLogintaaccountMapper.insert(lt);
+
+                if (!set.contains(id)) {
+                    set_msg.add(id);
+                } else {
+                    set.remove(id);
+                }
             }
         }
+        set_msg.addAll(set);
+        ta.setSet_msg(set_msg);
+
         //处理市场权限
         if (systemmanager.getAreauserid().compareTo(ta.getUserid()) == 0) {
             iTaaccountmarketMapper.delete(new QueryWrapper<Taaccountmarket>().eq("ACCOUNTID", param.getAccountId()));
@@ -405,6 +438,26 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         }
         //记录操作日志
         writeOperateLog(param, ta, systemmanager);
+
+        try {
+            //发送登录服务消息
+            if (ta.getSet_msg() != null && !ta.getSet_msg().isEmpty()) {
+                iSendMsgService.sendLoginMsg(ta.getSet_msg(), 4, 0);
+            }
+
+            //发送用户变更通知
+            if (Objects.equals(oldtradestatus, SysEnums.TradeStatusEnum.CANCELED.getType())) {
+                iSendMsgService.sendUserChangeMsg(ta.getAccountid(), ta.getUserid(),
+                        SysEnums.UserOperateTypeEnum.ADD.getType(),
+                        SysEnums.NotifyModeEnum.UNICAST.getType());
+            } else {
+                iSendMsgService.sendUserChangeMsg(ta.getAccountid(), ta.getUserid(),
+                        SysEnums.UserOperateTypeEnum.UPDATE.getType(),
+                        SysEnums.NotifyModeEnum.UNICAST.getType());
+            }
+        } catch (Exception e) {
+            log.error("资金账户-->修改 发送用户信息修改失败,code=" + FunCodeConstants.FunCode_Trade_UserChangeNtf + ",请检查!,失败原因:" + e);
+        }
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"));
     }
 
@@ -455,7 +508,7 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
             }
         }
         //原来的状态
-        Integer oldtradestatus = updateParam.getTradestatus();
+        Integer oldtradestatus = old.getTradestatus();
         if (updateParam.getOutthreshold() != null) {
             old.setOutthreshold(updateParam.getOutthreshold());
         }
@@ -465,6 +518,10 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         }
         iTaaccountMapper.update(old, new QueryWrapper<Taaccount>().eq("accountid", old.getAccountid()));
 
+        List<Logintaaccount> logintaaccounts = iLogintaaccountMapper.selectList(new QueryWrapper<Logintaaccount>().eq("accountid", updateParam.getAccountid()));
+        Set<Long> set_msg = logintaaccounts.stream().map(Logintaaccount::getAccountid).collect(Collectors.toSet());
+        old.setSet_msg(set_msg);
+
         Systemmanagerlog syslog = new Systemmanagerlog();
         syslog.setUserid(systemmanager.getAutoid());
         syslog.setReletype(systemmanager.getReletype());
@@ -484,15 +541,21 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
                 + "\"outthreshold\":" + old.getOutthreshold() + "\"}");
 
         try {
+            //发送登录服务消息
+            if (old.getSet_msg() != null && !old.getSet_msg().isEmpty()) {
+                iSendMsgService.sendLoginMsg(old.getSet_msg(), 4, 0);
+            }
+
             //发送用户变更通知
-            if (Objects.equals(oldtradestatus, SysEnums.TradeStatusEnum.CANCELED.getType()))
+            if (Objects.equals(oldtradestatus, SysEnums.TradeStatusEnum.CANCELED.getType())) {
                 iSendMsgService.sendUserChangeMsg(old.getAccountid(), old.getUserid(),
                         SysEnums.UserOperateTypeEnum.ADD.getType(),
                         SysEnums.NotifyModeEnum.UNICAST.getType());
-            else
+            } else {
                 iSendMsgService.sendUserChangeMsg(old.getAccountid(), old.getUserid(),
                         SysEnums.UserOperateTypeEnum.UPDATE.getType(),
                         SysEnums.NotifyModeEnum.UNICAST.getType());
+            }
         } catch (Exception e) {
             log.error("资金账户-->修改 发送用户信息修改失败,code=" + FunCodeConstants.FunCode_Trade_UserChangeNtf + ",请检查!,失败原因:" + e);
         }
@@ -619,7 +682,7 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         //错误 #58783
         organ.setModifystatus(1);
         // #6607 【交易中心-管理端】将实名认证的申请直接撤回会导致实名状态一直为审核中
-        organ.setHasauth( (oldVo == null || oldVo.getHasauth() == null) ? 0: oldVo.getHasauth());
+        organ.setHasauth((oldVo == null || oldVo.getHasauth() == null) ? 0 : oldVo.getHasauth());
         iUseraccountMapper.update(organ, new QueryWrapper<Useraccount>().eq("userid", organ.getUserid()));
 
         if (organ.getUsertype() == 3 || organ.getUsertype() == 4) {
@@ -635,15 +698,122 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"));
     }
 
+    @Override
+    public AjaxResult<TaAccountInitResultDetail> updateTaAccountInit(HttpServletRequest request, Long accountId,String orgztypes) {
+        TaAccountInitResultDetail initResultDetail = new TaAccountInitResultDetail();
+        Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
+        Taaccount taaccount = iTaaccountMapper.selectOne(new QueryWrapper<Taaccount>().eq("ACCOUNTID", accountId));
+        //是否显示期权市场
+
+        String sp1 = iCommonService.getSysparmById(SysConstants.SYSPAMA_CODE_ACCOUNT_MARKET);
+        if (systemmanager.getReletype() != 1 && !iCommonService.checkIsAreaSon2(systemmanager.getAreauserid(), taaccount.getUserid())) {
+            return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM003.getCode(), request.getHeader("Accept-Language"));
+        }
+
+        String[] roletyes = orgztypes.split(",");
+        for (String role : roletyes) {
+            if (Integer.parseInt(role) == SysEnums.OrganRole.selfsupport.getCode()) {
+                //如果有自营会员角色
+                initResultDetail.setSelfFlag(1);
+                break;
+            }
+        }
+
+        String sp = iCommonService.getSysparmById(SysConstants.SYSPARAM_SETTING_SHOW_RU);
+        if (sp != null) {
+            initResultDetail.setIsshowrelationuser(sp);
+        } else {
+            initResultDetail.setIsshowrelationuser("1");
+        }
+        //自营市场
+        List<Integer> roletype = new ArrayList<Integer>();
+        roletype.add(SysEnums.OrganRole.selfsupport.getCode());
+        int isqq = 0;
+        if (StringUtils.isNotBlank(sp1) && !"1".equals(sp1)) {
+            isqq = 1;
+        }
+        List<Market> Markets = iMarketMapper.getMarketsNameByUseridAndrole(systemmanager.getAreauserid(),roletype,isqq);
+        initResultDetail.setMarkets(Markets);
+        //登录账户
+        QueryWrapper<Loginaccount> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("loginid");
+        queryWrapper.eq("userid", systemmanager.getAreauserid()) // 替换 userId 为实际的参数值
+                .eq("loginstatus", 1);
+        queryWrapper.exists("SELECT * FROM logintaaccount l WHERE l.loginid = loginaccount.loginid");
+        List<BigDecimal> loginIds = iLoginaccountMapper.selectObjs(queryWrapper);
+        initResultDetail.setLoginaccount(loginIds);
+        List<Long> defaultLogin = iLoginaccountMapper.getLoginNotExistsLt(systemmanager.getAreauserid());
+        initResultDetail.setDefaultloginaccount(defaultLogin);
+
+        //获取市场权限
+        Map<Long, TaAccountMarketVo> lmap = new HashMap<>();
+        List<TaAccountMarketVo> dty = iTaaccountmarketMapper.selectByAccountId(taaccount.getAccountid());
+        for (TaAccountMarketVo taAccountMarketVo : dty) {
+            taAccountMarketVo.setChecked(1);
+            lmap.put(taAccountMarketVo.getMarketId(), taAccountMarketVo);
+        }
+        for (Market market : Markets) {
+            if (!lmap.containsKey(market.getMarketid())) {
+                TaAccountMarketVo te = new TaAccountMarketVo();
+                te.setChecked(0);
+                te.setMarketId(market.getMarketid());
+                te.setMarketName(market.getMarketname());
+                te.setSpotRightType(market.getSpotrighttype());
+                te.setDType(market.getBuyspotrighttype());
+                te.setTradeMode(market.getTrademode());
+                te.setTradeProperty(market.getTradeproperty());
+                lmap.put(market.getMarketid(), te);
+            } else {
+                lmap.get(market.getMarketid()).setFSpotRightType(market.getSpotrighttype());
+                lmap.get(market.getMarketid()).setFdType(market.getBuyspotrighttype());
+                lmap.get(market.getMarketid()).setTradeMode(market.getTrademode());
+                lmap.get(market.getMarketid()).setTradeProperty(market.getTradeproperty());
+            }
+        }
+        initResultDetail.setClildmarkets(lmap);
+
+        StringBuffer oldLogin = new StringBuffer();
+        //获取当前登录账户资金权限
+        List<Logintaaccount> logintaaccounts = iLogintaaccountMapper.selectList(new QueryWrapper<Logintaaccount>().eq("ACCOUNTID", taaccount.getAccountid()));
+        logintaaccounts.forEach(p -> oldLogin.append(p).append(";"));
+
+        if (taaccount.getRelateduserid() != null) {
+            Useraccount ua = iUseraccountMapper.selectOne(new QueryWrapper<Useraccount>().eq("userid",taaccount.getRelateduserid()));
+            initResultDetail.setRelatedU(ua);
+        }
+        if (taaccount.getUserid().compareTo(systemmanager.getAreauserid()) != 0) {
+            initResultDetail.setCannotEdit( 1);
+        }
+        initResultDetail.setOldLogin(oldLogin.toString());
+        initResultDetail.setTaa(taaccount);
+
+        MsExtendrole entity = iMsExtendroleMapper.selectOne(new QueryWrapper<MsExtendrole>()
+                .eq("roletypeid", 5L)
+                .eq("areauserid", taaccount.getUserid()));
+        if (entity != null) {
+            initResultDetail.setCannotEdit(1);
+        }
+
+        //交易类型
+        Map<String, Object> map = redisServiceUtil.getCacheMap(Constants.REDIS_HEADER_DICT + "marketbstype");
+        Map<Integer, String> map_ = new TreeMap<>();
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            map_.put(Integer.valueOf(entry.getKey()), entry.getValue().toString());
+        }
+        initResultDetail.setMarketbstype(map_);
+
+        return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"),initResultDetail);
+    }
+
     private AjaxResult refUserAccount(Long areaid, Systemmanager systemmanager, HttpServletRequest request) {
         Useraccount org = iUseraccountMapper.selectOne(new QueryWrapper<Useraccount>().eq("userid", areaid)); //areaid就是userid
         Userinfo ui = iUserinfoMapper.selectOne(new QueryWrapper<Userinfo>().eq("userid", areaid));
         List<Userinfo> uiList = iUserinfoMapper.selectList(new QueryWrapper<Userinfo>()
                 .eq("userstatus", 1)
                 .ne("userid", ui.getUserid())
-                .and(a -> a.eq(StringUtils.isNotBlank(ui.getCardnum()),"cardnum", ui.getCardnum())
+                .and(a -> a.eq(StringUtils.isNotBlank(ui.getCardnum()), "cardnum", ui.getCardnum())
                         .or()
-                        .eq(StringUtils.isNotBlank(ui.getMobile()),"mobile", ui.getMobile()))
+                        .eq(StringUtils.isNotBlank(ui.getMobile()), "mobile", ui.getMobile()))
         );
         if (CollectionUtils.isNotEmpty(uiList)) {
             for (Userinfo userinfo : uiList) {
@@ -888,7 +1058,7 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         //注销状态
         ta.setTradestatus(SysEnums.TradeStatusEnum.CANCELED.getType());
         ta.setTradestatuschangetime(new Date());
-        iTaaccountMapper.update(ta,new QueryWrapper<Taaccount>().eq("accountid",ta.getAccountid()));
+        iTaaccountMapper.update(ta, new QueryWrapper<Taaccount>().eq("accountid", ta.getAccountid()));
 
         Userinfo info = iUserinfoMapper.selectOne(new QueryWrapper<Userinfo>().eq("userid", userid));
         info.setUserstatus(2);

+ 14 - 4
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/UseraccountServiceImpl.java

@@ -206,8 +206,17 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
     private DetailAfterResult getModifyInvestorDetail(Long userid) {
         DetailAfterResult detailResult = new DetailAfterResult();
         UserAccountDetailVo userAccountDetailVo = iUseraccountMapper.selectNewDetail(userid);
+        // 从draft表NewContent取内容
+        DraftUseraccountNew dua = JsonUtils.json2Object(userAccountDetailVo.getNewcontent(), DraftUseraccountNew.class);
+        if (dua == null) {
+            userAccountDetailVo.setHasAuth(0);
+        } else {
+            userAccountDetailVo.setHasAuth(dua.getHasauth());
+        }
+
         detailResult.setUserAccountDetailVo(userAccountDetailVo);
         UserinfoDetailVo userinfoDetailVo = iUserinfoMapper.getUserinfoNewDetail(userid);
+        userinfoDetailVo.setPathName(userinfoDetailVo.getCountryName()+userinfoDetailVo.getPathName());
         detailResult.setUserinfoDetailVo(userinfoDetailVo);
         return detailResult;
     }
@@ -217,6 +226,7 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
         UserAccountDetailVo userAccountDetailVo = iUseraccountMapper.selectDetail(userid);
         detailResult.setUserAccountDetailVo(userAccountDetailVo);
         UserinfoDetailVo userinfoDetailVo = iUserinfoMapper.getUserinfoDetail(userid);
+        userinfoDetailVo.setPathName(userinfoDetailVo.getCountryName()+userinfoDetailVo.getPathName());
         detailResult.setUserinfoDetailVo(userinfoDetailVo);
         return detailResult;
     }
@@ -434,14 +444,14 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
                     // 机构开户证件号码是否唯一
                     String areacardflag = iCommonService.getSystemParam(Constants.REDIS_HEADER_SYSPARAM, Constants.SYSPARAM_CARD_NO);
                     //验证证件号码是否存在
-                    if (areacardflag != null && areacardflag.equals("1") && !iCommonService.checkOranCardNumOrMobile(1, dui.getCardnum(), dui.getUserid())) {
+                    if (areacardflag != null && areacardflag.equals("1") && !iCommonService.checkOranCardNumOrMobile(3, 1, dui.getUserid(), dui.getCardnum())) {
                         return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
                     }
                 }
                 String newMobile = dui.getMobile();
 
                 //验证手机号是否存在
-                if (!iCommonService.checkOranCardNumOrMobile(2, newMobile, dua.getUserid())) {
+                if (!iCommonService.checkOranCardNumOrMobile(2, 2, dua.getUserid(), newMobile)) {
                     return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_016.getCode(), request.getHeader("Accept-Language"));
                 }
 
@@ -619,7 +629,7 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
                     // 机构开户证件号码是否唯一
                     String areacardflag = iCommonService.getSystemParam(Constants.REDIS_HEADER_SYSPARAM, Constants.SYSPARAM_CARD_NO);
                     //验证证件号码是否存在
-                    if (areacardflag != null && areacardflag.equals("1") && !iCommonService.checkOranCardNumOrMobile(1, dui.getCardnum(), dui.getUserid())) {
+                    if (areacardflag != null && areacardflag.equals("1") && !iCommonService.checkOranCardNumOrMobile(3, 1, null, dui.getCardnum())) {
                         return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
                     }
                 }
@@ -712,7 +722,7 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
         }
 
         // 更新是否实名、newContent字段 -- dyp
-        dua.setHasauth(param.getUserAccountDetailVo().getIsAuth());
+        dua.setHasauth(param.getUserAccountDetailVo().getHasAuth());
         dua.setNewcontent(JsonUtils.object2Json(dua));
 
         dua.setOldcontent(JsonUtils.object2Json(useraccount));

+ 68 - 12
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/WskhUserinfoServiceImpl.java

@@ -142,14 +142,22 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
                 wskhUserinfo.setReferralname(referral.getAccountname());
             }
         }
-        if (wskhUserinfo.getBrokerid() != null)
+        String countryName = "";
+        if (wskhUserinfo.getBrokerid() != null) {
             wskhUserinfo.setBrokername(iUseraccountMapper.selectOrganName(Long.valueOf(wskhUserinfo.getBrokerid())));
-        if (wskhUserinfo.getAreaid() != null)
+        }
+        if (wskhUserinfo.getAreaid() != null) {
             wskhUserinfo.setAreaname(iUseraccountMapper.selectOrganName(wskhUserinfo.getAreaid()));
-        if (wskhUserinfo.getMemberareaid() != null)
+        }
+        if (wskhUserinfo.getMemberareaid() != null) {
             wskhUserinfo.setMemberusername(iUseraccountMapper.selectOrganName(wskhUserinfo.getMemberareaid()));
-        if (wskhUserinfo.getDistrictid() != null)
-            wskhUserinfo.setPathname(iDivisionMapper.selectAreaPathName(wskhUserinfo.getCountryid()) + iDivisionMapper.selectAreaPathName(wskhUserinfo.getDistrictid()) + wskhUserinfo.getCardaddress());
+        }
+        if (wskhUserinfo.getCountryid() != null) {
+            countryName = iDivisionMapper.selectAreaPathName(wskhUserinfo.getCountryid());
+        }
+        if (wskhUserinfo.getDistrictid() != null) {
+            wskhUserinfo.setPathname(countryName + iDivisionMapper.selectAreaPathName(wskhUserinfo.getDistrictid()) + wskhUserinfo.getCardaddress());
+        }
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), wskhUserinfo);
     }
 
@@ -167,11 +175,11 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
         // 机构开户证件号码是否唯一
         String areaCardFlag = iCommonService.getSystemParam(Constants.REDIS_HEADER_SYSPARAM, Constants.SYSPARAM_CARD_NO);
         // 验证证件号码是否存在
-        if (areaCardFlag != null && areaCardFlag.equals("1") && !iCommonService.checkOranCardNumOrMobile(1, vo.getCardnum(), null)) {
+        if (areaCardFlag != null && areaCardFlag.equals("1") && !iCommonService.checkOranCardNumOrMobile(3, 1, null, EncryptionUtils.encryptByAES(vo.getCardnum()))) {
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
         }
         // 验证手机号是否存在
-        if (StringUtils.isNotBlank(vo.getMobilephone()) && !iCommonService.checkOranCardNumOrMobile(2, vo.getMobilephone(), null)) {
+        if (StringUtils.isNotBlank(vo.getMobilephone()) && !iCommonService.checkOranCardNumOrMobile(3, 2, null, EncryptionUtils.encryptByAES(vo.getCardnum()))) {
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_016.getCode(), request.getHeader("Accept-Language"));
         }
         //入库重新加密
@@ -280,7 +288,7 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
                     return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_010.getCode(), request.getHeader("Accept-Language"));
                 }
                 //验证证件号码是否存在
-                if (!iCommonService.checkOranCardNumOrMobile(1, vo.getCardnum(), null)) {
+                if (!iCommonService.checkOranCardNumOrMobile(2, 1, null, vo.getCardnum())) {
                     return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
                 }
                 if (wui.getUserinfotype() == 2) {
@@ -373,13 +381,13 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
         Systemparam sysParam = iSystemparamMapper.selectOne(new QueryWrapper<Systemparam>().eq("PARAMCODE", Constants.SYSPARAM_CARD_NOTWO));
         //验证证件号码是否唯一
         if (!base.getCardnum().equals(EncryptionUtils.encryptByAES(currentVo.getCardnum()))) {
-            if (!iCommonService.checkOranCardNumOrMobile(1, EncryptionUtils.encryptByAES(currentVo.getCardnum()), currentVo.getUserid()) && (sysParam == null) || "1".equals(sysParam.getParamvalue())) {
+            if (!iCommonService.checkOranCardNumOrMobile(3, 1, currentVo.getUserid(), EncryptionUtils.encryptByAES(currentVo.getCardnum())) && (sysParam == null) || "1".equals(sysParam.getParamvalue())) {
                 return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_011.getCode(), request.getHeader("Accept-Language"));
             }
         }
         // 验证手机号是否唯一
         if (!base.getMobilephone().equals(EncryptionUtils.encryptByAES(currentVo.getMobilephone()))) {
-            if (!iCommonService.checkOranCardNumOrMobile(2, EncryptionUtils.encryptByAES(currentVo.getMobilephone()), currentVo.getUserid())) {
+            if (!iCommonService.checkOranCardNumOrMobile(3, 2, currentVo.getUserid(), EncryptionUtils.encryptByAES(currentVo.getMobilephone()))) {
                 return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_016.getCode(), request.getHeader("Accept-Language"));
             }
         }
@@ -488,6 +496,10 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
     @Override
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult investorProcess(InvestorProcessParam param, HttpServletRequest request) {
+        Map<String, Object> resultMap = new HashMap<>();
+        resultMap.put("code", 0);
+        resultMap.put("msg", "审核成功");
+
         WskhUserinfo wui = iWskhUserinfoMapper.selectOne(new QueryWrapper<WskhUserinfo>().eq("userid", param.getAuditid()));
         if (wui == null) {
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.ORGAN_ERROR_CODE_021.getCode(), request.getHeader("Accept-Language"));
@@ -568,7 +580,7 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
                 String countStr = CommonUtil.addZero(count.toString(), 5);//前补0,5位
                 //投资者ID
                 Long userid = Long.valueOf(wui.getMemberareaid() + countStr);
-                passauto(wui, userid, countStr, systemmanager, param);
+                passauto(wui, userid, countStr, systemmanager, param, resultMap);
                 iUseraccountMapper.updateAccount(userid);
             } else {
                 //不通过
@@ -603,10 +615,50 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
                 iWskhUserinfoMapper.updateById(wui);
             }
         }
+
+        if (resultMap.get("code") != null && resultMap.get("code").toString().equals("0")) {
+            //发送消息
+            sendAuditMsg(resultMap);
+        }
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"));
     }
 
-    public void passauto(WskhUserinfo wui, Long userid, String countStr, Systemmanager user, InvestorProcessParam param) {
+    private void sendAuditMsg(Map<String, Object> resultMap) {
+        try {
+            if (resultMap.containsKey("taaccount") && resultMap.get("taaccount") != null
+                    && resultMap.containsKey("userinfo") && resultMap.get("userinfo") != null) {
+                List<Taaccount> ta = (List<Taaccount>) resultMap.get("taaccount");
+                Userinfo ui = (Userinfo) resultMap.get("userinfo");
+                for (Taaccount taaccount : ta) {
+                    iSendMsgService.sendCustomerInfo(ui, taaccount.getAccountid(), "1", 0);
+
+                    //发给账户服务的,用户变更通知
+                    iSendMsgService.sendUserChangeMsg(taaccount.getAccountid(), taaccount.getUserid(),
+                            SysEnums.UserOperateTypeEnum.ADD.getType(),
+                            SysEnums.NotifyModeEnum.UNICAST.getType());
+                }
+            }
+
+            if (resultMap.containsKey("loginaccount") && resultMap.get("loginaccount") != null) {
+                Loginaccount la = (Loginaccount) resultMap.get("loginaccount");
+
+                // 登录账户变更通知 changetype = 0 新增
+                sendLoginAccChangeNtf(la.getLoginid(), 0);
+            }
+
+        } catch (Exception e) {
+            log.error("账户信息变更通知发送失败,失败原因:" + e.getMessage());
+        }
+    }
+
+    public void sendLoginAccChangeNtf(Long loginid, int changeType) {
+        if (loginid == null) return;
+        Set<Long> logins = new HashSet<>();
+        logins.add(loginid);
+        iSendMsgService.sendLoginMsg(logins, changeType, 0);
+    }
+
+    public void passauto(WskhUserinfo wui, Long userid, String countStr, Systemmanager user, InvestorProcessParam param, Map<String, Object> resultMap) {
         //系统默认登录密码
         String lpwd = redisServiceUtil.getCacheMapValue(Constants.REDIS_HEADER_SYSPARAM, "046");
         //系统默认资金密码
@@ -715,6 +767,7 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
         ui.setRemark(wui.getRemark());
         ui.setUserstatus(1);
         ui.setUsertype(5);
+        ui.setCountryid(wui.getCountryid());
         ui.setSignpdfurl(wui.getSignpdfurl());
         ui.setProvinceid(wui.getProvinceid());
         ui.setCityid(wui.getCityid());
@@ -770,6 +823,7 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
         la.setModifytime(new Date());
         la.setHasupdatedpwd(0);
         iLoginaccountMapper.insert(la);
+        resultMap.put("loginaccount", la);
 
         //默认保存手机登录关联关系
         if (StringUtils.isNotBlank(ui.getMobile())) {
@@ -806,6 +860,8 @@ public class WskhUserinfoServiceImpl extends ServiceImpl<IWskhUserinfoMapper, Ws
             taaList.add(ac);
             iTaaccountMapper.insert(ac);
         }
+        resultMap.put("taaccount", taaList);
+        resultMap.put("userinfo", ui);
 
         if (wui.getOpenmode() == 11 || wui.getOpenmode() == 12) {
             WskhUserauthinfo wuai = iWskhUserauthinfoMapper.selectOne(new QueryWrapper<WskhUserauthinfo>().eq("userid", wui.getUserid()));

+ 8 - 0
mtp3-century/src/main/resources/mapper/EnumdicitemMapper.xml

@@ -31,5 +31,13 @@
             and e.enumitemname = #{emvalue}
         </where>
     </select>
+    <select id="selectInternational" resultType="com.muchinfo.mtp3pojos.entity.Enumdicitem"
+            parameterType="java.lang.String">
+        select e.*,ex.ENUMDICNAMEEN enumdicnameen,
+               ex.ENUMDICNAMEZH_TW enumdicnamezhtw,ex.ENUMDICNAMETH enumdicnameth,
+               ex.ENUMDICNAMEVI enumdicnamevi
+        from ENUMDICITEM e left join enumdicitemex ex on e.ENUMDICCODE = ex.ENUMDICCODE and e.enumitemname = ex.enumitemname
+        where e.ENUMDICCODE = #{typeCode}
+    </select>
 
 </mapper>

+ 5 - 1
mtp3-century/src/main/resources/mapper/ISystemRunService.xml

@@ -69,6 +69,9 @@
         <result column="taaccounttype" property="taAccountType" />
         <result column="parentaccountid" property="parentAccountId" />
         <result column="tradestatus" property="tradeStatus" />
+        <result column="relateduserid" property="relatedUserId" />
+        <result column="userid" property="userId" />
+        <result column="relatedaccountstatus" property="relatedAccountStatus" />
         <association property="accountName" column="USERID"
                      jdbcType="VARCHAR"
                      select="com.muchinfo.mtp3interface.mapper.IUseraccountMapper.selectOrganName"></association>
@@ -135,7 +138,8 @@
     <select id="queryTaAccountPage" resultMap="PageResultMap"
             parameterType="com.muchinfo.mtp3pojos.vo.taaccount.TaAccountQueryParam">
         select t.accountid, t.ismain,t.taaccounttype, t.parentaccountid
-        ,t.tradestatus,t.userid, t.relateduserid,t.currencyid,t.outthreshold
+        ,t.tradestatus,t.userid,t.currencyid,t.outthreshold
+        ,t.relateduserid,t.relatedaccountstatus
         from
         taaccount t
         <where>

+ 3 - 0
mtp3-century/src/main/resources/mapper/MarketMapper.xml

@@ -81,6 +81,9 @@
         from market m ,arearolemarket o
         where m.marketid = o.marketid and o.areauserid = #{uid}
         and m.marketstatus = 2
+        <if test="isqq!=null and isqq != 0 ">
+            and m.tradeMode !=18
+        </if>
         and roletype in
         <foreach collection="roletype" close=")" open="(" separator="," item="item">
             #{item}

+ 94 - 3
mtp3-century/src/main/resources/mapper/ReckonDaydividecountdetailMapper.xml

@@ -224,7 +224,7 @@
                         'YYYYMMDD'),'iw')+3,'yyyy') || to_char(to_date(#{vo.cycletime},
                         'YYYYMMDD'), 'iw') from dual)
                     </if>
-                    <if test="vo.tradedate !=null and vo.tradedate != ''">
+                    <if test="vo.trade  date !=null and vo.tradedate != ''">
                         and t.cycletime = #{vo.tradedate}
                     </if>
                     <if test="vo.areaid != null">
@@ -1420,9 +1420,9 @@
                 to_date(#{vo.startDate},'yyyy-MM-dd')
                 and to_date(#{vo.endDate},'yyyy-MM-dd')
             </if>
-            <if test="vo.bankname != null and vo.bankname !=''">
+            <if test="vo.cusbankname != null and vo.cusbankname !=''">
                 and (bi.bankname like
-                '%'||#{vo.bankname}||'%')
+                '%'||#{vo.cusbankname}||'%')
             </if>
         </where>
         order by r.tradedate desc
@@ -1431,4 +1431,95 @@
     <select id="execReportMonthType" parameterType="java.util.HashMap" statementType="CALLABLE">
         <![CDATA[{call PKG_HIS_REPORT_TABLE.PROC_HIS_REPORT_TABLE_MONTH(#{tradedate,mode=IN,jdbcType=DATE})}]]>
     </select>
+
+    <select id="queryByDate" resultType="com.muchinfo.mtp3pojos.vo.reportform.ShareAmountQueryResult">
+        select
+        r.tradedate as cycletime,
+        r.areaid,
+        r.areatype,
+        r.areaaccountid,
+        r.totalcount,
+        r.totalfee,
+        r.divideamount,
+        r.accountcurrencyid,
+        u.userid || '/' || u.accountname as areaname
+        from reckon_daydividecount r
+        left join useraccount u on r.areaid = u.userid
+        <where>
+            <if test="vo.tradedate != null and vo.tradedate != '' ">
+                and r.tradedate= #{vo.tradedate,jdbcType=CHAR}
+            </if>
+            <if test="vo.areaid != null">
+                and r.areaid = #{vo.areaid}
+            </if>
+            <if test="vo.areaname != null and vo.areaname != ''">
+                and r.areaid = #{vo.areaname}
+            </if>
+            <if test="vo.areatype != null and vo.areatype !=''">
+                and r.areatype in (${vo.areatype})
+            </if>
+            <if test="vo.usertype != null">
+                and u.usertype in (${vo.usertype})
+            </if>
+            <if test="vo.parentuserid != null or vo.parentuserid==1">
+                and (r.areaid = #{vo.parentuserid} or u.usertype=2 )
+            </if>
+            <if test="vo.parentareaid != null">
+                and r.areaid in (select userid from useraccount uo start with
+                uo.userid=${vo.parentareaid} connect by prior uo.userid
+                =uo.parentuserid and uo.usertype=3)
+            </if>
+            <if test="vo.yxareauserid !=null and vo.yxareauserid != ''">
+                and (u.userid = #{vo.yxareauserid} or u.userid in (select userid from useraccount t
+                where t.usertype in (2,3) and t.memberuserid in (select userid from useraccount t where t.usertype = 2 and t.parentuserid = #{vo.yxareauserid})))
+            </if>
+        </where>
+        order by r.areaid,r.areatype,r.areaaccountid
+    </select>
+    <select id="queryByOther" resultType="com.muchinfo.mtp3pojos.vo.reportform.ShareAmountQueryResult">
+        select
+        r.cycletype,r.cycletime,r.areaid,r.areatype,
+        r.areaaccountid,r.totalcount,r.totalfee,
+        r.divideamount,
+        u.userid || '/' || u.accountname as areaname
+        from report_dividecount r
+        left join useraccount u on r.areaid = u.userid
+        <where>
+            <if test="vo.cycletype !=null and vo.cycletype != ''">
+                and r.cycletype=#{vo.cycletype}
+            </if>
+            <if test="vo.tradedate !=null and vo.tradedate != '' and vo.cycletype != 4">
+                and r.cycletime = #{vo.tradedate}
+            </if>
+            <if test="vo.tradedate !=null and vo.tradedate != '' and vo.cycletype == 4">
+                and r.cycletime= (select to_char(trunc(to_date(#{vo.tradedate},
+                'YYYYMMDD'),'iw')+3,'yyyy') || to_char(to_date(#{vo.tradedate},
+                'YYYYMMDD'), 'iw') from dual)
+            </if>
+            <if test="vo.areaname != null and vo.areaname !=''">
+                and r.areaid = #{vo.areaname}
+            </if>
+            <if test="vo.usertype != null and vo.usertype !=''">
+                and u.usertype in (${vo.usertype})
+            </if>
+            <if test="vo.areatype != null and vo.areatype !=''">
+                and r.areatype in (${vo.areatype})
+            </if>
+            <if test="vo.parentuserid != null or vo.parentuserid==1">
+                <choose>
+                    <when test="vo.parentuserid==1">
+                        and (r.areaid = 1 or u.usertype=2 )
+                    </when>
+                    <otherwise>
+                        and (r.areaid = #{vo.parentuserid} or u.parentuserid=#{vo.parentuserid} )
+                    </otherwise>
+                </choose>
+            </if>
+            <if test="vo.yxareauserid !=null and vo.yxareauserid != ''">
+                and (u.userid = #{vo.yxareauserid} or u.userid in (select userid from useraccount t
+                where t.usertype in (2,3) and t.memberuserid in (select userid from useraccount t where t.usertype = 2 and t.parentuserid = #{vo.yxareauserid})))
+            </if>
+        </where>
+        order by r.areaid,r.areatype,r.areaaccountid
+    </select>
 </mapper>

+ 1 - 4
mtp3-century/src/main/resources/mapper/SystemmanagerMapper.xml

@@ -81,12 +81,9 @@
         from SYSTEMMANAGER s
         left join ROLEUSER r on s.autoid = r.managerid
         <where>
-            <if test="autoid != null">
+            <if test="autoId != null">
                 and r.roleid = #{autoId}
             </if>
-            <if test="roletype != null">
-                and r.roletype = #{roletype}
-            </if>
         </where>
         order by s.logincode
     </select>

+ 7 - 5
mtp3-century/src/main/resources/mapper/UseraccountMapper.xml

@@ -70,7 +70,7 @@
         <result column="accountId" property="accountId" />
         <result column="refereeName" property="refereeName" />
         <result column="accountName" property="accountName" />
-        <result column="isAuth" property="isAuth" />
+        <result column="hasauth" property="hasAuth" />
         <result column="accountstatus" property="accountStatus" />
         <result column="modifystatus" property="modifyStatus" />
         <result column="createtime" property="createTime" />
@@ -90,7 +90,7 @@
         <result column="createtime" property="createTime" />
         <result column="modifytime" property="modifyTime"/>
         <result column="modifystatus" property="modifyStatus" />
-        <result column="hasauth" property="isAuth" />
+        <result column="hasauth" property="hasAuth" />
         <result column="modifyremark" property="modifyRemark" />
         <result column="audittime" property="auditTime" />
         <result column="accountstatus" property="accountStatus" />
@@ -98,6 +98,8 @@
         <result column="usertype" property="usertype" />
         <result column="refereeuserid" property="refereeuserid" />
         <result column="auditremark" property="auditremark" />
+        <result column="newcontent" property="newcontent" />
+        <result column="oldcontent" property="oldcontent" />
         <association property="auditAccountName" column="AUDITUSERID"
                      jdbcType="VARCHAR"
                      select="com.muchinfo.mtp3interface.mapper.ISystemmanagerMapper.selectUsersName"></association>
@@ -331,7 +333,7 @@
         where ba.signstatus=4 group by ta.userid
         )
         select uaref.accountname refereeName, t1.loginid loginId,ta.accountid accountId,o.accountname accountName
-         ,o.hasauth isAuth,o.accountstatus,o.modifystatus,o.createtime,o.modifytime,o.audittime,o.canceltime,o.userid,
+         ,o.hasauth hasAuth,o.accountstatus,o.modifystatus,o.createtime,o.modifytime,o.audittime,o.canceltime,o.userid,
         o.memberuserid, o.parentuserid
         from useraccount o
         left join t1 on o.userid = t1.userid
@@ -343,8 +345,8 @@
         <where>
             1 = 1
             and o.usertype = 5
-            <if test="vo.isAuth != null">
-                AND o.hasauth = #{vo.isAuth}
+            <if test="vo.hasAuth != null">
+                AND o.hasauth = #{vo.hasAuth}
             </if>
             <if test="vo.accountName != null and vo.accountName != '' ">
                 and ((o.accountname like '%'|| #{vo.accountName,jdbcType=VARCHAR}||'%')

+ 2 - 5
mtp3-century/src/main/resources/mapper/WskhUserinfoMapper.xml

@@ -166,17 +166,14 @@
     <select id="querymembergoodslimit" resultType="com.muchinfo.mtp3pojos.vo.organ.MemberGoodsLimitResult">
         select t.autoid "autoid", t.userid "userid", t.roletype "roletype", t.goodsid "goodsid",
         t.isnodisplay "isnodisplay", t.iscannotbuy "iscannotbuy", t.iscannotsell "iscannotsell",
+        g.marketid "marketid",
         ua.userid || '/' || ua.accountname "membername",
         g.goodscode || '/' || g.goodsname "goodsdisplay",
-        ei.enumdicname "roledisplay", ei2.enumdicname "nodisplay",
-        ei3.enumdicname "cannotbuy", ei4.enumdicname "cannotsell"
+        ei.enumdicname "roledisplay"
         from MemberGoodsLimitConfig t
         left join useraccount ua on t.userid = ua.userid
         left join goods g on t.goodsid = g.goodsid
         left join enumdicitem ei on ei.enumdiccode='roleType' and t.roletype = ei.enumitemname
-        left join enumdicitem ei2 on ei2.enumdiccode='flag' and t.isnodisplay = ei2.enumitemname
-        left join enumdicitem ei3 on ei3.enumdiccode='flag' and t.iscannotbuy = ei3.enumitemname
-        left join enumdicitem ei4 on ei4.enumdiccode='flag' and t.iscannotsell = ei4.enumitemname
         where 1 = 1
         <if test="vo.roletype !=null and vo.roletype!=''">
             and t.roletype = #{vo.roletype}

+ 1 - 0
mtp3-century/src/main/resources/message_en.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0}Assigned groups.
 investor_error_code_009=Please remove all investors under this group first.
 investor_error_code_010=Please delete the personalized settings of this group first.
 investor_error_code_011=The ratio value cannot exceed 10000
+investor_error_code_012=Associated users cannot act for themselves
 warehouse_error_code_01=Warehouse code up to 10 digits
 warehouse_error_code_02=Duplicate warehouse code
 warehouse_error_code_03=Duplicate warehouse name

+ 1 - 0
mtp3-century/src/main/resources/message_th.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0}\u0E01\u0E32\u0E23\u0E08\u0E31\u0E14\u0E01\u0E25\u0E3
 investor_error_code_009=\u0E42\u0E1B\u0E23\u0E14\u0E25\u0E1A\u0E19\u0E31\u0E01\u0E25\u0E07\u0E17\u0E38\u0E19\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14\u0E20\u0E32\u0E22\u0E43\u0E15\u0E49\u0E01\u0E25\u0E38\u0E48\u0E21\u0E19\u0E35\u0E49\u0E01\u0E48\u0E2D\u0E19.
 investor_error_code_010=\u0E42\u0E1B\u0E23\u0E14\u0E25\u0E1A\u0E01\u0E32\u0E23\u0E15\u0E31\u0E49\u0E07\u0E04\u0E48\u0E32\u0E2A\u0E48\u0E27\u0E19\u0E1A\u0E38\u0E04\u0E04\u0E25\u0E02\u0E2D\u0E07\u0E01\u0E25\u0E38\u0E48\u0E21\u0E19\u0E31\u0E49\u0E19\u0E01\u0E48\u0E2D\u0E19.
 investor_error_code_011=\u0E04\u0E48\u0E32\u0E2D\u0E31\u0E15\u0E23\u0E32\u0E2A\u0E48\u0E27\u0E19\u0E15\u0E49\u0E2D\u0E07\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19 10,000
+investor_error_code_012=\u0E2A\u0E21\u0E32\u0E0A\u0E34\u0E01\u0E1E\u0E31\u0E19\u0E18\u0E21\u0E34\u0E15\u0E23\u0E44\u0E21\u0E48\u0E2A\u0E32\u0E21\u0E32\u0E23\u0E16\u0E40\u0E1B\u0E47\u0E19\u0E15\u0E31\u0E27\u0E40\u0E2D\u0E07\u0E44\u0E14\u0E49
 warehouse_error_code_01=\u0E23\u0E2B\u0E31\u0E2A\u0E04\u0E25\u0E31\u0E07\u0E2A\u0E34\u0E19\u0E04\u0E49\u0E32 \u0E2A\u0E39\u0E07\u0E2A\u0E38\u0E14 10 \u0E2B\u0E25\u0E31\u0E01
 warehouse_error_code_02=\u0E23\u0E2B\u0E31\u0E2A\u0E04\u0E25\u0E31\u0E07\u0E2A\u0E34\u0E19\u0E04\u0E49\u0E32\u0E0B\u0E49\u0E33
 warehouse_error_code_03=\u0E0A\u0E37\u0E48\u0E2D\u0E04\u0E25\u0E31\u0E07\u0E2A\u0E34\u0E19\u0E04\u0E49\u0E32\u0E0B\u0E49\u0E33\u0E01\u0E31\u0E19

+ 1 - 0
mtp3-century/src/main/resources/message_vi.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0} Nh\u00F3m \u0111\u01B0\u1EE3c ph\u00E2n b\u1ED5.
 investor_error_code_009=Vui l\u00F2ng x\u00F3a t\u1EA5t c\u1EA3 c\u00E1c nh\u00E0 \u0111\u1EA7u t\u01B0 trong nh\u00F3m.
 investor_error_code_010=Vui l\u00F2ng x\u00F3a c\u00E1 nh\u00E2n h\u00F3a nh\u00F3m tr\u01B0\u1EDBc.
 investor_error_code_011=Gi\u00E1 tr\u1ECB t\u1EF7 l\u1EC7 kh\u00F4ng \u0111\u01B0\u1EE3c l\u1EDBn h\u01A1n 10.000
+investor_error_code_012=Ng\u01B0\u1EDDi d\u00F9ng li\u00EAn k\u1EBFt kh\u00F4ng th\u1EC3 t\u1EF1
 warehouse_error_code_01=t\u1ED1i \u0111a 10 ch\u1EEF s\u1ED1 trong m\u00E3 kho
 warehouse_error_code_02=tr\u00F9ng l\u1EB7p m\u00E3 kho
 warehouse_error_code_03=tr\u00F9ng l\u1EB7p t\u00EAn kho

+ 1 - 0
mtp3-century/src/main/resources/message_zh-cn.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0}\u5DF2\u5206\u914D\u5206\u7EC4\u3002
 investor_error_code_009=\u8BF7\u5148\u79FB\u9664\u8BE5\u5206\u7EC4\u4E0B\u6240\u6709\u6295\u8D44\u8005\u3002
 investor_error_code_010=\u8BF7\u5148\u5220\u9664\u8BE5\u5206\u7EC4\u7684\u4E2A\u6027\u5316\u8BBE\u7F6E\u3002
 investor_error_code_011=\u6BD4\u7387\u503C\u4E0D\u80FD\u5927\u4E8E10000
+investor_error_code_012=\u5173\u8054\u7528\u6237\u4E0D\u80FD\u4E3A\u81EA\u5DF1
 warehouse_error_code_01=\u4ED3\u5E93\u4EE3\u7801\u6700\u591A10\u4F4D
 warehouse_error_code_02=\u4ED3\u5E93\u4EE3\u7801\u91CD\u590D
 warehouse_error_code_03=\u4ED3\u5E93\u540D\u79F0\u91CD\u590D

+ 1 - 0
mtp3-century/src/main/resources/message_zh-hk.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0}\u5DF2\u5206\u914D\u5206\u7D44\u3002
 investor_error_code_009=\u8ACB\u5148\u79FB\u9664\u8A72\u5206\u7D44\u4E0B\u6240\u6709\u6295\u8CC7\u8005\u3002
 investor_error_code_010=\u8ACB\u5148\u5220\u9664\u8A72\u5206\u7D44\u7684\u500B\u6027\u5316\u8A2D\u5B9A\u3002
 investor_error_code_011=\u6BD4\u7387\u503C\u4E0D\u80FD\u5927\u65BC10000
+investor_error_code_012=\u95DC\u806F\u7528\u6236\u4E0D\u80FD\u70BA\u81EA\u5DF1
 warehouse_error_code_01=\u5009\u5EAB\u7A0B\u5F0F\u78BC\u6700\u591A10\u6BD4\u7279
 warehouse_error_code_02=\u5009\u5EAB\u7A0B\u5F0F\u78BC\u91CD\u8907
 warehouse_error_code_03=\u5009\u5EAB\u540D\u7A31\u91CD\u8907

+ 1 - 0
mtp3-century/src/main/resources/message_zh-tw.properties

@@ -127,6 +127,7 @@ investor_error_code_008={0}\u5DF2\u5206\u914D\u5206\u7D44\u3002
 investor_error_code_009=\u8ACB\u5148\u79FB\u9664\u8A72\u5206\u7D44\u4E0B\u6240\u6709\u6295\u8CC7\u8005\u3002
 investor_error_code_010=\u8ACB\u5148\u5220\u9664\u8A72\u5206\u7D44\u7684\u500B\u6027\u5316\u8A2D\u5B9A\u3002
 investor_error_code_011=\u6BD4\u7387\u503C\u4E0D\u80FD\u5927\u65BC10000
+investor_error_code_012=\u95DC\u806F\u7528\u6236\u4E0D\u80FD\u70BA\u81EA\u5DF1
 warehouse_error_code_01=\u5009\u5EAB\u7A0B\u5F0F\u78BC\u6700\u591A10\u6BD4\u7279
 warehouse_error_code_02=\u5009\u5EAB\u7A0B\u5F0F\u78BC\u91CD\u8907
 warehouse_error_code_03=\u5009\u5EAB\u540D\u7A31\u91CD\u8907

+ 1 - 0
mtp3-common/src/main/java/com/muchinfo/mtp3common/enumtype/MessageType.java

@@ -147,6 +147,7 @@ public enum MessageType {
     INVESTOR_ERROR_CODE_009("investor_error_code_009", "请先移除该分组下所有投资者."),
     INVESTOR_ERROR_CODE_010("investor_error_code_010", "请先删除该分组的个性化设置."),
     INVESTOR_ERROR_CODE_011("investor_error_code_011", "比率值不能大于10000."),
+    INVESTOR_ERROR_CODE_012("investor_error_code_012", "关联用户不能为自己."),
 
     WAREHOUSE_ERROR_CODE_01("warehouse_error_code_01", "仓库代码最多10位."),
     WAREHOUSE_ERROR_CODE_02("warehouse_error_code_02", "仓库代码重复."),

+ 4 - 0
mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IEnumdicitemMapper.java

@@ -5,6 +5,8 @@ import com.muchinfo.mtp3pojos.entity.Enumdicitem;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  * 枚举项字典表 Mapper 接口
@@ -17,4 +19,6 @@ import org.apache.ibatis.annotations.Param;
 public interface IEnumdicitemMapper extends BaseMapper<Enumdicitem> {
 
     String selectCurrencyName(@Param("emvalue") Integer currencyid);
+
+    List<Enumdicitem> selectInternational(@Param("typeCode") String typeCode);
 }

+ 1 - 1
mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IMarketMapper.java

@@ -21,7 +21,7 @@ import java.util.Map;
 @Mapper
 public interface IMarketMapper extends BaseMapper<Market> {
 
-    List<Market> getMarketsNameByUseridAndrole(@Param("uid") Long uid, @Param("roletype") List<Integer> roletype);
+    List<Market> getMarketsNameByUseridAndrole(@Param("uid") Long uid, @Param("roletype") List<Integer> roletype, @Param("isqq") Integer isqq);
 
     List<Market> getNoTradeConfigMarkets(@Param("areauserid") Long areauserid, @Param("usergroupid") Long usergroupid);
 

+ 4 - 0
mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IReckonDaydividecountdetailMapper.java

@@ -62,4 +62,8 @@ public interface IReckonDaydividecountdetailMapper extends BaseMapper<ReckonDayd
     List<ManageDivReportResult> managediv(@Param("vo") CusBankReportParam param);
 
     void execReportMonthType(@Param("tradedate") Date tradedate);
+
+    IPage<ShareAmountQueryResult> queryByDate(IPage<ShareAmountQueryResult> page,@Param("vo") ShareAmountQueryParam param);
+
+    IPage<ShareAmountQueryResult> queryByOther(IPage<ShareAmountQueryResult> page,@Param("vo")  ShareAmountQueryParam param);
 }

+ 8 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Enumdicitem.java

@@ -77,6 +77,14 @@ public class Enumdicitem extends Model<Enumdicitem> {
     @TableField("PARAM2")
     private String param2;
 
+    @TableField(select = false)
+    private String enumdicnameen;
+    @TableField(select = false)
+    private String enumdicnamezhtw;
+    @TableField(select = false)
+    private String enumdicnameth;
+    @TableField(select = false)
+    private String enumdicnamevi;
 
     @Override
     public Serializable pkVal() {

+ 3 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Taaccount.java

@@ -11,6 +11,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
+import java.util.Set;
 
 /**
  * <p>
@@ -271,6 +272,8 @@ public class Taaccount extends Model<Taaccount> {
     private BigDecimal floatnetvalue;
     @TableField(select = false)
     private List<Taaccount> children;
+    @TableField(select = false)
+    private Set<Long> set_msg; //记录多个ID,需要发送登录变更通知
 
     @Override
     public Serializable pkVal() {

+ 1 - 1
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/DealerQueryParam.java

@@ -27,7 +27,7 @@ public class DealerQueryParam {
     @ApiModelProperty(value = "交易商状态")
     private String accountStatus;
     @ApiModelProperty(value = "是否实名")
-    private Integer isAuth;
+    private Integer hasAuth;
     @ApiModelProperty(value = "所属经纪人")
     private String brokerName;
     @ApiModelProperty(value = "推荐人")

+ 1 - 1
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/DealerQueryResult.java

@@ -57,7 +57,7 @@ public class DealerQueryResult {
     @ExcelProperty(value = "是否实名", converter = IsAuthConverter.class)
     @ColumnWidth(20)
     @ApiModelProperty(value = "是否实名")
-    private Integer isAuth;
+    private Integer hasAuth;
 
     @ExcelProperty(value = "状态", converter = AccountStatusConverter.class)
     @ColumnWidth(20)

+ 6 - 3
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/UserAccountDetailVo.java

@@ -58,9 +58,8 @@ public class UserAccountDetailVo {
     @Builder.Default
     private Integer modifyStatus = 0;
 
-    @ApiModelProperty(value = "userAccount -- isAuth/固定用before")
-    @Builder.Default
-    private Integer isAuth = 0;
+    @ApiModelProperty(value = "userAccount -- hasAuth/固定用before")
+    private Integer hasAuth;
 
     @ApiModelProperty(value = "userAccount -- 变更审核备注/固定用before")
     @Builder.Default
@@ -83,4 +82,8 @@ public class UserAccountDetailVo {
     private Long refereeuserid = 0L;
 
     private String auditremark;
+
+    private String newcontent;
+
+    private String oldcontent;
 }

+ 9 - 3
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/organ/MemberGoodsLimitResult.java

@@ -26,11 +26,17 @@ public class MemberGoodsLimitResult {
     private String goodsdisplay;
 
     @ApiModelProperty(value = "不显示")
-    private Integer nodisplay;
+    private Integer isnodisplay;
 
     @ApiModelProperty(value = "不能挂买")
-    private Integer cannotbuy;
+    private Integer iscannotbuy;
 
     @ApiModelProperty(value = "不能挂卖")
-    private Integer cannotsell;
+    private Integer iscannotsell;
+
+    private Long userid;
+
+    private Long goodsid;
+
+    private Long marketid;
 }

+ 3 - 1
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/reportform/ShareAmountQueryParam.java

@@ -16,7 +16,7 @@ public class ShareAmountQueryParam {
 
     private Long areaid;
 
-    private String areaname;
+    private Long areaname;
 
     @ApiModelProperty(value = "报表类型")
     private Integer cycletype;
@@ -49,4 +49,6 @@ public class ShareAmountQueryParam {
     private Integer pageSize;
 
     private String cycletime;
+
+    private Long parentareaid;
 }

+ 45 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountInitResultDetail.java

@@ -0,0 +1,45 @@
+package com.muchinfo.mtp3pojos.vo.taaccount;
+
+import com.muchinfo.mtp3pojos.entity.Market;
+import com.muchinfo.mtp3pojos.entity.Taaccount;
+import com.muchinfo.mtp3pojos.entity.Useraccount;
+import io.swagger.annotations.ApiModel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+@Builder
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@ApiModel(value = "TaAccountInitResultDetail对象", description = "资金管理修改初始化")
+public class TaAccountInitResultDetail {
+
+
+    private Integer selfFlag;
+
+    private String isshowrelationuser;
+
+    private List<Market> markets;
+
+    private List<BigDecimal> loginaccount;
+
+    private List<Long> defaultloginaccount;
+
+    private Map<Long, TaAccountMarketVo> clildmarkets;
+
+    private Useraccount relatedU;
+
+    private Integer cannotEdit;
+
+    private String oldLogin;
+
+    private Taaccount taa;
+
+    private Map<Integer, String> marketbstype;
+}

+ 5 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountQueryResult.java

@@ -49,4 +49,9 @@ public class TaAccountQueryResult {
     @ApiModelProperty(value = "出金阈值")
     private BigDecimal outThreshold;
 
+    private Long userId;
+
+    private Long relatedUserId;
+
+    private Integer relatedAccountStatus;
 }

+ 6 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/taaccount/TaAccountUpdateParam.java

@@ -24,4 +24,10 @@ public class TaAccountUpdateParam {
 
     @ApiModelProperty(value = "市场权限 isSelf == 1展示")
     private List<TaAccountMarketVo> dType;
+
+    private Long relateduserid;
+
+    private Long userid;
+
+    private Integer relatedaccountstatus;
 }