提交代码

dev_xds
姜玉琦 2024-03-23 00:11:43 +08:00
parent 6edebbef77
commit 8427bd6235
9 changed files with 175 additions and 10 deletions

View File

@ -614,7 +614,7 @@ export default {
id: null,
projectId: this.projectOptions.length==1?this.projectOptions[0].id:null,
infoType: "0",
problemArea: this.projectOptions.length==1?this.projectOptions[0].projectName:null,
problemArea: null,
workParts: null,
changeInfo: null,
lordSent: null,
@ -643,19 +643,26 @@ export default {
});
},
changeProject(val,row){
if(val){
console.log(1111111111);
if(!this.projectIds.includes(val)){
console.log(2222222222);
this.projectIds.push(row.projectId);
this.$api.publics.selectProjectAllUnitUser({projectId: val})
.then((d) => {
console.log(3333333333);
this.projectUnitUsers.push({projectId:val,data:d.data});
});
}
for(let i=0;i<this.projectOptions.length;i++){
console.log(4444444444);
if(this.projectOptions[i].projectId==val){
console.log(5555555555);
row.problemArea = this.projectOptions[i].projectName;
break;
}
}
}
}
}
};

View File

@ -612,7 +612,7 @@ export default {
let row = {
index:this.smzSspProblemmodifyDraftList.length+1,
id: null,
projectId: this.projectOptions.length==1?this.projectOptions[0].id:null,
projectId: null,
infoType: "1",
problemArea: this.projectOptions.length==1?this.projectOptions[0].projectName:null,
workParts: null,
@ -643,20 +643,42 @@ export default {
});
},
changeProject(val,row){
if(val){
console.log(1111111111);
if(!this.projectIds.includes(val)){
console.log(2222222222);
this.projectIds.push(row.projectId);
this.$api.publics.selectProjectAllUnitUser({projectId: val})
.then((d) => {
console.log(3333333333);
this.projectUnitUsers.push({projectId:val,data:d.data});
});
}
for(let i=0;i<this.projectOptions.length;i++){
console.log(4444444444);
if(this.projectOptions[i].projectId==val){
console.log(5555555555);
row.problemArea = this.projectOptions[i].projectName;
break;
}
}
}
}
// changeProject(val,row){
// if(!this.projectIds.includes(val)){
// this.projectIds.push(row.projectId);
// this.$api.publics.selectProjectAllUnitUser({projectId: val})
// .then((d) => {
// this.projectUnitUsers.push({projectId:val,data:d.data});
// });
// }
// for(let i=0;i<this.projectOptions.length;i++){
// if(this.projectOptions[i].projectId==val){
// row.problemArea = this.projectOptions[i].projectName;
// break;
// }
// }
// }
}
};
</script>

View File

