diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmInformationFilesController.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmInformationFilesController.java index 21986bc..9a820b8 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmInformationFilesController.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmInformationFilesController.java @@ -240,6 +240,7 @@ public class HrmInformationFilesController { if(StringUtils.isNotBlank(fileId)){ InputStream inputStream = null; try { + FileData fileData = fileDownloadService.downloadFile(Long.parseLong(fileId)); FileObj fileObj = fileData.getFileObj(); // 获取文件的输入流 diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryController.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryController.java index 4af2136..69e5789 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryController.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryController.java @@ -4,11 +4,13 @@ import com.alibaba.fastjson.JSONObject; import com.weaver.common.authority.annotation.WeaPermission; import com.weaver.common.base.entity.result.WeaResult; import com.weaver.seconddev.chapanda.hrm.service.HrmShiftQueryService; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -68,7 +70,4 @@ public class HrmShiftQueryController { List> dataList = hrmShiftQueryService.operateScheduling(paramJson); return WeaResult.success(dataList); } - - - } diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryOpenController.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryOpenController.java index 9351d74..e6bd220 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryOpenController.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/controller/HrmShiftQueryOpenController.java @@ -4,11 +4,13 @@ import com.alibaba.fastjson.JSONObject; import com.weaver.common.authority.annotation.WeaPermission; import com.weaver.common.base.entity.result.WeaResult; import com.weaver.seconddev.chapanda.hrm.service.HrmShiftQueryService; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -64,9 +66,24 @@ public class HrmShiftQueryOpenController { public WeaResult operateScheduling(@RequestBody JSONObject paramJson){ log.error("paramJson:{}",paramJson.toJSONString()); List> dataList = hrmShiftQueryService.operateScheduling(paramJson); - return WeaResult.success(dataList); + + String schedulingids = ""; + for(int i= 0 ;i dataMap = dataList.get(i); + if(dataMap.containsKey("schedulingid")){ + String schedulingid = dataMap.get("schedulingid").toString(); + schedulingids += StringUtils.isBlank(schedulingids) ? schedulingid : ","+schedulingid; + } + } + Map result = new HashMap<>(); + result.put("schedulingid",schedulingids); + return WeaResult.success(result); + } + + + } diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/dao/HrmShiftQueryDao.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/dao/HrmShiftQueryDao.java index 1a7f179..859e47d 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/dao/HrmShiftQueryDao.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/dao/HrmShiftQueryDao.java @@ -8,10 +8,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map; + +import java.util.*; @Component public class HrmShiftQueryDao { @@ -263,9 +261,10 @@ public class HrmShiftQueryDao { } - public void insertAttendConfigRange(Long id,String employeeId,String attendConfig,String sort_num){ + public Map insertAttendConfigRange(Long id,String employeeId,String attendConfig,String sort_num){ String sourceType = "LOGIC"; String groupId = "weaver-hr-service"; + Map result = new HashMap(); try{ String create_time = DateUtils.getCurrentDateString() + " " + DateUtils.getOnlyCurrentTimeString(); String dataSql =" insert into attend_config_range(id,target_id,entry_type,attend_config,tenant_key,create_time,update_time,delete_type,include_sub_dept,min_sec_level,max_sec_level,sort_num,creator) " + @@ -283,7 +282,7 @@ public class HrmShiftQueryDao { paramList.add(Constants.SysUserId); List sqlParamList = databaseUtils.querySqlParamEntity(paramList); - Map result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); + result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); Iterator> iterator = result.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); @@ -293,13 +292,16 @@ public class HrmShiftQueryDao { e.printStackTrace(); log.error("e:" + e); } + + return result; } - public void insertAttendScheduling(Long id,String attendConfig,String attend_date,String range_id,String shift_id){ + public Map insertAttendScheduling(Long id,String attendConfig,String attend_date,String range_id,String shift_id){ String sourceType = "LOGIC"; String groupId = "weaver-hr-service"; + Map result = new HashMap(); try{ String create_time = DateUtils.getCurrentDateString() + " " + DateUtils.getOnlyCurrentTimeString(); String dataSql =" insert into attend_scheduling\n" + @@ -322,7 +324,7 @@ public class HrmShiftQueryDao { paramList.add(Constants.SysUserId); List sqlParamList = databaseUtils.querySqlParamEntity(paramList); - Map result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); + result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); Iterator> iterator = result.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); @@ -332,18 +334,19 @@ public class HrmShiftQueryDao { e.printStackTrace(); log.error("e:" + e); } + return result; } - public void deleteAttendScheduling(String attendDate,String shiftId,String attendConfig,String rangeId){ + public Map deleteAttendScheduling(String attendDate,String shiftId,String attendConfig,String rangeId){ String sourceType = "LOGIC"; String groupId = "weaver-hr-service"; + Map result = new HashMap(); try{ String update_time = DateUtils.getCurrentDateString() + " " + DateUtils.getOnlyCurrentTimeString(); String dataSql =" update attend_scheduling\n" + - " set delete_type = 1,update_time = ? \n" + + " set delete_type = 3,update_time = ? \n" + " where ATTEND_DATE = ? \n" + - " and SHIFT_ID=? \n" + " and ATTEND_CONFIG_ID=? \n" + " and RANGE_ID=? and tenant_key = ? " ; @@ -351,13 +354,12 @@ public class HrmShiftQueryDao { List paramList = new ArrayList<>(100); paramList.add(update_time); paramList.add(attendDate); - paramList.add(shiftId); paramList.add(attendConfig); paramList.add(rangeId); paramList.add(Constants.TENANT_KEY); List sqlParamList = databaseUtils.querySqlParamEntity(paramList); - Map result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); + result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList); Iterator> iterator = result.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry entry = iterator.next(); @@ -367,6 +369,7 @@ public class HrmShiftQueryDao { e.printStackTrace(); log.error("e:" + e); } + return result; } diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/entity/CustomShiftTimePo.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/entity/CustomShiftTimePo.java index c622f0a..76dece9 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/entity/CustomShiftTimePo.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/entity/CustomShiftTimePo.java @@ -8,22 +8,22 @@ package com.weaver.seconddev.chapanda.hrm.entity; */ public class CustomShiftTimePo { - private String attendStartTime; - private String attendEndTime; + private String beginTime; + private String endTime; - public String getAttendStartTime() { - return attendStartTime; + public String getBeginTime() { + return beginTime; } - public void setAttendStartTime(String attendStartTime) { - this.attendStartTime = attendStartTime; + public void setBeginTime(String beginTime) { + this.beginTime = beginTime; } - public String getAttendEndTime() { - return attendEndTime; + public String getEndTime() { + return endTime; } - public void setAttendEndTime(String attendEndTime) { - this.attendEndTime = attendEndTime; + public void setEndTime(String endTime) { + this.endTime = endTime; } } diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/service/impl/HrmShiftQueryServiceImpl.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/service/impl/HrmShiftQueryServiceImpl.java index d16fdde..ed96497 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/service/impl/HrmShiftQueryServiceImpl.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/service/impl/HrmShiftQueryServiceImpl.java @@ -61,9 +61,16 @@ public class HrmShiftQueryServiceImpl implements HrmShiftQueryService { shiftMap.put("type",fdjjrbc); shiftMap.put("isStore",sfmdbc); - log.error("id:{}",dataList.size()); + log.error("id:{}",id); + String beginTime = ""; + String endTime = ""; List attendList = hrmShiftQueryMapper.queryShiftTimeList(id,Constants.TENANT_KEY); - shiftMap.put("attend",attendList); + if(attendList.size()>0){ + beginTime = attendList.get(0).getBeginTime(); + endTime = attendList.get(0).getEndTime(); + } + shiftMap.put("beginTime",beginTime); + shiftMap.put("endTime",endTime); shiftList.add(shiftMap); } return shiftList; @@ -77,8 +84,17 @@ public class HrmShiftQueryServiceImpl implements HrmShiftQueryService { @Override public List> querySchedulingList(JSONObject paramJson) { List> shiftList = new ArrayList>(); - String beginDate = paramJson.getString("beginDate"); - String endDate = paramJson.getString("endDate"); + String beginDate = ""; + if(paramJson.containsKey("beginDate")){ + beginDate = paramJson.getString("beginDate"); + } + String endDate = ""; + if(paramJson.containsKey("endDate")){ + endDate = paramJson.getString("endDate"); + } + if(StringUtils.isBlank(endDate)){ + endDate = beginDate; + } log.error("beginDate:{}",beginDate); log.error("endDate:{}",endDate); String empCodeStr = paramJson.getString("empCode"); @@ -112,18 +128,20 @@ public class HrmShiftQueryServiceImpl implements HrmShiftQueryService { shiftMap.put("empName",empName); List attendList = hrmShiftQueryMapper.queryShiftTimeList(scID,Constants.TENANT_KEY); - shiftMap.put("attend",attendList); + shiftMap.put("scTimes",attendList); shiftList.add(shiftMap); } } return shiftList; } - + @Override public List> operateScheduling(JSONObject paramJson) { + + log.error("paramJson:{}",paramJson.toJSONString()); List> dataList = new ArrayList>(); - Map map = new HashMap(); - List> shiftList = new ArrayList>(); + +// List> shiftList = new ArrayList>(); String operType = paramJson.getString("operType"); JSONArray dataArray = paramJson.getJSONArray("data"); @@ -133,36 +151,79 @@ public class HrmShiftQueryServiceImpl implements HrmShiftQueryService { String scID = dataJson.getString("scID"); String scDate = dataJson.getString("scDate"); String employeeId = hrmShiftQueryDao.queryEmployeeIdByCode(empCode); + log.error("employeeId:{}",employeeId); + Map dataMap = new HashMap(); + String attendId = ""; + String datacode = ""; if(StringUtils.isNotBlank(employeeId)){ if(StringUtils.isNotBlank(scID)){ String attendConfig = hrmShiftQueryDao.queryAttendConfig(scID); + log.error("attendConfig:{}",attendConfig); if(StringUtils.isNotBlank(attendConfig)){ String sort_num = hrmShiftQueryDao.queryRangeCount(); + log.error("sort_num:{}",sort_num); if(StringUtils.isNotBlank(sort_num)){ - Long attend_config_rangeId = IdGenerator.generate(); - hrmShiftQueryDao.insertAttendConfigRange(attend_config_rangeId,employeeId,attendConfig,sort_num); - String rangeId = hrmShiftQueryDao.queryRangeIdByconfigId(employeeId,attendConfig); + log.error("rangeId:{}",rangeId); if(StringUtils.isBlank(rangeId)){ + Long attend_config_rangeId = IdGenerator.generate(); + log.error("attend_config_rangeId:{}",attend_config_rangeId); + Map result2 = hrmShiftQueryDao.insertAttendConfigRange(attend_config_rangeId,employeeId,attendConfig,sort_num); + if(result2.containsKey("code")){ + String code2 = result2.get("code").toString(); + if("200".equals(code2)){ + rangeId = String.valueOf(attend_config_rangeId); + } + } + } + log.error("rangeId2:{}",rangeId); + if(StringUtils.isNotBlank(rangeId)){ // 添加排班 if("1".equals(operType)){ Long attendSchedulingId = IdGenerator.generate(); - hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID); + log.error("attendSchedulingId:{}",attendSchedulingId); + Map result = hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID); + if(result.containsKey("code")){ + datacode = result.get("code").toString(); + if("200".equals(datacode)){ + attendId = String.valueOf(attendSchedulingId); + } + } }else if("2".equals(operType)){ // 修改排班 - hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId); - Long attendSchedulingId = IdGenerator.generate(); - hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID); + Map result = hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId); + if(result.containsKey("code")){ + String code = result.get("code").toString(); + if("200".equals(code)){ + Long attendSchedulingId = IdGenerator.generate(); + Map result2 = hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID); + if(result2.containsKey("code")){ + datacode = result.get("code").toString(); + } + if("200".equals(datacode)){ + attendId = String.valueOf(attendSchedulingId); + } + } + } }else if("3".equals(operType)){ // 删除排班 - hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId); + Map result = hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId); + if(result.containsKey("code")){ + datacode = result.get("code").toString(); + } } } } } } } + + dataMap.put("schedulingid",attendId); + dataMap.put("empCode",empCode); + dataMap.put("scDate",scDate); + dataMap.put("operType",operType); + dataMap.put("code",datacode); + dataList.add(dataMap); } return dataList; } - } diff --git a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/test/test99.java b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/test/test99.java index 46cf369..269221c 100644 --- a/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/test/test99.java +++ b/secondev-chapanda-hrmdev/src/main/java/com/weaver/seconddev/chapanda/hrm/test/test99.java @@ -1,5 +1,6 @@ package com.weaver.seconddev.chapanda.hrm.test; +import com.alibaba.fastjson.JSONArray; import org.apache.commons.lang3.StringUtils; /** @@ -23,5 +24,9 @@ public class test99 { System.out.println(period_time); } + String data = "[\"10000065971\"]"; + JSONArray jsonArray = JSONArray.parseArray(data); + System.out.println(jsonArray.size()); + } } diff --git a/secondev-chapanda-hrmdev/src/main/resources/mapper/HrmShiftQueryMapper.xml b/secondev-chapanda-hrmdev/src/main/resources/mapper/HrmShiftQueryMapper.xml index fc4da14..b8dbbd2 100644 --- a/secondev-chapanda-hrmdev/src/main/resources/mapper/HrmShiftQueryMapper.xml +++ b/secondev-chapanda-hrmdev/src/main/resources/mapper/HrmShiftQueryMapper.xml @@ -6,14 +6,18 @@ select b.id,b.name,a.sfmdbc,a.fdjjrbc from e10_common.uf_kq_mdbcdy a inner join (select * from e10_other_business.attend_shift where delete_type=0 and tenant_key = #{tenantKey}) b on a.bc=b.id - where a.sfmdbc = #{isStore} - and a.fdjjrbc = #{type} - and a.delete_type = 0 + where a.delete_type = 0 and a.tenant_key= #{tenantKey} + + and a.sfmdbc = #{isStore} + + + and a.fdjjrbc = #{type} +