浏览代码

报销查询限制

wangqiang 1 年之前
父节点
当前提交
2d0e8c1b82

+ 1 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/practice/reimburseRegister/mapper/ReimburseRegisterMapper.java

@@ -20,6 +20,7 @@ import org.apache.ibatis.annotations.Param;
 public interface ReimburseRegisterMapper extends BaseMapper<ReimburseRegister> {
 
     IPage<ReimburseRegister> findList(Page<ReimburseRegister> page,@Param(Constants.WRAPPER) QueryWrapper<ReimburseRegister> queryWrapper);
+    IPage<ReimburseRegister> findList2(Page<ReimburseRegister> page,@Param(Constants.WRAPPER) QueryWrapper<ReimburseRegister> queryWrapper);
 
     ReimburseRegister getById(String id);
 

+ 18 - 0
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/practice/reimburseRegister/mapper/xml/ReimburseRegisterMapper.xml

@@ -53,4 +53,22 @@
         LEFT JOIN sys_user su on a.create_by_id = su.id
         where a.id = #{id} and a.del_flag = '0'
     </select>
+    <select id="findList2" resultType="com.jeeplus.human.practice.reimburseRegister.domain.ReimburseRegister">
+        select
+        <include refid="Base_Column_List"></include>,
+        d.ID_ AS task_id,
+        su.name as createName,
+        su2.name as projectManagerName,
+        hbank.bank_card_number as bankCardNumber
+        from human_resources_practice_reimburse_register a
+        LEFT JOIN act_ru_task d ON a.proc_ins_id = d.PROC_INST_ID_
+        left join sys_user su on a.create_by_id = su.id
+        left join sys_user su2 on a.project_manager = su2.id
+        left join human_resources_practice_registration_bank hbank on a.create_by_id = hbank.user_id
+        ${ew.customSqlSegment}
+        and a.id not in (
+        select DISTINCT human_reimburse_register_id from human_reimbursement_detail_info_procured WHERE del_flag = '0'
+        )
+        ORDER BY a.create_time DESC
+    </select>
 </mapper>

+ 43 - 30
jeeplus-modules/jeeplus-human/src/main/java/com/jeeplus/human/practice/reimburseRegister/service/ReimburseRegisterService.java

@@ -15,7 +15,9 @@ import com.jeeplus.human.practice.reimburseRegister.domain.ReimburseRegister;
 import com.jeeplus.human.practice.reimburseRegister.domain.ReimburseRegisterDetail;
 import com.jeeplus.human.practice.reimburseRegister.mapper.ReimburseRegisterDetailMapper;
 import com.jeeplus.human.practice.reimburseRegister.mapper.ReimburseRegisterMapper;
+import com.jeeplus.sys.feign.IPostApi;
 import com.jeeplus.sys.feign.IUserApi;
+import com.jeeplus.sys.service.dto.PostDTO;
 import com.jeeplus.sys.service.dto.UserDTO;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -118,39 +120,50 @@ public class ReimburseRegisterService extends ServiceImpl<ReimburseRegisterMappe
      * @throws Exception
      */
     public IPage<ReimburseRegister> findList2(Page<ReimburseRegister> page, ReimburseRegister projectReportData) throws Exception{
-        QueryWrapper<ReimburseRegister> queryWrapper = QueryWrapperGenerator.buildQueryCondition (projectReportData,ReimburseRegister.class);
-        queryWrapper.eq("a.del_flag","0");
-        projectReportData.setType("5");
-        if (StringUtils.isNotBlank(projectReportData.getType())){
-            queryWrapper.eq("a.type",projectReportData.getType());
-        }
-        if (StringUtils.isNotBlank(projectReportData.getReimbuserName())){
-            queryWrapper.like("a.reimbuser_name",projectReportData.getReimbuserName());
-        }
-        if (StringUtils.isNotBlank(projectReportData.getCreateById())){
-            queryWrapper.eq("a.create_by_id",projectReportData.getCreateById());
-        }
-        if (StringUtils.isNotBlank(projectReportData.getCreateById())){
-            queryWrapper.eq("a.create_by_id",projectReportData.getCreateById());
-        }
-
-        if (projectReportData.getCreateDates() != null && projectReportData.getCreateDates().length > 0) {
-            queryWrapper.between("a.create_time", projectReportData.getCreateDates()[0], projectReportData.getCreateDates()[1]);
-        }
-        if (projectReportData.getAmounts() != null && projectReportData.getAmounts().length > 0) {
-            queryWrapper.between("a.all_reimbursement_amount", projectReportData.getAmounts()[0], projectReportData.getAmounts()[1]);
-        }
+        // 获取当前登录人信息
+        UserDTO userDto = SpringUtil.getBean ( IUserApi.class ).getByToken(TokenProvider.getCurrentToken());
+        PostDTO postInfo = SpringUtil.getBean(IPostApi.class).getPostDTOByName("考勤统计人");
+        List<UserDTO> userDTOS = SpringUtil.getBean(IUserApi.class).findListFlowAbleByPostId(postInfo.getId());
+        for (int i=0; i<userDTOS.size();i++){
+            if (userDTOS.get(i).getId().equals(userDto.getId())){
+                QueryWrapper<ReimburseRegister> queryWrapper = QueryWrapperGenerator.buildQueryCondition (projectReportData,ReimburseRegister.class);
+                queryWrapper.eq("a.del_flag","0");
+                projectReportData.setType("5");
+                if (StringUtils.isNotBlank(projectReportData.getType())){
+                    queryWrapper.eq("a.type",projectReportData.getType());
+                }
+                if (StringUtils.isNotBlank(projectReportData.getReimbuserName())){
+                    queryWrapper.like("a.reimbuser_name",projectReportData.getReimbuserName());
+                }
+                if (StringUtils.isNotBlank(projectReportData.getCreateById())){
+                    queryWrapper.eq("a.create_by_id",projectReportData.getCreateById());
+                }
+                if (StringUtils.isNotBlank(projectReportData.getCreateById())){
+                    queryWrapper.eq("a.create_by_id",projectReportData.getCreateById());
+                }
 
-        IPage<ReimburseRegister> list = registerMapper.findList(page, queryWrapper);
-        list.getRecords().forEach(item -> {
-            // 入库 修改申请
-            if (com.jeeplus.utils.StringUtils.isNotBlank(item.getTaskId()) && com.jeeplus.utils.StringUtils.isNotBlank(item.getType())) {
-                if ("2".equals(item.getType())) { // “审核中”的数据要获取数据审核人
-                    item.setAuditUserIds(flowTaskService.getTaskAuditUsers(item.getTaskId()));  // 获取数据审核人
+                if (projectReportData.getCreateDates() != null && projectReportData.getCreateDates().length > 0) {
+                    queryWrapper.between("a.create_time", projectReportData.getCreateDates()[0], projectReportData.getCreateDates()[1]);
+                }
+                if (projectReportData.getAmounts() != null && projectReportData.getAmounts().length > 0) {
+                    queryWrapper.between("a.all_reimbursement_amount", projectReportData.getAmounts()[0], projectReportData.getAmounts()[1]);
                 }
+
+                IPage<ReimburseRegister> list = registerMapper.findList2(page, queryWrapper);
+                list.getRecords().forEach(item -> {
+                    // 入库 修改申请
+                    if (com.jeeplus.utils.StringUtils.isNotBlank(item.getTaskId()) && com.jeeplus.utils.StringUtils.isNotBlank(item.getType())) {
+                        if ("2".equals(item.getType())) { // “审核中”的数据要获取数据审核人
+                            item.setAuditUserIds(flowTaskService.getTaskAuditUsers(item.getTaskId()));  // 获取数据审核人
+                        }
+                    }
+                });
+                return list;
             }
-        });
-        return list;
+        }
+
+        return null;
+        //根据  考勤统计人  岗位查询出有该岗位的员工信息
 
     }