#chabaodao-4# 班次接口
This commit is contained in:
parent
b0be700da4
commit
835a39c4b5
|
|
@ -3,7 +3,7 @@ package com.weaver.seconddev.chapanda.hrm.constant;
|
||||||
|
|
||||||
public enum DownLoadTypeEnum {
|
public enum DownLoadTypeEnum {
|
||||||
|
|
||||||
INFORMATION("0","info", "info","签署文件下载","附件管理"),
|
INFORMATION("0","info", "info","人员附件下载","附件管理"),
|
||||||
CONTRACT("1","contract", "contract","签署文件下载","人事合同"),
|
CONTRACT("1","contract", "contract","签署文件下载","人事合同"),
|
||||||
INCOME("2","income", "income","签署文件下载","收入证明"),
|
INCOME("2","income", "income","签署文件下载","收入证明"),
|
||||||
EMPLOYMENT("3","employment", "employment","签署文件下载","在职证明"),
|
EMPLOYMENT("3","employment", "employment","签署文件下载","在职证明"),
|
||||||
|
|
|
||||||
|
|
@ -166,6 +166,38 @@ public class HrmInformationFilesController {
|
||||||
return WeaResult.success(dataMap);
|
return WeaResult.success(dataMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/getinformationpath3")
|
||||||
|
public WeaResult<Object> getInformationPath3(@RequestBody JSONObject jsonObject){
|
||||||
|
String data = String.valueOf(jsonObject.getString("data"));
|
||||||
|
log.error("data:{}",data);
|
||||||
|
JSONArray dataArray = new JSONArray();
|
||||||
|
if(StringUtils.isNotBlank(data)){
|
||||||
|
// String decodedData = hrmDownloadFilesService.convertBase64Data(data);
|
||||||
|
// log.error("decodedData:{}",decodedData);
|
||||||
|
// if(StringUtils.isNotBlank(decodedData)){
|
||||||
|
// try{
|
||||||
|
// dataArray = JSONArray.parseArray(decodedData);
|
||||||
|
// }catch (Exception e){
|
||||||
|
// log.error("{}",e);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
try{
|
||||||
|
dataArray = JSONArray.parseArray(data);
|
||||||
|
}catch (Exception e){
|
||||||
|
log.error("{}",e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log.error("dataArray:{}",dataArray.size());
|
||||||
|
|
||||||
|
String newZipFilePath = convertZipFile(dataArray, DownLoadTypeEnum.INFORMATION.getCode());
|
||||||
|
|
||||||
|
Map<String,Object> dataMap = new HashMap<String,Object>();
|
||||||
|
dataMap.put("filepath",newZipFilePath);
|
||||||
|
return WeaResult.success(dataMap);
|
||||||
|
}
|
||||||
/***
|
/***
|
||||||
* 转换为zip文件
|
* 转换为zip文件
|
||||||
* @param dataArray
|
* @param dataArray
|
||||||
|
|
@ -217,7 +249,7 @@ public class HrmInformationFilesController {
|
||||||
log.error("fileName:{}",fileName);
|
log.error("fileName:{}",fileName);
|
||||||
byte[] filedata = hrmDownloadFilesService.convertInputStreamToBytes(inputStream);
|
byte[] filedata = hrmDownloadFilesService.convertInputStreamToBytes(inputStream);
|
||||||
|
|
||||||
addFileToZip(zos, filedata, fileName,jobNum,userName);
|
addFileToZip2(zos, filedata, fileName);
|
||||||
|
|
||||||
inputStream.close();
|
inputStream.close();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|
@ -274,7 +306,7 @@ public class HrmInformationFilesController {
|
||||||
for (DownLoadTypeEnum item : values) {
|
for (DownLoadTypeEnum item : values) {
|
||||||
log.error("item.getCode():{}",item.getCode());
|
log.error("item.getCode():{}",item.getCode());
|
||||||
if(item.getCode().equals(type)){
|
if(item.getCode().equals(type)){
|
||||||
filename = DownLoadTypeEnum.INCOME.getFileName();
|
filename = DownLoadTypeEnum.INFORMATION.getFileName();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(StringUtils.isNotBlank(filename)){
|
if(StringUtils.isNotBlank(filename)){
|
||||||
|
|
@ -313,6 +345,14 @@ public class HrmInformationFilesController {
|
||||||
zos.write(fileData);
|
zos.write(fileData);
|
||||||
zos.closeEntry();
|
zos.closeEntry();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addFileToZip2(ZipOutputStream zos, byte[] fileData, String entryName) throws IOException {
|
||||||
|
// ZipEntry entry = new ZipEntry(fileName+"_"+jobNum+"/"+entryName);
|
||||||
|
ZipEntry entry = new ZipEntry(entryName);
|
||||||
|
zos.putNextEntry(entry);
|
||||||
|
zos.write(fileData);
|
||||||
|
zos.closeEntry();
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 测试接口
|
* 测试接口
|
||||||
* @param request
|
* @param request
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.controller;
|
||||||
|
|
||||||
|
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.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* packageName com.weaver.seconddev.chapanda.hrm.controller
|
||||||
|
*
|
||||||
|
* @ClassName HrmShiftQueryController
|
||||||
|
* @Author shil
|
||||||
|
* @Date 2025/10/16 13:37
|
||||||
|
* @Description TODO
|
||||||
|
*/
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/api/secondev/chapanda/hrm/shift")
|
||||||
|
public class HrmShiftQueryController {
|
||||||
|
|
||||||
|
private final Logger log = LoggerFactory.getLogger(HrmShiftQueryController.class);
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private HrmShiftQueryService hrmShiftQueryService;
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/queryShiftList")
|
||||||
|
public WeaResult<Object> queryShiftList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.queryShiftList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/getShiftList")
|
||||||
|
public WeaResult<Object> getShiftList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.queryShiftList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/querySchedulingList")
|
||||||
|
public WeaResult<Object> querySchedulingList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.querySchedulingList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/getSchedulingList")
|
||||||
|
public WeaResult<Object> getSchedulingList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.querySchedulingList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/operateScheduling")
|
||||||
|
public WeaResult<Object> operateScheduling(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.operateScheduling(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,72 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.controller;
|
||||||
|
|
||||||
|
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.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* packageName com.weaver.seconddev.chapanda.hrm.controller
|
||||||
|
*
|
||||||
|
* @ClassName HrmShiftQueryController
|
||||||
|
* @Author shil
|
||||||
|
* @Date 2025/10/16 13:37
|
||||||
|
* @Description TODO
|
||||||
|
*/
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/sapi/secondev/cbd/hrm/shift")
|
||||||
|
public class HrmShiftQueryOpenController {
|
||||||
|
private final Logger log = LoggerFactory.getLogger(HrmShiftQueryOpenController.class);
|
||||||
|
@Autowired
|
||||||
|
private HrmShiftQueryService hrmShiftQueryService;
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/queryShiftList")
|
||||||
|
public WeaResult<Object> queryShiftList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.queryShiftList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/getShiftList")
|
||||||
|
public WeaResult<Object> getShiftList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.queryShiftList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/querySchedulingList")
|
||||||
|
public WeaResult<Object> querySchedulingList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.querySchedulingList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/getSchedulingList")
|
||||||
|
public WeaResult<Object> getSchedulingList(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.querySchedulingList(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@PostMapping("/operateScheduling")
|
||||||
|
public WeaResult<Object> operateScheduling(@RequestBody JSONObject paramJson){
|
||||||
|
log.error("paramJson:{}",paramJson.toJSONString());
|
||||||
|
List<Map<String,Object>> dataList = hrmShiftQueryService.operateScheduling(paramJson);
|
||||||
|
return WeaResult.success(dataList);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.controller;
|
||||||
|
|
||||||
|
import com.weaver.common.authority.annotation.WeaPermission;
|
||||||
|
import com.weaver.common.base.entity.result.WeaResult;
|
||||||
|
import com.weaver.framework.rpc.annotation.RpcReference;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.service.WorkflowCommonService;
|
||||||
|
import com.weaver.teams.domain.user.SimpleEmployee;
|
||||||
|
import com.weaver.teams.security.context.UserContext;
|
||||||
|
import com.weaver.workflow.core.api.rest.flow.entity.operate.WfcRequestDeleteParamDataEntity;
|
||||||
|
import com.weaver.workflow.core.api.rest.flow.entity.operate.WfcRequestOperationResultDto;
|
||||||
|
import com.weaver.workflow.core.api.rest.publicapi.WfcRequestOperateRest;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
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 javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/api/secondev/chapanda/hrm/request")
|
||||||
|
public class WorkflowCommonController {
|
||||||
|
private final Logger log = LoggerFactory.getLogger(WorkflowCommonController.class);
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private WorkflowCommonService workflowCommonService;
|
||||||
|
|
||||||
|
|
||||||
|
@RpcReference
|
||||||
|
WfcRequestOperateRest wfcRequestOperateRest;
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/queryRequestDraftCount")
|
||||||
|
public WeaResult<Object> queryRequestDraftCount(HttpServletRequest request, HttpServletResponse response){
|
||||||
|
String employeeid = String.valueOf(request.getParameter("employeeid"));
|
||||||
|
log.error("employeeid:{}",employeeid);
|
||||||
|
|
||||||
|
String workflowid = String.valueOf(request.getParameter("workflowid"));
|
||||||
|
log.error("workflowid:{}",workflowid);
|
||||||
|
|
||||||
|
Map<String,Object> dataMap = workflowCommonService.queryRequestDraftCount(employeeid,workflowid);
|
||||||
|
return WeaResult.success(dataMap);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@WeaPermission(publicPermission = true)
|
||||||
|
@GetMapping("/deleteRequestDraft")
|
||||||
|
public WeaResult<WfcRequestOperationResultDto> deleteRequestDraft(HttpServletRequest request, HttpServletResponse response){
|
||||||
|
String requestid = String.valueOf(request.getParameter("requestid"));
|
||||||
|
SimpleEmployee simpleEmployee = UserContext.getCurrentUser();
|
||||||
|
WfcRequestDeleteParamDataEntity wfcDeleteData = new WfcRequestDeleteParamDataEntity();
|
||||||
|
wfcDeleteData.setRequestIds(requestid);
|
||||||
|
WeaResult<WfcRequestOperationResultDto> result =wfcRequestOperateRest.deleteFlow(wfcDeleteData,simpleEmployee);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,374 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.dao;
|
||||||
|
|
||||||
|
import com.weaver.common.elog.util.DateUtils;
|
||||||
|
import com.weaver.ebuilder.datasource.api.entity.SqlParamEntity;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.constant.Constants;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.util.DatabaseUtils;
|
||||||
|
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;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class HrmShiftQueryDao {
|
||||||
|
|
||||||
|
private final static Logger log = LoggerFactory.getLogger(HrmShiftQueryDao.class);
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DatabaseUtils databaseUtils;
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @param type
|
||||||
|
* @param isStore
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<Map<String, Object>> queryShiftList(String type,String isStore){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-ebuilder-form-service";
|
||||||
|
List<Map<String, Object>> recordList = new ArrayList<Map<String, Object>>();
|
||||||
|
try{
|
||||||
|
String dataSql =" select \n" +
|
||||||
|
" b.id, " +
|
||||||
|
" b.name, " +
|
||||||
|
" a.sfmdbc, " +
|
||||||
|
" a.fdjjrbc " +
|
||||||
|
" from e10_common.uf_kq_mdbcdy a\n" +
|
||||||
|
" inner join (select * from e10_other_business.attend_shift where delete_type=0 and tenant_key = ?) b on a.bc=b.id\n" +
|
||||||
|
" where a.sfmdbc = ? \n" +
|
||||||
|
" and a.fdjjrbc = ? \n" +
|
||||||
|
" and a.delete_type = 0 " +
|
||||||
|
" and a.tenant_key=?" ;
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(isStore);
|
||||||
|
paramList.add(type);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
|
||||||
|
Iterator<Map.Entry<String, Object>> iterator = result.entrySet().iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
Map.Entry<String, Object> entry = iterator.next();
|
||||||
|
log.error(" Key = " + entry.getKey() + ", Value = " + entry.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
}catch (Exception e){
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return recordList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @param shiftid
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<Map<String,Object>> queryShiftTimeList(String shiftid){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
List<Map<String, Object>> recordList = new ArrayList<Map<String, Object>>();
|
||||||
|
try{
|
||||||
|
|
||||||
|
String dataSql =" select attend_start_time,attend_end_time\n" +
|
||||||
|
" from attend_period \n" +
|
||||||
|
" where delete_type=0 \n" +
|
||||||
|
" and attend_shift_id=? " +
|
||||||
|
" and tenant_key = ? " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(shiftid);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
log.error("recordList:{}",recordList.size());
|
||||||
|
}catch (Exception e){
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return recordList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
*
|
||||||
|
* @param beginDate
|
||||||
|
* @param endDate
|
||||||
|
* @param empCode
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<Map<String, Object>> querySchedulingList(String beginDate,String endDate,String empCode){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
List<Map<String, Object>> recordList = new ArrayList<Map<String, Object>>();
|
||||||
|
try{
|
||||||
|
String dataSql =" select \n" +
|
||||||
|
" d.job_num, \n" +
|
||||||
|
" d.username, \n" +
|
||||||
|
" c.id bcid, \n" +
|
||||||
|
" c.name bcname, \n" +
|
||||||
|
" a.attend_date pbrq \n" +
|
||||||
|
" from (select * from e10_other_business.attend_scheduling where delete_type=0 and tenant_key = ?) a\n" +
|
||||||
|
" inner join (select * from e10_other_business.attend_config_range where delete_type=0 and entry_type='user' and tenant_key = ? ) b on a.range_id=b.id\n" +
|
||||||
|
" inner join (select * from e10_other_business.attend_shift where delete_type=0 and tenant_key = ? ) c on a.shift_id=c.id\n" +
|
||||||
|
" inner join (select * from eteams.employee where delete_type=0 and tenant_key = ? ) d on b.target_id=d.ID\n" +
|
||||||
|
" where a.attend_date >= ? \n" +
|
||||||
|
" and a.attend_date <= ? \n" +
|
||||||
|
" and d.job_num = ? and d.tenant_key = ? and d.delete_type=0 " ;
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(beginDate);
|
||||||
|
paramList.add(endDate);
|
||||||
|
paramList.add(empCode);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return recordList;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public String queryEmployeeIdByCode(String empCode){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-ebuilder-form-service";
|
||||||
|
String employeeId = "";
|
||||||
|
try{
|
||||||
|
String dataSql =" select id from eteams.employee where job_num= ? and tenant_key = ? and delete_type=0 " ;
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(empCode);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
if(recordList.size()>0){
|
||||||
|
employeeId = String.valueOf(recordList.get(0).get("id"));
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return employeeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public String queryAttendConfig(String scId){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
String attendConfig = "";
|
||||||
|
try{
|
||||||
|
String dataSql =" select attend_config \n" +
|
||||||
|
" from attend_scheduling_shift \n" +
|
||||||
|
" where delete_type = 0 \n" +
|
||||||
|
" and attend_shift = ? and tenant_key = ? " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(scId);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
log.error("recordList:" + recordList.size());
|
||||||
|
|
||||||
|
if(recordList.size()>0){
|
||||||
|
attendConfig = String.valueOf(recordList.get(0).get("attend_config"));
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return attendConfig;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String queryRangeIdByconfigId(String employeeId,String attendConfig){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
String rangeId = "";
|
||||||
|
try{
|
||||||
|
String dataSql =" select id \n" +
|
||||||
|
" from attend_config_range\n" +
|
||||||
|
" where delete_type=0\n" +
|
||||||
|
" and target_id= ? \n" +
|
||||||
|
" and entry_type='user' \n" +
|
||||||
|
" and attend_config= ? and tenant_key = ? " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(employeeId);
|
||||||
|
paramList.add(attendConfig);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
if(recordList.size()>0){
|
||||||
|
rangeId = String.valueOf(recordList.get(0).get("id"));
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return rangeId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String queryRangeCount(){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
String count = "0";
|
||||||
|
try{
|
||||||
|
String dataSql =" select count(1) as cou \n" +
|
||||||
|
" from attend_config_range\n" +
|
||||||
|
" where delete_type=0\n" +
|
||||||
|
" and entry_type='user' \n" +
|
||||||
|
" and tenant_key = ? " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
if(recordList.size()>0){
|
||||||
|
count = String.valueOf(recordList.get(0).get("cou"));
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return count;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void insertAttendConfigRange(Long id,String employeeId,String attendConfig,String sort_num){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
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) " +
|
||||||
|
" values(?,?,'user',?,?,?,?,0,0,-999,999,?,?)" ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(String.valueOf(id));
|
||||||
|
paramList.add(employeeId);
|
||||||
|
paramList.add(attendConfig);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(create_time);
|
||||||
|
paramList.add(create_time);
|
||||||
|
paramList.add(sort_num);
|
||||||
|
paramList.add(Constants.SysUserId);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
Iterator<Map.Entry<String, Object>> iterator = result.entrySet().iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
Map.Entry<String, Object> entry = iterator.next();
|
||||||
|
log.error(" Key = " + entry.getKey() + ", Value = " + entry.getValue());
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void insertAttendScheduling(Long id,String attendConfig,String attend_date,String range_id,String shift_id){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
try{
|
||||||
|
String create_time = DateUtils.getCurrentDateString() + " " + DateUtils.getOnlyCurrentTimeString();
|
||||||
|
String dataSql =" insert into attend_scheduling\n" +
|
||||||
|
"(id,attend_config_id,attend_date,range_id,shift_id,tenant_key,update_time,delete_type,create_time,creator) " +
|
||||||
|
"values(?,?,?,?,?,?,?,?,?,?)" ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(String.valueOf(id));
|
||||||
|
paramList.add(attendConfig);
|
||||||
|
paramList.add(attend_date);
|
||||||
|
|
||||||
|
paramList.add(range_id);
|
||||||
|
paramList.add(shift_id);
|
||||||
|
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
paramList.add(create_time);
|
||||||
|
paramList.add("0");
|
||||||
|
paramList.add(create_time);
|
||||||
|
paramList.add(Constants.SysUserId);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
Iterator<Map.Entry<String, Object>> iterator = result.entrySet().iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
Map.Entry<String, Object> entry = iterator.next();
|
||||||
|
log.error(" Key = " + entry.getKey() + ", Value = " + entry.getValue());
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void deleteAttendScheduling(String attendDate,String shiftId,String attendConfig,String rangeId){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-hr-service";
|
||||||
|
try{
|
||||||
|
|
||||||
|
String update_time = DateUtils.getCurrentDateString() + " " + DateUtils.getOnlyCurrentTimeString();
|
||||||
|
String dataSql =" update attend_scheduling\n" +
|
||||||
|
" set delete_type = 1,update_time = ? \n" +
|
||||||
|
" where ATTEND_DATE = ? \n" +
|
||||||
|
" and SHIFT_ID=? \n" +
|
||||||
|
" and ATTEND_CONFIG_ID=? \n" +
|
||||||
|
" and RANGE_ID=? and tenant_key = ? " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> 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<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
Iterator<Map.Entry<String, Object>> iterator = result.entrySet().iterator();
|
||||||
|
while (iterator.hasNext()) {
|
||||||
|
Map.Entry<String, Object> entry = iterator.next();
|
||||||
|
log.error(" Key = " + entry.getKey() + ", Value = " + entry.getValue());
|
||||||
|
}
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.dao;
|
||||||
|
|
||||||
|
import com.weaver.ebuilder.datasource.api.entity.SqlParamEntity;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.constant.Constants;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.util.DatabaseUtils;
|
||||||
|
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.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class WorkflowCommonDao {
|
||||||
|
|
||||||
|
private final static Logger log = LoggerFactory.getLogger(WorkflowCommonDao.class);
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DatabaseUtils databaseUtils;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 获取eb表的appid和formid
|
||||||
|
* @param employeeid
|
||||||
|
* @param workflowid
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String queryRequestDraftCount(String employeeid,String workflowid){
|
||||||
|
String sourceType = "LOGIC";
|
||||||
|
String groupId = "weaver-workflow-report-serviceworkflowreport";
|
||||||
|
String requestid = "";
|
||||||
|
try{
|
||||||
|
|
||||||
|
String dataSql =" select requestid \n" +
|
||||||
|
" from wfc_requestbase \n" +
|
||||||
|
" where flowstatus ='0'\n" +
|
||||||
|
" and creator =? \n" +
|
||||||
|
" and workflowid =? \n" +
|
||||||
|
" and delete_type=0\n" +
|
||||||
|
" and tenant_key =? \n" +
|
||||||
|
" order by create_time desc " ;
|
||||||
|
|
||||||
|
log.error("dataSql:" + dataSql);
|
||||||
|
List<String> paramList = new ArrayList<>(100);
|
||||||
|
paramList.add(employeeid);
|
||||||
|
paramList.add(workflowid);
|
||||||
|
paramList.add(Constants.TENANT_KEY);
|
||||||
|
|
||||||
|
List<SqlParamEntity> sqlParamList = databaseUtils.querySqlParamEntity(paramList);
|
||||||
|
Map<String, Object> result = databaseUtils.executeForQuery(sourceType, groupId, dataSql, sqlParamList);
|
||||||
|
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(result);
|
||||||
|
log.error("recordList:"+recordList.size());
|
||||||
|
if(recordList.size()>0){
|
||||||
|
requestid = String.valueOf(recordList.get(0).get("requestid"));
|
||||||
|
}
|
||||||
|
log.error("requestid:{}",requestid);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
log.error("e:" + e);
|
||||||
|
}
|
||||||
|
return requestid;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,59 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.entity;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author:dxfeng
|
||||||
|
* @createTime: 2025/08/04
|
||||||
|
* @version: 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class CustomSchedulingPo {
|
||||||
|
private String jobNum;
|
||||||
|
private String username;
|
||||||
|
|
||||||
|
private String bcid;
|
||||||
|
|
||||||
|
private String bcname;
|
||||||
|
|
||||||
|
private String pbrq;
|
||||||
|
|
||||||
|
public String getJobNum() {
|
||||||
|
return jobNum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setJobNum(String jobNum) {
|
||||||
|
this.jobNum = jobNum;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getUsername() {
|
||||||
|
return username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setUsername(String username) {
|
||||||
|
this.username = username;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBcid() {
|
||||||
|
return bcid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBcid(String bcid) {
|
||||||
|
this.bcid = bcid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getBcname() {
|
||||||
|
return bcname;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBcname(String bcname) {
|
||||||
|
this.bcname = bcname;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPbrq() {
|
||||||
|
return pbrq;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPbrq(String pbrq) {
|
||||||
|
this.pbrq = pbrq;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.entity;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author:dxfeng
|
||||||
|
* @createTime: 2025/08/04
|
||||||
|
* @version: 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class CustomShiftPo {
|
||||||
|
private String id;
|
||||||
|
private String name;
|
||||||
|
private String sfmdbc;
|
||||||
|
private String fdjjrbc;
|
||||||
|
|
||||||
|
|
||||||
|
public String getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(String id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSfmdbc() {
|
||||||
|
return sfmdbc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSfmdbc(String sfmdbc) {
|
||||||
|
this.sfmdbc = sfmdbc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getFdjjrbc() {
|
||||||
|
return fdjjrbc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFdjjrbc(String fdjjrbc) {
|
||||||
|
this.fdjjrbc = fdjjrbc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.entity;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author:dxfeng
|
||||||
|
* @createTime: 2025/08/04
|
||||||
|
* @version: 1.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class CustomShiftTimePo {
|
||||||
|
private String attendStartTime;
|
||||||
|
private String attendEndTime;
|
||||||
|
|
||||||
|
public String getAttendStartTime() {
|
||||||
|
return attendStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAttendStartTime(String attendStartTime) {
|
||||||
|
this.attendStartTime = attendStartTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAttendEndTime() {
|
||||||
|
return attendEndTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAttendEndTime(String attendEndTime) {
|
||||||
|
this.attendEndTime = attendEndTime;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.mapper;
|
||||||
|
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomSchedulingPo;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomShiftPo;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomShiftTimePo;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author:dxfeng
|
||||||
|
* @createTime: 2025/07/15
|
||||||
|
* @version: 1.0
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface HrmShiftQueryMapper {
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 查询班次列表
|
||||||
|
* @param isStore
|
||||||
|
* @param type
|
||||||
|
* @param tenantKey
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<CustomShiftPo> queryShiftList(@Param("isStore") String isStore, @Param("type") String type, @Param("tenantKey") String tenantKey);
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 查询班次时间列表
|
||||||
|
* @param shiftId
|
||||||
|
* @param tenantKey
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<CustomShiftTimePo> queryShiftTimeList(@Param("shiftId") String shiftId, @Param("tenantKey") String tenantKey);
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 查询排班列表
|
||||||
|
* @param beginDate
|
||||||
|
* @param endDate
|
||||||
|
* @param empCode
|
||||||
|
* @param tenantKey
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<CustomSchedulingPo> querySchedulingList(@Param("beginDate") String beginDate, @Param("endDate") String endDate, @Param("empCode") String empCode, @Param("tenantKey") String tenantKey);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.service;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public interface HrmShiftQueryService {
|
||||||
|
|
||||||
|
List<Map<String,Object>> queryShiftList(JSONObject paramJson);
|
||||||
|
|
||||||
|
|
||||||
|
List<Map<String,Object>> querySchedulingList(JSONObject paramJson);
|
||||||
|
|
||||||
|
|
||||||
|
List<Map<String,Object>> operateScheduling(JSONObject paramJson);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.service;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public interface WorkflowCommonService {
|
||||||
|
Map<String,Object>queryRequestDraftCount(String employeeid,String workflowid);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,168 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.service.impl;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.weaver.common.distribution.genid.IdGenerator;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.constant.Constants;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.dao.HrmShiftQueryDao;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomSchedulingPo;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomShiftPo;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.entity.CustomShiftTimePo;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.mapper.HrmShiftQueryMapper;
|
||||||
|
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.stereotype.Service;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* author:shil
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class HrmShiftQueryServiceImpl implements HrmShiftQueryService {
|
||||||
|
|
||||||
|
private final Logger log = LoggerFactory.getLogger(HrmShiftQueryServiceImpl.class);
|
||||||
|
@Autowired
|
||||||
|
HrmShiftQueryMapper hrmShiftQueryMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
HrmShiftQueryDao hrmShiftQueryDao;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 查询班次列表
|
||||||
|
* @param paramJson
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Map<String,Object>> queryShiftList(JSONObject paramJson) {
|
||||||
|
List<Map<String,Object>> shiftList = new ArrayList<Map<String,Object>>();
|
||||||
|
String type = paramJson.getString("type");
|
||||||
|
String isStore = paramJson.getString("isStore");
|
||||||
|
log.error("type:{}",type);
|
||||||
|
log.error("isStore:{}",isStore);
|
||||||
|
|
||||||
|
List<CustomShiftPo> dataList = hrmShiftQueryMapper.queryShiftList(isStore,type,Constants.TENANT_KEY);
|
||||||
|
log.error("dataList:{}",dataList.size());
|
||||||
|
for(int i=0;i<dataList.size();i++){
|
||||||
|
CustomShiftPo customShiftPo = dataList.get(i);
|
||||||
|
String id = customShiftPo.getId();
|
||||||
|
String name = customShiftPo.getName();
|
||||||
|
String sfmdbc = customShiftPo.getSfmdbc();
|
||||||
|
String fdjjrbc = customShiftPo.getFdjjrbc();
|
||||||
|
|
||||||
|
Map<String,Object> shiftMap = new HashMap<String,Object>();
|
||||||
|
shiftMap.put("scID",id);
|
||||||
|
shiftMap.put("scName",name);
|
||||||
|
shiftMap.put("type",fdjjrbc);
|
||||||
|
shiftMap.put("isStore",sfmdbc);
|
||||||
|
|
||||||
|
log.error("id:{}",dataList.size());
|
||||||
|
List<CustomShiftTimePo> attendList = hrmShiftQueryMapper.queryShiftTimeList(id,Constants.TENANT_KEY);
|
||||||
|
shiftMap.put("attend",attendList);
|
||||||
|
shiftList.add(shiftMap);
|
||||||
|
}
|
||||||
|
return shiftList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 查询排班列表
|
||||||
|
* @param paramJson
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<Map<String,Object>> querySchedulingList(JSONObject paramJson) {
|
||||||
|
List<Map<String,Object>> shiftList = new ArrayList<Map<String,Object>>();
|
||||||
|
String beginDate = paramJson.getString("beginDate");
|
||||||
|
String endDate = paramJson.getString("endDate");
|
||||||
|
log.error("beginDate:{}",beginDate);
|
||||||
|
log.error("endDate:{}",endDate);
|
||||||
|
String empCodeStr = paramJson.getString("empCode");
|
||||||
|
log.error("empCodeStr:{}",empCodeStr);
|
||||||
|
JSONArray empCodeArray = new JSONArray();
|
||||||
|
if(StringUtils.isNotBlank(empCodeStr)){
|
||||||
|
empCodeArray = JSONArray.parseArray(empCodeStr);
|
||||||
|
}
|
||||||
|
log.error("empCodeArray:{}",empCodeArray.size());
|
||||||
|
|
||||||
|
for(int i=0;i<empCodeArray.size();i++){
|
||||||
|
String empCode = empCodeArray.getString(i);
|
||||||
|
log.error("empCode:{}",empCode);
|
||||||
|
|
||||||
|
List<CustomSchedulingPo> dataList = hrmShiftQueryMapper.querySchedulingList(beginDate,endDate,empCode,Constants.TENANT_KEY);
|
||||||
|
log.error("dataList:{}",dataList.size());
|
||||||
|
for(int k = 0;k<dataList.size();k++){
|
||||||
|
|
||||||
|
CustomSchedulingPo customSchedulingPo = dataList.get(k);
|
||||||
|
String scID = customSchedulingPo.getBcid();
|
||||||
|
String scName = customSchedulingPo.getBcname();
|
||||||
|
String scDate = customSchedulingPo.getPbrq();
|
||||||
|
String empCode_item = customSchedulingPo.getJobNum();
|
||||||
|
String empName = customSchedulingPo.getUsername();
|
||||||
|
|
||||||
|
Map<String,Object> shiftMap = new HashMap<String,Object>();
|
||||||
|
shiftMap.put("scID",scID);
|
||||||
|
shiftMap.put("scName",scName);
|
||||||
|
shiftMap.put("scDate",scDate);
|
||||||
|
shiftMap.put("empCode",empCode_item);
|
||||||
|
shiftMap.put("empName",empName);
|
||||||
|
|
||||||
|
List<CustomShiftTimePo> attendList = hrmShiftQueryMapper.queryShiftTimeList(scID,Constants.TENANT_KEY);
|
||||||
|
shiftMap.put("attend",attendList);
|
||||||
|
shiftList.add(shiftMap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return shiftList;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<Map<String,Object>> operateScheduling(JSONObject paramJson) {
|
||||||
|
List<Map<String,Object>> dataList = new ArrayList<Map<String,Object>>();
|
||||||
|
Map<String,Object> map = new HashMap<String,Object>();
|
||||||
|
List<Map<String,Object>> shiftList = new ArrayList<Map<String,Object>>();
|
||||||
|
String operType = paramJson.getString("operType");
|
||||||
|
JSONArray dataArray = paramJson.getJSONArray("data");
|
||||||
|
|
||||||
|
for(int i=0;i<dataArray.size();i++){
|
||||||
|
JSONObject dataJson = dataArray.getJSONObject(i);
|
||||||
|
String empCode = dataJson.getString("empCode");
|
||||||
|
String scID = dataJson.getString("scID");
|
||||||
|
String scDate = dataJson.getString("scDate");
|
||||||
|
String employeeId = hrmShiftQueryDao.queryEmployeeIdByCode(empCode);
|
||||||
|
|
||||||
|
if(StringUtils.isNotBlank(employeeId)){
|
||||||
|
if(StringUtils.isNotBlank(scID)){
|
||||||
|
String attendConfig = hrmShiftQueryDao.queryAttendConfig(scID);
|
||||||
|
if(StringUtils.isNotBlank(attendConfig)){
|
||||||
|
String sort_num = hrmShiftQueryDao.queryRangeCount();
|
||||||
|
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);
|
||||||
|
if(StringUtils.isBlank(rangeId)){
|
||||||
|
// 添加排班
|
||||||
|
if("1".equals(operType)){
|
||||||
|
Long attendSchedulingId = IdGenerator.generate();
|
||||||
|
hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID);
|
||||||
|
}else if("2".equals(operType)){ // 修改排班
|
||||||
|
hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId);
|
||||||
|
Long attendSchedulingId = IdGenerator.generate();
|
||||||
|
hrmShiftQueryDao.insertAttendScheduling(attendSchedulingId,attendConfig,scDate,rangeId,scID);
|
||||||
|
}else if("3".equals(operType)){ // 删除排班
|
||||||
|
hrmShiftQueryDao.deleteAttendScheduling(scDate,scID,attendConfig,rangeId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return dataList;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.weaver.seconddev.chapanda.hrm.service.impl;
|
||||||
|
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.dao.WorkflowCommonDao;
|
||||||
|
import com.weaver.seconddev.chapanda.hrm.service.WorkflowCommonService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* author:shil
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class WorkflowCommonServiceImpl implements WorkflowCommonService {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
WorkflowCommonDao workflowCommonDao;
|
||||||
|
@Override
|
||||||
|
public Map<String,Object> queryRequestDraftCount(String employeeid, String workflowid) {
|
||||||
|
Map<String,Object> dataMap = new HashMap<String,Object>();
|
||||||
|
String requestid = workflowCommonDao.queryRequestDraftCount(employeeid,workflowid);
|
||||||
|
dataMap.put("requestid",requestid);
|
||||||
|
return dataMap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.weaver.seconddev.chapanda.hrm.mapper.HrmShiftQueryMapper">
|
||||||
|
|
||||||
|
<select id="queryShiftList" resultType="com.weaver.seconddev.chapanda.hrm.entity.CustomShiftPo">
|
||||||
|
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
|
||||||
|
and a.tenant_key= #{tenantKey}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="queryShiftTimeList" resultType="com.weaver.seconddev.chapanda.hrm.entity.CustomShiftTimePo">
|
||||||
|
select attend_start_time as attendStartTime,attend_end_time as attendEndTime
|
||||||
|
from e10_other_business.attend_period
|
||||||
|
where delete_type=0
|
||||||
|
and attend_shift_id = #{shiftId}
|
||||||
|
and tenant_key = #{tenantKey}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="querySchedulingList" resultType="com.weaver.seconddev.chapanda.hrm.entity.CustomSchedulingPo">
|
||||||
|
select d.job_num as jobNum,d.username,c.id bcid,c.name bcname,a.attend_date pbrq
|
||||||
|
from (select * from e10_other_business.attend_scheduling where delete_type=0 and tenant_key = #{tenantKey}) a
|
||||||
|
inner join (select * from e10_other_business.attend_config_range where delete_type=0 and entry_type='user' and tenant_key = #{tenantKey} ) b on a.range_id=b.id
|
||||||
|
inner join (select * from e10_other_business.attend_shift where delete_type=0 and tenant_key = #{tenantKey} ) c on a.shift_id=c.id
|
||||||
|
inner join (select * from eteams.employee where delete_type=0 and tenant_key = #{tenantKey} ) d on b.target_id=d.ID
|
||||||
|
where a.attend_date >= #{beginDate}
|
||||||
|
and a.attend_date <= #{endDate}
|
||||||
|
and d.job_num = #{empCode} and d.tenant_key = #{tenantKey} and d.delete_type=0
|
||||||
|
</select>
|
||||||
|
|
||||||
|
</mapper>
|
||||||
Loading…
Reference in New Issue