Commit dbc7755d authored by 赵啸非's avatar 赵啸非

修改核查状态

parent 04c44aa9
......@@ -31,7 +31,7 @@ export default {
<i style="font-size:16px;color:#409EFF" class={data.icon}></i>
<span style="padding-left: 2px;font-size:14px">{node.label}</span>
<span style="padding-left: 2px;font-size:14px;margin-left:20px">
({data.personList?data.personList.length:0})
({data.personNum?data.personNum:0})
</span>
</span>
)
......@@ -43,12 +43,6 @@ export default {
return;
}
resolve(data.result);
// this.$post("/area/getListByParentId", {
// parentId: node.data.id,
// }).then(({ data }) => {
// resolve(data.result);
// });
},
refreshNodeBy(id) {
......@@ -65,6 +59,7 @@ export default {
treeProps: {
id: "id",
label: "label",
personNum: "personNum",
areaCode:"areaCode",
type: "type",
isLeaf: "isLeaf",
......
......@@ -297,7 +297,7 @@
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "staffName"},
{label: "工号", prop: "workNum"},
// {label: "部门", prop: "deptName"},
{label: "部门", prop: "deptName"},
// {label: "考勤组", prop: "attendanceGroupName"},
// {label: "职位", prop: "positionName"},
// {label: "班次", prop: "shiftsName"},
......
......@@ -254,7 +254,6 @@ export default {
},
handleNodeClick(node) {
console.log(node, 123123);
this.currentNode = node;
this.query = { deptId: node.id };
this.getData();
......
......@@ -18,8 +18,8 @@ module.exports = {
proxy: {
'/attendance': {
//target: 'http://192.168.0.98:11039',
target: 'http://112.19.80.237:11039',
// target: 'http://localhost:17500',
//target: 'http://112.19.80.237:11039',
target: 'http://localhost:17500',
changeOrigin: true,
secure: false,
cookieDomainRewrite: 'localhost',
......
......@@ -214,7 +214,6 @@ public class TestController {
deptEntity.setPersonNum(count.intValue());
deptService.update(deptEntity);
}
});
......
package com.mortals.xhx.common.utils;
import cn.hutool.core.util.ReflectUtil;
import com.mortals.xhx.common.code.AuditStatusEnum;
import com.mortals.xhx.common.code.CheckResultAddEnum;
import com.mortals.xhx.common.code.CheckResultSubEnum;
import com.mortals.xhx.common.code.SubAddTypeEnum;
public class AuditUtil {
public static void audit(Object obj) {
String checkResult = (String) ReflectUtil.getFieldValue(obj, "checkResult");
Integer subAddType = (Integer) ReflectUtil.getFieldValue(obj, "subAddType");
if (SubAddTypeEnum.增加.getValue() == subAddType) {
if (CheckResultAddEnum.核查不加分.getValue().equals(checkResult)) {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.拒绝.getValue());
} else if (CheckResultAddEnum.核查加分.getValue().equals(checkResult)) {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.通过.getValue());
} else {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.通过.getValue());
}
} else if (SubAddTypeEnum.扣除.getValue() == subAddType) {
if (CheckResultSubEnum.核查不扣分.getValue().equals(checkResult)) {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.拒绝.getValue());
} else if (CheckResultSubEnum.核查扣分.getValue().equals(checkResult)) {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.通过.getValue());
} else {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.通过.getValue());
}
} else {
ReflectUtil.setFieldValue(obj, "auditStatus", AuditStatusEnum.通过.getValue());
}
}
}
......@@ -51,7 +51,7 @@ public class SyncDoorsEventAfterTaskImpl implements ITaskExcuteService {
public void excuteTask(ITask task) throws AppException {
syncDoorEvents();
calculateAttendByDay();
//calculateAttendByDay();
}
private void calculateAttendByDay() {
......
......@@ -51,7 +51,7 @@ public class SyncDoorsEventTaskImpl implements ITaskExcuteService {
public void excuteTask(ITask task) throws AppException {
syncDoorEvents();
calculateAttendByDay();
//calculateAttendByDay();
}
private void calculateAttendByDay() {
......@@ -87,7 +87,7 @@ public class SyncDoorsEventTaskImpl implements ITaskExcuteService {
doorEventReq.setEventTypes(eventTypes);
// 获取当天的开始时间
//Date todayStart = DateUtil.offsetHour(new Date(), -5).toJdkDate();
Date todayStart = DateUtil.beginOfDay(new Date());
Date todayStart = DateUtil.beginOfDay(DateUtil.offsetDay(new Date(),-1));
// 获取当天的结束时间
Date todayEnd = DateUtil.endOfDay(new Date());
doorEventReq.setStartTime(todayStart);
......
package com.mortals.xhx.module.attendance.service.impl;
import cn.hutool.core.date.DateUtil;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.module.attendance.model.AttendanceClassDetailEntity;
import com.mortals.xhx.module.attendance.model.AttendanceClassEntity;
import com.mortals.xhx.module.attendance.service.AttendanceClassDetailService;
import com.mortals.xhx.module.attendance.service.AttendanceClassService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
......@@ -6,14 +14,54 @@ import com.mortals.framework.model.Context;
import com.mortals.xhx.module.attendance.dao.AttendanceRecordErrorDao;
import com.mortals.xhx.module.attendance.model.AttendanceRecordErrorEntity;
import com.mortals.xhx.module.attendance.service.AttendanceRecordErrorService;
import org.springframework.util.ObjectUtils;
import java.util.List;
/**
* AttendanceRecordErrorService
* 考勤打卡记录异常信息 service实现
*
* @author zxfei
* @date 2023-04-08
*/
* AttendanceRecordErrorService
* 考勤打卡记录异常信息 service实现
*
* @author zxfei
* @date 2023-04-08
*/
@Service("attendanceRecordErrorService")
public class AttendanceRecordErrorServiceImpl extends AbstractCRUDServiceImpl<AttendanceRecordErrorDao, AttendanceRecordErrorEntity, Long> implements AttendanceRecordErrorService {
@Autowired
private AttendanceClassDetailService classDetailService;
@Autowired
private AttendanceClassService attendanceClassService;
@Override
protected void findAfter(AttendanceRecordErrorEntity params, PageInfo pageInfo, Context context, List<AttendanceRecordErrorEntity> list) throws AppException {
list.forEach(item -> {
AttendanceClassEntity attendanceClassEntity = attendanceClassService.get(item.getShiftsId(), context);
if(!ObjectUtils.isEmpty(attendanceClassEntity)&&!ObjectUtils.isEmpty(attendanceClassEntity.getAttendanceClassDetailList())){
for (AttendanceClassDetailEntity attendanceClassDetailEntity : attendanceClassEntity.getAttendanceClassDetailList()) {
if (!ObjectUtils.isEmpty(attendanceClassDetailEntity)) {
String str = DateUtil.formatTime(item.getGoOffDateTime());
String goStr = DateUtil.formatTime(attendanceClassDetailEntity.getGoWorkDate());
String offStr = DateUtil.formatTime(attendanceClassDetailEntity.getOffWorkDate());
if (!ObjectUtils.isEmpty(str)&&str.equals(goStr)) {
item.setGoOrOff("上班");
}
if (!ObjectUtils.isEmpty(str)&&str.equals(offStr)) {
item.setGoOrOff("下班");
}
if (ObjectUtils.isEmpty(item.getGoOrOff())) {
item.setGoOrOff("上班");
}
}
}
}else {
item.setGoOrOff("上班");
}
});
}
}
\ No newline at end of file
......@@ -104,7 +104,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
attendanceRecordEntity.setPositionName(item.getPositionName());
attendanceRecordEntity.setWorkNum(item.getWorkNum());
attendanceRecordEntity.setAttendanceDate(item.getAttendanceDate());
attendanceRecordEntity.setCreateTime(new Date());
attendanceRecordEntity.setCreateTime(item.getAttendanceDate());
attendanceRecordEntity.setCreateUserId(this.getContextUserId(context));
//获取考勤打卡时间
Date attendanceDate = item.getAttendanceDate();
......@@ -128,28 +128,96 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
}
}
}
if (!ObjectUtils.isEmpty(detailEntityList)) {
AttendanceClassDetailEntity attendanceClassDetailEntity = attendanceClassDetailService.get(detailEntityList.get(0).getShiftsId(), context);
attendanceRecordEntity.setShiftsId(attendanceClassDetailEntity == null ? 0L : attendanceClassDetailEntity.getClassId());
attendanceRecordEntity.setShiftsName(attendanceClassDetailEntity == null ? "" : attendanceClassDetailEntity.getClassName());
}
//生成异常记录
genErrorAttendRecord(context, dateStr, attendanceRecordEntity, detailEntityList);
if (!ObjectUtils.isEmpty(detailEntityList)) {
attendanceRecordEntity.setAttendanceRecordDetailList(detailEntityList);
//判断签到 只要存在一次正常打卡详细记录 就判断签到
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (GoWorkResultEnum.正常.getValue() == detailEntity.getGoWorkResult() || GoWorkResultEnum.迟到.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setSignInResult(YesNoEnum.YES.getValue());
break;
}
}
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (OffWorkResultEnum.正常.getValue() == detailEntity.getOffWorkResult() || OffWorkResultEnum.早退.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setSignOutResult(YesNoEnum.YES.getValue());
break;
}
}
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
break;
}
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
break;
}
}
if (YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignInResult() && YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignOutResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.YES.getValue());
}
attendanceRecordEntity.setAttendType("现场打卡");
//判断是否存在记录 如果存在 则更新 维度 staffId attendanceDate shiftsId attendanceGroupId
AttendanceRecordQuery query = new AttendanceRecordQuery();
query.setStaffId(attendanceRecordEntity.getStaffId());
query.setShiftsId(attendanceRecordEntity.getShiftsId());
query.setAttendanceGroupId(attendanceRecordEntity.getAttendanceGroupId());
query.setAttendanceDate(attendanceRecordEntity.getAttendanceDate());
AttendanceRecordEntity recordEntity = attendanceRecordService.selectOne(query);
if (!ObjectUtils.isEmpty(recordEntity)) {
attendanceRecordEntity.setId(recordEntity.getId());
attendanceRecordEntity.setUpdateTime(new Date());
attendanceRecordEntity.setUpdateUserId(this.getContextUserId(context));
attendanceRecordService.update(attendanceRecordEntity, context);
} else {
attendanceRecordService.save(attendanceRecordEntity, context);
}
}
}
}
}
private void genErrorAttendRecord(Context context, String dateStr, AttendanceRecordEntity attendanceRecordEntity, List<AttendanceRecordDetailEntity> detailEntityList) {
//处理异常打卡,所以异常打卡的 都新增一条记录
List<AttendanceRecordErrorEntity> errorEntityList = new ArrayList<>();
for (AttendanceRecordDetailEntity recordDetailEntity : detailEntityList) {
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//SimpleDateFormat sdft = new SimpleDateFormat("HH:mm:ss");
Integer goWorkResult = recordDetailEntity.getGoWorkResult();
Integer offWorkResult = recordDetailEntity.getOffWorkResult();
//判断上班
if (GoWorkResultEnum.正常.getValue() != goWorkResult) {
AttendanceClassDetailEntity attendanceClassDetailEntity = attendanceClassDetailService.get(recordDetailEntity.getShiftsId());
if (ObjectUtils.isEmpty(attendanceClassDetailEntity)) continue;
AttendanceRecordErrorEntity errorEntity = new AttendanceRecordErrorEntity();
errorEntity.initAttrValue();
BeanUtils.copyProperties(attendanceRecordEntity, errorEntity, new String[]{"id"});
errorEntity.setGoOffDateTime(errorEntity.getErrorDateTime());
errorEntity.setProcessStatus(YesNoEnum.NO.getValue());
errorEntity.setCreateTime(new Date());
errorEntity.setCreateUserId(this.getContextUserId(context));
Date goWorkDate = attendanceClassDetailService.selectOne(new AttendanceClassDetailQuery().classId(recordDetailEntity.getShiftsId())).getGoWorkDate();
//判断上班
if (GoWorkResultEnum.正常.getValue() != goWorkResult) {
Date goWorkDate = attendanceClassDetailEntity.getGoWorkDate();
errorEntity.setGoOffDateTime(goWorkDate);
if (!ObjectUtils.isEmpty(recordDetailEntity.getGoWorkDate())) {
errorEntity.setErrorDateTime(recordDetailEntity.getGoWorkDate());
errorEntity.setActualAttendanceDateTime(recordDetailEntity.getGoWorkDate());
} else {
errorEntity.setErrorDateTime(goWorkDate);
errorEntity.setErrorDateTime(DateUtil.parseDateTime(dateStr + " " + DateUtil.formatTime(goWorkDate)).toJdkDate());
}
if (GoWorkResultEnum.早退.getValue() == recordDetailEntity.getGoWorkResult()) {
errorEntity.setErrorStatus(ErrorStatusEnum.早退.getValue());
}
......@@ -159,25 +227,19 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
if (GoWorkResultEnum.缺卡.getValue() == recordDetailEntity.getGoWorkResult()) {
errorEntity.setErrorStatus(ErrorStatusEnum.缺卡.getValue());
}
errorEntity.setProcessStatus(YesNoEnum.NO.getValue());
errorEntity.setCreateTime(new Date());
errorEntity.setCreateUserId(this.getContextUserId(context));
errorEntityList.add(errorEntity);
}
//判断下班
if (OffWorkResultEnum.正常.getValue() != offWorkResult) {
AttendanceRecordErrorEntity errorEntity = new AttendanceRecordErrorEntity();
errorEntity.initAttrValue();
BeanUtils.copyProperties(attendanceRecordEntity, errorEntity, new String[]{"id"});
/* Date offWorkDate = attendanceClassDetailService.selectOne(new AttendanceClassDetailQuery().classId(recordDetailEntity.getShiftsId())).getOffWorkDate();
Date offWorkDate = attendanceClassDetailEntity.getOffWorkDate();
errorEntity.setGoOffDateTime(offWorkDate);
if (!ObjectUtils.isEmpty(recordDetailEntity.getGoWorkDate())) {
errorEntity.setErrorDateTime(recordDetailEntity.getGoWorkDate());
errorEntity.setActualAttendanceDateTime(recordDetailEntity.getGoWorkDate());
} else {
errorEntity.setErrorDateTime(offWorkDate);
}*/
errorEntity.setErrorDateTime(DateUtil.parseDateTime(dateStr + " " + DateUtil.formatTime(offWorkDate)).toJdkDate());
}
if (OffWorkResultEnum.缺卡.getValue() == recordDetailEntity.getOffWorkResult()) {
errorEntity.setErrorStatus(ErrorStatusEnum.缺卡.getValue());
}
......@@ -187,74 +249,200 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
if (OffWorkResultEnum.迟到.getValue() == recordDetailEntity.getOffWorkResult()) {
errorEntity.setErrorStatus(ErrorStatusEnum.迟到.getValue());
}
errorEntity.setProcessStatus(YesNoEnum.NO.getValue());
errorEntity.setCreateTime(new Date());
errorEntity.setCreateUserId(this.getContextUserId(context));
errorEntityList.add(errorEntity);
}
}
if (!ObjectUtils.isEmpty(detailEntityList)) {
if (!ObjectUtils.isEmpty(detailEntityList)) {
if (!ObjectUtils.isEmpty(errorEntityList)) {
errorService.save(errorEntityList, context);
}
attendanceRecordEntity.setShiftsName(detailEntityList.get(0).getShiftsName());
attendanceRecordEntity.setShiftsId(detailEntityList.get(0).getShiftsId());
attendanceRecordEntity.setAttendanceRecordDetailList(detailEntityList);
}
//判断签到 只要存在一次正常打卡详细记录 就判断签到
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (GoWorkResultEnum.正常.getValue() == detailEntity.getGoWorkResult() || GoWorkResultEnum.迟到.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setSignInResult(YesNoEnum.YES.getValue());
break;
private void checkAttendGroupByOne(AttendanceRecordEntity attendanceRecordEntity, List<AttendanceRecordDetailEntity> detailEntityList, Date attendanceDate, AttendanceGroupStaffEntity attendanceGroupStaffEntity, Context context) {
//查询考勤组
AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(attendanceGroupStaffEntity.getGroupId(), context);
attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId());
attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName());
//查询考勤组详细信息获取班次 todo 默认固定班次 还有自由 与排班制
AttendanceGroupFixedworkEntity attendanceGroupFixedworkEntity = attendanceGroupFixedworkService.selectOne(new AttendanceGroupFixedworkQuery()
.groupId(attendanceGroupEntity.getId()));
//判断当前考勤日期为周几
String week = this.getWeek(attendanceDate);
//log.info("week:{}", week);
//通过考勤日期的星期拿到班次id.
if (ObjectUtils.isEmpty(attendanceGroupFixedworkEntity)) {
log.info("attendanceGroupFixedworkEntity is null ! groupId:{}", attendanceGroupEntity.getId());
return;
}
//获取当前日期的详细班次
Long weekClassId = this.getWeekClassId(attendanceGroupFixedworkEntity, week);
//log.info("weekClassId:{}", weekClassId);
//weekClassId为-1 则不在考勤
if (weekClassId == -1L) {
//跳过本次循环
return;
}
//获取班次信息
AttendanceClassEntity attendanceClassEntity = attendanceClassService.get(weekClassId);
if (ObjectUtils.isEmpty(attendanceClassEntity)) {
log.info("attendanceClassEntity is null ,weekClassId:{}", weekClassId);
return;
}
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (OffWorkResultEnum.正常.getValue() == detailEntity.getOffWorkResult() || OffWorkResultEnum.早退.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setSignOutResult(YesNoEnum.YES.getValue());
break;
//List<AttendanceClassDetailEntity> attendanceClassDetailEntities = attendanceClassDetailService.find(new AttendanceClassDetailQuery().classId(attendanceClassEntity.getId()));
//获取当前班的多个班次,一个班次为一个上下班时间段
List<AttendanceClassDetailEntity> attendanceClassDetailEntities = attendanceClassEntity.getAttendanceClassDetailList();
Integer orderNum = 0;
//构造数据
if (ObjectUtils.isEmpty(detailEntityList)) {
//遍历班次 构建详细考勤数据
for (AttendanceClassDetailEntity classDetailEntity : attendanceClassDetailEntities) {
orderNum++;
AttendanceRecordDetailEntity recordDetailEntity = new AttendanceRecordDetailEntity();
recordDetailEntity.setShiftsId(classDetailEntity.getId());
recordDetailEntity.setShiftsName(classDetailEntity.getClassName());
recordDetailEntity.setGoWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOffWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOrderNum(orderNum);
detailEntityList.add(recordDetailEntity);
}
}
for (AttendanceClassDetailEntity classDetail : attendanceClassDetailEntities) {
//计算区间范围
//上班打卡前时间
Date goWorkDateBefore = DateUtil.offsetMinute(classDetail.getGoWorkDate(), -classDetail.getGoWorkDateBefore());
//上班打卡后时间
Date goWorkDateAfter = DateUtil.offsetMinute(classDetail.getGoWorkDate(), classDetail.getGoWorkDateAfter());
// 下班打卡前时间
Date offWorkDateBefore = DateUtil.offsetMinute(classDetail.getOffWorkDate(), -classDetail.getOffWorkDateBefore());
//下班打卡后时间
Date offWorkDateAfter = DateUtil.offsetMinute(classDetail.getOffWorkDate(), classDetail.getOffWorkDateAfter());
//判断考勤时间是否在上班打卡区间内 true 在 false 不在 格式化时间
//String currDate = DateUtil.formatTime(attendanceDate);
Date curDateTime = DateUtil.parseTime(DateUtil.formatTime(attendanceDate)).toJdkDate();
boolean goInTime = DateUtil.isIn(curDateTime, goWorkDateBefore, goWorkDateAfter);
//判断考勤时间是否在下班打卡区间内
boolean offInTime = DateUtil.isIn(curDateTime, offWorkDateBefore, offWorkDateAfter);
if (goInTime == false && offInTime == false) {
log.info("考勤时间不在上班区间与下班区间中,不做处理!attendDate:{}", DateUtil.formatDateTime(attendanceDate));
continue;
}
if (goInTime) {
//如果是上班打卡区间范围,判断是否迟到
boolean inTime = DateUtil.isIn(curDateTime, goWorkDateBefore, classDetail.getGoWorkDate());
if (inTime) {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getId()) {
attendanceRecordDetailEntity.setGoWorkResult(GoWorkResultEnum.正常.getValue());
attendanceRecordDetailEntity.setGoWorkDate(attendanceDate);
}
}
} else {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getId()) {
attendanceRecordDetailEntity.setGoWorkResult(GoWorkResultEnum.迟到.getValue());
attendanceRecordDetailEntity.setGoWorkDate(attendanceDate);
}
}
}
}
if (offInTime) {
boolean inTime = DateUtil.isIn(curDateTime, classDetail.getOffWorkDate(), offWorkDateAfter);
if (inTime) {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getId()) {
attendanceRecordDetailEntity.setOffWorkResult(GoWorkResultEnum.正常.getValue());
attendanceRecordDetailEntity.setOffWorkDate(attendanceDate);
}
}
} else {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getId()) {
attendanceRecordDetailEntity.setOffWorkResult(GoWorkResultEnum.早退.getValue());
attendanceRecordDetailEntity.setOffWorkDate(attendanceDate);
}
}
}
}
}
}
for (AttendanceRecordDetailEntity detailEntity : detailEntityList) {
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
break;
public String getWeek(Date date) {
// Get the day of the week (1 = Sunday, 2 = Monday, ..., 7 = Saturday)
int dayOfWeek = DateUtil.dayOfWeek(date);
// Map the numeric day of the week to its corresponding Chinese name
String[] dayOfWeekNames = new String[]{
"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"
};
// Get the Chinese name of the day of the week
String dayOfWeekName = dayOfWeekNames[dayOfWeek - 1];
return dayOfWeekName;
}
if (OffWorkResultEnum.缺卡.getValue() == detailEntity.getOffWorkResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.NO.getValue());
/**
* 获取通过星期获取班次id 如果返参为-1 则不在考勤
*
* @return
*/
public Long getWeekClassId(AttendanceGroupFixedworkEntity attendanceGroupFixedworkEntity, String week) {
Long weekClassId = 0L;
switch (week) {
case "星期一":
if (attendanceGroupFixedworkEntity.getMonday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getMondayClassId();
break;
case "星期二":
if (attendanceGroupFixedworkEntity.getTuesday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getTuesdayClassId();
break;
case "星期三":
if (attendanceGroupFixedworkEntity.getWednesday() == 0) {
weekClassId = -1L;
return weekClassId;
}
if (YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignInResult() && YesNoEnum.YES.getValue() == attendanceRecordEntity.getSignOutResult()) {
attendanceRecordEntity.setPunchResult(YesNoEnum.YES.getValue());
weekClassId = attendanceGroupFixedworkEntity.getWednesdayClassId();
break;
case "星期四":
if (attendanceGroupFixedworkEntity.getThursday() == 0) {
weekClassId = -1L;
return weekClassId;
}
attendanceRecordEntity.setAttendType("现场打卡");
//判断是否存在记录 如果存在 则更新 维度 staffId attendanceDate shiftsId attendanceGroupId
AttendanceRecordQuery query = new AttendanceRecordQuery();
query.setStaffId(attendanceRecordEntity.getStaffId());
query.setShiftsId(attendanceRecordEntity.getShiftsId());
query.setAttendanceGroupId(attendanceRecordEntity.getAttendanceGroupId());
query.setAttendanceDate(attendanceRecordEntity.getAttendanceDate());
AttendanceRecordEntity recordEntity = attendanceRecordService.selectOne(query);
if (!ObjectUtils.isEmpty(recordEntity)) {
attendanceRecordEntity.setId(recordEntity.getId());
attendanceRecordEntity.setUpdateTime(new Date());
attendanceRecordEntity.setUpdateUserId(this.getContextUserId(context));
attendanceRecordService.update(attendanceRecordEntity, context);
} else {
attendanceRecordService.save(attendanceRecordEntity, context);
weekClassId = attendanceGroupFixedworkEntity.getThursdayClassId();
break;
case "星期五":
if (attendanceGroupFixedworkEntity.getFriday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getFridayClassId();
break;
case "星期六":
if (attendanceGroupFixedworkEntity.getSaturday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getSaturdayClassId();
break;
case "星期日":
if (attendanceGroupFixedworkEntity.getSunday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getSundayClassId();
break;
}
return weekClassId;
}
}
/* //map遍历.先把所有键取出来
Set<String> workNumSet = listMap.keySet();
//根据键取出value
......@@ -642,210 +830,3 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
}
}
}*/
\ No newline at end of file
}
private void checkAttendGroupByOne(AttendanceRecordEntity attendanceRecordEntity, List<AttendanceRecordDetailEntity> detailEntityList, Date attendanceDate, AttendanceGroupStaffEntity attendanceGroupStaffEntity, Context context) {
//查询考勤组
AttendanceGroupEntity attendanceGroupEntity = attendanceGroupService.get(attendanceGroupStaffEntity.getGroupId(), context);
attendanceRecordEntity.setAttendanceGroupId(attendanceGroupEntity == null ? 0L : attendanceGroupEntity.getId());
attendanceRecordEntity.setAttendanceGroupName(attendanceGroupEntity == null ? "" : attendanceGroupEntity.getGroupName());
//查询考勤组详细信息获取班次
AttendanceGroupFixedworkEntity attendanceGroupFixedworkEntity = attendanceGroupFixedworkService.selectOne(new AttendanceGroupFixedworkQuery()
.groupId(attendanceGroupEntity.getId()));
//判断当前考勤日期为周几
String week = this.getWeek(attendanceDate);
//log.info("week:{}", week);
//通过考勤日期的星期拿到班次id.
if (ObjectUtils.isEmpty(attendanceGroupFixedworkEntity)) {
log.info("attendanceGroupFixedworkEntity is null ! groupId:{}", attendanceGroupEntity.getId());
return;
}
Long weekClassId = this.getWeekClassId(attendanceGroupFixedworkEntity, week);
//log.info("weekClassId:{}", weekClassId);
//weekClassId为-1 则不在考勤
if (weekClassId == -1L) {
//跳过本次循环
return;
}
//获取班次信息
AttendanceClassEntity attendanceClassEntity = attendanceClassService.get(weekClassId);
if (ObjectUtils.isEmpty(attendanceClassEntity)) {
log.info("attendanceClassEntity is null ,weekClassId:{}", weekClassId);
return;
}
//获取班次详细信息
List<AttendanceClassDetailEntity> attendanceClassDetailEntities = attendanceClassDetailService.find(new AttendanceClassDetailQuery().classId(attendanceClassEntity.getId()));
Integer orderNum = 0;
//构造数据
if (ObjectUtils.isEmpty(detailEntityList)) {
for (AttendanceClassDetailEntity classDetailEntity : attendanceClassDetailEntities) {
orderNum++;
AttendanceRecordDetailEntity recordDetailEntity = new AttendanceRecordDetailEntity();
recordDetailEntity.setShiftsId(classDetailEntity.getId());
recordDetailEntity.setShiftsName(classDetailEntity.getClassName());
recordDetailEntity.setGoWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOffWorkResult(GoWorkResultEnum.缺卡.getValue());
recordDetailEntity.setOrderNum(orderNum);
detailEntityList.add(recordDetailEntity);
}
}
for (AttendanceClassDetailEntity classDetail : attendanceClassDetailEntities) {
//计算区间范围
//上班打卡前时间
Date goWorkDateBefore = DateUtil.offsetMinute(classDetail.getGoWorkDate(), -classDetail.getGoWorkDateBefore());
//上班打卡后时间
Date goWorkDateAfter = DateUtil.offsetMinute(classDetail.getGoWorkDate(), classDetail.getGoWorkDateAfter());
// 下班打卡前时间
Date offWorkDateBefore = DateUtil.offsetMinute(classDetail.getOffWorkDate(), -classDetail.getOffWorkDateBefore());
//下班打卡后时间
Date offWorkDateAfter = DateUtil.offsetMinute(classDetail.getOffWorkDate(), classDetail.getOffWorkDateAfter());
//判断考勤时间是否在上班打卡区间内 true 在 false 不在
boolean goInTime = DateUtil.isIn(attendanceDate, goWorkDateBefore, goWorkDateAfter);
//判断考勤时间是否在下班打卡区间内
boolean offInTime = DateUtil.isIn(attendanceDate, offWorkDateBefore, offWorkDateAfter);
if (goInTime == false && offInTime == false) {
log.info("考勤时间不在上班区间与下班区间中,不做处理!attendDate:{}", DateUtil.formatDateTime(attendanceDate));
continue;
}
if (goInTime) {
//如果是上班打卡区间范围,判断是否迟到
boolean inTime = DateUtil.isIn(attendanceDate, goWorkDateBefore, classDetail.getGoWorkDate());
if (inTime) {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getClassId()) {
attendanceRecordDetailEntity.setGoWorkResult(GoWorkResultEnum.正常.getValue());
attendanceRecordDetailEntity.setGoWorkDate(attendanceDate);
}
}
} else {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId() == classDetail.getClassId()) {
attendanceRecordDetailEntity.setGoWorkResult(GoWorkResultEnum.迟到.getValue());
attendanceRecordDetailEntity.setGoWorkDate(attendanceDate);
}
}
}
}
if (offInTime) {
boolean inTime = DateUtil.isIn(attendanceDate, classDetail.getOffWorkDate(), offWorkDateAfter);
if (inTime) {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId().longValue() == classDetail.getId().longValue()) {
attendanceRecordDetailEntity.setGoWorkResult(GoWorkResultEnum.正常.getValue());
attendanceRecordDetailEntity.setGoWorkDate(attendanceDate);
}
}
} else {
for (AttendanceRecordDetailEntity attendanceRecordDetailEntity : detailEntityList) {
if (attendanceRecordDetailEntity.getShiftsId().longValue() == classDetail.getId().longValue()) {
attendanceRecordDetailEntity.setOffWorkResult(GoWorkResultEnum.早退.getValue());
attendanceRecordDetailEntity.setOffWorkDate(attendanceDate);
}
}
}
}
}
}
public String getWeek(Date date) {
// Get the day of the week (1 = Sunday, 2 = Monday, ..., 7 = Saturday)
int dayOfWeek = DateUtil.dayOfWeek(date);
// Map the numeric day of the week to its corresponding Chinese name
String[] dayOfWeekNames = new String[]{
"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"
};
// Get the Chinese name of the day of the week
String dayOfWeekName = dayOfWeekNames[dayOfWeek - 1];
return dayOfWeekName;
}
/**
* 获取通过星期获取班次id 如果返参为-1 则不在考勤
*
* @return
*/
public Long getWeekClassId(AttendanceGroupFixedworkEntity attendanceGroupFixedworkEntity, String week) {
Long weekClassId = 0L;
switch (week) {
case "星期一":
if (attendanceGroupFixedworkEntity.getMonday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getMondayClassId();
break;
case "星期二":
if (attendanceGroupFixedworkEntity.getTuesday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getTuesdayClassId();
break;
case "星期三":
if (attendanceGroupFixedworkEntity.getWednesday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getWednesdayClassId();
break;
case "星期四":
if (attendanceGroupFixedworkEntity.getThursday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getThursdayClassId();
break;
case "星期五":
if (attendanceGroupFixedworkEntity.getFriday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getFridayClassId();
break;
case "星期六":
if (attendanceGroupFixedworkEntity.getSaturday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getSaturdayClassId();
break;
case "星期日":
if (attendanceGroupFixedworkEntity.getSunday() == 0) {
weekClassId = -1L;
return weekClassId;
}
weekClassId = attendanceGroupFixedworkEntity.getSundayClassId();
break;
}
return weekClassId;
}
/**
* @param nowTime 当前时间
* @param startTime 开始时间
* @param endTime 结束时间
* @return 判断当前时间在时间区间内
*/
public static boolean isInTime(Date nowTime, Date startTime, Date endTime) {
if (nowTime.getTime() == startTime.getTime()
|| nowTime.getTime() == endTime.getTime()) {
return true;
}
Calendar date = Calendar.getInstance();
date.setTime(nowTime);
Calendar begin = Calendar.getInstance();
begin.setTime(startTime);
Calendar end = Calendar.getInstance();
end.setTime(endTime);
if (date.after(begin) && date.before(end)) {
return true;
} else {
return false;
}
}
}
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.AttendanceClassEntity;
import com.mortals.xhx.module.attendance.service.AttendanceClassService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
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.AttendanceClassDetailEntity;
import com.mortals.xhx.module.attendance.service.AttendanceClassDetailService;
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.*;
/**
*
* 考勤班次详细信息
*
* @author zxfei
* @date 2023-04-08
*/
* 考勤班次详细信息
*
* @author zxfei
* @date 2023-04-08
*/
@RestController
@RequestMapping("attendance/class/detail")
public class AttendanceClassDetailController extends BaseCRUDJsonBodyMappingController<AttendanceClassDetailService,AttendanceClassDetailEntity,Long> {
public class AttendanceClassDetailController extends BaseCRUDJsonBodyMappingController<AttendanceClassDetailService, AttendanceClassDetailEntity, Long> {
@Autowired
private ParamService paramService;
@Autowired
private AttendanceClassService classService;
public AttendanceClassDetailController(){
super.setModuleDesc( "考勤班次详细信息");
public AttendanceClassDetailController() {
super.setModuleDesc("考勤班次详细信息");
}
@Override
......@@ -46,4 +61,13 @@ public class AttendanceClassDetailController extends BaseCRUDJsonBodyMappingCont
}
@Override
protected void saveBefore(AttendanceClassDetailEntity entity, Map<String, Object> model, Context context) throws AppException {
if (!ObjectUtils.isEmpty(entity.getClassId())) {
AttendanceClassEntity classEntity = classService.get(entity.getClassId(), context);
entity.setClassName(classEntity == null ? "" : classEntity.getClassName());
}
}
}
......@@ -3,6 +3,9 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
......@@ -12,7 +15,7 @@ import lombok.Data;
* 考勤绩效记录核查信息实体对象
*
* @author zxfei
* @date 2023-07-17
* @date 2023-07-27
*/
@Data
public class CheckAttendRecordEntity extends CheckAttendRecordVo {
......@@ -71,7 +74,7 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
/**
* 增减类型(1.增加,2.扣除)
*/
@Excel(name = "增减类型", readConverterExp = "1=增加,2.扣除")
@Excel(name = "增减类型", readConverterExp = "1=增加,2=扣除")
private Integer subAddType;
/**
* 扣分或增加分值
......@@ -116,7 +119,7 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
/**
* 核查结果(1.加分或扣分,2.不扣分)
*/
@Excel(name = "核查结果", readConverterExp = "加分或扣分=加分或扣分,不扣分=不扣分")
@Excel(name = "核查结果", readConverterExp = "1=加分或扣分,2=不扣分")
private String checkResult;
/**
* 处理状态(1.未处理,2.已处理)
......@@ -144,9 +147,9 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
*/
private Long categoryId;
/**
* 种类名称
* 规则名称
*/
@Excel(name = "种类名称")
@Excel(name = "规则名称")
private String categoryName;
/**
* 扣分人员
......@@ -163,6 +166,10 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
*/
@Excel(name = "窗口编号")
private String windowNum;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -180,67 +187,37 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.deptId = 0L;
this.deptName = "";
this.attendanceGroupId = 0L;
this.attendanceGroupName = "";
this.attendanceDate = null;
this.attendanceDate = new Date();
this.ruleId = 0L;
this.ruleName = "";
this.subAddType = 1;
this.score = BigDecimal.valueOf(0.00);
this.score = BigDecimal.ZERO;
this.goOffTimeStr = "";
this.errorTime = null;
this.actualAttendTime = null;
this.errorTime = new Date();
this.actualAttendTime = new Date();
this.errorResult = "";
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.subMethod = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = 0L;
this.categoryName = "";
this.deductPerson = "";
this.deductTime = new Date();
this.windowNum = "";
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -8,7 +8,7 @@ import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
* 考勤绩效记录核查信息查询对象
*
* @author zxfei
* @date 2023-07-16
* @date 2023-07-27
*/
public class CheckAttendRecordQuery extends CheckAttendRecordEntity {
/** 开始 序号,主键,自增长 */
......@@ -328,6 +328,21 @@ public class CheckAttendRecordQuery extends CheckAttendRecordEntity {
/** 窗口编号排除列表 */
private List <String> windowNumNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckAttendRecordQuery> orConditionList;
......@@ -2125,6 +2140,87 @@ public class CheckAttendRecordQuery extends CheckAttendRecordEntity {
this.windowNumNotList = windowNumNotList;
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -3138,6 +3234,60 @@ public class CheckAttendRecordQuery extends CheckAttendRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckAttendRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckAttendRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckAttendRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckAttendRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckAttendRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckAttendRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -3,17 +3,20 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.check.model.vo.CheckComplainRecordVo;
import lombok.Data;
/**
* 评价绩效投诉核查信息实体对象
*
* @author zxfei
* @date 2023-07-11
*/
* 评价绩效投诉核查信息实体对象
*
* @author zxfei
* @date 2023-07-27
*/
@Data
public class CheckComplainRecordEntity extends CheckComplainRecordVo {
private static final long serialVersionUID = 1L;
......@@ -63,6 +66,7 @@ public class CheckComplainRecordEntity extends CheckComplainRecordVo {
/**
* 投诉人真实姓名
*/
@Excel(name = "投诉人真实姓名")
private String complainRealName;
/**
* 联系电话
......@@ -72,14 +76,17 @@ public class CheckComplainRecordEntity extends CheckComplainRecordVo {
/**
* 投诉时间
*/
@Excel(name = "投诉时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date complainTime;
/**
* 投诉来源
*/
@Excel(name = "投诉来源")
private String complainSource;
/**
* 投诉设备
*/
@Excel(name = "投诉设备")
private String complainDevice;
/**
* 绩效规则id
......@@ -152,7 +159,12 @@ public class CheckComplainRecordEntity extends CheckComplainRecordVo {
/**
* 增减类型(1.增加,2.扣除)
*/
@Excel(name = "增减类型", readConverterExp = "1=增加,2=扣除")
private Integer subAddType;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -170,67 +182,37 @@ public class CheckComplainRecordEntity extends CheckComplainRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.windowNum = "";
this.deptId = 0L;
this.deptName = "";
this.complainTitle = "";
this.complainContent = "";
this.complainRealName = "";
this.contact = "";
this.complainTime = null;
this.complainTime = new Date();
this.complainSource = "";
this.complainDevice = "";
this.ruleId = 0L;
this.ruleName = "";
this.subMethod = 1;
this.deductPerson = "";
this.deductTime = null;
this.score = BigDecimal.valueOf(0.00);
this.deductTime = new Date();
this.score = BigDecimal.ZERO;
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = 0L;
this.categoryName = "";
this.subAddType = 1;
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
/**
* 评价绩效投诉核查信息查询对象
*
* @author zxfei
* @date 2023-07-11
*/
* 评价绩效投诉核查信息查询对象
*
* @author zxfei
* @date 2023-07-27
*/
public class CheckComplainRecordQuery extends CheckComplainRecordEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
......@@ -316,6 +316,21 @@ public class CheckComplainRecordQuery extends CheckComplainRecordEntity {
/** 增减类型(1.增加,2.扣除)排除列表 */
private List <Integer> subAddTypeNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckComplainRecordQuery> orConditionList;
......@@ -2064,6 +2079,87 @@ public class CheckComplainRecordQuery extends CheckComplainRecordEntity {
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -3078,6 +3174,60 @@ public class CheckComplainRecordQuery extends CheckComplainRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckComplainRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckComplainRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckComplainRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckComplainRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckComplainRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckComplainRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -3,17 +3,20 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.check.model.vo.CheckEffectRecordVo;
import lombok.Data;
/**
* 效能绩效核查信息实体对象
*
* @author zxfei
* @date 2023-07-11
*/
* 效能绩效核查信息实体对象
*
* @author zxfei
* @date 2023-07-27
*/
@Data
public class CheckEffectRecordEntity extends CheckEffectRecordVo {
private static final long serialVersionUID = 1L;
......@@ -146,6 +149,10 @@ public class CheckEffectRecordEntity extends CheckEffectRecordVo {
* 增减类型(1.增加,2.扣除)
*/
private Integer subAddType;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -163,63 +170,35 @@ public class CheckEffectRecordEntity extends CheckEffectRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.windowNum = "";
this.deptId = 0L;
this.deptName = "";
this.irregularType = 1;
this.happenTime = null;
this.irregularType = 0;
this.happenTime = new Date();
this.duration = 0;
this.alarmTime = null;
this.alarmTime = new Date();
this.snapPath = "";
this.ruleId = 0L;
this.ruleName = "";
this.subMethod = 1;
this.deductPerson = "";
this.deductTime = null;
this.score = BigDecimal.valueOf(0.00);
this.deductTime = new Date();
this.score = BigDecimal.ZERO;
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = 0L;
this.categoryName = "";
this.subAddType = 1;
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
/**
* 效能绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-11
*/
* 效能绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-27
*/
public class CheckEffectRecordQuery extends CheckEffectRecordEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
......@@ -327,6 +327,21 @@ public class CheckEffectRecordQuery extends CheckEffectRecordEntity {
/** 增减类型(1.增加,2.扣除)排除列表 */
private List <Integer> subAddTypeNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckEffectRecordQuery> orConditionList;
......@@ -2109,6 +2124,87 @@ public class CheckEffectRecordQuery extends CheckEffectRecordEntity {
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -3137,6 +3233,60 @@ public class CheckEffectRecordQuery extends CheckEffectRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckEffectRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckEffectRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckEffectRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckEffectRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckEffectRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckEffectRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -3,6 +3,9 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
......@@ -12,7 +15,7 @@ import lombok.Data;
* 办件绩效核查信息实体对象
*
* @author zxfei
* @date 2023-07-17
* @date 2023-07-27
*/
@Data
public class CheckGoworkRecordEntity extends CheckGoworkRecordVo {
......@@ -82,7 +85,7 @@ public class CheckGoworkRecordEntity extends CheckGoworkRecordVo {
/**
* 扣分方式(1.系统自动,2.人工添加)
*/
@Excel(name = "扣分方式", readConverterExp = "1=系统自动,2.人工添加")
@Excel(name = "扣分方式", readConverterExp = "1=系统自动,2=人工添加")
private Integer subMethod;
/**
* 扣分人员
......@@ -146,8 +149,12 @@ public class CheckGoworkRecordEntity extends CheckGoworkRecordVo {
/**
* 增减类型(1.增加,2.扣除)
*/
@Excel(name = "增减类型", readConverterExp = "1=增加,2.扣除")
@Excel(name = "增减类型", readConverterExp = "1=增加,2=扣除")
private Integer subAddType;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -165,61 +172,34 @@ public class CheckGoworkRecordEntity extends CheckGoworkRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.windowNum = "";
this.deptId = 0L;
this.deptName = "";
this.goworkCode = "";
this.goworkDepts = "";
this.matterlName = "";
this.goworkTime = null;
this.goworkTime = new Date();
this.ruleId = 0L;
this.ruleName = "";
this.subMethod = 1;
this.deductPerson = "";
this.deductTime = null;
this.score = BigDecimal.valueOf(0.00);
this.deductTime = new Date();
this.score = BigDecimal.ZERO;
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = 0L;
this.categoryName = "";
this.subAddType = 1;
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
/**
* 办件绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-11
*/
* 办件绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-27
*/
public class CheckGoworkRecordQuery extends CheckGoworkRecordEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
......@@ -301,6 +301,21 @@ public class CheckGoworkRecordQuery extends CheckGoworkRecordEntity {
/** 增减类型(1.增加,2.扣除)排除列表 */
private List <Integer> subAddTypeNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckGoworkRecordQuery> orConditionList;
......@@ -1953,6 +1968,87 @@ public class CheckGoworkRecordQuery extends CheckGoworkRecordEntity {
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -2910,6 +3006,60 @@ public class CheckGoworkRecordQuery extends CheckGoworkRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckGoworkRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckGoworkRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckGoworkRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckGoworkRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckGoworkRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckGoworkRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -3,6 +3,9 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
......@@ -12,7 +15,7 @@ import lombok.Data;
* 其它绩效核查信息实体对象
*
* @author zxfei
* @date 2023-07-17
* @date 2023-07-27
*/
@Data
public class CheckOtherRecordEntity extends CheckOtherRecordVo {
......@@ -53,7 +56,7 @@ public class CheckOtherRecordEntity extends CheckOtherRecordVo {
/**
* 违规类型(1.工作纪律)
*/
@Excel(name = "违规类型", readConverterExp = "1=工作纪律")
@Excel(name = "违规类型", readConverterExp = "违规类型(1.工作纪律)")
private Integer irregularOtherType;
/**
* 发生时间
......@@ -145,6 +148,10 @@ public class CheckOtherRecordEntity extends CheckOtherRecordVo {
*/
@Excel(name = "增减类型", readConverterExp = "1=增加,2=扣除")
private Integer subAddType;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -162,61 +169,34 @@ public class CheckOtherRecordEntity extends CheckOtherRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.deptId = null;
this.deptId = 0L;
this.deptName = "";
this.windowNum = "";
this.irregularOtherType = 1;
this.happenTime = null;
this.irregularOtherType = 0;
this.happenTime = new Date();
this.duration = 0;
this.ruleId = 0L;
this.ruleName = "";
this.ruleDesc = "";
this.subMethod = 1;
this.deductPerson = "";
this.deductTime = null;
this.score = BigDecimal.valueOf(0.00);
this.deductTime = new Date();
this.score = BigDecimal.ZERO;
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = null;
this.categoryId = 0L;
this.categoryName = "";
this.subAddType = 1;
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
/**
* 其它绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-11
*/
* 其它绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-27
*/
public class CheckOtherRecordQuery extends CheckOtherRecordEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
......@@ -321,6 +321,21 @@ public class CheckOtherRecordQuery extends CheckOtherRecordEntity {
/** 增减类型(1.增加,2.扣除)排除列表 */
private List <Integer> subAddTypeNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckOtherRecordQuery> orConditionList;
......@@ -2071,6 +2086,87 @@ public class CheckOtherRecordQuery extends CheckOtherRecordEntity {
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -3098,6 +3194,60 @@ public class CheckOtherRecordQuery extends CheckOtherRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckOtherRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckOtherRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckOtherRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckOtherRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckOtherRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckOtherRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -3,6 +3,9 @@ import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
......@@ -12,7 +15,7 @@ import lombok.Data;
* 评价差评绩效核查信息实体对象
*
* @author zxfei
* @date 2023-07-17
* @date 2023-07-27
*/
@Data
public class CheckReviewRecordEntity extends CheckReviewRecordVo {
......@@ -63,7 +66,7 @@ public class CheckReviewRecordEntity extends CheckReviewRecordVo {
/**
* 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
*/
@Excel(name = "评价来源", readConverterExp = "评价来源")
@Excel(name = "评价来源", readConverterExp = "评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)")
private String reviewSource;
/**
* 评价设备
......@@ -147,6 +150,10 @@ public class CheckReviewRecordEntity extends CheckReviewRecordVo {
*/
@Excel(name = "增减类型", readConverterExp = "1=增加,2=扣除")
private Integer subAddType;
/**
* 审核状态(1.同意,2.不同意)
*/
private Integer auditStatus;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -164,61 +171,34 @@ public class CheckReviewRecordEntity extends CheckReviewRecordVo {
}
public void initAttrValue(){
this.recordId = 0L;
this.staffId = 0L;
this.staffName = "";
this.workNum = "";
this.windowNum = "";
this.deptId = 0L;
this.deptName = "";
this.reviewResult = 1;
this.reviewTime = null;
this.reviewResult = 0;
this.reviewTime = new Date();
this.reviewSource = "";
this.reviewDevice = "";
this.ruleId = 0L;
this.ruleName = "";
this.subMethod = 1;
this.deductPerson = "";
this.deductTime = null;
this.score = BigDecimal.valueOf(0.00);
this.deductTime = new Date();
this.score = BigDecimal.ZERO;
this.checkPerson = "";
this.checkTime = null;
this.checkTime = new Date();
this.checkDesc = "";
this.checkResult = "";
this.checkStatus = 1;
this.remark = "";
this.fileNames = "";
this.filePaths = "";
this.categoryId = 0L;
this.categoryName = "";
this.subAddType = 1;
this.auditStatus = 1;
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
/**
* 评价差评绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-11
*/
* 评价差评绩效核查信息查询对象
*
* @author zxfei
* @date 2023-07-27
*/
public class CheckReviewRecordQuery extends CheckReviewRecordEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
......@@ -311,6 +311,21 @@ public class CheckReviewRecordQuery extends CheckReviewRecordEntity {
/** 增减类型(1.增加,2.扣除)排除列表 */
private List <Integer> subAddTypeNotList;
/** 开始 审核状态(1.同意,2.不同意) */
private Integer auditStatusStart;
/** 结束 审核状态(1.同意,2.不同意) */
private Integer auditStatusEnd;
/** 增加 审核状态(1.同意,2.不同意) */
private Integer auditStatusIncrement;
/** 审核状态(1.同意,2.不同意)列表 */
private List <Integer> auditStatusList;
/** 审核状态(1.同意,2.不同意)排除列表 */
private List <Integer> auditStatusNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CheckReviewRecordQuery> orConditionList;
......@@ -2012,6 +2027,87 @@ public class CheckReviewRecordQuery extends CheckReviewRecordEntity {
}
/**
* 获取 开始 审核状态(1.同意,2.不同意)
* @return auditStatusStart
*/
public Integer getAuditStatusStart(){
return this.auditStatusStart;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public void setAuditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
}
/**
* 获取 结束 审核状态(1.同意,2.不同意)
* @return $auditStatusEnd
*/
public Integer getAuditStatusEnd(){
return this.auditStatusEnd;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public void setAuditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
}
/**
* 获取 增加 审核状态(1.同意,2.不同意)
* @return auditStatusIncrement
*/
public Integer getAuditStatusIncrement(){
return this.auditStatusIncrement;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public void setAuditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusList
*/
public List<Integer> getAuditStatusList(){
return this.auditStatusList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public void setAuditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
}
/**
* 获取 审核状态(1.同意,2.不同意)
* @return auditStatusNotList
*/
public List<Integer> getAuditStatusNotList(){
return this.auditStatusNotList;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public void setAuditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -3004,6 +3100,60 @@ public class CheckReviewRecordQuery extends CheckReviewRecordEntity {
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatus
*/
public CheckReviewRecordQuery auditStatus(Integer auditStatus){
setAuditStatus(auditStatus);
return this;
}
/**
* 设置 开始 审核状态(1.同意,2.不同意)
* @param auditStatusStart
*/
public CheckReviewRecordQuery auditStatusStart(Integer auditStatusStart){
this.auditStatusStart = auditStatusStart;
return this;
}
/**
* 设置 结束 审核状态(1.同意,2.不同意)
* @param auditStatusEnd
*/
public CheckReviewRecordQuery auditStatusEnd(Integer auditStatusEnd){
this.auditStatusEnd = auditStatusEnd;
return this;
}
/**
* 设置 增加 审核状态(1.同意,2.不同意)
* @param auditStatusIncrement
*/
public CheckReviewRecordQuery auditStatusIncrement(Integer auditStatusIncrement){
this.auditStatusIncrement = auditStatusIncrement;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusList
*/
public CheckReviewRecordQuery auditStatusList(List<Integer> auditStatusList){
this.auditStatusList = auditStatusList;
return this;
}
/**
* 设置 审核状态(1.同意,2.不同意)
* @param auditStatusNotList
*/
public CheckReviewRecordQuery auditStatusNotList(List<Integer> auditStatusNotList){
this.auditStatusNotList = auditStatusNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -20,4 +20,8 @@ public class CheckAttendRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -20,4 +20,8 @@ public class CheckComplainRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -20,4 +20,8 @@ public class CheckEffectRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -20,4 +20,8 @@ public class CheckGoworkRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -20,4 +20,8 @@ public class CheckOtherRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -20,4 +20,7 @@ public class CheckReviewRecordVo extends BaseEntityLong {
/** 结束 创建时间 */
private String createTimeEnd;
/** 序号,主键,自增长列表 */
private List <Long> idList;
}
\ No newline at end of file
......@@ -10,11 +10,9 @@ import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.framework.util.ThreadPool;
import com.mortals.xhx.base.system.message.MessageService;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.code.*;
import com.mortals.xhx.common.utils.AttendPostServiceThread;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckAttendRecordDao;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
......@@ -106,7 +104,7 @@ public class CheckAttendRecordServiceImpl extends AbstractCRUDServiceImpl<CheckA
if (SubMethodEnum.系统自动.getValue() == entity.getSubMethod()) {
/* AttendPostServiceThread attendPostServiceThread = new AttendPostServiceThread(entity);
ThreadPool.getInstance().execute(attendPostServiceThread);*/
sendCheckDingTalk(entity);
// sendCheckDingTalk(entity);
}
try {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
......@@ -155,6 +153,11 @@ public class CheckAttendRecordServiceImpl extends AbstractCRUDServiceImpl<CheckA
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -13,6 +13,7 @@ import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckComplainRecordDao;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
......@@ -102,11 +103,7 @@ public class CheckComplainRecordServiceImpl extends AbstractCRUDServiceImpl<Chec
@Override
protected void saveAfter(CheckComplainRecordEntity entity, Context context) throws AppException {
//发送钉钉通知信息
if (SubMethodEnum.系统自动.getValue() == entity.getSubMethod()) {
sendCheckDingTalk(entity);
}
try {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
......@@ -156,6 +153,9 @@ public class CheckComplainRecordServiceImpl extends AbstractCRUDServiceImpl<Chec
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -13,6 +13,7 @@ import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckEffectRecordDao;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
......@@ -156,6 +157,9 @@ public class CheckEffectRecordServiceImpl extends AbstractCRUDServiceImpl<CheckE
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -13,6 +13,7 @@ import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
......@@ -102,11 +103,6 @@ public class CheckGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<CheckG
@Override
protected void saveAfter(CheckGoworkRecordEntity entity, Context context) throws AppException {
//发送钉钉通知信息
if (SubMethodEnum.系统自动.getValue() == entity.getSubMethod()) {
sendCheckDingTalk(entity);
}
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
......@@ -154,6 +150,9 @@ public class CheckGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<CheckG
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -10,6 +10,7 @@ import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
......@@ -102,11 +103,6 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt
@Override
protected void saveAfter(CheckOtherRecordEntity entity, Context context) throws AppException {
//发送钉钉通知信息
if (SubMethodEnum.系统自动.getValue() == entity.getSubMethod()) {
sendCheckDingTalk(entity);
}
try {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
......@@ -158,6 +154,9 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -10,6 +10,7 @@ import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.utils.AuditUtil;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
......@@ -115,11 +116,6 @@ public class CheckReviewRecordServiceImpl extends AbstractCRUDServiceImpl<CheckR
log.error("汇总已审核的核查记录出错", e);
}
//发送钉钉通知信息
if (SubMethodEnum.系统自动.getValue() == entity.getSubMethod()) {
sendCheckDingTalk(entity);
}
}
private void sendCheckDingTalk(CheckReviewRecordEntity entity) {
......@@ -159,6 +155,9 @@ public class CheckReviewRecordServiceImpl extends AbstractCRUDServiceImpl<CheckR
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
if(!ObjectUtils.isEmpty(entity.getSubAddType())&&!ObjectUtils.isEmpty(entity.getCheckResult())){
AuditUtil.audit(entity);
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
......
......@@ -53,9 +53,6 @@ public class DeptTreeSelect implements Serializable {
this.personNum = entity.getPersonNum();
if (!ObjectUtils.isEmpty(entity.getChildren())) {
this.children = entity.getChildren().stream().map(DeptTreeSelect::new).collect(Collectors.toList());
int sum = entity.getChildren().stream().mapToInt(i -> i.getPersonNum()).sum();
this.personNum = this.personNum + sum;
}
this.personList = entity.getPersonList();
......
package com.mortals.xhx.module.dept.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.dept.dao.DeptDao;
......@@ -6,15 +8,16 @@ import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptTreeSelect;
import java.util.List;
/**
* DeptService
*
* 部门信息 service接口
*
* @author zxfei
* @date 2023-03-06
*/
public interface DeptService extends ICRUDService<DeptEntity,Long>{
* DeptService
* <p>
* 部门信息 service接口
*
* @author zxfei
* @date 2023-03-06
*/
public interface DeptService extends ICRUDService<DeptEntity, Long> {
DeptDao getDao();
......@@ -46,14 +49,20 @@ public interface DeptService extends ICRUDService<DeptEntity,Long>{
/**
* 根据父id查询子节点
*
* @param parentId
* @param context
* @return
*/
List<DeptTreeSelect> getListByParentId(Long parentId,Context context);
List<DeptTreeSelect> getListByParentId(Long parentId, Context context);
/**
* 更新部门人员数量
*
* @param context
*/
Rest<Void> updateDeptNum(Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.dept.service.impl;
import com.mortals.framework.common.Rest;
import com.mortals.xhx.common.code.EnableEnum;
import com.mortals.xhx.common.code.EnabledEnum;
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 lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.exception.AppException;
......@@ -28,6 +30,7 @@ import java.util.stream.Collectors;
* @date 2023-03-06
*/
@Service("deptService")
@Slf4j
public class DeptServiceImpl extends AbstractCRUDServiceImpl<DeptDao, DeptEntity, Long> implements DeptService {
@Autowired
......@@ -208,5 +211,49 @@ public class DeptServiceImpl extends AbstractCRUDServiceImpl<DeptDao, DeptEntity
return collect;
}
@Override
public Rest<Void> updateDeptNum(Context context) {
log.info("更新部门用户数量");
Map<Long, Long> collect = staffService.find(new StaffQuery()).stream().collect(Collectors.groupingBy(x -> x.getDeptId(), Collectors.counting()));
DeptEntity deptEntity1 = new DeptEntity();
deptEntity1.setPersonNum(0);
this.getDao().update(deptEntity1, new HashMap<>());
collect.entrySet().stream().forEach(item -> {
Long deptId = item.getKey();
Long count = item.getValue();
log.info("deptId:{},num:{}", deptId, count);
DeptEntity deptEntity = this.get(deptId);
if (!ObjectUtils.isEmpty(deptEntity)) {
deptEntity.setPersonNum(count.intValue());
this.update(deptEntity);
}
});
for (Map.Entry<Long, Long> item : collect.entrySet()) {
Long deptId = item.getKey();
if (deptId == null) continue;
DeptEntity deptEntity = this.get(deptId);
if (!ObjectUtils.isEmpty(deptEntity)) {
//查询当前父节点的所有子部门
DeptQuery deptQuery = new DeptQuery();
deptQuery.setParentId(deptEntity.getParentId());
int sum = this.find(new DeptQuery().parentId(deptEntity.getParentId())).stream().map(i -> i.getPersonNum()).reduce(0, Integer::sum);
DeptEntity parentDept = this.get(deptEntity.getParentId());
if (!ObjectUtils.isEmpty(parentDept)) {
log.info("parentDept:{},sum:{}", parentDept.getDeptName(), sum);
parentDept.setPersonNum(sum);
this.update(parentDept);
}
}else {
log.info("deptEntity is null.deptId:{}",item.getKey());
}
}
return Rest.ok();
}
}
......@@ -170,11 +170,11 @@ public class StaffEntity extends StaffVo {
this.politicalstatus = 1;
this.deptId = -1L;
this.deptId = null;
this.deptName = "";
this.positionId = -1L;
this.positionId = null;
this.positionName = "";
......
package com.mortals.xhx.module.staff.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDCacheService;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.vo.StaffInfoVo;
......@@ -17,7 +18,7 @@ import java.util.List;
public interface StaffService extends ICRUDCacheService<StaffEntity,Long> {
//查询所有数据
StaffInfoVo queryAll();
StaffInfoVo queryAll(Context context);
//统计所有在职员工
int queryAllPerson();
}
\ No newline at end of file
......@@ -10,6 +10,7 @@ import com.mortals.xhx.base.system.role.service.RoleUserService;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.code.*;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.staff.dao.StaffDao;
import com.mortals.xhx.module.staff.dao.ibatis.StaffDaoImpl;
import com.mortals.xhx.module.staff.dao.ibatis.StaffLeaveDaoImpl;
......@@ -39,6 +40,8 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
@Autowired
private UserService userService;
@Autowired
private DeptService deptService;
@Autowired
private RoleUserService roleUserService;
......@@ -53,13 +56,13 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
@Override
protected void saveBefore(StaffEntity entity, Context context) throws AppException {
int count = this.count(new StaffQuery().workNum(entity.getWorkNum()), context);
if(count>0){
if (count > 0) {
throw new AppException("工号重复!");
}
}
@Override
public StaffInfoVo queryAll() {
public StaffInfoVo queryAll(Context context) {
StaffInfoVo staffInfoVo = new StaffInfoVo();
//在职
StaffQuery staffQuery = new StaffQuery();
......@@ -133,9 +136,12 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
}
public static void main(String[] args) {
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
deptService.updateDeptNum(context);
}
public static void main(String[] args) {
System.out.println("1" + StrUtil.padPre("125", 7, "0"));
}
......
......@@ -26,15 +26,14 @@ import java.util.Map;
import java.util.stream.Collectors;
/**
*
* 员工基本信息
*
* @author zxfei
* @date 2023-04-07
*/
* 员工基本信息
*
* @author zxfei
* @date 2023-04-07
*/
@RestController
@RequestMapping("staff")
public class StaffController extends BaseCRUDJsonBodyMappingController<StaffService,StaffEntity,Long> {
public class StaffController extends BaseCRUDJsonBodyMappingController<StaffService, StaffEntity, Long> {
@Autowired
private ParamService paramService;
......@@ -43,20 +42,21 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
@Autowired
private DeptService deptService;
public StaffController(){
super.setModuleDesc( "员工基本信息");
public StaffController() {
super.setModuleDesc("员工基本信息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "gender", paramService.getParamBySecondOrganize("Staff","gender"));
this.addDict(model, "politicalstatus", paramService.getParamBySecondOrganize("Staff","politicalstatus"));
this.addDict(model, "staffType", paramService.getParamBySecondOrganize("Staff","staffType"));
this.addDict(model, "status", paramService.getParamBySecondOrganize("Staff","status"));
this.addDict(model, "positionId", jobService.queryPositionName(new JobQuery()).stream().collect(Collectors.toMap(x->x.getId().toString(),y->y.getJobName(),(o,n)->n)));
this.addDict(model, "gender", paramService.getParamBySecondOrganize("Staff", "gender"));
this.addDict(model, "politicalstatus", paramService.getParamBySecondOrganize("Staff", "politicalstatus"));
this.addDict(model, "staffType", paramService.getParamBySecondOrganize("Staff", "staffType"));
this.addDict(model, "status", paramService.getParamBySecondOrganize("Staff", "status"));
this.addDict(model, "positionId", jobService.queryPositionName(new JobQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getJobName(), (o, n) -> n)));
List<DeptEntity> list = deptService.find(new DeptQuery());
List<DeptTreeSelect> treeSelects = deptService.buildDeptTreeSelect(list);
this.addDict(model,"deptPerson",treeSelects);
this.addDict(model, "deptPerson", treeSelects);
this.addDict(model, "deptId", deptService.find(new DeptQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getDeptName())));
......@@ -68,7 +68,7 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
@Override
protected int doListAfter(StaffEntity query, Map<String, Object> model, Context context) throws AppException {
//todo 员工信息统计--员工关系统计
StaffInfoVo staffInfoVo = this.service.queryAll();
StaffInfoVo staffInfoVo = this.service.queryAll(context);
staffInfoVo.setRefreshDate(new Date());
model.put("staff", staffInfoVo);
return super.doListAfter(query, model, context);
......@@ -79,7 +79,7 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
protected int infoAfter(Long id, Map<String, Object> model, StaffEntity entity, Context context) throws AppException {
//todo 员工统计信息
List<HolidayListVo> holidayListVos = new ArrayList<>();
HolidayListVo vo =new HolidayListVo();
HolidayListVo vo = new HolidayListVo();
StaffEntity staffEntity = this.service.get(id);
vo.setWorkName(staffEntity.getName());
vo.setWorkStatus(String.valueOf(staffEntity.getStatus()));
......@@ -103,5 +103,15 @@ public class StaffController extends BaseCRUDJsonBodyMappingController<StaffServ
return super.infoAfter(id, model, entity, context);
}
@Override
protected int saveAfter(StaffEntity entity, Map<String, Object> model, Context context) throws AppException {
deptService.updateDeptNum(context);
return super.saveAfter(entity, model, context);
}
@Override
public String delete(Long[] id) {
return super.delete(id);
}
}
......@@ -41,6 +41,7 @@
<result property="deductPerson" column="deductPerson" />
<result property="deductTime" column="deductTime" />
<result property="windowNum" column="windowNum" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -156,23 +157,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('windowNum') or colPickMode == 1 and data.containsKey('windowNum')))">
a.windowNum,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckAttendRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_attend_record
(recordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,checkStatus,createUserId,createTime,updateUserId,updateTime,subMethod,remark,fileNames,filePaths,categoryId,categoryName,deductPerson,deductTime,windowNum)
(recordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,checkStatus,createUserId,createTime,updateUserId,updateTime,subMethod,remark,fileNames,filePaths,categoryId,categoryName,deductPerson,deductTime,windowNum,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{attendanceGroupId},#{attendanceGroupName},#{attendanceDate},#{ruleId},#{ruleName},#{subAddType},#{score},#{goOffTimeStr},#{errorTime},#{actualAttendTime},#{errorResult},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{subMethod},#{remark},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{deductPerson},#{deductTime},#{windowNum})
(#{recordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{attendanceGroupId},#{attendanceGroupName},#{attendanceDate},#{ruleId},#{ruleName},#{subAddType},#{score},#{goOffTimeStr},#{errorTime},#{actualAttendTime},#{errorResult},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{subMethod},#{remark},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{deductPerson},#{deductTime},#{windowNum},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_attend_record
(recordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,checkStatus,createUserId,createTime,updateUserId,updateTime,subMethod,remark,fileNames,filePaths,categoryId,categoryName,deductPerson,deductTime,windowNum)
(recordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,checkStatus,createUserId,createTime,updateUserId,updateTime,subMethod,remark,fileNames,filePaths,categoryId,categoryName,deductPerson,deductTime,windowNum,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.attendanceDate},#{item.ruleId},#{item.ruleName},#{item.subAddType},#{item.score},#{item.goOffTimeStr},#{item.errorTime},#{item.actualAttendTime},#{item.errorResult},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.subMethod},#{item.remark},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.deductPerson},#{item.deductTime},#{item.windowNum})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.attendanceDate},#{item.ruleId},#{item.ruleName},#{item.subAddType},#{item.score},#{item.goOffTimeStr},#{item.errorTime},#{item.actualAttendTime},#{item.errorResult},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.subMethod},#{item.remark},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.deductPerson},#{item.deductTime},#{item.windowNum},#{item.auditStatus})
</foreach>
</insert>
......@@ -323,6 +327,12 @@
<if test="(colPickMode==0 and data.containsKey('windowNum')) or (colPickMode==1 and !data.containsKey('windowNum'))">
a.windowNum=#{data.windowNum},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -640,6 +650,18 @@
</if>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -1548,6 +1570,33 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1741,6 +1790,11 @@
<if test='orderCol.windowNum != null and "DESC".equalsIgnoreCase(orderCol.windowNum)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckComplainRecordDaoImpl">
<!-- 字段和属性映射 -->
......@@ -41,6 +41,7 @@
<result property="categoryId" column="categoryId" />
<result property="categoryName" column="categoryName" />
<result property="subAddType" column="subAddType" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -156,23 +157,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('subAddType') or colPickMode == 1 and data.containsKey('subAddType')))">
a.subAddType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckComplainRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_complain_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{complainTitle},#{complainContent},#{complainRealName},#{contact},#{complainTime},#{complainSource},#{complainDevice},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType})
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{complainTitle},#{complainContent},#{complainRealName},#{contact},#{complainTime},#{complainSource},#{complainDevice},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_complain_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.complainTitle},#{item.complainContent},#{item.complainRealName},#{item.contact},#{item.complainTime},#{item.complainSource},#{item.complainDevice},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.complainTitle},#{item.complainContent},#{item.complainRealName},#{item.contact},#{item.complainTime},#{item.complainSource},#{item.complainDevice},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType},#{item.auditStatus})
</foreach>
</insert>
......@@ -320,6 +324,12 @@
<if test="(colPickMode==0 and data.containsKey('subAddTypeIncrement')) or (colPickMode==1 and !data.containsKey('subAddTypeIncrement'))">
a.subAddType=ifnull(a.subAddType,0) + #{data.subAddTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -632,6 +642,18 @@
</choose>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -1546,6 +1568,33 @@
${_conditionType_} a.subAddType <![CDATA[ <= ]]> #{${_conditionParam_}.subAddTypeEnd}
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1739,6 +1788,11 @@
<if test='orderCol.subAddType != null and "DESC".equalsIgnoreCase(orderCol.subAddType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckEffectRecordDaoImpl">
<!-- 字段和属性映射 -->
......@@ -39,6 +39,7 @@
<result property="categoryId" column="categoryId" />
<result property="categoryName" column="categoryName" />
<result property="subAddType" column="subAddType" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -148,23 +149,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('subAddType') or colPickMode == 1 and data.containsKey('subAddType')))">
a.subAddType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckEffectRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_effect_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{irregularType},#{happenTime},#{duration},#{alarmTime},#{snapPath},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType})
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{irregularType},#{happenTime},#{duration},#{alarmTime},#{snapPath},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_effect_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.irregularType},#{item.happenTime},#{item.duration},#{item.alarmTime},#{item.snapPath},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.irregularType},#{item.happenTime},#{item.duration},#{item.alarmTime},#{item.snapPath},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType},#{item.auditStatus})
</foreach>
</insert>
......@@ -312,6 +316,12 @@
<if test="(colPickMode==0 and data.containsKey('subAddTypeIncrement')) or (colPickMode==1 and !data.containsKey('subAddTypeIncrement'))">
a.subAddType=ifnull(a.subAddType,0) + #{data.subAddTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -620,6 +630,18 @@
</choose>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -1498,6 +1520,33 @@
${_conditionType_} a.subAddType <![CDATA[ <= ]]> #{${_conditionParam_}.subAddTypeEnd}
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1681,6 +1730,11 @@
<if test='orderCol.subAddType != null and "DESC".equalsIgnoreCase(orderCol.subAddType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckGoworkRecordDaoImpl">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckEffectRecordDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="CheckGoworkRecordEntity" id="CheckGoworkRecordEntity-Map">
<resultMap type="CheckEffectRecordEntity" id="CheckEffectRecordEntity-Map">
<id property="id" column="id" />
<result property="recordId" column="recordId" />
<result property="staffId" column="staffId" />
......@@ -13,10 +13,11 @@
<result property="windowNum" column="windowNum" />
<result property="deptId" column="deptId" />
<result property="deptName" column="deptName" />
<result property="goworkCode" column="goworkCode" />
<result property="goworkDepts" column="goworkDepts" />
<result property="matterlName" column="matterlName" />
<result property="goworkTime" column="goworkTime" />
<result property="irregularType" column="irregularType" />
<result property="happenTime" column="happenTime" />
<result property="duration" column="duration" />
<result property="alarmTime" column="alarmTime" />
<result property="snapPath" column="snapPath" />
<result property="ruleId" column="ruleId" />
<result property="ruleName" column="ruleName" />
<result property="subMethod" column="subMethod" />
......@@ -38,6 +39,7 @@
<result property="categoryId" column="categoryId" />
<result property="categoryName" column="categoryName" />
<result property="subAddType" column="subAddType" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -69,17 +71,20 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('deptName') or colPickMode == 1 and data.containsKey('deptName')))">
a.deptName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkCode') or colPickMode == 1 and data.containsKey('goworkCode')))">
a.goworkCode,
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('irregularType') or colPickMode == 1 and data.containsKey('irregularType')))">
a.irregularType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkDepts') or colPickMode == 1 and data.containsKey('goworkDepts')))">
a.goworkDepts,
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('happenTime') or colPickMode == 1 and data.containsKey('happenTime')))">
a.happenTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('matterlName') or colPickMode == 1 and data.containsKey('matterlName')))">
a.matterlName,
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('duration') or colPickMode == 1 and data.containsKey('duration')))">
a.duration,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkTime') or colPickMode == 1 and data.containsKey('goworkTime')))">
a.goworkTime,
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('alarmTime') or colPickMode == 1 and data.containsKey('alarmTime')))">
a.alarmTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('snapPath') or colPickMode == 1 and data.containsKey('snapPath')))">
a.snapPath,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('ruleId') or colPickMode == 1 and data.containsKey('ruleId')))">
a.ruleId,
......@@ -144,30 +149,33 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('subAddType') or colPickMode == 1 and data.containsKey('subAddType')))">
a.subAddType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckGoworkRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_gowork_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,goworkCode,goworkDepts,matterlName,goworkTime,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
<insert id="insert" parameterType="CheckEffectRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_effect_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{goworkCode},#{goworkDepts},#{matterlName},#{goworkTime},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType})
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{irregularType},#{happenTime},#{duration},#{alarmTime},#{snapPath},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_gowork_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,goworkCode,goworkDepts,matterlName,goworkTime,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
insert into mortals_xhx_check_effect_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,irregularType,happenTime,duration,alarmTime,snapPath,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.goworkCode},#{item.goworkDepts},#{item.matterlName},#{item.goworkTime},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.irregularType},#{item.happenTime},#{item.duration},#{item.alarmTime},#{item.snapPath},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType},#{item.auditStatus})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_check_gowork_record as a
update mortals_xhx_check_effect_record as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('recordId')) or (colPickMode==1 and !data.containsKey('recordId'))">
......@@ -200,17 +208,26 @@
<if test="(colPickMode==0 and data.containsKey('deptName')) or (colPickMode==1 and !data.containsKey('deptName'))">
a.deptName=#{data.deptName},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkCode')) or (colPickMode==1 and !data.containsKey('goworkCode'))">
a.goworkCode=#{data.goworkCode},
<if test="(colPickMode==0 and data.containsKey('irregularType')) or (colPickMode==1 and !data.containsKey('irregularType'))">
a.irregularType=#{data.irregularType},
</if>
<if test="(colPickMode==0 and data.containsKey('irregularTypeIncrement')) or (colPickMode==1 and !data.containsKey('irregularTypeIncrement'))">
a.irregularType=ifnull(a.irregularType,0) + #{data.irregularTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('happenTime')) or (colPickMode==1 and !data.containsKey('happenTime'))">
a.happenTime=#{data.happenTime},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkDepts')) or (colPickMode==1 and !data.containsKey('goworkDepts'))">
a.goworkDepts=#{data.goworkDepts},
<if test="(colPickMode==0 and data.containsKey('duration')) or (colPickMode==1 and !data.containsKey('duration'))">
a.duration=#{data.duration},
</if>
<if test="(colPickMode==0 and data.containsKey('matterlName')) or (colPickMode==1 and !data.containsKey('matterlName'))">
a.matterlName=#{data.matterlName},
<if test="(colPickMode==0 and data.containsKey('durationIncrement')) or (colPickMode==1 and !data.containsKey('durationIncrement'))">
a.duration=ifnull(a.duration,0) + #{data.durationIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkTime')) or (colPickMode==1 and !data.containsKey('goworkTime'))">
a.goworkTime=#{data.goworkTime},
<if test="(colPickMode==0 and data.containsKey('alarmTime')) or (colPickMode==1 and !data.containsKey('alarmTime'))">
a.alarmTime=#{data.alarmTime},
</if>
<if test="(colPickMode==0 and data.containsKey('snapPath')) or (colPickMode==1 and !data.containsKey('snapPath'))">
a.snapPath=#{data.snapPath},
</if>
<if test="(colPickMode==0 and data.containsKey('ruleId')) or (colPickMode==1 and !data.containsKey('ruleId'))">
a.ruleId=#{data.ruleId},
......@@ -299,6 +316,12 @@
<if test="(colPickMode==0 and data.containsKey('subAddTypeIncrement')) or (colPickMode==1 and !data.containsKey('subAddTypeIncrement'))">
a.subAddType=ifnull(a.subAddType,0) + #{data.subAddTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -309,7 +332,7 @@
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_check_gowork_record as a
update mortals_xhx_check_effect_record as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="recordId=(case" suffix="ELSE recordId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
......@@ -375,31 +398,48 @@
</if>
</foreach>
</trim>
<trim prefix="goworkCode=(case" suffix="ELSE goworkCode end),">
<trim prefix="irregularType=(case" suffix="ELSE irregularType end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkCode')) or (colPickMode==1 and !item.containsKey('goworkCode'))">
when a.id=#{item.id} then #{item.goworkCode}
</if>
<choose>
<when test="(colPickMode==0 and item.containsKey('irregularType')) or (colPickMode==1 and !item.containsKey('irregularType'))">
when a.id=#{item.id} then #{item.irregularType}
</when>
<when test="(colPickMode==0 and item.containsKey('irregularTypeIncrement')) or (colPickMode==1 and !item.containsKey('irregularTypeIncrement'))">
when a.id=#{item.id} then ifnull(a.irregularType,0) + #{item.irregularTypeIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="goworkDepts=(case" suffix="ELSE goworkDepts end),">
<trim prefix="happenTime=(case" suffix="ELSE happenTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkDepts')) or (colPickMode==1 and !item.containsKey('goworkDepts'))">
when a.id=#{item.id} then #{item.goworkDepts}
<if test="(colPickMode==0 and item.containsKey('happenTime')) or (colPickMode==1 and !item.containsKey('happenTime'))">
when a.id=#{item.id} then #{item.happenTime}
</if>
</foreach>
</trim>
<trim prefix="matterlName=(case" suffix="ELSE matterlName end),">
<trim prefix="duration=(case" suffix="ELSE duration end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('matterlName')) or (colPickMode==1 and !item.containsKey('matterlName'))">
when a.id=#{item.id} then #{item.matterlName}
<choose>
<when test="(colPickMode==0 and item.containsKey('duration')) or (colPickMode==1 and !item.containsKey('duration'))">
when a.id=#{item.id} then #{item.duration}
</when>
<when test="(colPickMode==0 and item.containsKey('durationIncrement')) or (colPickMode==1 and !item.containsKey('durationIncrement'))">
when a.id=#{item.id} then ifnull(a.duration,0) + #{item.durationIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="alarmTime=(case" suffix="ELSE alarmTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('alarmTime')) or (colPickMode==1 and !item.containsKey('alarmTime'))">
when a.id=#{item.id} then #{item.alarmTime}
</if>
</foreach>
</trim>
<trim prefix="goworkTime=(case" suffix="ELSE goworkTime end),">
<trim prefix="snapPath=(case" suffix="ELSE snapPath end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkTime')) or (colPickMode==1 and !item.containsKey('goworkTime'))">
when a.id=#{item.id} then #{item.goworkTime}
<if test="(colPickMode==0 and item.containsKey('snapPath')) or (colPickMode==1 and !item.containsKey('snapPath'))">
when a.id=#{item.id} then #{item.snapPath}
</if>
</foreach>
</trim>
......@@ -590,6 +630,18 @@
</choose>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -597,25 +649,25 @@
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="CheckGoworkRecordEntity-Map">
<select id="getByKey" parameterType="paramDto" resultMap="CheckEffectRecordEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_check_gowork_record as a
from mortals_xhx_check_effect_record as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from mortals_xhx_check_gowork_record as a where a.id=#{condition.id}
delete a.* from mortals_xhx_check_effect_record as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_check_gowork_record where id in
delete from mortals_xhx_check_effect_record where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_check_gowork_record where id in
delete from mortals_xhx_check_effect_record where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
......@@ -623,14 +675,14 @@
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_check_gowork_record where id in
delete from mortals_xhx_check_effect_record where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_check_gowork_record as a
delete a.* from mortals_xhx_check_effect_record as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
......@@ -639,9 +691,9 @@
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="CheckGoworkRecordEntity-Map">
<select id="getList" parameterType="paramDto" resultMap="CheckEffectRecordEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_check_gowork_record as a
from mortals_xhx_check_effect_record as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
......@@ -656,7 +708,7 @@
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_check_gowork_record as a
from mortals_xhx_check_effect_record as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
......@@ -898,83 +950,110 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkCode')">
<if test="conditionParamRef.goworkCode != null and conditionParamRef.goworkCode != ''">
${_conditionType_} a.goworkCode like #{${_conditionParam_}.goworkCode}
<if test="conditionParamRef.containsKey('irregularType')">
<if test="conditionParamRef.irregularType != null ">
${_conditionType_} a.irregularType = #{${_conditionParam_}.irregularType}
</if>
<if test="conditionParamRef.goworkCode == null">
${_conditionType_} a.goworkCode is null
<if test="conditionParamRef.irregularType == null">
${_conditionType_} a.irregularType is null
</if>
</if>
<if test="conditionParamRef.containsKey('goworkCodeList') and conditionParamRef.goworkCodeList.size() > 0">
${_conditionType_} a.goworkCode in
<foreach collection="conditionParamRef.goworkCodeList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('irregularTypeList') and conditionParamRef.irregularTypeList.size() > 0">
${_conditionType_} a.irregularType in
<foreach collection="conditionParamRef.irregularTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkCodeNotList') and conditionParamRef.goworkCodeNotList.size() > 0">
${_conditionType_} a.goworkCode not in
<foreach collection="conditionParamRef.goworkCodeNotList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('irregularTypeNotList') and conditionParamRef.irregularTypeNotList.size() > 0">
${_conditionType_} a.irregularType not in
<foreach collection="conditionParamRef.irregularTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularTypeStart') and conditionParamRef.irregularTypeStart != null">
${_conditionType_} a.irregularType <![CDATA[ >= ]]> #{${_conditionParam_}.irregularTypeStart}
</if>
<if test="conditionParamRef.containsKey('irregularTypeEnd') and conditionParamRef.irregularTypeEnd != null">
${_conditionType_} a.irregularType <![CDATA[ <= ]]> #{${_conditionParam_}.irregularTypeEnd}
</if>
<if test="conditionParamRef.containsKey('goworkDepts')">
<if test="conditionParamRef.goworkDepts != null and conditionParamRef.goworkDepts != ''">
${_conditionType_} a.goworkDepts like #{${_conditionParam_}.goworkDepts}
<if test="conditionParamRef.containsKey('happenTime')">
<if test="conditionParamRef.happenTime != null ">
${_conditionType_} a.happenTime = #{${_conditionParam_}.happenTime}
</if>
<if test="conditionParamRef.happenTime == null">
${_conditionType_} a.happenTime is null
</if>
<if test="conditionParamRef.goworkDepts == null">
${_conditionType_} a.goworkDepts is null
</if>
<if test="conditionParamRef.containsKey('happenTimeStart') and conditionParamRef.happenTimeStart != null and conditionParamRef.happenTimeStart!=''">
${_conditionType_} a.happenTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.happenTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('goworkDeptsList') and conditionParamRef.goworkDeptsList.size() > 0">
${_conditionType_} a.goworkDepts in
<foreach collection="conditionParamRef.goworkDeptsList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('happenTimeEnd') and conditionParamRef.happenTimeEnd != null and conditionParamRef.happenTimeEnd!=''">
${_conditionType_} a.happenTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.happenTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('duration')">
<if test="conditionParamRef.duration != null ">
${_conditionType_} a.duration = #{${_conditionParam_}.duration}
</if>
<if test="conditionParamRef.duration == null">
${_conditionType_} a.duration is null
</if>
</if>
<if test="conditionParamRef.containsKey('durationList') and conditionParamRef.durationList.size() > 0">
${_conditionType_} a.duration in
<foreach collection="conditionParamRef.durationList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkDeptsNotList') and conditionParamRef.goworkDeptsNotList.size() > 0">
${_conditionType_} a.goworkDepts not in
<foreach collection="conditionParamRef.goworkDeptsNotList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('durationNotList') and conditionParamRef.durationNotList.size() > 0">
${_conditionType_} a.duration not in
<foreach collection="conditionParamRef.durationNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('durationStart') and conditionParamRef.durationStart != null">
${_conditionType_} a.duration <![CDATA[ >= ]]> #{${_conditionParam_}.durationStart}
</if>
<if test="conditionParamRef.containsKey('durationEnd') and conditionParamRef.durationEnd != null">
${_conditionType_} a.duration <![CDATA[ <= ]]> #{${_conditionParam_}.durationEnd}
</if>
<if test="conditionParamRef.containsKey('matterlName')">
<if test="conditionParamRef.matterlName != null and conditionParamRef.matterlName != ''">
${_conditionType_} a.matterlName like #{${_conditionParam_}.matterlName}
<if test="conditionParamRef.containsKey('alarmTime')">
<if test="conditionParamRef.alarmTime != null ">
${_conditionType_} a.alarmTime = #{${_conditionParam_}.alarmTime}
</if>
<if test="conditionParamRef.matterlName == null">
${_conditionType_} a.matterlName is null
<if test="conditionParamRef.alarmTime == null">
${_conditionType_} a.alarmTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('matterlNameList') and conditionParamRef.matterlNameList.size() > 0">
${_conditionType_} a.matterlName in
<foreach collection="conditionParamRef.matterlNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.containsKey('alarmTimeStart') and conditionParamRef.alarmTimeStart != null and conditionParamRef.alarmTimeStart!=''">
${_conditionType_} a.alarmTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('matterlNameNotList') and conditionParamRef.matterlNameNotList.size() > 0">
${_conditionType_} a.matterlName not in
<foreach collection="conditionParamRef.matterlNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
<if test="conditionParamRef.containsKey('alarmTimeEnd') and conditionParamRef.alarmTimeEnd != null and conditionParamRef.alarmTimeEnd!=''">
${_conditionType_} a.alarmTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('goworkTime')">
<if test="conditionParamRef.goworkTime != null ">
${_conditionType_} a.goworkTime = #{${_conditionParam_}.goworkTime}
<if test="conditionParamRef.containsKey('snapPath')">
<if test="conditionParamRef.snapPath != null and conditionParamRef.snapPath != ''">
${_conditionType_} a.snapPath like #{${_conditionParam_}.snapPath}
</if>
<if test="conditionParamRef.goworkTime == null">
${_conditionType_} a.goworkTime is null
<if test="conditionParamRef.snapPath == null">
${_conditionType_} a.snapPath is null
</if>
</if>
<if test="conditionParamRef.containsKey('goworkTimeStart') and conditionParamRef.goworkTimeStart != null and conditionParamRef.goworkTimeStart!=''">
${_conditionType_} a.goworkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.goworkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
<if test="conditionParamRef.containsKey('snapPathList') and conditionParamRef.snapPathList.size() > 0">
${_conditionType_} a.snapPath in
<foreach collection="conditionParamRef.snapPathList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkTimeEnd') and conditionParamRef.goworkTimeEnd != null and conditionParamRef.goworkTimeEnd!=''">
${_conditionType_} a.goworkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.goworkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
<if test="conditionParamRef.containsKey('snapPathNotList') and conditionParamRef.snapPathNotList.size() > 0">
${_conditionType_} a.snapPath not in
<foreach collection="conditionParamRef.snapPathNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('ruleId')">
<if test="conditionParamRef.ruleId != null ">
......@@ -1441,6 +1520,33 @@
${_conditionType_} a.subAddType <![CDATA[ <= ]]> #{${_conditionParam_}.subAddTypeEnd}
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1494,24 +1600,29 @@
<if test='orderCol.deptName != null and "DESC".equalsIgnoreCase(orderCol.deptName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkCode')">
a.goworkCode
<if test='orderCol.goworkCode != null and "DESC".equalsIgnoreCase(orderCol.goworkCode)'>DESC</if>
<if test="orderCol.containsKey('irregularType')">
a.irregularType
<if test='orderCol.irregularType != null and "DESC".equalsIgnoreCase(orderCol.irregularType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkDepts')">
a.goworkDepts
<if test='orderCol.goworkDepts != null and "DESC".equalsIgnoreCase(orderCol.goworkDepts)'>DESC</if>
<if test="orderCol.containsKey('happenTime')">
a.happenTime
<if test='orderCol.happenTime != null and "DESC".equalsIgnoreCase(orderCol.happenTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('matterlName')">
a.matterlName
<if test='orderCol.matterlName != null and "DESC".equalsIgnoreCase(orderCol.matterlName)'>DESC</if>
<if test="orderCol.containsKey('duration')">
a.duration
<if test='orderCol.duration != null and "DESC".equalsIgnoreCase(orderCol.duration)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkTime')">
a.goworkTime
<if test='orderCol.goworkTime != null and "DESC".equalsIgnoreCase(orderCol.goworkTime)'>DESC</if>
<if test="orderCol.containsKey('alarmTime')">
a.alarmTime
<if test='orderCol.alarmTime != null and "DESC".equalsIgnoreCase(orderCol.alarmTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('snapPath')">
a.snapPath
<if test='orderCol.snapPath != null and "DESC".equalsIgnoreCase(orderCol.snapPath)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('ruleId')">
......@@ -1619,6 +1730,11 @@
<if test='orderCol.subAddType != null and "DESC".equalsIgnoreCase(orderCol.subAddType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckOtherRecordDaoImpl">
<!-- 字段和属性映射 -->
......@@ -38,6 +38,7 @@
<result property="categoryId" column="categoryId" />
<result property="categoryName" column="categoryName" />
<result property="subAddType" column="subAddType" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -144,23 +145,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('subAddType') or colPickMode == 1 and data.containsKey('subAddType')))">
a.subAddType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckOtherRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_other_record
(recordId,staffId,staffName,workNum,deptId,deptName,windowNum,irregularOtherType,happenTime,duration,ruleId,ruleName,ruleDesc,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,deptId,deptName,windowNum,irregularOtherType,happenTime,duration,ruleId,ruleName,ruleDesc,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{windowNum},#{irregularOtherType},#{happenTime},#{duration},#{ruleId},#{ruleName},#{ruleDesc},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType})
(#{recordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{windowNum},#{irregularOtherType},#{happenTime},#{duration},#{ruleId},#{ruleName},#{ruleDesc},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_other_record
(recordId,staffId,staffName,workNum,deptId,deptName,windowNum,irregularOtherType,happenTime,duration,ruleId,ruleName,ruleDesc,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,deptId,deptName,windowNum,irregularOtherType,happenTime,duration,ruleId,ruleName,ruleDesc,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.windowNum},#{item.irregularOtherType},#{item.happenTime},#{item.duration},#{item.ruleId},#{item.ruleName},#{item.ruleDesc},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.windowNum},#{item.irregularOtherType},#{item.happenTime},#{item.duration},#{item.ruleId},#{item.ruleName},#{item.ruleDesc},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType},#{item.auditStatus})
</foreach>
</insert>
......@@ -305,6 +309,12 @@
<if test="(colPickMode==0 and data.containsKey('subAddTypeIncrement')) or (colPickMode==1 and !data.containsKey('subAddTypeIncrement'))">
a.subAddType=ifnull(a.subAddType,0) + #{data.subAddTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -606,6 +616,18 @@
</choose>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -1469,6 +1491,33 @@
${_conditionType_} a.subAddType <![CDATA[ <= ]]> #{${_conditionParam_}.subAddTypeEnd}
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1647,6 +1696,11 @@
<if test='orderCol.subAddType != null and "DESC".equalsIgnoreCase(orderCol.subAddType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckReviewRecordDaoImpl">
<!-- 字段和属性映射 -->
......@@ -38,6 +38,7 @@
<result property="categoryId" column="categoryId" />
<result property="categoryName" column="categoryName" />
<result property="subAddType" column="subAddType" />
<result property="auditStatus" column="auditStatus" />
</resultMap>
......@@ -144,23 +145,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('subAddType') or colPickMode == 1 and data.containsKey('subAddType')))">
a.subAddType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('auditStatus') or colPickMode == 1 and data.containsKey('auditStatus')))">
a.auditStatus,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CheckReviewRecordEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_check_review_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,reviewResult,reviewTime,reviewSource,reviewDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,reviewResult,reviewTime,reviewSource,reviewDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{reviewResult},#{reviewTime},#{reviewSource},#{reviewDevice},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType})
(#{recordId},#{staffId},#{staffName},#{workNum},#{windowNum},#{deptId},#{deptName},#{reviewResult},#{reviewTime},#{reviewSource},#{reviewDevice},#{ruleId},#{ruleName},#{subMethod},#{deductPerson},#{deductTime},#{score},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{checkStatus},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{fileNames},#{filePaths},#{categoryId},#{categoryName},#{subAddType},#{auditStatus})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_check_review_record
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,reviewResult,reviewTime,reviewSource,reviewDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType)
(recordId,staffId,staffName,workNum,windowNum,deptId,deptName,reviewResult,reviewTime,reviewSource,reviewDevice,ruleId,ruleName,subMethod,deductPerson,deductTime,score,checkPerson,checkTime,checkDesc,checkResult,checkStatus,remark,createUserId,createTime,updateUserId,updateTime,fileNames,filePaths,categoryId,categoryName,subAddType,auditStatus)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.reviewResult},#{item.reviewTime},#{item.reviewSource},#{item.reviewDevice},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType})
(#{item.recordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.windowNum},#{item.deptId},#{item.deptName},#{item.reviewResult},#{item.reviewTime},#{item.reviewSource},#{item.reviewDevice},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.deductPerson},#{item.deductTime},#{item.score},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.checkStatus},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.fileNames},#{item.filePaths},#{item.categoryId},#{item.categoryName},#{item.subAddType},#{item.auditStatus})
</foreach>
</insert>
......@@ -302,6 +306,12 @@
<if test="(colPickMode==0 and data.containsKey('subAddTypeIncrement')) or (colPickMode==1 and !data.containsKey('subAddTypeIncrement'))">
a.subAddType=ifnull(a.subAddType,0) + #{data.subAddTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatus')) or (colPickMode==1 and !data.containsKey('auditStatus'))">
a.auditStatus=#{data.auditStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('auditStatusIncrement')) or (colPickMode==1 and !data.containsKey('auditStatusIncrement'))">
a.auditStatus=ifnull(a.auditStatus,0) + #{data.auditStatusIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -598,6 +608,18 @@
</choose>
</foreach>
</trim>
<trim prefix="auditStatus=(case" suffix="ELSE auditStatus end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('auditStatus')) or (colPickMode==1 and !item.containsKey('auditStatus'))">
when a.id=#{item.id} then #{item.auditStatus}
</when>
<when test="(colPickMode==0 and item.containsKey('auditStatusIncrement')) or (colPickMode==1 and !item.containsKey('auditStatusIncrement'))">
when a.id=#{item.id} then ifnull(a.auditStatus,0) + #{item.auditStatusIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -1455,6 +1477,33 @@
${_conditionType_} a.subAddType <![CDATA[ <= ]]> #{${_conditionParam_}.subAddTypeEnd}
</if>
<if test="conditionParamRef.containsKey('auditStatus')">
<if test="conditionParamRef.auditStatus != null ">
${_conditionType_} a.auditStatus = #{${_conditionParam_}.auditStatus}
</if>
<if test="conditionParamRef.auditStatus == null">
${_conditionType_} a.auditStatus is null
</if>
</if>
<if test="conditionParamRef.containsKey('auditStatusList') and conditionParamRef.auditStatusList.size() > 0">
${_conditionType_} a.auditStatus in
<foreach collection="conditionParamRef.auditStatusList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusNotList') and conditionParamRef.auditStatusNotList.size() > 0">
${_conditionType_} a.auditStatus not in
<foreach collection="conditionParamRef.auditStatusNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('auditStatusStart') and conditionParamRef.auditStatusStart != null">
${_conditionType_} a.auditStatus <![CDATA[ >= ]]> #{${_conditionParam_}.auditStatusStart}
</if>
<if test="conditionParamRef.containsKey('auditStatusEnd') and conditionParamRef.auditStatusEnd != null">
${_conditionType_} a.auditStatus <![CDATA[ <= ]]> #{${_conditionParam_}.auditStatusEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -1633,6 +1682,11 @@
<if test='orderCol.subAddType != null and "DESC".equalsIgnoreCase(orderCol.subAddType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('auditStatus')">
a.auditStatus
<if test='orderCol.auditStatus != null and "DESC".equalsIgnoreCase(orderCol.auditStatus)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
......@@ -805,3 +805,14 @@ ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `signOutResult` tinyint
ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `attendType` varchar(128) DEFAULT '0' COMMENT '考勤类型';
ALTER TABLE mortals_xhx_attendance_record_hik ADD COLUMN `punchResult` tinyint(2) DEFAULT '0' COMMENT '打卡结果(0.否,1.是)';
-- ----------------------------
-- 07-27
-- ----------------------------
ALTER TABLE mortals_xhx_check_attend_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
ALTER TABLE mortals_xhx_check_review_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
ALTER TABLE mortals_xhx_check_complain_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
ALTER TABLE mortals_xhx_check_gowork_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
ALTER TABLE mortals_xhx_check_effect_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
ALTER TABLE mortals_xhx_check_other_record ADD COLUMN `auditStatus` tinyint(1) DEFAULT '1' COMMENT '审核状态(1.同意,2.不同意)';
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