@ -1,6 +1,8 @@
package com.yanzhu.jh.project.mapper;
import java.util.List;
import java.util.Map;
import com.yanzhu.jh.project.domain.SurProjectAttendanceData;
/**
@ -83,4 +85,9 @@ public interface SurProjectAttendanceDataMapper
List<SurProjectAttendanceData> groupByComany(SurProjectAttendanceData where);
public Long getHuazhuPage(Long id);
public List<Map<String,Object>> initOtherData(Map<String,Object> data);
public List<Map<String,Object>> initHuaZhuData(Map<String,Object> data);
}

View File

@ -1,6 +1,7 @@
package com.yanzhu.jh.project.mapper;
import java.util.List;
import java.util.Map;
import com.yanzhu.jh.project.domain.SurProjectAttendanceCfg;
import com.yanzhu.jh.project.domain.SurProjectAttendanceUser;
@ -94,4 +95,7 @@ public interface SurProjectAttendanceUserMapper
public List<SurProjectAttendanceUser> todayAttendance(SurProjectAttendanceUser where);
public List<SurProjectAttendanceUser> todayAttendanceData(List<String> list);
public List<SurProjectAttendanceUser> todayAttendanceOtherData(Map<String,Object> data);
}

View File

@ -1,6 +1,8 @@
package com.yanzhu.jh.project.service;
import java.util.List;
import java.util.Map;
import com.yanzhu.jh.project.domain.SurProjectAttendanceData;
import com.yanzhu.jh.project.domain.SurProjectAttendanceUser;
@ -87,4 +89,8 @@ public interface ISurProjectAttendanceDataService
public Long getHuazhuPage(Long id);
public List<SurProjectAttendanceData> groupAllByComany(SurProjectAttendanceData where);
public List<Map<String,Object>> initOtherData(Map<String,Object> data);
public List<Map<String,Object>> initHuaZhuData(Map<String,Object> data);
}

View File

@ -1,8 +1,15 @@
package com.yanzhu.jh.project.service.impl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.yanzhu.jh.project.domain.SurProjectAttendanceUser;
import com.yanzhu.jh.project.mapper.SurProjectAttendanceUserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yanzhu.jh.project.mapper.SurProjectAttendanceDataMapper;
@ -165,4 +172,45 @@ public class SurProjectAttendanceDataServiceImpl implements ISurProjectAttendanc
public List<SurProjectAttendanceData> groupAllByComany(SurProjectAttendanceData where) {
return surProjectAttendanceDataMapper.groupAllByComany(where);
}
@Autowired
private SurProjectAttendanceUserMapper surProjectAttendanceUserMapper;
@Override
public List<Map<String,Object>> initOtherData(Map<String,Object> data) {
List<Map<String,Object>> list = surProjectAttendanceDataMapper.initOtherData(data);
if(StringUtils.isNotEmpty(list)){
List<String> workerIds = list.stream().map(Map -> Map.get("workerId").toString()).collect(Collectors.toList());
data.put("list",workerIds);
List<SurProjectAttendanceUser> datas=surProjectAttendanceUserMapper.todayAttendanceOtherData(data);
for (Map<String,Object> map:list) {
for(SurProjectAttendanceUser sau:datas){
if(Objects.equals(map.get("workerId").toString(),sau.getWorkerId())){
map.put("inTime",map.get("inTime"));
map.put("outTime",map.get("outTime"));
}
}
}
}
return list;
}
@Override
public List<Map<String,Object>> initHuaZhuData(Map<String,Object> data) {
List<Map<String,Object>> list = surProjectAttendanceDataMapper.initHuaZhuData(data);
if(StringUtils.isNotEmpty(list)){
List<String> workerIds = list.stream().map(Map -> Map.get("workerId").toString()).collect(Collectors.toList());
data.put("list",workerIds);
List<SurProjectAttendanceUser> datas=surProjectAttendanceUserMapper.todayAttendanceOtherData(data);
for (Map<String,Object> map:list) {
for(SurProjectAttendanceUser sau:datas){
if(Objects.equals(map.get("workerId").toString(),sau.getWorkerId())){
map.put("inTime",map.get("inTime"));
map.put("outTime",map.get("outTime"));
}
}
}
}
return list;
}
}

View File

@ -10,24 +10,22 @@ import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.enums.PublicStateEnum;
import com.ruoyi.common.enums.SysRoleEnum;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.domain.FlowTaskEntity;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysUserService;
import com.yanzhu.jh.project.domain.SurProject;
import com.yanzhu.jh.project.domain.SurProjectAuditinfo;
import com.yanzhu.jh.project.domain.SurProjectUnitInfo;
import com.yanzhu.jh.project.domain.SurProjectUserinfo;
import com.yanzhu.jh.project.service.ISurProjectAuditinfoService;
import com.yanzhu.jh.project.service.ISurProjectService;
import com.yanzhu.jh.project.service.ISurProjectUnitInfoService;
import com.yanzhu.jh.project.service.ISurProjectUserinfoService;
import com.yanzhu.jh.project.domain.*;
import com.yanzhu.jh.project.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@ -223,4 +221,44 @@ PublicsController extends BaseController {
flowTaskEntity.setActiveName("await");
return success(surProjectAuditinfoService.findMyTask(flowTaskEntity));
}
@Autowired
private ISurProjectAttendanceCfgService surProjectAttendanceCfgService;
@Autowired
private ISurProjectAttendanceDataService surProjectAttendanceDataService;
/**
*
*/
@GetMapping("/v1/initAttendanceData")
public AjaxResult initAttendanceData()
{
//开始时间
Calendar calendar = Calendar.getInstance();
/***
*
*/
List<SurProjectAttendanceCfg> cfgList = surProjectAttendanceCfgService.selectSurProjectAttendanceCfgList(new SurProjectAttendanceCfg());
Map<String, Object> data = new HashMap<>();
for(SurProjectAttendanceCfg cfg:cfgList){
calendar.setTime(DateUtils.parseDate("2023-07-16"));
data.put("cfgid",cfg.getId());
for(int i=0;i<365;i++){
if(calendar.getTimeInMillis()>System.currentTimeMillis()){
/** 跳出本次循环 **/
break;
}
calendar.add(Calendar.DATE, 1);
data.put("date",DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,calendar.getTime()));
List<Map<String,Object>> list;
if(cfg.getVendorsCode().equals("huazhu")){
list = surProjectAttendanceDataService.initHuaZhuData(data);
}else{
list = surProjectAttendanceDataService.initOtherData(data);
}
}
}
return success();
}
}

