فهرست منبع

财务中心-任务中心 页面中,保险公司使用层级的展示形式

lipf 4 ماه پیش
والد
کامیت
10922ac3f3

+ 11 - 0
commons/src/main/java/com/jzg/commons/entity/orders/vo/FeeAuditVo.java

@@ -6,6 +6,7 @@ import com.jzg.commons.core.base.BaseModel;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
+import java.io.Serial;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
@@ -13,6 +14,8 @@ import java.time.LocalDateTime;
 @Data
 public class FeeAuditVo extends BaseModel {
 
+    @Serial
+    private static final long serialVersionUID = 4631117388822444574L;
     @ExcelProperty("订单号")
     @Schema(description = "订单号")
     private String orderNo;
@@ -21,6 +24,14 @@ public class FeeAuditVo extends BaseModel {
     @Schema(description = "保险公司")
     private String companyName;
 
+    @Schema(description = "保险公司ID")
+    private String companyId;
+    /**
+     * 保险公司名称及父级的名称,例如
+     */
+    @Schema(description = "保险公司名称及父级的名称")
+    private String companyALlName;
+
     @ExcelProperty("车牌号")
     @Schema(description = "车牌号")
     private String licenseNo;

+ 75 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/client/EsmInsCompanyClient.java

@@ -0,0 +1,75 @@
+package com.jzg.quotation.summary.client;
+
+import com.jzg.commons.core.page.HttpResult;
+import com.jzg.commons.entity.agreement.po.PtlAgreementAttribution;
+import com.jzg.commons.entity.po.EsmInsCompany;
+import com.jzg.commons.entity.system.vo.SysSystemBusPermsVo;
+import com.jzg.commons.request.RequestSingleParam;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+import java.util.Map;
+
+@FeignClient(name = "jzg-platform")
+public interface EsmInsCompanyClient {
+
+
+    /**
+     * 获取所有保险公司的全路径名称
+     * Key: 公司ID
+     * Value: 总公司/分公司/支公司
+     */
+    @GetMapping("esmInsCompany/getAllCompanyHierarchyPaths")
+    public Map<String, String> getAllCompanyHierarchyPaths();
+
+    /**
+     * 根据id获取保险公司信息
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("/esmInsCompany/findById")
+    public HttpResult<EsmInsCompany> findById(@RequestParam String id);
+
+    /**
+     * 查找存在协议的保险公司列表
+     *
+     * @return
+     */
+    @GetMapping("/esmInsCompany/liveCompanyList")
+    public HttpResult<List<EsmInsCompany>> liveCompanyList();
+
+    @GetMapping("/system/getBusPerms")
+    public HttpResult<SysSystemBusPermsVo> getBusPerms(@RequestParam String systemCode);
+
+    /**
+     * 获取用户的保司信息
+     *
+     * @param systemCode
+     * @return
+     */
+    @GetMapping("/system/getUserCompany")
+    public HttpResult<List<EsmInsCompany>> getUserCompany(@RequestParam String systemCode);
+
+    /**
+     * 获取保司账号信息
+     *
+     * @param agreementId 协议id
+     * @return
+     */
+    @GetMapping("/manager/attributionTemplate/getAgreementAttribution")
+    public HttpResult<PtlAgreementAttribution> getAgreementAttribution(@RequestParam("agreementId") String agreementId);
+
+
+    @PostMapping("/esmInsCompany/getParentIds")
+    HttpResult getParentIds(@RequestBody List<String> companyIds);
+
+
+    @PostMapping("/esmInsCompany/getTopCompanyId")
+    HttpResult getTopCompanyId(@RequestSingleParam("companyId") String companyId);
+
+}

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

@@ -33,6 +33,7 @@ import com.jzg.commons.util.idgen.IdGenerate;
 import com.jzg.quotation.commons.client.OrgClient;
 import com.jzg.quotation.commons.client.PartnerClient;
 import com.jzg.quotation.commons.client.PlatformClient;
+import com.jzg.quotation.summary.client.EsmInsCompanyClient;
 import com.jzg.quotation.summary.client.LocalLivingClient;
 import com.jzg.quotation.summary.entity.Result;
 import com.jzg.quotation.summary.entity.dto.ChannelRightsApiGrantReceiverDTO;
@@ -80,6 +81,8 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
 
     @Autowired
     private PlatformClient platformClient;
+    @Autowired
+    private EsmInsCompanyClient esmInsCompanyClient;
 
     @Autowired
     private BaseController baseController;
@@ -135,7 +138,10 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
         Page<FeeAuditVo> page = baseMapper.queryPage(param.getPage(), param);
         // 循环每条数据,查询 ins_fee_orders 并计算权益金额
         if (CollUtil.isNotEmpty(page.getRecords())) {
+            Map<String, String> allCompanyHierarchyPaths = esmInsCompanyClient.getAllCompanyHierarchyPaths();
             for (FeeAuditVo feeAuditVo : page.getRecords()) {
+                String allCompany =  allCompanyHierarchyPaths.get(Objects.toString(feeAuditVo.getCompanyId(),""));
+                feeAuditVo.setCompanyALlName(allCompany);
                 // 查询订单的 ins_fee_orders 数据
                 InsFeeOrders insFeeOrders = feeOrdersService.getById(feeAuditVo.getOrderNo());
                 if (insFeeOrders != null) {

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

@@ -28,6 +28,7 @@
     <select id="queryPage" resultType="com.jzg.commons.entity.orders.vo.FeeAuditVo">
         SELECT
             ifa.order_no as orderNo,
+            io.company_id,
             io.company_name as companyName,
             ioci.license_no AS licenseNo,
             iocui.name as insurName,