Commit dd973057 authored by dll's avatar dll
parents 01e90fb6 6ed18014
package com.mortals.xhx.base.framework.config;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* @author djx
* @date 2023年04月10日 11:53
*/
@Component
public class JsonUtils {
@Autowired
private ObjectMapper objectMapper;
public String bean2Json(Object data) {
try {
String result = objectMapper.writeValueAsString(data);
return result;
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return null;
}
public <T> T json2Bean(String jsonData, Class<T> beanType) {
try {
T result = objectMapper.readValue(jsonData, beanType);
return result;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public <T> List<T> json2List(String jsonData, Class<T> beanType) {
JavaType javaType = objectMapper.getTypeFactory().constructParametricType(List.class, beanType);
try {
List<T> resultList = objectMapper.readValue(jsonData, javaType);
return resultList;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public <K, V> Map<K, V> json2Map(String jsonData, Class<K> keyType, Class<V> valueType) {
JavaType javaType = objectMapper.getTypeFactory().constructMapType(Map.class, keyType, valueType);
try {
Map<K, V> resultMap = objectMapper.readValue(jsonData, javaType);
return resultMap;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
...@@ -83,7 +83,7 @@ public class ArtemisPostTest { ...@@ -83,7 +83,7 @@ public class ArtemisPostTest {
final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/person/personList"; final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/person/personList";
Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数 Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数
paramMap.put("pageNo", "1"); paramMap.put("pageNo", "1");
paramMap.put("pageSize", "10"); paramMap.put("pageSize", "1000");
String body = JSON.toJSON(paramMap).toString(); String body = JSON.toJSON(paramMap).toString();
Map<String, String> path = new HashMap<String, String>(2) { Map<String, String> path = new HashMap<String, String>(2) {
{ {
...@@ -106,7 +106,7 @@ public class ArtemisPostTest { ...@@ -106,7 +106,7 @@ public class ArtemisPostTest {
final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/person/personList"; final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/person/personList";
Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数 Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数
paramMap.put("pageNo", "1"); paramMap.put("pageNo", "1");
paramMap.put("pageSize", "10"); paramMap.put("pageSize", "1000");
String body = JSON.toJSON(paramMap).toString(); String body = JSON.toJSON(paramMap).toString();
Map<String, String> path = new HashMap<String, String>(2) { Map<String, String> path = new HashMap<String, String>(2) {
{ {
......
package com.mortals.xhx.daemon.task; package com.mortals.xhx.daemon.task;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask; import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService; import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.base.framework.config.JsonUtils;
import com.mortals.xhx.busiz.hik.ArtemisPostTest; import com.mortals.xhx.busiz.hik.ArtemisPostTest;
import com.mortals.xhx.busiz.rsp.DeptHikData; import com.mortals.xhx.busiz.rsp.DeptHikData;
import com.mortals.xhx.busiz.rsp.ListDept; import com.mortals.xhx.busiz.rsp.ListDept;
...@@ -17,6 +18,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -17,6 +18,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
...@@ -28,8 +30,6 @@ import java.util.Objects; ...@@ -28,8 +30,6 @@ import java.util.Objects;
@Service("SyncUserTask") @Service("SyncUserTask")
public class SyncUserTaskImpl implements ITaskExcuteService { public class SyncUserTaskImpl implements ITaskExcuteService {
@Autowired
private JsonUtils jsonUtils;
@Autowired @Autowired
private StaffDaoImpl staffDao; private StaffDaoImpl staffDao;
...@@ -42,30 +42,37 @@ public class SyncUserTaskImpl implements ITaskExcuteService { ...@@ -42,30 +42,37 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
log.info("同步用户--部门"); log.info("同步用户--部门");
try { try {
String resultPerson = ArtemisPostTest.callPostApiGetPersonList(); String resultPerson = ArtemisPostTest.callPostApiGetPersonList();
PersonHikData personHikData = jsonUtils.json2Bean(resultPerson, PersonHikData.class); JSONObject jsonObject = JSON.parseObject(resultPerson);
JSONObject jsonObject1 = jsonObject.getJSONObject("data");
PersonHikData personHikData = JSONObject.parseObject(jsonObject1.toJSONString(), PersonHikData.class);
if (Objects.nonNull(personHikData)) { if (Objects.nonNull(personHikData)) {
for (ListItem list : personHikData.getList()) { for (ListItem list : personHikData.getList()) {
//根据id获取本地数据 //根据id获取本地数据
StaffEntity staffEntity1 = staffDao.get(Long.valueOf(list.getPersonId())); StaffEntity staffEntity1 = staffDao.queryHik(list.getPersonId());
List<StaffEntity> staffEntitieList = staffDao.queryAllList(); List<StaffEntity> staffEntitieList = new ArrayList<>();
//判断本地数据是否为空 //判断本地数据是否为空
if (Objects.isNull(staffEntity1)) { if (Objects.isNull(staffEntity1)) {
//如果为空则将数据存入数据库 //如果为空则将数据存入数据库
staffEntity1.setName(list.getPersonName()); StaffEntity staffEntity= new StaffEntity();
staffEntity1.setRemark(list.getPersonId()); System.out.println(list.getPersonName());
staffEntity1.setPhotoPath(list.getPersonPhoto().getPicUri()); staffEntity.setName(list.getPersonName());
staffEntity1.setDeptName(list.getOrgName()); staffEntity.setRemark(list.getPersonId());
staffEntity1.setDeptId(Long.valueOf(list.getOrgIndexCode())); staffEntity.setPhotoPath(list.getPersonPhoto().getPicUri());
staffEntity1.setDeptName(list.getOrgName()); staffEntity.setDeptName(list.getOrgName());
staffEntity1.setSource(1); staffEntity.setSource(1);
if (list.getBirthday()!=null){ staffEntity.setCreateUserId(Long.valueOf(1));
staffEntity1.setBirthday((Date) list.getBirthday()); staffEntity.setCreateTime(new Date());
if (list.getBirthday() != null) {
staffEntity.setBirthday((Date) list.getBirthday());
} }
if (list.getPhoneNo()!=null){ if (list.getPhoneNo() != null) {
staffEntity1.setPhoneNumber(String.valueOf(list.getPhoneNo())); staffEntity.setPhoneNumber(String.valueOf(list.getPhoneNo()));
} }
staffDao.insert(staffEntity1); System.out.println("111" + staffEntity);
staffDao.insert(staffEntity);
} }
//本地数据不为空 //本地数据不为空
else { else {
//本地数据遍历数据 //本地数据遍历数据
...@@ -84,8 +91,9 @@ public class SyncUserTaskImpl implements ITaskExcuteService { ...@@ -84,8 +91,9 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
staffEntity.setBirthday(staffEntity.getBirthday()); staffEntity.setBirthday(staffEntity.getBirthday());
} }
if (list.getPhoneNo()!=null && staffEntity.getPhoneNumber()!=null){ if (list.getPhoneNo()!=null && staffEntity.getPhoneNumber()!=null){
staffEntity1.setPhoneNumber(staffEntity.getPhoneNumber()); staffEntity.setPhoneNumber(staffEntity.getPhoneNumber());
} }
log.info("修改人员信息"+staffEntity);
staffDao.update(staffEntity); staffDao.update(staffEntity);
} }
for (ListItem item :personHikData.getList()){ for (ListItem item :personHikData.getList()){
...@@ -102,7 +110,10 @@ public class SyncUserTaskImpl implements ITaskExcuteService { ...@@ -102,7 +110,10 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
} }
} }
String resultDept = ArtemisPostTest.callPostApiGetDeptList(); String resultDept = ArtemisPostTest.callPostApiGetDeptList();
DeptHikData deptHikData = jsonUtils.json2Bean(resultDept,DeptHikData.class); JSONObject jsonObjectDept = JSON.parseObject(resultDept);
JSONObject jsonObjectDept1 = jsonObject.getJSONObject("data");
DeptHikData deptHikData =JSONObject.parseObject(jsonObject1.toJSONString(),DeptHikData.class);
log.info("海康部门信息"+resultDept);
if (Objects.isNull(deptHikData)){ if (Objects.isNull(deptHikData)){
for (ListDept listDept:deptHikData.getList()){ for (ListDept listDept:deptHikData.getList()){
DeptEntity deptEntity = deptDao.get(Long.valueOf(listDept.getOrgIndexCode())); DeptEntity deptEntity = deptDao.get(Long.valueOf(listDept.getOrgIndexCode()));
...@@ -111,12 +122,14 @@ public class SyncUserTaskImpl implements ITaskExcuteService { ...@@ -111,12 +122,14 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
deptEntity.setDeptName(listDept.getOrgName()); deptEntity.setDeptName(listDept.getOrgName());
deptEntity.setParentId(Long.valueOf(listDept.getParentOrgIndexCode())); deptEntity.setParentId(Long.valueOf(listDept.getParentOrgIndexCode()));
deptEntity.setAncestors(listDept.getOrgPath()); deptEntity.setAncestors(listDept.getOrgPath());
log.info("新增部门信息"+deptEntity);
deptDao.insert(deptEntity); deptDao.insert(deptEntity);
}else { }else {
for (DeptEntity deptEntity1 :deptEntityList){ for (DeptEntity deptEntity1 :deptEntityList){
if (!deptEntity1.getParentId().equals(listDept.getOrgIndexCode())){ if (!deptEntity1.getParentId().equals(listDept.getOrgIndexCode())){
deptEntity1.setAncestors(listDept.getOrgPath()); deptEntity1.setAncestors(listDept.getOrgPath());
deptEntity1.setDeptName(listDept.getOrgName()); deptEntity1.setDeptName(listDept.getOrgName());
log.info("修改部门信息"+deptEntity);
deptDao.update(deptEntity1); deptDao.update(deptEntity1);
} }
for (ListDept dept : deptHikData.getList()){ for (ListDept dept : deptHikData.getList()){
......
package com.mortals.xhx.module.attendance.web; package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.attendance.model.AttendanceLeaveRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.workman.model.WorkmanQuery;
import com.mortals.xhx.module.workman.service.WorkmanService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.attendance.model.AttendanceLeaveRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/** /**
* *
* 请假记录信息 * 请假记录信息
...@@ -35,6 +28,10 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont ...@@ -35,6 +28,10 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private DeptService deptService;
@Autowired
private WorkmanService workmanService;
public AttendanceLeaveRecordController(){ public AttendanceLeaveRecordController(){
super.setModuleDesc( "请假记录信息"); super.setModuleDesc( "请假记录信息");
...@@ -42,6 +39,8 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont ...@@ -42,6 +39,8 @@ public class AttendanceLeaveRecordController extends BaseCRUDJsonBodyMappingCont
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "deptId", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName(),(o, n)->n)));
this.addDict(model, "approverId", workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getName(),(o, n)->n)));
this.addDict(model, "leaveType", paramService.getParamBySecondOrganize("AttendanceLeaveRecord","leaveType")); this.addDict(model, "leaveType", paramService.getParamBySecondOrganize("AttendanceLeaveRecord","leaveType"));
super.init(model, context); super.init(model, context);
} }
......
package com.mortals.xhx.module.attendance.web; package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.attendance.model.AttendanceVacationBalanceEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationBalanceService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.attendance.model.AttendanceVacationBalanceEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationBalanceService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/** /**
* *
* 员工假期余额信息 * 员工假期余额信息
......
package com.mortals.xhx.module.attendance.web; package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.attendance.model.AttendanceVacationBalanceEntity;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationBalanceService;
import com.mortals.xhx.module.attendance.service.AttendanceVacationRecordService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.attendance.model.AttendanceVacationRecordEntity;
import com.mortals.xhx.module.attendance.service.AttendanceVacationRecordService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/** /**
* *
* 员工假期记录信息 * 员工假期记录信息
...@@ -35,6 +25,8 @@ public class AttendanceVacationRecordController extends BaseCRUDJsonBodyMappingC ...@@ -35,6 +25,8 @@ public class AttendanceVacationRecordController extends BaseCRUDJsonBodyMappingC
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private AttendanceVacationBalanceService attendanceVacationBalanceService;
public AttendanceVacationRecordController(){ public AttendanceVacationRecordController(){
super.setModuleDesc( "员工假期记录信息"); super.setModuleDesc( "员工假期记录信息");
...@@ -47,5 +39,10 @@ public class AttendanceVacationRecordController extends BaseCRUDJsonBodyMappingC ...@@ -47,5 +39,10 @@ public class AttendanceVacationRecordController extends BaseCRUDJsonBodyMappingC
super.init(model, context); super.init(model, context);
} }
@Override
protected void saveBefore(AttendanceVacationRecordEntity entity, Map<String, Object> model, Context context) throws AppException {
AttendanceVacationBalanceEntity attendanceVacationBalanceEntity=attendanceVacationBalanceService.get(entity.getStaffId());
model.put("allHoliday",attendanceVacationBalanceEntity);
super.saveBefore(entity, model, context);
}
} }
\ No newline at end of file
...@@ -10,6 +10,7 @@ import com.mortals.xhx.module.dept.model.DeptEntity; ...@@ -10,6 +10,7 @@ import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery; import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.model.DeptTreeSelect; import com.mortals.xhx.module.dept.model.DeptTreeSelect;
import com.mortals.xhx.module.dept.service.DeptService; import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.staff.service.StaffService;
import com.mortals.xhx.module.workman.model.WorkmanQuery; import com.mortals.xhx.module.workman.model.WorkmanQuery;
import com.mortals.xhx.module.workman.service.WorkmanService; import com.mortals.xhx.module.workman.service.WorkmanService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
...@@ -39,6 +40,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic ...@@ -39,6 +40,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
private DeptService deptService; private DeptService deptService;
@Autowired @Autowired
private WorkmanService workmanService; private WorkmanService workmanService;
@Autowired
private StaffService staffService;
public DeptController() { public DeptController() {
...@@ -48,8 +51,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic ...@@ -48,8 +51,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "deptStatus", paramService.getParamBySecondOrganize("Dept", "deptStatus")); this.addDict(model, "deptStatus", paramService.getParamBySecondOrganize("Dept", "deptStatus"));
this.addDict(model, "id", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName(),(o, n)->n))); this.addDict(model, "deptName", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getDeptName(),(o, n)->n)));
this.addDict(model, "remark", workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getName(),(o, n)->n))); this.addDict(model, "workName", workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getName(),(o, n)->n)));
super.init(model, context); super.init(model, context);
} }
...@@ -129,6 +132,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic ...@@ -129,6 +132,8 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
@Override @Override
protected int doListAfter(DeptEntity query, Map<String, Object> model, Context context) throws AppException { protected int doListAfter(DeptEntity query, Map<String, Object> model, Context context) throws AppException {
int Allperson =staffService.queryAllPerson();
model.put("AllPerson",Allperson);
return super.doListAfter(query, model, context); return super.doListAfter(query, model, context);
} }
} }
\ No newline at end of file
package com.mortals.xhx.module.job.web; package com.mortals.xhx.module.job.web;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.job.model.JobEntity;
import com.mortals.xhx.module.job.service.JobService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.job.model.JobEntity;
import com.mortals.xhx.module.job.service.JobService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/** /**
* *
* 职位信息 * 职位信息
...@@ -43,6 +31,7 @@ public class JobController extends BaseCRUDJsonBodyMappingController<JobService, ...@@ -43,6 +31,7 @@ public class JobController extends BaseCRUDJsonBodyMappingController<JobService,
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("Job", "type"));
super.init(model, context); super.init(model, context);
} }
......
...@@ -53,7 +53,13 @@ public interface StaffDao extends ICRUDDao<StaffEntity,Long>{ ...@@ -53,7 +53,13 @@ public interface StaffDao extends ICRUDDao<StaffEntity,Long>{
int queryConcurrently(); int queryConcurrently();
/** /**
* 查询职位 * 统计部门
* */ * */
List<StaffEntity> queryDetp(); int queryPersonNum(Long deptId);
/**
*
* */
StaffEntity queryHik(String remark);
} }
...@@ -54,10 +54,14 @@ public class StaffDaoImpl extends BaseCRUDDaoMybatis<StaffEntity,Long> implement ...@@ -54,10 +54,14 @@ public class StaffDaoImpl extends BaseCRUDDaoMybatis<StaffEntity,Long> implement
} }
@Override @Override
public List<StaffEntity> queryDetp(){ public int queryPersonNum(Long deptId) {
return this.getSqlSession().selectList(this.getSqlId("queryDetp")); return this.getSqlSession().selectOne(this.getSqlId("queryPersonNum"),deptId);
} }
@Override
public StaffEntity queryHik(String remark) {
return this.getSqlSession().selectOne(this.getSqlId("queryHik"),remark);
}
} }
...@@ -17,4 +17,6 @@ public class StaffVo extends BaseEntityLong { ...@@ -17,4 +17,6 @@ public class StaffVo extends BaseEntityLong {
private List<HolidayListVo> holidayLists; private List<HolidayListVo> holidayLists;
private List<StaffInfoVo>staffInfoVos; private List<StaffInfoVo>staffInfoVos;
private Integer personNum;
} }
\ No newline at end of file
...@@ -3,8 +3,6 @@ import com.mortals.framework.service.ICRUDCacheService; ...@@ -3,8 +3,6 @@ import com.mortals.framework.service.ICRUDCacheService;
import com.mortals.xhx.module.staff.model.StaffEntity; import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.vo.StaffInfoVo; import com.mortals.xhx.module.staff.model.vo.StaffInfoVo;
import java.util.List;
/** /**
* StaffService * StaffService
* *
...@@ -17,5 +15,7 @@ public interface StaffService extends ICRUDCacheService<StaffEntity,Long> { ...@@ -17,5 +15,7 @@ public interface StaffService extends ICRUDCacheService<StaffEntity,Long> {
StaffInfoVo queryAll(); StaffInfoVo queryAll();
List<StaffEntity> queryDept(); int queryDeptNum(Long deptId);
int queryAllPerson();
} }
\ No newline at end of file
...@@ -10,8 +10,6 @@ import com.mortals.xhx.module.staff.service.StaffService; ...@@ -10,8 +10,6 @@ import com.mortals.xhx.module.staff.service.StaffService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* StaffService * StaffService
* 员工基本信息 service实现 * 员工基本信息 service实现
...@@ -57,8 +55,14 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta ...@@ -57,8 +55,14 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
} }
@Override @Override
public List<StaffEntity> queryDept() { public int queryDeptNum(Long deptId) {
return staffDao.queryPersonNum(deptId);
}
return staffDao.queryDetp(); @Override
public int queryAllPerson() {
return staffDao.queryInWork();
} }
} }
\ No newline at end of file
...@@ -4,6 +4,8 @@ import com.mortals.framework.exception.AppException; ...@@ -4,6 +4,8 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.job.model.JobQuery; import com.mortals.xhx.module.job.model.JobQuery;
import com.mortals.xhx.module.job.service.JobService; import com.mortals.xhx.module.job.service.JobService;
import com.mortals.xhx.module.staff.model.StaffEntity; import com.mortals.xhx.module.staff.model.StaffEntity;
...@@ -35,6 +37,8 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ ...@@ -35,6 +37,8 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
private ParamService paramService; private ParamService paramService;
@Autowired @Autowired
private JobService jobService; private JobService jobService;
@Autowired
private DeptService deptService;
public StaffController(){ public StaffController(){
super.setModuleDesc( "员工基本信息"); super.setModuleDesc( "员工基本信息");
...@@ -100,7 +104,10 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ ...@@ -100,7 +104,10 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
@Override @Override
protected int saveAfter(StaffEntity entity, Map<String, Object> model, Context context) throws AppException { protected int saveAfter(StaffEntity entity, Map<String, Object> model, Context context) throws AppException {
int personNum = service.queryDeptNum(entity.getDeptId());
DeptEntity deptEntity = deptService.get(entity.getDeptId());
deptEntity.setPersonNum(personNum);
deptService.update(deptEntity);
return super.saveAfter(entity, model, context); return super.saveAfter(entity, model, context);
} }
......
...@@ -47,7 +47,7 @@ public class WorkmanController extends BaseCRUDJsonBodyMappingController<Workman ...@@ -47,7 +47,7 @@ public class WorkmanController extends BaseCRUDJsonBodyMappingController<Workman
@Override @Override
protected int saveAfter(WorkmanEntity entity, Map<String, Object> model, Context context) throws AppException { protected int saveAfter(WorkmanEntity entity, Map<String, Object> model, Context context) throws AppException {
DeptEntity deptEntity = new DeptEntity(); DeptEntity deptEntity = new DeptEntity();
deptEntity.setRemark(entity.getName()); deptEntity.setWorkName(entity.getName());
return super.saveAfter(entity, model, context); return super.saveAfter(entity, model, context);
} }
} }
\ No newline at end of file
...@@ -1337,7 +1337,11 @@ ...@@ -1337,7 +1337,11 @@
select count(1) pricateStaff from mortals_xhx_staff where staffType = 3 select count(1) pricateStaff from mortals_xhx_staff where staffType = 3
</select> </select>
<select id="queryDetp" resultType="com.mortals.xhx.module.staff.model.StaffEntity"> <select id="queryPersonNum" resultType="integer">
select deptName from mortals_xhx_staff group by deptName select count(1) personNum from mortals_xhx_staff where deptId = #{deptId}
</select> </select>
<select id="queryHik" resultType="com.mortals.xhx.module.staff.model.StaffEntity">
select * from mortals_xhx_staff where remark = #{remark}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -19,16 +19,6 @@ Authorization: {{authToken}} ...@@ -19,16 +19,6 @@ Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
"staffId":89,
"staffName":"7kltos",
"deptId":609,
"deptName":"6476z6",
"entryTime":"1680796800000",
"personalLeaveDays":0,
"compensatedLeaveDays":0,
"sickLeaveDays":0,
"annualLeaveDays":0,
"marriageLeaveDays":0,
"page":1, "page":1,
"size":10 "size":10
} }
...@@ -58,7 +48,7 @@ client.global.set("AttendanceVacationBalance_id", JSON.parse(response.body).data ...@@ -58,7 +48,7 @@ client.global.set("AttendanceVacationBalance_id", JSON.parse(response.body).data
%} %}
###员工假期余额信息查看 ###员工假期余额信息查看
GET {{baseUrl}}/attendance/vacation/balance/info?id={{AttendanceVacationBalance_id}} GET {{baseUrl}}/attendance/vacation/balance/info?id=1
Authorization: {{authToken}} Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
...@@ -47,7 +47,7 @@ client.global.set("AttendanceVacationRecord_id", JSON.parse(response.body).data. ...@@ -47,7 +47,7 @@ client.global.set("AttendanceVacationRecord_id", JSON.parse(response.body).data.
%} %}
###员工假期记录信息查看 ###员工假期记录信息查看
GET {{baseUrl}}/attendance/vacation/record/info?id={{AttendanceVacationRecord_id}} GET {{baseUrl}}/attendance/vacation/record/info?id=1
Authorization: {{authToken}} Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment