Commit 4cad9a2a authored by wenqy's avatar wenqy

考勤模块提交

parent 56b22778
......@@ -63,4 +63,4 @@ public enum ErrorStatusEnum {
}
return resultMap;
}
}
\ No newline at end of file
}
......@@ -3,6 +3,8 @@ package com.mortals.xhx.module.attendance.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
......@@ -28,6 +30,8 @@ public class AttendanceClassDetailEntity extends AttendanceClassDetailVo {
/**
* 上班打卡时间
*/
@JsonFormat(pattern = "HH:mm")
@JSONField(format = "HH:mm")
private Date goWorkDate;
/**
* 上班打卡前时间段,单位分钟
......@@ -40,6 +44,8 @@ public class AttendanceClassDetailEntity extends AttendanceClassDetailVo {
/**
* 下班打卡时间
*/
@JsonFormat(pattern = "HH:mm")
@JSONField(format = "HH:mm")
private Date offWorkDate;
/**
* 下班打卡前时间段,单位分钟
......@@ -237,4 +243,4 @@ public class AttendanceClassDetailEntity extends AttendanceClassDetailVo {
this.remark = "";
}
}
\ No newline at end of file
}
......@@ -8,170 +8,188 @@ import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.vo.AttendanceRecordDetailVo;
/**
* 考勤打卡记录详细信息实体对象
*
* @author zxfei
* @date 2023-04-07
*/
* 考勤打卡记录详细信息实体对象
*
* @author zxfei
* @date 2023-04-09
*/
public class AttendanceRecordDetailEntity extends AttendanceRecordDetailVo {
private static final long serialVersionUID = 1L;
/**
* 考勤记录ID
*/
* 考勤记录ID
*/
private Long recordId;
/**
* 班次ID
*/
* 班次ID
*/
private Long shiftsId;
/**
* 班次名称
*/
* 班次名称
*/
private String shiftsName;
/**
* 上班打卡时间
*/
* 上班打卡时间
*/
private Date goWorkDate;
/**
* 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
*/
* 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
*/
private Integer goWorkResult;
/**
* 下班打卡时间
*/
* 下班打卡时间
*/
private Date offWorkDate;
/**
* 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
*/
* 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
*/
private Integer offWorkResult;
/**
* 备注
*/
* 备注
*/
private String remark;
/**
* 排序字段
*/
private Integer orderNum;
public AttendanceRecordDetailEntity(){}
/**
* 获取 考勤记录ID
* @return Long
*/
* 获取 考勤记录ID
* @return Long
*/
public Long getRecordId(){
return recordId;
}
/**
* 设置 考勤记录ID
* @param recordId
*/
* 设置 考勤记录ID
* @param recordId
*/
public void setRecordId(Long recordId){
this.recordId = recordId;
}
/**
* 获取 班次ID
* @return Long
*/
* 获取 班次ID
* @return Long
*/
public Long getShiftsId(){
return shiftsId;
}
/**
* 设置 班次ID
* @param shiftsId
*/
* 设置 班次ID
* @param shiftsId
*/
public void setShiftsId(Long shiftsId){
this.shiftsId = shiftsId;
}
/**
* 获取 班次名称
* @return String
*/
* 获取 班次名称
* @return String
*/
public String getShiftsName(){
return shiftsName;
}
/**
* 设置 班次名称
* @param shiftsName
*/
* 设置 班次名称
* @param shiftsName
*/
public void setShiftsName(String shiftsName){
this.shiftsName = shiftsName;
}
/**
* 获取 上班打卡时间
* @return Date
*/
* 获取 上班打卡时间
* @return Date
*/
public Date getGoWorkDate(){
return goWorkDate;
}
/**
* 设置 上班打卡时间
* @param goWorkDate
*/
* 设置 上班打卡时间
* @param goWorkDate
*/
public void setGoWorkDate(Date goWorkDate){
this.goWorkDate = goWorkDate;
}
/**
* 获取 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @return Integer
*/
* 获取 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @return Integer
*/
public Integer getGoWorkResult(){
return goWorkResult;
}
/**
* 设置 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @param goWorkResult
*/
* 设置 上班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @param goWorkResult
*/
public void setGoWorkResult(Integer goWorkResult){
this.goWorkResult = goWorkResult;
}
/**
* 获取 下班打卡时间
* @return Date
*/
* 获取 下班打卡时间
* @return Date
*/
public Date getOffWorkDate(){
return offWorkDate;
}
/**
* 设置 下班打卡时间
* @param offWorkDate
*/
* 设置 下班打卡时间
* @param offWorkDate
*/
public void setOffWorkDate(Date offWorkDate){
this.offWorkDate = offWorkDate;
}
/**
* 获取 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @return Integer
*/
* 获取 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @return Integer
*/
public Integer getOffWorkResult(){
return offWorkResult;
}
/**
* 设置 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @param offWorkResult
*/
* 设置 下班打卡结果(1.正常,2.请假,3.缺卡,4.迟到,5.早退)
* @param offWorkResult
*/
public void setOffWorkResult(Integer offWorkResult){
this.offWorkResult = offWorkResult;
}
/**
* 获取 备注
* @return String
*/
* 获取 备注
* @return String
*/
public String getRemark(){
return remark;
}
/**
* 设置 备注
* @param remark
*/
* 设置 备注
* @param remark
*/
public void setRemark(String remark){
this.remark = remark;
}
/**
* 获取 排序字段
* @return Integer
*/
public Integer getOrderNum(){
return orderNum;
}
/**
* 设置 排序字段
* @param orderNum
*/
public void setOrderNum(Integer orderNum){
this.orderNum = orderNum;
}
@Override
public int hashCode() {
return this.getId().hashCode();
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
......@@ -179,7 +197,7 @@ public class AttendanceRecordDetailEntity extends AttendanceRecordDetailVo {
if (obj instanceof AttendanceRecordDetailEntity) {
AttendanceRecordDetailEntity tmp = (AttendanceRecordDetailEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
return true;
}
}
return false;
......@@ -195,25 +213,28 @@ public class AttendanceRecordDetailEntity extends AttendanceRecordDetailVo {
sb.append(",offWorkDate:").append(getOffWorkDate());
sb.append(",offWorkResult:").append(getOffWorkResult());
sb.append(",remark:").append(getRemark());
sb.append(",orderNum:").append(getOrderNum());
return sb.toString();
}
public void initAttrValue(){
this.recordId = null;
this.recordId = null;
this.shiftsId = null;
this.shiftsId = null;
this.shiftsName = "";
this.shiftsName = "";
this.goWorkDate = null;
this.goWorkDate = null;
this.goWorkResult = null;
this.goWorkResult = null;
this.offWorkDate = null;
this.offWorkDate = null;
this.offWorkResult = null;
this.offWorkResult = null;
this.remark = "";
this.remark = "";
this.orderNum = 1;
}
}
\ No newline at end of file
}
......@@ -24,7 +24,7 @@ public class AttendanceRecordHikEntity extends AttendanceRecordHikVo {
/**
* 员工姓名
*/
@Excel(name = "员工姓名")
@Excel(name = "姓名")
private String staffName;
/**
* 工号
......@@ -70,7 +70,7 @@ public class AttendanceRecordHikEntity extends AttendanceRecordHikVo {
/**
* 考勤日期
*/
@Excel(name = "考勤日期", width = 30, dateFormat = "yyyy-MM-dd")
@Excel(name = "考勤时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date attendanceDate;
/**
* 考勤点名称
......@@ -372,4 +372,4 @@ public class AttendanceRecordHikEntity extends AttendanceRecordHikVo {
this.remark = "";
}
}
\ No newline at end of file
}
package com.mortals.xhx.module.attendance.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.AttendanceClassDetailEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -9,6 +11,16 @@ import java.util.List;
* @author zxfei
* @date 2023-04-08
*/
@Data
public class AttendanceClassDetailVo extends BaseEntityLong {
}
\ No newline at end of file
//2023-04-01
/** 开始 上班打卡时间 */
private String goWorkDateStart;
//2023-04-02
/** 结束 上班打卡时间 */
private String goWorkDateEnd;
}
package com.mortals.xhx.module.attendance.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.AttendanceGroupEntity;
import com.mortals.xhx.module.attendance.model.AttendanceGroupFixedworkEntity;
import com.mortals.xhx.module.attendance.model.AttendanceGroupFixedworkSpecialEntity;
import com.mortals.xhx.module.attendance.model.AttendanceGroupResponsibleEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -9,6 +14,19 @@ import java.util.List;
* @author zxfei
* @date 2023-04-08
*/
@Data
public class AttendanceGroupVo extends BaseEntityLong {
}
\ No newline at end of file
/**
* 考勤组班次实体类
*/
private AttendanceGroupFixedworkEntity attendanceGroupFixedworkEntity;
/**
* 考勤组固定班次特殊日期配置
*/
private List<AttendanceGroupFixedworkSpecialEntity> fixedworkSpecial;
private AttendanceGroupResponsibleEntity groupResponsibleEntity;
}
package com.mortals.xhx.module.attendance.model.vo;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.AttendanceRecordHikEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -9,6 +12,10 @@ import java.util.List;
* @author zxfei
* @date 2023-04-08
*/
@Data
public class AttendanceRecordHikVo extends BaseEntityLong {
}
\ No newline at end of file
@Excel(name = "所属组织")
private String orgName;
}
package com.mortals.xhx.module.attendance.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.attendance.model.AttendanceRecordDetailEntity;
import com.mortals.xhx.module.attendance.model.AttendanceRecordEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -9,6 +12,11 @@ import java.util.List;
* @author zxfei
* @date 2023-04-07
*/
@Data
public class AttendanceRecordVo extends BaseEntityLong {
}
\ No newline at end of file
private List<AttendanceGroupFixedworkSpecialVo> list;
private AttendanceRecordDetailEntity attendanceRecordDetailEntity;
}
package com.mortals.xhx.module.attendance.service.impl;
import com.mortals.framework.model.PageInfo;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
......@@ -14,6 +15,7 @@ import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
* AttendanceRecordService
......@@ -26,7 +28,23 @@ import java.util.List;
public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<AttendanceRecordDao, AttendanceRecordEntity, Long> implements AttendanceRecordService {
@Autowired
private AttendanceRecordDetailService attendanceRecordDetailService;
@Override
protected void findAfter(AttendanceRecordEntity params, PageInfo pageInfo, Context context, List<AttendanceRecordEntity> list) throws AppException {
list.stream().map(item->{
//chax
List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery().recordId(item.getId()));
item.setAttendanceRecordDetailList(attendanceRecordDetailEntities);
return item;
}).collect(Collectors.toList());
super.findAfter(params, pageInfo, context, list);
}
@Override
protected void saveAfter(AttendanceRecordEntity entity, Context context) throws AppException {
if(!ObjectUtils.isEmpty(entity.getAttendanceRecordDetailList())){
......@@ -66,4 +84,4 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda
attendanceRecordDetailService.removeList(attendanceRecordDetaillist,context);
super.removeAfter(ids, context, result);
}
}
\ No newline at end of file
}
package com.mortals.xhx.module.attendance.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.attendance.model.AttendanceClassDetailEntity;
import com.mortals.xhx.module.workman.model.WorkmanEntity;
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.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
......@@ -13,12 +18,10 @@ import com.mortals.xhx.module.attendance.model.AttendanceClassEntity;
import com.mortals.xhx.module.attendance.service.AttendanceClassService;
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.*;
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 +38,8 @@ public class AttendanceClassController extends BaseCRUDJsonBodyMappingController
@Autowired
private ParamService paramService;
@Autowired
private WorkmanService workmanService;
public AttendanceClassController(){
super.setModuleDesc( "考勤班次信息");
......@@ -42,8 +47,13 @@ public class AttendanceClassController extends BaseCRUDJsonBodyMappingController
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model,"workManId",workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(),y->y.getName(),(o,n)->n)));
super.init(model, context);
}
}
\ No newline at end of file
@Override
protected void saveBefore(AttendanceClassEntity entity, Map<String, Object> model, Context context) throws AppException {
entity.setClassResponsiblePersonName(workmanService.selectOne(new WorkmanQuery().id(entity.getClassResponsiblePersonId())).getName());
super.saveBefore(entity, model, context);
}
}
......@@ -46,4 +46,4 @@ public class AttendanceClassDetailController extends BaseCRUDJsonBodyMappingCont
}
}
\ No newline at end of file
}
package com.mortals.xhx.module.attendance.web;
import cn.hutool.core.stream.CollectorUtil;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.attendance.model.*;
import com.mortals.xhx.module.attendance.service.*;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.model.DeptTreeSelect;
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.web.bind.annotation.RequestMapping;
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.AttendanceGroupEntity;
import com.mortals.xhx.module.attendance.service.AttendanceGroupService;
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.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 +33,18 @@ public class AttendanceGroupController extends BaseCRUDJsonBodyMappingController
@Autowired
private ParamService paramService;
@Autowired
private WorkmanService workmanService;
@Autowired
private AttendanceClassService attendanceClassService;
@Autowired
private DeptService deptService;
@Autowired
private AttendanceGroupFixedworkService attendanceGroupFixedworkService;
@Autowired
private AttendanceGroupFixedworkSpecialService specialService;
@Autowired
private AttendanceGroupResponsibleService groupResponsibleService;
public AttendanceGroupController(){
super.setModuleDesc( "考勤组信息");
......@@ -44,8 +54,31 @@ public class AttendanceGroupController extends BaseCRUDJsonBodyMappingController
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("AttendanceGroup","type"));
this.addDict(model, "attendanceType", paramService.getParamBySecondOrganize("AttendanceGroup","attendanceType"));
List<DeptEntity> list = deptService.find(new DeptQuery());
List<DeptTreeSelect> treeSelects = deptService.buildDeptTreeSelect(list);
this.addDict(model,"deptId",treeSelects);
List<AttendanceClassEntity> attendanceClassEntities = attendanceClassService.find(new AttendanceClassQuery());
this.addDict(model,"classId",attendanceClassEntities);
this.addDict(model,"workMan",workmanService.find(new WorkmanQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(), y->y.getName(),(o, n)->n)));
super.init(model, context);
}
}
\ No newline at end of file
@Override
protected int saveAfter(AttendanceGroupEntity entity, Map<String, Object> model, Context context) throws AppException {
entity.getAttendanceGroupFixedworkEntity().setGroupId(entity.getId());
entity.getAttendanceGroupFixedworkEntity().setGroupName(entity.getGroupName());
AttendanceGroupFixedworkEntity save = attendanceGroupFixedworkService.save(entity.getAttendanceGroupFixedworkEntity());
List<AttendanceGroupFixedworkSpecialEntity> fixedworkSpecial = entity.getFixedworkSpecial();
if (fixedworkSpecial!=null && fixedworkSpecial.size()>0){
fixedworkSpecial.forEach(item->{
item.setFixedWorkId(save.getId());
});
}
specialService.save(fixedworkSpecial);
AttendanceGroupResponsibleEntity responsibleEntity = entity.getGroupResponsibleEntity();
responsibleEntity.setGroupId(entity.getId());
responsibleEntity.setGroupName(entity.getGroupName());
groupResponsibleService.save(responsibleEntity);
return super.saveAfter(entity, model, context);
}
}
......@@ -46,4 +46,5 @@ public class AttendanceRecordController extends BaseCRUDJsonBodyMappingControlle
}
}
\ No newline at end of file
}
......@@ -4,10 +4,12 @@ import java.util.List;
import java.util.ArrayList;
import com.mortals.xhx.module.dept.model.vo.DeptVo;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.mortals.xhx.module.staff.model.StaffEntity;
import lombok.Data;
import org.springframework.util.ObjectUtils;
import java.io.Serializable;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 部门信息前端映射树结构实体类
......@@ -35,12 +37,19 @@ public class DeptTreeSelect implements Serializable {
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<DeptTreeSelect> children;
/**
* 子节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private List<Map<String,Object>> personList;
public DeptTreeSelect(DeptEntity entity) {
this.id = entity.getId();
this.label = entity.getDeptName();
if(!ObjectUtils.isEmpty(entity.getChildren())){
this.children = entity.getChildren().stream().map(DeptTreeSelect::new).collect(Collectors.toList());
}
this.personList = entity.getPersonList();
}
}
\ No newline at end of file
}
package com.mortals.xhx.module.dept.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.staff.model.StaffEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 部门信息视图对象
*
......@@ -16,7 +19,7 @@ public class DeptVo extends BaseEntityLong {
/** 子部门信息 */
private List<DeptEntity> children = new ArrayList<>();
/** 子节点人员信息 */
private List<Map<String,Object>> personList = new ArrayList<>();
//成员数量
}
\ No newline at end of file
}
package com.mortals.xhx.module.dept.service.impl;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.StaffQuery;
import com.mortals.xhx.module.staff.service.StaffService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
......@@ -25,6 +29,9 @@ import java.util.stream.Collectors;
@Service("deptService")
public class DeptServiceImpl extends AbstractCRUDServiceImpl<DeptDao, DeptEntity, Long> implements DeptService {
@Autowired
private StaffService staffService;
@Override
protected void saveBefore(DeptEntity entity, Context context) throws AppException {
if(ObjectUtils.isEmpty(entity.getParentId())){
......@@ -129,7 +136,16 @@ public class DeptServiceImpl extends AbstractCRUDServiceImpl<DeptDao, DeptEntity
for (Iterator<DeptEntity> iterator = list.iterator(); iterator.hasNext(); ) {
DeptEntity deptEntity = iterator.next();
List<StaffEntity> staffEntities = staffService.find(new StaffQuery().deptId(deptEntity.getId()));
List<Map<String,Object>> personList = new ArrayList<>();
staffEntities.forEach(item->{
Map<String,Object> map= new HashMap<>();
map.put("staffId",item.getId());
map.put("staffName",item.getName());
map.put("deptId",item.getDeptId());
personList.add(map);
});
deptEntity.setPersonList(personList);
if (!tempList.contains(deptEntity.getParentId())) {
recursionFn(list, deptEntity);
returnList.add(deptEntity);
......@@ -198,4 +214,4 @@ public class DeptServiceImpl extends AbstractCRUDServiceImpl<DeptDao, DeptEntity
return dao.queryDeptParentId(deptId);
}
}
\ No newline at end of file
}
......@@ -42,4 +42,4 @@ public class JobController extends BaseCRUDJsonBodyMappingController<JobService,
super.doImportDataBefore(list, updateSupport, context);
}
}
\ No newline at end of file
}
......@@ -55,4 +55,11 @@ public class WorkmanController extends BaseCRUDJsonBodyMappingController<Workman
deptEntity.setWorkName(entity.getName());
return super.saveAfter(entity, model, context);
}
}
\ No newline at end of file
@Override
protected void saveBefore(WorkmanEntity entity, Map<String, Object> model, Context context) throws AppException {
DeptEntity deptEntity = deptService.selectOne(new DeptQuery().id(entity.getDeptId()));
entity.setDeptName(deptEntity.getDeptName());
super.saveBefore(entity, model, context);
}
}
......@@ -230,9 +230,10 @@ INSERT INTO `mortals_xhx_resource` VALUES (null, '考勤组信息-菜单管理-
-- ----------------------------
-- 考勤组信息参数 SQL
-- ----------------------------
INSERT INTO `mortals_xhx_param` VALUES (null, '类型', 'AttendanceGroup', 'type', '1', '固定班', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (null, '类型', 'AttendanceGroup', 'type', '1', '固定班', 1, 4, 0, 'type', NULL, NULL, NULL);
-- ----------------------------
-- 考勤班次信息菜单 SQL
-- ----------------------------
INSERT INTO `mortals_xhx_menu` VALUES (null, '考勤班次信息', '/attendance/class/list', 0, 1, 1, 0, 0,'',NULL, NULL, NULL, 0, 0, 1, NULL, NULL, NULL);
......@@ -569,4 +570,4 @@ INSERT INTO `mortals_xhx_param` VALUES (null, '请假类型', 'AttendanceVacatio
INSERT INTO `mortals_xhx_param` VALUES (null, '请假类型', 'AttendanceVacationRecord', 'type', '20', '调回单位', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (null, '请假类型', 'AttendanceVacationRecord', 'type', '21', '探亲假', 1, 4, 0, 'type', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (null, '增减类型', 'AttendanceVacationRecord', 'subAddType', '1', '增加', 1, 4, 0, 'subAddType', NULL, NULL, NULL);
INSERT INTO `mortals_xhx_param` VALUES (null, '增减类型', 'AttendanceVacationRecord', 'subAddType', '2', '扣除', 1, 4, 0, 'subAddType', NULL, NULL, NULL);
\ No newline at end of file
INSERT INTO `mortals_xhx_param` VALUES (null, '增减类型', 'AttendanceVacationRecord', 'subAddType', '2', '扣除', 1, 4, 0, 'subAddType', NULL, NULL, NULL);
......@@ -329,6 +329,7 @@ PRIMARY KEY (`id`)
-- ----------------------------
-- 请假记录信息表
-- ----------------------------
......
......@@ -6925,7 +6925,7 @@ data|object|数据对象
&emsp;&emsp;groupName|String|考勤组名称
&emsp;&emsp;personNum|Integer|人数
&emsp;&emsp;responsiblePerson|String|负责人
&emsp;&emsp;type|Integer|类型(1.固定班)
&emsp;&emsp;type|Integer|类型(1.固定班)
&emsp;&emsp;attendanceTime|Integer|考勤时间
&emsp;&emsp;remark|String|备注
&emsp;&emsp;createUserId|Long|创建用户
......@@ -6975,7 +6975,7 @@ data|object|数据对象
&emsp;groupName|String|考勤组名称
&emsp;personNum|Integer|人数
&emsp;responsiblePerson|String|负责人
&emsp;type|Integer|类型(1.固定班)
&emsp;type|Integer|类型(1.固定班)
&emsp;attendanceTime|Integer|考勤时间
&emsp;remark|String|备注
&emsp;createUserId|Long|创建用户
......@@ -7022,7 +7022,7 @@ dict|object|字典对象
groupName|String|否|考勤组名称
personNum|Integer|否|人数
responsiblePerson|String|否|负责人
type|Integer|否|类型(1.固定班)
type|Integer|否|类型(1.固定班)
attendanceTime|Integer|否|考勤时间
remark|String|否|备注
......@@ -7051,7 +7051,7 @@ data|object|数据对象
&emsp;&emsp;groupName|String|考勤组名称
&emsp;&emsp;personNum|Integer|人数
&emsp;&emsp;responsiblePerson|String|负责人
&emsp;&emsp;type|Integer|类型(1.固定班)
&emsp;&emsp;type|Integer|类型(1.固定班)
&emsp;&emsp;attendanceTime|Integer|考勤时间
&emsp;&emsp;remark|String|备注
&emsp;&emsp;createUserId|Long|创建用户
......@@ -10707,7 +10707,7 @@ msg|String|消息|-
### type
字典参数key|字典参数值|其它
:---|:---|:---
1|固定班|-
1|固定班|-
### leaveType
字典参数key|字典参数值|其它
:---|:---|:---
......
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