Min 11 kuukautta sitten
vanhempi
commit
0b7d329236

+ 7 - 2
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/controller/ReportController.java

@@ -1537,8 +1537,13 @@ public class ReportController {
     }
 
     @RequestMapping("getPersonWorkHoursWagesDetail")
-    public HttpRespMsg getPersonWorkHoursWagesDetail(String date,String userId,String startDate,String endDate,Integer checkStatus,Integer detailStatus){
-        return reportService.getPersonWorkHoursWagesDetail(date,userId,startDate,endDate,checkStatus,detailStatus);
+    public HttpRespMsg getPersonWorkHoursWagesDetail(String date,String userId,String startDate,String endDate){
+        return reportService.getPersonWorkHoursWagesDetail(date,userId,startDate,endDate);
+    }
+
+    @RequestMapping("getPersonWorkHoursWagesDetailForMob")
+    public HttpRespMsg getPersonWorkHoursWagesDetailForMob(String date,String userId,String startDate,String endDate,Integer checkStatus,Integer detailStatus){
+        return reportService.getPersonWorkHoursWagesDetailForMob(date,userId,startDate,endDate,checkStatus,detailStatus);
     }
 
     @RequestMapping("exportPersonWorkHoursWorkTime")

+ 6 - 2
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/controller/WxCorpInfoController.java

@@ -116,7 +116,7 @@ public class WxCorpInfoController {
                 JSONObject info = approvalInfoDetail.getJSONObject("info");
                 JSONObject applyer = info.getJSONObject("applyer");
                 String userid = applyer.getString("userid");
-                Optional<User> first = userList.stream().filter(u -> u.getCorpwxUserid().equals(userid)).findFirst();
+                Optional<User> first = userList.stream().filter(u ->u.getCorpwxRealUserid()!=null&&u.getCorpwxRealUserid().equals(userid)).findFirst();
                 if(!first.isPresent()){
                     continue;
                 }
@@ -177,7 +177,7 @@ public class WxCorpInfoController {
                         leaveSheet.setTimeDays(bigDecimal.floatValue());
                         leaveSheet.setLeaveType(1);
                     }
-                    if(control.equals("Text")){
+                    if(control.equals("Text")||control.equals("Textarea")){
                         if(title.getJSONObject(0).getString("text").equals("请假事由")){
                             leaveSheet.setRemark(value.getString("text"));
                         }
@@ -196,5 +196,9 @@ public class WxCorpInfoController {
         msg.setData(approvalInfo);
         return msg;
     }
+
+    public static void main(String[] args) {
+
+    }
 }
 

+ 2 - 0
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/mapper/ReportMapper.java

@@ -184,6 +184,8 @@ public interface ReportMapper extends BaseMapper<Report> {
 
     List<Map<String, Object>> getPersonWorkHoursWagesList(Integer companyId, String startDate, String endDate,@Param("list") List<Integer> deptId, String userId);
 
+    List<Map<String, Object>> getPersonWorkHoursWagesDetailForMob(String date, String userId, Integer companyId,String startDate,String endDate,Integer checkStatus,Integer detailStatus);
+
     List<Map<String, Object>> getPersonWorkHoursWagesDetail(String date, String userId, Integer companyId,String startDate,String endDate,Integer checkStatus,Integer detailStatus);
 
     List<Map<String, Object>> getProcedureRealTimeProgressList(Integer companyId,List<Integer> deptIds, String foremanId,String userId, String startDate, String endDate, Integer pageStart, Integer pageSize);

+ 2 - 1
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/ReportService.java

@@ -119,7 +119,7 @@ public interface ReportService extends IService<Report> {
 
     HttpRespMsg getPersonWorkHoursWagesList(String deptIds, String userId, String startDate, String endDate, Integer pageIndex, Integer pageSize);
 
-    HttpRespMsg getPersonWorkHoursWagesDetail(String date, String userId,String startDate,String endDate,Integer checkStatus,Integer detailStatus);
+    HttpRespMsg getPersonWorkHoursWagesDetail(String date, String userId,String startDate,String endDate);
 
     HttpRespMsg exportPersonWorkHoursWorkTime(String deptIds, String userId, String startDate, String endDate);
 
@@ -161,4 +161,5 @@ public interface ReportService extends IService<Report> {
 
     HttpRespMsg fixFinishNumData();
 
+    HttpRespMsg getPersonWorkHoursWagesDetailForMob(String date, String userId, String startDate, String endDate,Integer checkStatus,Integer detailStatus);
 }

+ 27 - 6
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -4285,11 +4285,11 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
     }
 
     @Override
-    public HttpRespMsg getPersonWorkHoursWagesDetail(String date, String userId,String startDate,String endDate,Integer checkStatus,Integer detailStatus) {
+    public HttpRespMsg getPersonWorkHoursWagesDetail(String date, String userId,String startDate,String endDate) {
         User user = userMapper.selectById(request.getHeader("token"));
-        if(checkStatus!=null&&checkStatus==0&&StringUtils.isEmpty(userId)){
-            userId=user.getId();
-        }
+//        if(checkStatus!=null&&checkStatus==0&&StringUtils.isEmpty(userId)){
+//            userId=user.getId();
+//        }
         boolean canViewAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看全部人员工时工价");
         List<Department> allDeptList = departmentMapper.selectList(new LambdaQueryWrapper<Department>().eq(Department::getCompanyId, user.getCompanyId()));
         List<Department> departmentList = departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id", user.getCompanyId()).eq("manager_id", user.getId()));
@@ -4299,14 +4299,35 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
         deptIds.addAll(otherDeptIds);
         //日期范围内所有请假数据
         List<LeaveSheet> leaveSheetList = leaveSheetService.list(new LambdaQueryWrapper<LeaveSheet>().le(LeaveSheet::getStartDate, endDate).ge(LeaveSheet::getEndDate, startDate).eq(LeaveSheet::getOwnerId,userId));
-        List<Map<String,Object>> mapList=reportMapper.getPersonWorkHoursWagesDetail(date,userId,user.getCompanyId(),startDate,endDate,checkStatus,detailStatus);
+        List<Map<String,Object>> mapList=reportMapper.getPersonWorkHoursWagesDetail(date,userId,user.getCompanyId(),startDate,endDate,null,null);
         HttpRespMsg httpRespMsg=new HttpRespMsg();
         HashMap map=new HashMap();
         map.put("record",mapList);
         map.put("totalWorkingTime",mapList.stream().filter(i->i.get("working_time")!=null).mapToDouble(mt->Double.valueOf(String.valueOf(mt.get("working_time")))).sum());
         map.put("totalCost",mapList.stream().filter(i->i.get("cost")!=null).mapToDouble(mt->Double.valueOf(String.valueOf(mt.get("cost")))).sum());
+        httpRespMsg.setData(map);
+        return httpRespMsg;
+    }
+
+    @Override
+    public HttpRespMsg getPersonWorkHoursWagesDetailForMob(String date, String userId, String startDate, String endDate,Integer checkStatus,Integer detailStatus) {
+        User user = userMapper.selectById(request.getHeader("token"));
+        if(checkStatus!=null&&checkStatus==0&&StringUtils.isEmpty(userId)){
+            userId=user.getId();
+        }
+        boolean canViewAll = sysFunctionService.hasPriviledge(user.getRoleId(), "查看全部人员工时工价");
+        List<Department> allDeptList = departmentMapper.selectList(new LambdaQueryWrapper<Department>().eq(Department::getCompanyId, user.getCompanyId()));
+        List<Department> departmentList = departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id", user.getCompanyId()).eq("manager_id", user.getId()));
+        List<DepartmentOtherManager> departmentOtherManagers = departmentOtherManagerMapper.selectList(new QueryWrapper<DepartmentOtherManager>().eq("company_id", user.getCompanyId()).eq("other_manager_id", user.getId()));
+        List<Integer> deptIds = departmentList.stream().map(Department::getDepartmentId).distinct().collect(Collectors.toList());
+        List<Integer> otherDeptIds = departmentOtherManagers.stream().map(DepartmentOtherManager::getDepartmentId).distinct().collect(Collectors.toList());
+        deptIds.addAll(otherDeptIds);
+        //日期范围内所有请假数据
+        List<LeaveSheet> leaveSheetList = leaveSheetService.list(new LambdaQueryWrapper<LeaveSheet>().le(LeaveSheet::getStartDate, endDate).ge(LeaveSheet::getEndDate, startDate).eq(LeaveSheet::getOwnerId,userId));
+        HttpRespMsg httpRespMsg=new HttpRespMsg();
+        HashMap map=new HashMap();
         if(checkStatus!=null && detailStatus==null){
-            mapList=reportMapper.getPersonWorkHoursWagesDetail(date,user.getId(),user.getCompanyId(),startDate,endDate,checkStatus,detailStatus);
+            List<Map<String,Object>> mapList=reportMapper.getPersonWorkHoursWagesDetailForMob(date,user.getId(),user.getCompanyId(),startDate,endDate,checkStatus,detailStatus);
             DateTimeFormatter dtf=DateTimeFormatter.ofPattern("yyyy-MM-dd");
             DateTimeFormatter dtf1=DateTimeFormatter.ofPattern("yyyyMMdd");
             List<LocalDate> allDateList = getDays(LocalDate.parse(startDate, dtf), LocalDate.parse(endDate, dtf));

+ 31 - 31
fhKeeper/formulahousekeeper/management-workshop/src/main/resources/mapper/ReportMapper.xml

@@ -154,38 +154,38 @@
         </if>
         group by b.id, a.create_date
     </select>
-<!--修改前 人员工时工价表详情数据-->
-<!--    <select id="getPersonWorkHoursWagesDetail" resultType="java.util.Map">-->
-<!--        select r.cost,r.working_time,r.finish_num, r.creator_id,ppt.total_progress as progress,DATE_FORMAT(r.create_date,'%Y%m%d') as createDate,pp.name as procedureName,(case  when pp.check_type=0 then '自检' when pp.check_type=1 then '互检' else '专检' end) as checkType,-->
-<!--        p.name as productName,DATE_FORMAT(plan.start_date,'%Y%m%d') as planStartDate,DATE_FORMAT(plan.end_date,'%Y%m%d') as planEndDate ,-->
-<!--        plan.task_change_notice_num as taskName,plan.plan_type as planType,u.name as checkerName,u2.name as creatorName,plan.product_scheduling_num,r.finish_num as finishNum-->
-<!--        from report r-->
-<!--        left join prod_procedure_team ppt2 on r.user_procedure_team_id=ppt2.id-->
-<!--        left join prod_procedure pp on r.prod_procedure_id=pp.id-->
-<!--        left join plan_procedure_total ppt on ppt.id=ppt2.plan_procedure_id-->
-<!--        left join product p on p.id=r.product_id-->
-<!--        left join plan on plan.id=r.plan_id-->
-<!--        left join user u on r.checker_id=u.id-->
-<!--        left join user u2 on r.creator_id=u2.id-->
-<!--        where r.company_id=#{companyId}  and r.finish_num &gt; 0-->
-<!--        <if test="date!=null and date!=''">-->
-<!--            and r.create_date=#{date}-->
-<!--        </if>-->
-<!--        <if test="userId!=null and userId!=''">-->
-<!--            <choose>-->
-<!--                <when test="checkStatus!=null and checkStatus==1 and detailStatus==null">-->
-<!--                    and plan.foreman_id=#{userId}-->
-<!--                </when>-->
-<!--                <otherwise>-->
-<!--                    and r.creator_id=#{userId}-->
-<!--                </otherwise>-->
-<!--            </choose>-->
-<!--        </if>-->
-<!--        <if test="startDate!=null and endDate!=null">-->
-<!--            and r.create_date between #{startDate} and #{endDate}-->
-<!--        </if>-->
-<!--    </select>-->
 
+    <select id="getPersonWorkHoursWagesDetailForMob" resultType="java.util.Map">
+        select r.cost,r.working_time,r.finish_num, r.creator_id,ppt.total_progress as progress,DATE_FORMAT(r.create_date,'%Y%m%d') as createDate,pp.name as procedureName,(case  when pp.check_type=0 then '自检' when pp.check_type=1 then '互检' else '专检' end) as checkType,
+        p.name as productName,DATE_FORMAT(plan.start_date,'%Y%m%d') as planStartDate,DATE_FORMAT(plan.end_date,'%Y%m%d') as planEndDate ,
+        plan.task_change_notice_num as taskName,plan.plan_type as planType,u.name as checkerName,u2.name as creatorName,plan.product_scheduling_num,r.finish_num as finishNum
+        from report r
+        left join prod_procedure_team ppt2 on r.user_procedure_team_id=ppt2.id
+        left join prod_procedure pp on r.prod_procedure_id=pp.id
+        left join plan_procedure_total ppt on ppt.id=ppt2.plan_procedure_id
+        left join product p on p.id=r.product_id
+        left join plan on plan.id=r.plan_id
+        left join user u on r.checker_id=u.id
+        left join user u2 on r.creator_id=u2.id
+        where r.company_id=#{companyId}  and r.finish_num &gt; 0
+        <if test="date!=null and date!=''">
+            and r.create_date=#{date}
+        </if>
+        <if test="userId!=null and userId!=''">
+            <choose>
+                <when test="checkStatus!=null and checkStatus==1 and detailStatus==null">
+                    and plan.foreman_id=#{userId}
+                </when>
+                <otherwise>
+                    and r.creator_id=#{userId}
+                </otherwise>
+            </choose>
+        </if>
+        <if test="startDate!=null and endDate!=null">
+            and r.create_date between #{startDate} and #{endDate}
+        </if>
+    </select>
+    <!--修改前 人员工时工价表详情数据-->
     <select id="getPersonWorkHoursWagesDetail" resultType="java.util.Map">
         select r.cost,r.working_time,r.finish_num as finish_num, r.creator_id,ppt.total_progress as progress,DATE_FORMAT(r.create_date,'%Y%m%d') as createDate,pp.name as procedureName,(case  when pp.check_type=0 then '自检' when pp.check_type=1 then '互检' else '专检' end) as checkType,
         p.name as productName,DATE_FORMAT(plan.start_date,'%Y%m%d') as planStartDate,DATE_FORMAT(plan.end_date,'%Y%m%d') as planEndDate ,

+ 1 - 1
fhKeeper/formulahousekeeper/timesheet-workshop-h5/src/views/statisticsView/statisticsView.vue

@@ -102,7 +102,7 @@ export default {
         endDate:this.endDate,
         checkStatus:this.checkStatus
       };
-      this.$axios.post("/report/getPersonWorkHoursWagesDetail", postData)
+      this.$axios.post("/report/getPersonWorkHoursWagesDetailForMob", postData)
         .then(res => {
           this.saving = false;
             if(res.code == "ok") {