陈昶聿
2 天以前 9819e228f5ee6ace0ad0ec56661f6da953f5148f
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -10,6 +10,7 @@
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.entity.SysUserDept;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.redis.RedisCache;
@@ -24,6 +25,7 @@
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserDeptService;
import com.smartor.domain.*;
import com.smartor.domain.VO.ServiceSubtaskVO;
import com.smartor.domain.entity.ServiceSubtaskEntity;
@@ -72,6 +74,9 @@
    @Autowired
    private IServiceTaskService serviceTaskService;
    @Autowired
    private ISysUserDeptService sysUserDeptService;
    @Autowired
    private IServiceSubtaskRecordService serviceSubtaskRecordService;
@@ -666,15 +671,30 @@
        Map<String, Object> map = new HashMap<>();
        LoginUser loginUser = getLoginUser();
        SysUser sysUser = loginUser.getUser();
        if (ObjectUtils.isNotEmpty(sysUser)) {
            List<String> deptCodes = sysUser.getDeptCodes();
            List<String> wardCodes = sysUser.getWardCodes();
            ServiceSubtaskEntity entity = new ServiceSubtaskEntity();
            entity.setOrgid(sysUser.getOrgid());
            entity.setDeptcode(sysUser.getDeptCode());
            entity.setLeaveldeptcodes(deptCodes);
            entity.setLeavehospitaldistrictcodes(wardCodes);
            map = serviceSubtaskService.getCurrentUserServiceSubtaskCount(entity);
        SysUserDept sysUserDept = new SysUserDept();
        sysUserDept.setUserId(sysUser.getUserId());
        sysUserDept.setOrgid(sysUser.getOrgid());
        sysUserDept.setDeptType("1");
        List<SysUserDept> sysUserDepts = sysUserDeptService.selectSysUserDeptList(sysUserDept);
        SysUserDept sysUserWard = new SysUserDept();
        sysUserWard.setUserId(sysUser.getUserId());
        sysUserWard.setOrgid(sysUser.getOrgid());
        sysUserWard.setDeptType("2");
        List<SysUserDept> sysUserWards = sysUserDeptService.selectSysUserDeptList(sysUserWard);
        List<String> deptCodes = sysUserDepts.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
        List<String> wardCodes = sysUserWards.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
        ServiceSubtaskEntity entity = new ServiceSubtaskEntity();
        entity.setOrgid(sysUser.getOrgid());
        entity.setLeaveldeptcodes(deptCodes);
        entity.setLeavehospitaldistrictcodes(wardCodes);
        if(ObjectUtils.isNotEmpty(sysUser)){
            if(!("admin").equals(sysUser.getUserName())){
                if(ObjectUtils.isNotEmpty(sysUserWards) && ObjectUtils.isNotEmpty(sysUserDepts)){
                    map = serviceSubtaskService.getCurrentUserServiceSubtaskCount(entity);
                }
            }else {
                map = serviceSubtaskService.getCurrentUserServiceSubtaskCount(entity);
            }
        }
        return map;
    }