View File

@ -293,4 +293,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="getHuazhuPage" parameterType="long" resultType="Long">
select max(vendorId) vendorId from sur_project_attendance_data WHERE cfgid=#{id}
</select>
<select id="initOtherData" parameterType="map" resultType="map">
select d.workerId,u.companyId,u.companyName,u.`name`,d.identification,u.recentPhoto,u.gender,u.birthDate,u.ethnic,u.nativePlace,u.phone,
u.workTypeName,u.specWorkType,u.groupName,g.companyTypeId,d.teamId,u.workTypeCode,d.vendorId,d.device_code
from sur_project_attendance_data d
left JOIN sur_project_attendance_user u on d.workerId = u.workerId and d.cfgid = u.cfgid
left join sur_project_attendance_group g on u.groupId = g.serverid and g.cfgid = u.cfgid
where d.cfgid=#{cfgid} and date(d.attendance_time) = #{date}
GROUP BY d.workerId
</select>
<select id="initHuaZhuData" parameterType="map" resultType="map">
select d.workerId,u.companyId,u.companyName,u.`name`,d.identification,u.recentPhoto,u.gender,u.birthDate,u.ethnic,u.nativePlace,u.phone,
u.workTypeName,u.specWorkType,u.groupName,d.teamId,u.workTypeCode,d.vendorId,d.device_code,
CASE WHEN sd.type_flag = 2 THEN '1' WHEN sd.type_flag = 3 THEN '2' WHEN sd.type_flag = 4 THEN '8' else '0' end as companyTypeId
from sur_project_attendance_data d
left JOIN sur_project_attendance_user u on d.workerId = u.workerId and d.cfgid = u.cfgid
left join sys_dept sd on u.companyName = sd.dept_name
where d.cfgid=#{cfgid} and date(d.attendance_time) = #{date}
GROUP BY d.workerId
</select>
</mapper>

View File

@ -436,4 +436,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</if>
group by workerid,attendance_type
</select>
<select id="todayAttendanceOtherData" parameterType="map" resultMap="SurProjectAttendanceUserResult">
select workerid,attendance_type name,min(attendance_time) inTime,max(attendance_time) outTime from sur_project_attendance_data where cfgid=#{cfgid} DATE(attendance_time)=#{date}
<if test="list !=null and list.size()>0">
and workerid in
<foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
group by workerid,attendance_type
</select>
</mapper>