Просмотр исходного кода

修改bug:
bug表1002,财务中心 把财务模块的录入人、审核人、管理员等都改成名字,不要手机号
bug表1003,平台应收 用支公司搜索保司没有筛出来

jiakai 1 месяц назад
Родитель
Сommit
fb4d740a43

+ 39 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsFeeAuditServiceImpl.java

@@ -1,6 +1,7 @@
 package com.jzg.quotation.summary.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ReUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSONObject;
@@ -175,6 +176,10 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
 //            feeAuditVo.setPartnerCompanyName(allCompanyHierarchyPaths.get(Objects.toString(feeAuditVo.getPartnerCompanyId(),"")));
 //            feeAuditVo.setPartnerCompanySimplyName(allCompanyHierarchyPaths.get(Objects.toString(feeAuditVo.getPartnerCompanyId(),"")));
             feeAuditVo.setPartnerCompanySimplyName(feeAuditVo.getPartnerCompanyName());
+            // auditUser 非空时,判断是名称还是手机号
+            feeAuditVo.setAuditUser(getUserNameByMobile(feeAuditVo.getAuditUser()));
+            feeAuditVo.setCreateBy(getUserNameByMobile(feeAuditVo.getCreateBy()));
+
             // 循环每条数据,查询 ins_fee_orders 并计算权益金额
             // 查询订单的 ins_fee_orders 数据
             InsFeeOrders insFeeOrders = feeOrdersService.getById(feeAuditVo.getOrderNo());
@@ -198,7 +203,7 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         return page;
     }
 
-      public List<FeeAuditVo> queryList(FeeAuditParam param) {
+    public List<FeeAuditVo> queryList(FeeAuditParam param) {
         log.info("订单审核-任务中心,查询待审核任务。 param=[{}]", JSONUtil.toJsonStr(param));
         // 获取选中的保险公司条件
         String companyId = param.getCompanyId();
@@ -1214,4 +1219,37 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         log.info("查询审核明细:{},{},{},{}, 查询出[{}]条记录", systemCode,  userName,  pageNo,pageSize, CollUtil.size(res.getRecords()));
         return res.getRecords();
     }
+
+
+    /**
+     * 根据用户手机号查询名称
+     * @param mobile
+     * @return
+     */
+    private String getUserNameByMobile(String mobile) {
+        if (StringUtils.isNotBlank(mobile)) {
+            // 国内手机号正则:1开头,第二位3-9,共11位数字
+            String mobileRegex = "^1[3-9]\\d{9}$";
+            if (ReUtil.contains(mobileRegex, mobile)) {
+                // auditUser 是手机号:先从 sys_user 表根据 mobile 查询数据
+                HttpResult<SysUser> sysUserResult = orgClient.getUserOnlyIdByMobile(mobile);
+                if (sysUserResult != null && sysUserResult.isSuccess() && sysUserResult.getData() != null) {
+                    SysUser sysUser = sysUserResult.getData();
+                    String userName = sysUser.getUsername();
+                    // 如果 sys_user 的 username 字段是手机号,则再去 sys_user_jzg_info 根据 user_id 查询数据,展示 name
+                    if (StringUtils.isNotBlank(userName) && userName.matches(mobileRegex)) {
+                        HttpResult<SysUserJzgInfo> jzgInfoResult = orgClient.getUserInfo(sysUser.getId());
+                        if (jzgInfoResult != null && jzgInfoResult.isSuccess() && jzgInfoResult.getData() != null
+                                && StringUtils.isNotBlank(jzgInfoResult.getData().getName())) {
+                            return jzgInfoResult.getData().getName();
+                        }
+                    } else if (StringUtils.isNotBlank(userName)) {
+                        // 如果 sys_user 的 username 是名称,则直接展示
+                        return userName;
+                    }
+                }
+            }
+        }
+        return StrUtil.EMPTY;
+    }
 }

+ 2 - 1
tenant/insurance/quotation-summary/src/main/resources/mapper/InsFeeAuditMapper.xml

@@ -65,7 +65,8 @@
         ioc.jq_premium as jqPremium, ioc.sy_premium as syPremium, ioc.jy_premium as jyPremium,
         ioc.sum_premium as sumPremium,sd.name as deptName,ifa.create_time as createTime,
         ifa.create_by as createBy,io.pay_time as payTime, ifa.audit_time as auditTime,
-        ifa.audit_user as auditUser, ifa.refuse,
+        ifa.audit_user as auditUser,
+        ifa.refuse,
         ifa.is_problem, ifa.problem_reason,
         ifa.problem_time,
         CASE ifa.is_problem

+ 1 - 1
tenant/organization/src/main/resources/mapper/ReceivableMapper.xml

@@ -378,7 +378,7 @@
             AND ipi.license_no LIKE CONCAT('%', #{receivableQueryVo.licenseNo}, '%')
         </if>
         <if test="receivableQueryVo.companyId != null and receivableQueryVo.companyId != ''">
-            AND ipi.company_id = #{receivableQueryVo.companyId}
+            AND (ipi.partner_company_id = #{receivableQueryVo.companyId} or ipi.company_id = #{receivableQueryVo.companyId})
         </if>
         <if test="receivableQueryVo.businessSource != null and receivableQueryVo.businessSource != ''">
             AND ipi.business_source = #{receivableQueryVo.businessSource}