Explorar el Código

添加数据权限字段
修改代理人的团队级别bug修复

hxl13994548489 hace 2 años
padre
commit
ab270d0eee

+ 2 - 1
sql/Online.sql

@@ -271,4 +271,5 @@ ALTER TABLE `sys_pc_address_history` ADD COLUMN `prov` varchar(30) COLLATE utf8m
 ALTER TABLE `sys_pc_address_history` ADD COLUMN `city` varchar(30) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '城市';
 ALTER TABLE `sys_pc_address_history` ADD COLUMN `district` varchar(30) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '区县';
 
-
+-- add by  hxl  2024-09-04
+ALTER TABLE `sys_dept_internal_agent` ADD COLUMN `bind_dept_id` varchar(30) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '绑定机构id';

+ 28 - 12
src/main/java/com/ydtech/modules/admin/controller/kzt/KZTPermissionController.java

@@ -3,9 +3,13 @@ package com.ydtech.modules.admin.controller.kzt;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
+import com.ydtech.modules.admin.model.SysRole;
+import com.ydtech.modules.admin.model.dto.SysDeptAccountHistoryDto;
 import com.ydtech.modules.admin.model.po.KztDataPermission;
+import com.ydtech.modules.admin.model.vo.KztDataPermissionVo;
 import com.ydtech.modules.admin.service.KztDataPermissionService;
 import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.modules.order.entity.BasePageResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -60,16 +64,16 @@ public class KZTPermissionController extends BaseController {
      *  @version
      *  @author: hxl
      *  @Date: 2024/8/14 18:54
-     *  @Description: 控制台角色刪除
+     *  @Description: 控制台数据权限通过id查询数据
      */
-    @ApiOperation(value = "控制台数据权限通过菜单id查询数据")
-    @GetMapping(value = "/findByMenuId")
-    public HttpResult findByMenuId(Long menuId) {
-        if(menuId==null){
-            throw  new SystemException("菜单id不能为空");
+    @ApiOperation(value = "控制台数据权限通过id查询数据")
+    @GetMapping(value = "/findById")
+    public HttpResult findByMenuId(Long id) {
+        if(id==null){
+            throw  new SystemException("id不能为空");
         }
         LambdaQueryWrapper<KztDataPermission> lqw = new LambdaQueryWrapper<>();
-        lqw.eq(KztDataPermission::getMenuId, menuId);
+        lqw.eq(KztDataPermission::getId, id);
         KztDataPermission kztDataPermission = kztDataPermissionService.getOne(lqw);
         return HttpResult.ok(kztDataPermission);
     }
@@ -80,16 +84,16 @@ public class KZTPermissionController extends BaseController {
      *  @Date: 2024/8/14 18:54
      *  @Description: 控制台角色刪除
      */
-    @ApiOperation(value = "控制台权限清空")
+    @ApiOperation(value = "控制台权限清空删除")
     @GetMapping(value = "/delete")
     @Transactional
-    public HttpResult delete(Long menuId) {
-        if(menuId==null){
-            throw  new SystemException("菜单id不能为空");
+    public HttpResult delete(Long id) {
+        if(id==null){
+            throw  new SystemException("id不能为空");
         }
         try{
             LambdaQueryWrapper<KztDataPermission> lqw = new LambdaQueryWrapper<>();
-            lqw.eq(KztDataPermission::getMenuId, menuId);
+            lqw.eq(KztDataPermission::getId, id);
             kztDataPermissionService.getBaseMapper().delete(lqw);
         }catch(Exception e){
             return HttpResult.error("删除失败");
@@ -97,4 +101,16 @@ public class KZTPermissionController extends BaseController {
         return HttpResult.ok("删除成功");
     }
 
+
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/9/4 16:05
+     *  @Description:  查询所有的数据权限
+     */
+    @PostMapping("/queryPage")
+    @ApiOperation(value = "查询所有的数据权限分页")
+    public HttpResult<BasePageResult<KztDataPermission>> queryPage(@RequestBody KztDataPermissionVo kztDataPermissionVo){
+        return HttpResult.ok("", kztDataPermissionService.queryPage(kztDataPermissionVo));
+    }
 }

+ 9 - 1
src/main/java/com/ydtech/modules/admin/dao/KztDataPermissionMapper.java

@@ -1,7 +1,9 @@
 package com.ydtech.modules.admin.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ydtech.modules.admin.model.po.KztDataPermission;
+import com.ydtech.modules.admin.model.vo.KztDataPermissionVo;
 
 
 /**
@@ -11,7 +13,13 @@ import com.ydtech.modules.admin.model.po.KztDataPermission;
 * @Entity generator.domain.KztDataPermission
 */
 public interface KztDataPermissionMapper extends BaseMapper<KztDataPermission> {
-
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/9/4 16:18
+     *  @Description: 分页显示数据
+     */
+    Page<KztDataPermission> queryPage(Page<KztDataPermission> page, KztDataPermissionVo kztDataPermissionVo);
 }
 
 

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/dto/SysDeptInternalAgentDto.java

@@ -54,4 +54,7 @@ public class SysDeptInternalAgentDto implements Serializable {
     @ApiModelProperty(value = "机构编码")
     private String deptCode;
 
+
+
+
 }

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/po/SysDeptInternalAgent.java

@@ -94,6 +94,9 @@ public class SysDeptInternalAgent implements Serializable {
     @TableField(value = "parent_ids")
     private String parentIds;
 
+    @TableField(value = "bind_dept_id")
+    private String bindDeptId;
+
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
 

+ 22 - 0
src/main/java/com/ydtech/modules/admin/model/vo/KztDataPermissionVo.java

@@ -0,0 +1,22 @@
+package com.ydtech.modules.admin.model.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ *  @version
+ *  @author: hxl
+ *  @Date: 2024/9/4 16:12
+ *  @Description:  数据权限查询
+ */
+@Data
+@ApiModel("数据权限分页")
+public class KztDataPermissionVo {
+
+    @ApiModelProperty(value = "页码")
+    private Integer pageNum = 1;
+
+    @ApiModelProperty(value = "每页数据量")
+    private Integer pageSize = 10;
+}

+ 10 - 1
src/main/java/com/ydtech/modules/admin/service/KztDataPermissionService.java

@@ -1,7 +1,10 @@
 package com.ydtech.modules.admin.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.admin.model.SysRole;
 import com.ydtech.modules.admin.model.po.KztDataPermission;
+import com.ydtech.modules.admin.model.vo.KztDataPermissionVo;
+import com.ydtech.modules.order.entity.BasePageResult;
 
 
 /**
@@ -10,5 +13,11 @@ import com.ydtech.modules.admin.model.po.KztDataPermission;
 * @createDate 2024-08-20 11:56:29
 */
 public interface KztDataPermissionService extends IService<KztDataPermission> {
-
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/9/4 16:15
+     *  @Description:  数据权限分页
+     */
+    BasePageResult<KztDataPermission> queryPage(KztDataPermissionVo kztDataPermissionVo);
 }

+ 19 - 0
src/main/java/com/ydtech/modules/admin/service/impl/KztDataPermissionServiceImpl.java

@@ -1,11 +1,19 @@
 package com.ydtech.modules.admin.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.modules.admin.dao.KztDataPermissionMapper;
+import com.ydtech.modules.admin.model.SysRole;
+import com.ydtech.modules.admin.model.dto.SysUserLinkPtlAgreementDto;
 import com.ydtech.modules.admin.model.po.KztDataPermission;
+import com.ydtech.modules.admin.model.vo.KztDataPermissionVo;
 import com.ydtech.modules.admin.service.KztDataPermissionService;
+import com.ydtech.modules.order.entity.BasePageResult;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
 * @author Administrator
 * @description 针对表【kzt_data_permission】的数据库操作Service实现
@@ -15,6 +23,17 @@ import org.springframework.stereotype.Service;
 public class KztDataPermissionServiceImpl extends ServiceImpl<KztDataPermissionMapper, KztDataPermission>
     implements KztDataPermissionService {
 
+    @Autowired
+    private   KztDataPermissionMapper kztDataPermissionMapper;
+
+    @Override
+    public BasePageResult<KztDataPermission> queryPage(KztDataPermissionVo kztDataPermissionVo) {
+        Page<KztDataPermission> page = new Page<>(kztDataPermissionVo.getPageNum(),
+                kztDataPermissionVo.getPageSize());
+        Page<KztDataPermission> sysUserLinkPtlAgreementDtoBasePageResult = kztDataPermissionMapper.queryPage(page, kztDataPermissionVo);
+        return  new BasePageResult<>(kztDataPermissionVo.getPageNum(), page.getSize(), sysUserLinkPtlAgreementDtoBasePageResult.getTotal(), page.getPages(),
+                sysUserLinkPtlAgreementDtoBasePageResult.getRecords());
+    }
 }
 
 

+ 45 - 28
src/main/java/com/ydtech/modules/admin/service/impl/UserReportServiceImpl.java

@@ -568,13 +568,15 @@ public class UserReportServiceImpl implements UserReportService {
         vo.setTeamlevel(levelName);
         vo.setTeamnum(userIds.size());
         if(userIds!=null && userIds.size()>0){
-            TaskStatisticsDto taskStatisticsDto = insAreaCompanyMapper.numberQuotationsByUserIds(userIds,null);
-            if(taskStatisticsDto==null){
+            QxFrontlineAgentDto qxFrontlineAgentDto = new QxFrontlineAgentDto();
+            qxFrontlineAgentDto.setIds(userIds);
+            QxFrontlineAgentDto orderManpower = insAreaCompanyService.getOrderManpowerNew(qxFrontlineAgentDto);
+            if(orderManpower==null){
                 vo.setSumpremium(0);
                 vo.setUsernum(0);
             }else{
-                vo.setSumpremium(Double.valueOf(taskStatisticsDto.getTotalPremium()==null?"0":taskStatisticsDto.getTotalPremium()));
-                vo.setUsernum(Integer.valueOf(taskStatisticsDto.getUnderwritingCount() ==null?"0":taskStatisticsDto.getUnderwritingCount().toString()));
+                vo.setSumpremium(Double.valueOf(orderManpower.getTotalPremium()==null?"0":orderManpower.getTotalPremium()));
+                vo.setUsernum(Integer.parseInt(orderManpower.getOrderManpower()==null?"0":orderManpower.getOrderManpower()));
             }
 
         }else{
@@ -623,31 +625,39 @@ public class UserReportServiceImpl implements UserReportService {
                         int rzCount=0;
                         int wrzCount=0;
                         List<SysUserTeamDto> users = esmUserReferrerMapper.getUserIdsByUserId(dto.getUserId());
-                        for(SysUserTeamDto vo :users){
-                            if("1".equals(vo.getStatus())){
-                                rzCount++;
-                            }else if("2".equals(vo.getStatus())){
-                                wrzCount++;
+                        List<String>  levelList =new ArrayList<>();
+                        if(users!=null && users.size()>0){
+                            for(SysUserTeamDto vo :users){
+                                if("1".equals(vo.getStatus())){
+                                    rzCount++;
+                                }else if("2".equals(vo.getStatus())){
+                                    wrzCount++;
+                                }
                             }
+                            levelList = users.stream().map(SysUserTeamDto::getId).collect(Collectors.toList());
+                        }else{
+                            levelList.add(dto.getUserId());
                         }
                         if("1".equals(dto.getStatus())){
                             rzCount++;
                         }else if("2".equals(dto.getStatus())){
                             wrzCount++;
                         }
-                        if(users!=null && users.size()>0){
-                            userIds = users.stream().map(SysUserTeamDto::getId).collect(Collectors.toList());
-                        }
-                        userIds.add(dto.getUserId());
                         dto.setIsFactorVerify(rzCount+"");
                         dto.setIsNotFactorVerify(wrzCount+"");
-                        dto.setTotalManpower(userIds.size()+"");
-                        userIds.add(dto.getUserId());
-                        TaskStatisticsDto taskStatisticsDto = insAreaCompanyMapper.numberQuotationsByUserIds(userIds,qxFrontlineAgentVo.getMonth());
-                        dto.setOrderNumber(taskStatisticsDto.getOrderNumber());
-                        dto.setUnderwritingCount(taskStatisticsDto.getUnderwritingCount().toString());
-                        dto.setQutationInsureCount(taskStatisticsDto.getQutationInsureCount());
-                        dto.setTotalPremium(taskStatisticsDto.getTotalPremium());
+                        dto.setTotalManpower(levelList.size()+"");
+                        TaskStatisticsDto taskStatisticsDto = insAreaCompanyMapper.numberQuotationsByUserIds(levelList,qxFrontlineAgentVo.getMonth());
+                        if(taskStatisticsDto ==null){
+                            dto.setOrderNumber("0");
+                            dto.setUnderwritingCount("0");
+                            dto.setQutationInsureCount(new BigDecimal("0"));
+                            dto.setTotalPremium("0");
+                        }else{
+                            dto.setOrderNumber(taskStatisticsDto.getOrderNumber()==null?"0":taskStatisticsDto.getOrderNumber());
+                            dto.setUnderwritingCount(taskStatisticsDto.getUnderwritingCount()==null ?"0":taskStatisticsDto.getOrderNumber().toString());
+                            dto.setQutationInsureCount(taskStatisticsDto.getQutationInsureCount()==null?new BigDecimal("0"):taskStatisticsDto.getQutationInsureCount());
+                            dto.setTotalPremium(taskStatisticsDto.getTotalPremium()==null ?"0" :taskStatisticsDto.getTotalPremium());
+                        }
                         newList.add(dto);
                     }
                 }
@@ -665,25 +675,28 @@ public class UserReportServiceImpl implements UserReportService {
         String type = qxFrontlineAgentVo.getType();
         String status ="";
         String level ="";
+        EsmUserReferrer esmUserReferrer = esmUserReferrerMapper.selectById(qxFrontlineAgentVo.getUserId());
+
+       int userLevel = esmUserReferrer.getLevel();
         if("0".equals(type)){
             //汇总  查询所有的代理人数据
             status =null;
             level =null;
         }else if("1".equals(type)){
             status ="1";
-            level ="0";
+            level = null;
         }
         else if("2".equals(type)){
-            status ="1";
-            level ="1";
+            status =null;
+            level = String.valueOf(userLevel+1);
         }
         else if("3".equals(type)){
             status ="1";
-            level ="2";
+            level = String.valueOf(userLevel+2);
         }
         else if("4".equals(type)){
             status ="1";
-            level ="3";
+            level = String.valueOf(userLevel+3);
         }
         else if("5".equals(type)){
             status ="2";
@@ -691,13 +704,17 @@ public class UserReportServiceImpl implements UserReportService {
         }
         List<String> userIds=new ArrayList<String>();
         List<SysUserTeamDto> userList = esmUserReferrerMapper.getByTeamByLevel(qxFrontlineAgentVo.getUserId(), level, status);
-        if(userList!=null && userList.size()>0) {
-            userIds = userList.stream().map(SysUserTeamDto::getId).collect(Collectors.toList());
-        }
         if ("0".equals(type)) {
+            if(userList!=null && userList.size()>0) {
+                userIds = userList.stream().map(SysUserTeamDto::getId).collect(Collectors.toList());
+            }
             userIds.add(qxFrontlineAgentVo.getUserId());
         } else if ("1".equals(type)) {
             userIds.add(qxFrontlineAgentVo.getUserId());
+        }else{
+            if(userList!=null && userList.size()>0) {
+                userIds = userList.stream().map(SysUserTeamDto::getId).collect(Collectors.toList());
+            }
         }
         return userIds;
     }

+ 11 - 0
src/main/resources/mapper/modules/admin/KztDataPermissionMapper.xml

@@ -18,4 +18,15 @@
         id,menu_id,custom_script_flag,
         data_permission_id,script_content,create_time,url
     </sql>
+    <select id="queryPage" resultType="com.ydtech.modules.admin.model.po.KztDataPermission">
+         select
+            id,
+            menu_id,
+            custom_script_flag,
+            data_permission_id,
+            script_content,
+            create_time,
+            url
+         from  kzt_data_permission
+    </select>
 </mapper>

+ 3 - 5
src/main/resources/mapper/modules/esm/EsmUserReferrerMapper.xml

@@ -403,11 +403,6 @@
         select r1.*
         from esm_user_referrer r1
         INNER JOIN t1 on t1.id = r1.referrer_id
-        <where>
-            <if test="level != null and level != ''">
-                r1.level = #{level}
-            </if>
-        </where>
         )
         select u.id as id , u.name as name , u.mobile as mobile, u.status as status
         from t1
@@ -417,6 +412,9 @@
             <if test="status != null and status != ''">
                 AND u.status = #{status}
             </if>
+            <if test="level != null and level != ''">
+                AND  t1.level = #{level}
+            </if>
         </where>
     </select>
 </mapper>