Sfoglia il codice sorgente

更改部分旧管理端改动,更改bug

xie.kaifeng 9 mesi fa
parent
commit
dc0357b191
21 ha cambiato i file con 192 aggiunte e 101 eliminazioni
  1. 9 2
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/InvestorController.java
  2. 10 4
      mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/OrganController.java
  3. 4 4
      mtp3-century/src/main/java/com/muchinfo/mtp3century/filter/JwtLoginFilter.java
  4. 1 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/ICommonService.java
  5. 5 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IOrganService.java
  6. 2 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IUseraccountService.java
  7. 1 1
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/CommonServiceImpl.java
  8. 5 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/MarketRunManageServiceImpl.java
  9. 33 13
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganServiceImpl.java
  10. 1 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/SystemmanagerServiceImpl.java
  11. 5 2
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/TaaccountServiceImpl.java
  12. 54 55
      mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/UseraccountServiceImpl.java
  13. 2 0
      mtp3-century/src/main/java/com/muchinfo/mtp3century/vo/systemlogin/LoginRsp.java
  14. 1 1
      mtp3-century/src/main/resources/mapper/MarketMapper.xml
  15. 3 12
      mtp3-century/src/main/resources/mapper/ReckonDaydividecountdetailMapper.xml
  16. 24 3
      mtp3-century/src/main/resources/mapper/UseraccountMapper.xml
  17. 2 0
      mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IUseraccountMapper.java
  18. 4 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Usercancelapply.java
  19. 19 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/InitInvestorTradeResult.java
  20. 5 1
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/InvestorCancelApplyResult.java
  21. 2 0
      mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/organ/SupportTradeConfigAddParam.java

+ 9 - 2
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/InvestorController.java

