Browse Source

保单清单查询分权限查询不同数据

cuixinpeng 2 năm trước cách đây
mục cha
commit
d3dc504661

+ 4 - 2
src/main/java/com/ydtech/modules/order/controller/InsOrdersController.java

@@ -185,12 +185,14 @@ public class InsOrdersController extends BaseController {
     @PostMapping("/getPolicyInsuranceReport")
     @ApiOperation(value = "分页获取保单清单数据")
     public HttpResult<BasePageResult<PolicyInsuranceReportResVo>> getPolicyInsuranceReport(@RequestBody PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
-        BasePageResult<PolicyInsuranceReportResVo> quoteResult = insOrdersService.getPolicyInsuranceReport(policyInsuranceReportReqVo);
+        String userId = getUserId();
+        BasePageResult<PolicyInsuranceReportResVo> quoteResult = insOrdersService.getPolicyInsuranceReport(policyInsuranceReportReqVo,userId);
         return HttpResult.ok("success", quoteResult);
     }
     @PostMapping("/exportPolicyInsuranceReport")
     @ApiOperation(value = "导出保单清单数据")
     public HttpResult<String> exportPolicyInsuranceReport(@RequestBody PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
-        return insOrdersService.exportPolicyInsuranceReport(policyInsuranceReportReqVo);
+        String userId = getUserId();
+        return insOrdersService.exportPolicyInsuranceReport(policyInsuranceReportReqVo,userId);
     }
 }

+ 3 - 0
src/main/java/com/ydtech/modules/order/entity/vo/PolicyInsuranceReportReqVo.java

@@ -67,4 +67,7 @@ public class PolicyInsuranceReportReqVo {
     @Min(value = 1, message = "页数最小为1")
     private int pageNum;
 
+    @ApiModelProperty("查询payTime或者payDate")
+    private String queryFlag;
+
 }

+ 13 - 2
src/main/java/com/ydtech/modules/order/service/InsOrdersService.java

@@ -119,7 +119,18 @@ public interface InsOrdersService extends IService<InsOrders> {
     boolean saveAndTrajectories(InsOrders insOrders);
 
 
-    BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo);
+    /**
+     * 分页查询保单报表信息
+     * @param policyInsuranceReportReqVo
+     * @param userId
+     * @return
+     */
+    BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId);
 
-    HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo);
+    /**
+     * 导出保单报表信息
+     * @param policyInsuranceReportReqVo
+     * @return
+     */
+    HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId);
 }

+ 16 - 2
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -544,7 +544,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     }
 
     @Override
-    public BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
+    public BasePageResult<PolicyInsuranceReportResVo> getPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId) {
+        String queryFlag = "queryPayDate";
+        //判断当前登录人员是否为管理人员和财务人员;要求管理人员查询paytime,其他查询paydate
+        List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId, "22");
+        if (userList != null && !userList.isEmpty()) {
+            queryFlag = "queryPayTime";
+        }
+        policyInsuranceReportReqVo.setQueryFlag(queryFlag);
         Page<InsOrders> page = new Page<>(policyInsuranceReportReqVo.getPageNum(), policyInsuranceReportReqVo.getPageSize());
         page.setSearchCount(false).setOptimizeCountSql(false);//关闭count查询
         Page<PolicyInsuranceReportResVo> policyInsuranceReportResVoPage = baseMapper.getPolicyInsuranceReport(page, policyInsuranceReportReqVo );
@@ -554,7 +561,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                 , policyInsuranceReportResVoPage.getRecords());
     }
     @Override
-    public HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo) {
+    public HttpResult<String> exportPolicyInsuranceReport(PolicyInsuranceReportReqVo policyInsuranceReportReqVo,String userId) {
+        String queryFlag = "queryPayDate";
+        //判断当前登录人员是否为管理人员和财务人员;要求管理人员查询paytime,其他查询paydate
+        List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId, "22");
+        if (userList != null && !userList.isEmpty()) {
+            queryFlag = "queryPayTime";
+        }
+        policyInsuranceReportReqVo.setQueryFlag(queryFlag);
         List<PolicyInsuranceReportResVo> policyInsuranceReportResVoPage = baseMapper.getPolicyInsuranceReport( policyInsuranceReportReqVo );
         String s = EasyExcelUtils.downExcel(uploadFilePath, PolicyInsuranceReportResVo.class, policyInsuranceReportResVoPage);
         return HttpResult.ok("", s);

+ 48 - 8
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -411,7 +411,12 @@
         SELECT a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`jqpolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag='queryPayDate'">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag='queryPayTime'">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`jq_start_date` AS policyStartDate,
         '交强险' AS riskName,
         a.`jqpremium` AS sumPremium,
@@ -454,7 +459,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag='queryPayDate'">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag='queryPayTime'">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -464,7 +474,12 @@
         SELECT  a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`sypolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag='queryPayDate'">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag='queryPayTime'">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`sy_start_date` AS policyStartDate,
         '商业险' AS riskName,
         a.`sypremium` AS sumPremium,
@@ -507,7 +522,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag='queryPayDate'">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag='queryPayTime'">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -521,7 +541,12 @@
         SELECT a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`jqpolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag='queryPayDate'">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag='queryPayTime'">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`jq_start_date` AS policyStartDate,
         '交强险' AS riskName,
         a.`jqpremium` AS sumPremium,
@@ -564,7 +589,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag='queryPayDate'">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag='queryPayTime'">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
@@ -574,7 +604,12 @@
         SELECT  a.`inscompany` AS insCompany,
         (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
         a.`sypolicyno` AS policyNo,
-        getValidDate(a.`orderno`,a.`id`) AS quoteDate,
+        <if test="policyReqVo.queryFlag='queryPayDate'">
+            a.pay_date  AS quoteDate,
+        </if>
+        <if test="policyReqVo.queryFlag='queryPayTime'">
+            a.inside_pay_time  AS quoteDate,
+        </if>
         a.`sy_start_date` AS policyStartDate,
         '商业险' AS riskName,
         a.`sypremium` AS sumPremium,
@@ -617,7 +652,12 @@
             and a.operatorid = #{policyReqVo.operatorId}
         </if>
         <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
-            and getValidDate(a.`orderno`,a.`id`) between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            <if test="policyReqVo.queryFlag='queryPayDate'">
+                and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
+            <if test="policyReqVo.queryFlag='queryPayTime'">
+                and a.inside_pay_time  between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
+            </if>
         </if>
         <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
             and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}