@@ -439,7 +439,7 @@ public class InvestorController {
     @ApiOperation("交易商管理-->个性化管理-->资金账户个性化--> 详情")
     @RequestMapping(method = RequestMethod.GET, value = "/accTradeConfigView")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
-    private AjaxResult accTradeConfigView(PersonalizationDelParam param, HttpServletRequest request) {
+    private AjaxResult<Accounttradeconfig> accTradeConfigView(PersonalizationDelParam param, HttpServletRequest request) {
         //这个是投资者的userid ,获取投资者的分组ID
         param.setMemberuserid(1L);
         return iOrganService.tradeConfigView(param, request);
@@ -452,6 +452,13 @@ public class InvestorController {
         return iOrganService.tradeConfigDelete(param, request);
     }
 
+    @ApiOperation("交易商管理-->个性化管理-->资金账户个性化--> 新增初始化交易商信息")
+    @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
+    @RequestMapping(method = RequestMethod.GET, value = "/initAccTrade")
+    public AjaxResult<InitInvestorTradeResult> initAccTrade(String searchName, HttpServletRequest request) {
+        return iOrganService.initAccTrade(searchName, request);
+    }
+
     @ApiOperation("交易商管理-->交易商批量转移-->新增")
     @RequestMapping(method = RequestMethod.POST, value = "/organSonTransferAdd")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
@@ -491,7 +498,7 @@ public class InvestorController {
     @ApiOperation("交易商管理-->交易商销户审核-->详情")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
     @RequestMapping(method = RequestMethod.GET, value = "/cancelview")
-    public AjaxResult cancelview(Long autoid, HttpServletRequest request) {
+    public AjaxResult<Usercancelapply> cancelview(Long autoid, HttpServletRequest request) {
         return iUseraccountService.cancelview(autoid, request);
     }
 

+ 10 - 4
mtp3-century/src/main/java/com/muchinfo/mtp3century/controller/OrganController.java

@@ -339,17 +339,23 @@ public class OrganController {
         return iOrganService.tradeConfigDelete(param, request);
     }
 
-    @ApiOperation("会员机构管理-->机构管理-->账户个性化设置-->新增初始化列表信息")
+    @ApiOperation("会员机构管理-->机构管理-->账户个性化设置/资金账户个性化设置-->新增初始化列表信息")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
     @RequestMapping(method = RequestMethod.GET, value = "/loadSelectOption")
     public AjaxResult<OrganInitAccountAddResult> loadSelectOption(PersonalizationDelParam param, HttpServletRequest request) {
         return iOrganService.loadSelectOption(param, request);
     }
 
-    @ApiOperation("会员机构管理-->机构管理-->账户个性化设置-->新增")
+    @ApiOperation("会员机构管理-->机构管理-->账户个性化设置/资金账户个性化设置-->新增")
     @ApiResponse(code = 200, message = "成功", response = AjaxResult.class)
     @RequestMapping(method = RequestMethod.POST, value = "/tradeConfigAdd")
-    public AjaxResult tradeConfigAdd(@RequestBody SupportTradeConfigAddParam param, HttpServletRequest request) {
-        return iOrganService.tradeConfigAdd(param, request);
+    public AjaxResult tradeConfigAdd(@RequestBody String param, HttpServletRequest request) {
+        try {
+            SupportTradeConfigAddParam current = JsonUtils.toBean(CenturyDecryptUtil.decryptForJson(param, request), SupportTradeConfigAddParam.class);
+            return iOrganService.tradeConfigAdd(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"));
+        }
     }
 }

+ 4 - 4
mtp3-century/src/main/java/com/muchinfo/mtp3century/filter/JwtLoginFilter.java

@@ -111,7 +111,7 @@ public class JwtLoginFilter extends AbstractAuthenticationProcessingFilter {
     protected void unsuccessfulAuthentication(HttpServletRequest request, HttpServletResponse response, AuthenticationException failed) {
         Object cacheObject = SpringBeanUtils.getBean(RedisServiceUtil.class).getCacheObject("user-login-fail");
         log.error("AuthenticationException", failed);
-        String[] param = new String [4];
+        String[] param = new String[4];
         //失败超过默认次数锁定用户
         Systemmanager sysUser = SpringBeanUtils.getBean(ISystemmanagerMapper.class).selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", cacheObject));
         if (Objects.nonNull(sysUser)) {
@@ -147,12 +147,12 @@ public class JwtLoginFilter extends AbstractAuthenticationProcessingFilter {
         } else if (failed instanceof UsernameNotFoundException) {
             ResponseUtils.writeFiled(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, MessageType.MESSAGE_ERROR_CODE_SYSTEM010.getCode(), request.getHeader("Accept-Language"));
         } else if (failed instanceof BadCredentialsException) {
-            if(param[0] == null){
+            if (param[0] == null) {
                 ResponseUtils.writeFiled(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, MessageType.MESSAGE_ERROR_CODE_SYSTEM011.getCode(), request.getHeader("Accept-Language"));
-            }else{
+            } else {
                 ResponseUtils.writeFiledForParameters(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, param, request.getHeader("Accept-Language"));
             }
-       } else if (failed instanceof LockedException) {
+        } else if (failed instanceof LockedException) {
             ResponseUtils.writeFiled(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, MessageType.MESSAGE_ERROR_CODE_SYSTEM012.getCode(), request.getHeader("Accept-Language"));
         } else if (failed instanceof CredentialsExpiredException) {
             ResponseUtils.writeFiled(response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, MessageType.MESSAGE_ERROR_CODE_SYSTEM013.getCode(), request.getHeader("Accept-Language"));

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

@@ -77,7 +77,7 @@ public interface ICommonService {
 
     AjaxResult<TaAccountQueryResult> queryTAAccountList(TaAccountReportParam param, HttpServletRequest request);
 
-    AjaxResult queryUserinfoUserId(Long userid, HttpServletRequest request);
+    AjaxResult<Userinfo>  queryUserinfoUserId(Long userid, HttpServletRequest request);
 
     AjaxResult<OrganSelectResult> queryExchSonOrgin(OrganSelectParam vo, HttpServletRequest request);
 }

+ 5 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IOrganService.java

@@ -3,6 +3,8 @@ package com.muchinfo.mtp3century.service;
 import com.muchinfo.mtp3century.utils.AjaxResult;
 import com.muchinfo.mtp3common.vo.PageResult;
 import com.muchinfo.mtp3pojos.entity.Accountriskconfig;
+import com.muchinfo.mtp3pojos.entity.Accounttradeconfig;
+import com.muchinfo.mtp3pojos.vo.investor.InitInvestorTradeResult;
 import com.muchinfo.mtp3pojos.vo.investor.PersonalizationDelParam;
 import com.muchinfo.mtp3pojos.vo.organ.*;
 import com.muchinfo.mtp3pojos.vo.organ.son.OrganAddSonOrganParam;
@@ -64,7 +66,7 @@ public interface IOrganService {
 
     AjaxResult createTree(HttpServletRequest request);
 
-    AjaxResult tradeConfigView(PersonalizationDelParam param, HttpServletRequest request);
+    AjaxResult<Accounttradeconfig> tradeConfigView(PersonalizationDelParam param, HttpServletRequest request);
 
     AjaxResult tradeConfigEdit(SupportTradeConfigAddParam param, HttpServletRequest request);
 
@@ -75,4 +77,6 @@ public interface IOrganService {
     AjaxResult tradeConfigAdd(SupportTradeConfigAddParam param, HttpServletRequest request);
 
     AjaxResult logout(Long userid, HttpServletRequest request);
+
+    AjaxResult<InitInvestorTradeResult> initAccTrade(String searchName, HttpServletRequest request);
 }

+ 2 - 1
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/IUseraccountService.java

@@ -6,6 +6,7 @@ import com.muchinfo.mtp3common.vo.PageResult;
 import com.muchinfo.mtp3pojos.entity.Accountriskconfig;
 import com.muchinfo.mtp3pojos.entity.Riskratiotype;
 import com.muchinfo.mtp3pojos.entity.Useraccount;
+import com.muchinfo.mtp3pojos.entity.Usercancelapply;
 import com.muchinfo.mtp3pojos.vo.investor.*;
 
 import javax.servlet.http.HttpServletRequest;
@@ -78,7 +79,7 @@ public interface IUseraccountService extends IService<Useraccount> {
 
     PageResult<InvestorCancelApplyResult> usercancelapply(InvestorCancelApplyParam param, HttpServletRequest request);
 
-    AjaxResult cancelview(Long autoid, HttpServletRequest request);
+    AjaxResult<Usercancelapply> cancelview(Long autoid, HttpServletRequest request);
 
     AjaxResult cancelaudit(Long autoid, Integer auditflag, String msg, HttpServletRequest request);
 

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

@@ -779,7 +779,7 @@ public class CommonServiceImpl implements ICommonService {
     }
 
     @Override
-    public AjaxResult queryUserinfoUserId(Long userid, HttpServletRequest request) {
+    public AjaxResult<Userinfo>  queryUserinfoUserId(Long userid, HttpServletRequest request) {
         Userinfo userinfo = iUserinfoMapper.selectOne(new QueryWrapper<Userinfo>().eq("userid", userid));
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), userinfo);
     }

+ 5 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/MarketRunManageServiceImpl.java

@@ -257,6 +257,11 @@ public class MarketRunManageServiceImpl implements IMarketRunManageService {
         AccountRedis.AccPosInfo l = null;
         int size = list.size();
         List<Long> ids = new ArrayList<>();
+        // #6653 【交易中心-管理端】账户持仓汇总监控界面的单据在数量被平仓完的情况下还会一直显示
+        if (size == 0){
+            // 无记录时返回空记录
+            return resultList;
+        }
         for (AccountRedis.AccPosInfo accPosInfo : list) {
             l = accPosInfo;
 

+ 33 - 13
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/OrganServiceImpl.java

@@ -23,11 +23,12 @@ import com.muchinfo.mtp3pojos.entity.*;
 import com.muchinfo.mtp3pojos.vo.ProtoErrorCodes;
 import com.muchinfo.mtp3pojos.vo.common.OrganSelectParam;
 import com.muchinfo.mtp3pojos.vo.common.OrganSelectResult;
-import com.muchinfo.mtp3pojos.vo.investor.FeesConfigVo;
-import com.muchinfo.mtp3pojos.vo.investor.InvestorInitBZResult;
-import com.muchinfo.mtp3pojos.vo.investor.PersonalizationDelParam;
-import com.muchinfo.mtp3pojos.vo.investor.RulesConfigVo;
+import com.muchinfo.mtp3pojos.vo.investor.*;
 import com.muchinfo.mtp3pojos.vo.organ.*;
+import com.muchinfo.mtp3pojos.vo.organ.AccountRiskConfigAddParam;
+import com.muchinfo.mtp3pojos.vo.organ.AccountRiskConfigParam;
+import com.muchinfo.mtp3pojos.vo.organ.AccountRiskConfigResult;
+import com.muchinfo.mtp3pojos.vo.organ.AccountTradeConfigTreeVo;
 import com.muchinfo.mtp3pojos.vo.organ.son.OrganAddSonOrganParam;
 import com.muchinfo.mtp3pojos.vo.taaccount.TaAccountMarketVo;
 import com.muchinfo.mtp3pojos.vo.taaccount.TaAccountQueryParam;
@@ -1125,7 +1126,7 @@ public class OrganServiceImpl implements IOrganService {
     @Override
     public AjaxResult editorgan(OrganAddSonOrganParam param, HttpServletRequest request) {
         // #6597 管理端】不管是后台注册还是客户端注册,身份证号填写的那一栏,如果涉及到输入字母X,需要固定只能输入大写字母
-        if (param != null && StringUtils.isNotBlank(param.getCardnum())){
+        if (param != null && StringUtils.isNotBlank(param.getCardnum())) {
             param.setCardnum(param.getCardnum().toUpperCase());
         }
 
@@ -1352,8 +1353,7 @@ public class OrganServiceImpl implements IOrganService {
     }
 
     @Override
-    public AjaxResult tradeConfigView(PersonalizationDelParam param, HttpServletRequest request) {
-        Map<String, Object> result = new HashMap<>();
+    public AjaxResult<Accounttradeconfig> tradeConfigView(PersonalizationDelParam param, HttpServletRequest request) {
         Usergroupdetail ug = iUsergroupdetailMapper.selectOne(new QueryWrapper<Usergroupdetail>().eq("userid", param.getUserid()));
         if (ug != null) {
             param.setUsergroupid2(ug.getUsergroupid());
@@ -1474,7 +1474,7 @@ public class OrganServiceImpl implements IOrganService {
         detail.setDruleList(ruleList);
         detail.setDfeeList(feeList);
 
-        return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), result);
+        return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), detail);
     }
 
     @Override
@@ -1586,7 +1586,7 @@ public class OrganServiceImpl implements IOrganService {
     public AjaxResult tradeConfigDelete(PersonalizationDelParam param, HttpServletRequest request) {
 
         iAccounttradeconfigMapper.delete(new QueryWrapper<Accounttradeconfig>()
-                .eq("memberuserid", 0L)
+                .eq("memberuserid", param.getMemberuserid())
                 .eq("userid", param.getUserid())
                 .eq("tradetype", param.getTradetype())
                 .eq(param.getGoodsid() != null, "goodsid", param.getGoodsid())
@@ -1602,7 +1602,12 @@ public class OrganServiceImpl implements IOrganService {
     @Override
     public AjaxResult<OrganInitAccountAddResult> loadSelectOption(PersonalizationDelParam param, HttpServletRequest request) {
         OrganInitAccountAddResult result = new OrganInitAccountAddResult();
-        param.setMemberuserid(0L);
+        Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
+        if(param.getMemberuserid() == 1){
+            if (param.getGoodsid() != null) {
+                param.setMemberuserid(systemmanager.getAreauserid());
+            }
+        }
         if (param.getGoodsid() != null) {
             //客户类别
             List<InvestorInitBZResult> bzResults = iUseraccountMapper.getCustomerTypeByGoodsid(param.getGoodsid(), null);
@@ -1613,6 +1618,10 @@ public class OrganServiceImpl implements IOrganService {
             List<Goods> goods = iGoodsMapper.getNoTradeConfigGoodsForAccount(param);
             result.setGoods(goods);
         } else if (param.getAccountid() != null) {
+            if(param.getMemberuserid() == 1){
+                param.setAccountid(null);
+                param.setMemberuserid(null);
+            }
             List<Market> markets = iMarketMapper.getNoTradeConfigMarketsForAccount(param);
             result.setMarkets(markets);
         } else if (param.getUserid() != null) {
@@ -1646,7 +1655,7 @@ public class OrganServiceImpl implements IOrganService {
         if (vo.getParamid() != null) {
             Accounttradeconfig config = new Accounttradeconfig();
             config.setUserid(vo.getUserid());
-            config.setMemberuserid(0L);
+            config.setMemberuserid(vo.getMemberuserid());
             config.setMarketid(vo.getMarketid());
             config.setGoodsid(vo.getGoodsid());
             config.setAccountid(vo.getAccountid());
@@ -1673,7 +1682,7 @@ public class OrganServiceImpl implements IOrganService {
 
                 fig.setFeealgorithm(2);
                 fig.setUserid(vo.getUserid());
-                fig.setMemberuserid(0L);
+                fig.setMemberuserid(vo.getMemberuserid());
                 fig.setAccountid(vo.getAccountid());
                 fig.setMarketid(vo.getMarketid());
                 fig.setGoodsid(vo.getGoodsid());
@@ -1701,7 +1710,7 @@ public class OrganServiceImpl implements IOrganService {
                     fig.setParamvalue(fig.getParamvalue().multiply(Cude));
                 }
                 fig.setUserid(vo.getUserid());
-                fig.setMemberuserid(0L);
+                fig.setMemberuserid(vo.getMemberuserid());
                 fig.setMarketid(vo.getMarketid());
                 fig.setGoodsid(vo.getGoodsid());
                 fig.setAccountid(vo.getAccountid());
@@ -1849,6 +1858,17 @@ public class OrganServiceImpl implements IOrganService {
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"));
     }
 
+    @Override
+    public AjaxResult<InitInvestorTradeResult> initAccTrade(String searchName, HttpServletRequest request) {
+        Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
+        Long memberuserid = null;
+        if (systemmanager.getReletype() != 1) {
+            memberuserid = systemmanager.getAreauserid();
+        }
+        List<InitInvestorTradeResult> results = iUseraccountMapper.getNoTradeConfigInvestorsLikeName(memberuserid, searchName);
+        return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), results);
+    }
+
     private void editARoleModifyMember(OrganRoleModifyParam vo, Systemmanager opeartion) {
         Date date = new Date();
 

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

@@ -164,6 +164,7 @@ public class SystemmanagerServiceImpl extends ServiceImpl<ISystemmanagerMapper,
         rsp.setReleType(systemmanager.getReletype());
         rsp.setLogincode(systemmanager.getLogincode());
         rsp.setUsername(systemmanager.getUsername());
+        rsp.setAreauserid(systemmanager.getAreauserid());
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM007.getCode(), request.getHeader("Accept-Language"), rsp);
     }
 

+ 5 - 2
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/TaaccountServiceImpl.java

@@ -610,13 +610,16 @@ public class TaaccountServiceImpl extends ServiceImpl<ITaaccountMapper, Taaccoun
         if (!iCommonService.checkUserAccountRole(systemmanager, areaid)) {
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM003.getCode(), request.getHeader("Accept-Language"));
         }
-
-        iDraftUseraccountNewMapper.delete(new QueryWrapper<DraftUseraccountNew>().eq("USERID", areaid));
+        DraftUseraccountNew dua = iDraftUseraccountNewMapper.selectOne(new QueryWrapper<DraftUseraccountNew>().eq("USERID", areaid));
+        Useraccount oldVo = JsonUtils.json2Object(dua.getOldcontent(), Useraccount.class);
+        iDraftUseraccountNewMapper.deleteById(dua);
         iDraftUserinfoMapper.delete(new QueryWrapper<DraftUserinfo>().eq("USERID", areaid));
 
         Useraccount organ = iUseraccountMapper.selectOne(new QueryWrapper<Useraccount>().eq("userid", areaid));
         //错误 #58783
         organ.setModifystatus(1);
+        // #6607 【交易中心-管理端】将实名认证的申请直接撤回会导致实名状态一直为审核中
+        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) {

+ 54 - 55
mtp3-century/src/main/java/com/muchinfo/mtp3century/service/impl/UseraccountServiceImpl.java

@@ -1614,12 +1614,14 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
     }
 
     @Override
-    public AjaxResult cancelview(Long autoid, HttpServletRequest request) {
+    public AjaxResult<Usercancelapply> cancelview(Long autoid, HttpServletRequest request) {
         Usercancelapply result = iUsercancelapplyMapper.selectOne(new QueryWrapper<Usercancelapply>().eq("autoid", autoid));
         Systemmanager systemmanager = iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("LOGINCODE", iCommonService.getUserLoginCode(request)));
         if(!iCommonService.checkUserAccountRole(systemmanager, result.getUserid())){
             return AjaxResult.error(Constants.Error_Code_Design, MessageType.MESSAGE_ERROR_CODE_SYSTEM003.getCode(), request.getHeader("Accept-Language"));
         }
+        result.setAccountname(iUseraccountMapper.selectOne(new QueryWrapper<Useraccount>().eq("userid",result.getUserid())).getAccountname());
+        result.setAuditusername(iSystemmanagerMapper.selectOne(new QueryWrapper<Systemmanager>().eq("autoid",result.getAuditid())).getUsername());
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"), result);
     }
 
@@ -1651,7 +1653,7 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
             temp.setAuditremark(msg);
             iUsercancelapplyMapper.update(temp,new QueryWrapper<Usercancelapply>().eq("autoid", temp.getAutoid()));
 
-            sendSMS(ua.getAccountname(), temp.getUserid(), 15);
+            sendSMS(ua.getAccountname(), temp.getUserid());
             return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM024.getCode(), request.getHeader("Accept-Language"));
         }
 
@@ -1744,13 +1746,13 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
         return AjaxResult.success(Constants.Success_Code_Design, MessageType.MESSAGE_CODE_SYSTEM001.getCode(), request.getHeader("Accept-Language"));
     }
 
-    private void sendSMS(String accountname, Long userid, int templateid){
+    private void sendSMS(String accountname, Long userid){
         Userinfo info = iUserinfoMapper.selectOne(new QueryWrapper<Userinfo>().eq("userid", userid));
         if(info == null || info.getMobile() == null)
             return;
         ShortMessageMtp1.ShortMsgSendReq.Builder builder = ShortMessageMtp1.ShortMsgSendReq.newBuilder();
         builder.setMsgType(2);
-        builder.setTemplateID(templateid);
+        builder.setTemplateID(15);
         builder.setPriority(2);
         builder.setScheduledTime("");
         builder.addRecvPhone(EncryptionUtils.decryptForAES(info.getMobile()));
@@ -1780,22 +1782,22 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
                 //成交量小数位
                 Goods goods = iGoodsMapper.selectOne(new QueryWrapper<Goods>().eq("goodsid", param.getGoodsid()));
                 if (goods.getQtydecimalplace() != null && goods.getQtydecimalplace() != 0) {
-                    BigDecimal qtyde = new BigDecimal(Math.pow(10, goods.getQtydecimalplace()));
-                    for (int i = 0; i < list.size(); i++) {
+                    BigDecimal qtyde = BigDecimal.valueOf(Math.pow(10, goods.getQtydecimalplace()));
+                    for (RulesConfigVo rulesConfigVo : list) {
                         //小数位放大
-                        if (list.get(i).getRuleid() >= 101 && list.get(i).getRuleid() <= 104) {
+                        if (rulesConfigVo.getRuleid() >= 101 && rulesConfigVo.getRuleid() <= 104) {
                             //平台 为商品本身的 小数位可能是商品的也可能是商品组的
-                            if (list.get(i).getParamvalue() != null &&
-                                    list.get(i).getParamvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setParamvalue(list.get(i).getParamvalue().divide(new BigDecimal(Math.pow(10, list.get(i).getQtydecimalplace()))));
+                            if (rulesConfigVo.getParamvalue() != null &&
+                                    rulesConfigVo.getParamvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                rulesConfigVo.setParamvalue(rulesConfigVo.getParamvalue().divide(BigDecimal.valueOf(Math.pow(10, rulesConfigVo.getQtydecimalplace()))));
                             }
-                            if (list.get(i).getGvalue() != null &&
-                                    list.get(i).getGvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setGvalue(list.get(i).getGvalue().divide(qtyde));
+                            if (rulesConfigVo.getGvalue() != null &&
+                                    rulesConfigVo.getGvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                rulesConfigVo.setGvalue(rulesConfigVo.getGvalue().divide(qtyde));
                             }
-                            if (list.get(i).getDvalue() != null &&
-                                    list.get(i).getDvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setDvalue(list.get(i).getDvalue().divide(qtyde));
+                            if (rulesConfigVo.getDvalue() != null &&
+                                    rulesConfigVo.getDvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                rulesConfigVo.setDvalue(rulesConfigVo.getDvalue().divide(qtyde));
                             }
                         }
                     }
@@ -1816,57 +1818,57 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
                         .eq("enumdiccode", "currency")
                         .eq("enumitemname", goods.getCurrencyid()));
                 if (item != null && StringUtils.isNotBlank(item.getParam1()) && !"0".equals(item.getParam1())) {
-                    BigDecimal Cude = new BigDecimal(Math.pow(10, Integer.valueOf(item.getParam1())));
-                    for (int i = 0; i < list.size(); i++) {
+                    BigDecimal Cude = BigDecimal.valueOf(Math.pow(10, Integer.parseInt(item.getParam1())));
+                    for (FeesConfigVo feesConfigVo : list) {
                         //小数位放大
-                        if (list.get(i).getFeealgorithm() == 2) {
-                            if (list.get(i).getExchangevalue() != null
-                                    && list.get(i).getExchangevalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setExchangevalue(list.get(i).getExchangevalue().divide(Cude));
+                        if (feesConfigVo.getFeealgorithm() == 2) {
+                            if (feesConfigVo.getExchangevalue() != null
+                                    && feesConfigVo.getExchangevalue().compareTo(BigDecimal.ZERO) != 0) {
+                                feesConfigVo.setExchangevalue(feesConfigVo.getExchangevalue().divide(Cude));
                             }
-                            if (list.get(i).getDvalue() != null
-                                    && list.get(i).getDvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setDvalue(list.get(i).getDvalue().divide(Cude));
+                            if (feesConfigVo.getDvalue() != null
+                                    && feesConfigVo.getDvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                feesConfigVo.setDvalue(feesConfigVo.getDvalue().divide(Cude));
                             }
-                            if (list.get(i).getGvalue() != null
-                                    && list.get(i).getGvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setGvalue(list.get(i).getGvalue().divide(Cude));
+                            if (feesConfigVo.getGvalue() != null
+                                    && feesConfigVo.getGvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                feesConfigVo.setGvalue(feesConfigVo.getGvalue().divide(Cude));
                             }
 
-                            if (list.get(i).getMembermaxvalue() != null
-                                    && list.get(i).getMembermaxvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setMembermaxvalue(list.get(i).getMembermaxvalue().divide(Cude));
+                            if (feesConfigVo.getMembermaxvalue() != null
+                                    && feesConfigVo.getMembermaxvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                feesConfigVo.setMembermaxvalue(feesConfigVo.getMembermaxvalue().divide(Cude));
                             }
-                            if (list.get(i).getMemberminvalue() != null
-                                    && list.get(i).getMemberminvalue().compareTo(BigDecimal.ZERO) != 0) {
-                                list.get(i).setMemberminvalue(list.get(i).getMemberminvalue().divide(Cude));
+                            if (feesConfigVo.getMemberminvalue() != null
+                                    && feesConfigVo.getMemberminvalue().compareTo(BigDecimal.ZERO) != 0) {
+                                feesConfigVo.setMemberminvalue(feesConfigVo.getMemberminvalue().divide(Cude));
                             }
                         }
                     }
                 }
             } else {
-                for (int i = 0; i < list.size(); i++) {
-                    if (list.get(i).getFeealgorithm() == 1) {
-                        if (list.get(i).getExchangevalue() != null
-                                && list.get(i).getExchangevalue().compareTo(BigDecimal.ZERO) != 0) {
-                            list.get(i).setExchangevalue(list.get(i).getExchangevalue().multiply(new BigDecimal("10000")));
+                for (FeesConfigVo feesConfigVo : list) {
+                    if (feesConfigVo.getFeealgorithm() == 1) {
+                        if (feesConfigVo.getExchangevalue() != null
+                                && feesConfigVo.getExchangevalue().compareTo(BigDecimal.ZERO) != 0) {
+                            feesConfigVo.setExchangevalue(feesConfigVo.getExchangevalue().multiply(new BigDecimal("10000")));
                         }
-                        if (list.get(i).getDvalue() != null
-                                && list.get(i).getDvalue().compareTo(BigDecimal.ZERO) != 0) {
-                            list.get(i).setDvalue(list.get(i).getDvalue().multiply(new BigDecimal("10000")));
+                        if (feesConfigVo.getDvalue() != null
+                                && feesConfigVo.getDvalue().compareTo(BigDecimal.ZERO) != 0) {
+                            feesConfigVo.setDvalue(feesConfigVo.getDvalue().multiply(new BigDecimal("10000")));
                         }
-                        if (list.get(i).getGvalue() != null
-                                && list.get(i).getGvalue().compareTo(BigDecimal.ZERO) != 0) {
-                            list.get(i).setGvalue(list.get(i).getGvalue().multiply(new BigDecimal("10000")));
+                        if (feesConfigVo.getGvalue() != null
+                                && feesConfigVo.getGvalue().compareTo(BigDecimal.ZERO) != 0) {
+                            feesConfigVo.setGvalue(feesConfigVo.getGvalue().multiply(new BigDecimal("10000")));
                         }
 
-                        if (list.get(i).getMembermaxvalue() != null
-                                && list.get(i).getMembermaxvalue().compareTo(BigDecimal.ZERO) != 0) {
-                            list.get(i).setMembermaxvalue(list.get(i).getMembermaxvalue().multiply(new BigDecimal("10000")));
+                        if (feesConfigVo.getMembermaxvalue() != null
+                                && feesConfigVo.getMembermaxvalue().compareTo(BigDecimal.ZERO) != 0) {
+                            feesConfigVo.setMembermaxvalue(feesConfigVo.getMembermaxvalue().multiply(new BigDecimal("10000")));
                         }
-                        if (list.get(i).getMemberminvalue() != null
-                                && list.get(i).getMemberminvalue().compareTo(BigDecimal.ZERO) != 0) {
-                            list.get(i).setMemberminvalue(list.get(i).getMemberminvalue().multiply(new BigDecimal("10000")));
+                        if (feesConfigVo.getMemberminvalue() != null
+                                && feesConfigVo.getMemberminvalue().compareTo(BigDecimal.ZERO) != 0) {
+                            feesConfigVo.setMemberminvalue(feesConfigVo.getMemberminvalue().multiply(new BigDecimal("10000")));
                         }
                     }
                 }
@@ -1877,13 +1879,10 @@ public class UseraccountServiceImpl extends ServiceImpl<IUseraccountMapper, User
 
     private Integer getUserESignRecordCount(Long userid, Long areauserid) {
         // 根据ESignTemplateConfig表生成UserESignRecord表记录
-        Map<String, Object> map = new HashMap<>();
-        map.put("userid", userid);
-        map.put("areauserid", areauserid);
         List<Useresignrecord> records = iUseresignrecordMapper.selectList(new QueryWrapper<Useresignrecord>()
                 .eq("userid", userid)
                 .eq("areauserid", areauserid));
-        if (records != null && records.size() > 0) {
+        if (CollectionUtils.isNotEmpty(records)) {
             return records.size();
         }
         return 0;

+ 2 - 0
mtp3-century/src/main/java/com/muchinfo/mtp3century/vo/systemlogin/LoginRsp.java

@@ -34,4 +34,6 @@ public class LoginRsp implements Serializable {
     private String username;
 
     private String logincode;
+
+    private Long areauserid;
 }

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

@@ -127,7 +127,7 @@
     </select>
     <select id="getNoTradeConfigMarketsForAccount" resultType="com.muchinfo.mtp3pojos.entity.Market"
             parameterType="com.muchinfo.mtp3pojos.vo.investor.PersonalizationDelParam">
-        select t.* from market tgetNoTradeConfigMarkets
+        select t.* from market t
         <choose>
             <when test="vo.accountid != null">
                 ,taaccountmarket ta

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

@@ -1373,28 +1373,19 @@
 
     <select id="queryCusBank" parameterType="com.muchinfo.mtp3pojos.vo.reportform.CusBankReportParam"
             resultType="com.muchinfo.mtp3pojos.vo.reportform.CusBankReportResult">
-        with exch AS (
-        select t.tradedate, t.cusbankid, sum(t.balance) balance,
-        sum(t.currentbalance) currentbalance, sum(t.PL) totalpl, sum(t.charge) totalcharge,
-        sum(t.inamount) totalinamout, sum(t.outamount) totaloutamount
-        from bank_clearexchresult t
-        where t.signflag = 1
-        group by t.tradedate, t.cusbankid)
         select
         t.cusbankid,
         t.tradedate,
-        t.inamoutcout, exch.totalinamout, t.inamoutnum,
-        t.outamountcout, exch.totaloutamount, t.outamountnum,
+        t.inamoutcout, t.totalinamout, t.inamoutnum,
+        t.outamountcout, t.totaloutamount, t.outamountnum,
         t.signincount, t.signoutcount, t.opencount, t.totalsignincount,
         t.totalpl, t.totalcharge, t.totalincharge, t.totaloutcharge,
-        exch.balance,  exch.currentbalance,
+        t.balance,  t.currentbalance,
         t.checkstatus,
         b.currency,
         b.cusbankname
         from Bank_CusBankCheck t
         inner join BANK_CUSBANKINFO b on t.cusbankid=b.cusbankid
-        inner join exch on t.tradedate = exch.tradedate
-        -- and t.cusbankid = exch.cusbankid
         <where>
             <if test="vo.startDate != null and vo.startDate != '' and vo.endDate != null and vo.endDate != ''">
                 and to_date(t.tradedate,'yyyy-MM-dd') between to_date(#{vo.startDate},'yyyy-MM-dd')

+ 24 - 3
mtp3-century/src/main/resources/mapper/UseraccountMapper.xml

@@ -751,7 +751,7 @@
         <if test="vo.usergroupid != null">
             , co as (select u.paramid,u.feealgorithm, u.paramvalue from usergrouptradeconfig u
             where u.ruletype=3 <if test="vo.memberuserid != null">and u.memberuserid = #{vo.memberuserid}</if> and
-            u.usergroupid=#{vo.usergroupid} and u.marketid = #{marketid} and u.goodsid = #{vo.goodsid}
+            u.usergroupid=#{vo.usergroupid} and u.marketid = #{vo.marketid} and u.goodsid = #{vo.goodsid}
             )
         </if>
         <if test="vo.usergroupid2 != null">
@@ -969,13 +969,13 @@
         </if>
     </select>
     <select id="usercancelapply" resultType="com.muchinfo.mtp3pojos.vo.investor.InvestorCancelApplyResult">
-        <![CDATA[select sm.logincode auditlogincode,
+        select sm.logincode auditlogincode,
 		sm.username auditusername,
 		ua.accountname,
 		ua.accountstatus,
 		uca.* from USERCANCELAPPLY uca
 		left join systemmanager sm on sm.autoid = uca.auditid
-		left join useraccount ua on uca.userid = ua.userid]]>
+		left join useraccount ua on uca.userid = ua.userid
         <where>
             <if test="vo.accountname != null and vo.accountname != ''">
                 <![CDATA[and (ua.accountname like '%${vo.accountname}%' escape '/' or uca.userid like '%${vo.accountname}%' escape '/')]]>
@@ -986,4 +986,25 @@
         </where>
         <![CDATA[order by uca.handlestatus asc,uca.applytime asc]]>
     </select>
+
+    <!-- 获取未配置交易个性化的用户 -->
+    <select id="getNoTradeConfigInvestorsLikeName" resultType="com.muchinfo.mtp3pojos.vo.investor.InitInvestorTradeResult">
+        select * from (
+        select t.*  from useraccount t where t.accountstatus=4
+        <if test="memberuserid != null">
+            start with t.userid = #{memberuserid}
+            connect by t.parentuserid = prior t.userid
+        </if>
+        and t.usertype!=2
+        ) a where a.usertype = 5
+        <if test="memberuserid != null">
+            and a.memberuserid = #{memberuserid}
+        </if>
+        <if test="searchName != null">
+            and a.accountname like '%'||#{searchName}||'%'
+        </if>
+        and not exists (select 1  from accounttradeconfig u
+        where <if test="memberuserid != null"> u.memberuserid = #{memberuserid} and </if> a.userid = u.userid)
+        and rownum &lt;= 10
+    </select>
 </mapper>

+ 2 - 0
mtp3-interface/src/main/java/com/muchinfo/mtp3interface/mapper/IUseraccountMapper.java

@@ -102,4 +102,6 @@ public interface IUseraccountMapper extends BaseMapper<Useraccount> {
     List<OrganSelectResult> querySonOrganPageByLevel(Integer subarealevel, String searchcode);
 
     IPage<InvestorCancelApplyResult> usercancelapply(IPage<InvestorCancelApplyResult> page, @Param("vo") InvestorCancelApplyParam param);
+
+    List<InitInvestorTradeResult> getNoTradeConfigInvestorsLikeName(@Param("memberuserid") Long memberuserid, @Param("searchName") String searchName);
 }

+ 4 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/entity/Usercancelapply.java

@@ -67,7 +67,11 @@ public class Usercancelapply extends Model<Usercancelapply> {
     @TableField("HANDLESTATUS")
     private Integer handlestatus;
 
+    @TableField(select = false)
+    private String auditusername;
 
+    @TableField(select = false)
+    private String accountname;
     @Override
     public Serializable pkVal() {
         return this.autoid;

+ 19 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/investor/InitInvestorTradeResult.java

@@ -0,0 +1,19 @@
+package com.muchinfo.mtp3pojos.vo.investor;
+
+import io.swagger.annotations.ApiModel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Builder
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@ApiModel(value="InitInvestorTradeResult对象", description="资金账户个性化初始化交易商信息")
+public class InitInvestorTradeResult {
+
+    private Long userid;
+
+    private String accountname;
+}

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

@@ -21,6 +21,8 @@ public class InvestorCancelApplyResult {
     @ApiModelProperty(value = "交易商名称")
     private Long userid;
 
+    private String auditusername;
+
     @ApiModelProperty(value = "申请状态")
     private Integer applystatus;
 
@@ -31,7 +33,9 @@ public class InvestorCancelApplyResult {
     private Integer handlestatus;
 
     @ApiModelProperty(value = "审核人")
-    private Long auditlogincode;
+    private String auditlogincode;
+
+    private String accountname;
 
     @ApiModelProperty(value = "审核时间")
     private Date audittime;

+ 2 - 0
mtp3-pojos/src/main/java/com/muchinfo/mtp3pojos/vo/organ/SupportTradeConfigAddParam.java

@@ -30,6 +30,8 @@ public class SupportTradeConfigAddParam {
 
     private Integer paramid;
 
+    private Long memberuserid;
+
     private List<Accounttradeconfig> ruleList;
 
     private List<Accounttradeconfig> feeList;