1. 审核相关
This commit is contained in:
parent
20e2946b93
commit
fb6d459076
|
|
@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.chushang.common.mybatis.base.BaseEntity;
|
import com.chushang.common.mybatis.base.BaseEntity;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
@ -52,13 +54,13 @@ public class WrkInfoAudit extends BaseEntity {
|
||||||
* 审核时间
|
* 审核时间
|
||||||
*/
|
*/
|
||||||
@TableField(value = "audit_time")
|
@TableField(value = "audit_time")
|
||||||
private Date auditTime;
|
private LocalDateTime auditTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审核状态
|
* 审核状态
|
||||||
*/
|
*/
|
||||||
@TableField(value = "audit_state")
|
@TableField(value = "audit_state")
|
||||||
private Byte auditState;
|
private Integer auditState;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审核描述
|
* 审核描述
|
||||||
|
|
@ -70,7 +72,7 @@ public class WrkInfoAudit extends BaseEntity {
|
||||||
* 是否为历史记录 1是 0否
|
* 是否为历史记录 1是 0否
|
||||||
*/
|
*/
|
||||||
@TableField(value = "is_record")
|
@TableField(value = "is_record")
|
||||||
private Byte isRecord;
|
private Integer isRecord;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 所属部门
|
* 所属部门
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.chushang.common.log.enums.BusinessType;
|
||||||
import com.chushang.inspection.project.dto.AuditDTO;
|
import com.chushang.inspection.project.dto.AuditDTO;
|
||||||
import com.chushang.inspection.project.service.WrkAuditService;
|
import com.chushang.inspection.project.service.WrkAuditService;
|
||||||
import com.chushang.inspection.work.service.WrkInfoAuditService;
|
import com.chushang.inspection.work.service.WrkInfoAuditService;
|
||||||
|
import com.chushang.inspection.work.service.WrkInfoService;
|
||||||
import com.chushang.security.annotation.RequiresPermissions;
|
import com.chushang.security.annotation.RequiresPermissions;
|
||||||
import lombok.extern.java.Log;
|
import lombok.extern.java.Log;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
@ -22,17 +23,18 @@ import javax.annotation.Resource;
|
||||||
public class WrkInfoAuditController {
|
public class WrkInfoAuditController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private WrkInfoAuditService wrkInfoAuditService;
|
private WrkInfoService wrkInfoService;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工单审核
|
* 工单审核
|
||||||
*/
|
*/
|
||||||
@PostMapping ("/audit")
|
@PostMapping ("/audit/{wrkId}")
|
||||||
@RequiresPermissions("wrk:info:audit")
|
@RequiresPermissions("wrk:info:audit")
|
||||||
@SysLog(value = "工单审核", businessType = BusinessType.AUDIT)
|
@SysLog(value = "工单审核", businessType = BusinessType.AUDIT)
|
||||||
public AjaxResult audit(@Validated @RequestBody AuditDTO audit) {
|
public AjaxResult audit(@Validated @RequestBody AuditDTO audit,
|
||||||
wrkInfoAuditService.audit(audit);
|
@PathVariable Long wrkId) {
|
||||||
|
wrkInfoService.audit(audit, wrkId);
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ public class WrkInfoController {
|
||||||
@GetMapping("/dispatch/page")
|
@GetMapping("/dispatch/page")
|
||||||
@RequiresPermissions("wrk:dispatch:page")
|
@RequiresPermissions("wrk:dispatch:page")
|
||||||
public AjaxResult queryDispatchPage(@Validated WrkInfoQuery query) {
|
public AjaxResult queryDispatchPage(@Validated WrkInfoQuery query) {
|
||||||
query.setStates(Lists.newArrayList(1, 5, 6, 7));
|
// 派单领取列表, 就是 已经派出的工单以及领取的工单,
|
||||||
return AjaxResult.success(wrkInfoService.queryDispatchPage(query));
|
return AjaxResult.success(wrkInfoService.queryDispatchPage(query));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,4 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
* @date: 2024/6/27 18:13
|
* @date: 2024/6/27 18:13
|
||||||
*/
|
*/
|
||||||
public interface WrkInfoAuditService extends IService<WrkInfoAudit> {
|
public interface WrkInfoAuditService extends IService<WrkInfoAudit> {
|
||||||
/**
|
|
||||||
* 工单审核
|
|
||||||
* @param audit 审核
|
|
||||||
*/
|
|
||||||
void audit(AuditDTO audit);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.chushang.inspection.work.service;
|
package com.chushang.inspection.work.service;
|
||||||
|
|
||||||
import com.chushang.common.mybatis.utils.PageResult;
|
import com.chushang.common.mybatis.utils.PageResult;
|
||||||
|
import com.chushang.inspection.project.dto.AuditDTO;
|
||||||
import com.chushang.inspection.work.dto.WrkInfoDTO;
|
import com.chushang.inspection.work.dto.WrkInfoDTO;
|
||||||
import com.chushang.inspection.work.po.WrkInfo;
|
import com.chushang.inspection.work.po.WrkInfo;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
@ -32,4 +33,6 @@ public interface WrkInfoService extends IService<WrkInfo> {
|
||||||
Long downInsTemplate(ReviewedQuery query);
|
Long downInsTemplate(ReviewedQuery query);
|
||||||
|
|
||||||
void submit(WrkInfoDTO info);
|
void submit(WrkInfoDTO info);
|
||||||
|
|
||||||
|
void audit(AuditDTO audit, Long wrkId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,24 +13,4 @@ import com.chushang.inspection.work.po.WrkInfoAudit;
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class WrkInfoAuditServiceImpl extends ServiceImpl<WrkInfoAuditMapper, WrkInfoAudit> implements WrkInfoAuditService {
|
public class WrkInfoAuditServiceImpl extends ServiceImpl<WrkInfoAuditMapper, WrkInfoAudit> implements WrkInfoAuditService {
|
||||||
/**
|
|
||||||
* 工单审核
|
|
||||||
* @param audit 审核所需
|
|
||||||
* 工单共计有7个状态,
|
|
||||||
* 1. 已分配
|
|
||||||
* 2. 待初审
|
|
||||||
* 3. 待复审
|
|
||||||
* 4. 复审通过
|
|
||||||
* 5. 初审驳回
|
|
||||||
* 6. 复审驳回
|
|
||||||
* 7. 初审通过
|
|
||||||
* 8. 默认审核通过
|
|
||||||
* todo 当任务为只需要初审时, 点击初审通过, 则其状态由2 变为 7
|
|
||||||
* todo 当任务需要复审时, 点击初审通过, 其状态由2 变为3
|
|
||||||
* 当任务不需要审核时, 点击提交, 工单状态, 由1 变为8
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void audit(AuditDTO audit) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@ import com.chushang.common.mybatis.page.CommonParam;
|
||||||
import com.chushang.common.mybatis.utils.PageResult;
|
import com.chushang.common.mybatis.utils.PageResult;
|
||||||
import com.chushang.common.mybatis.utils.WrapperUtils;
|
import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||||
import com.chushang.inspection.ins.GeneratedInsFactory;
|
import com.chushang.inspection.ins.GeneratedInsFactory;
|
||||||
|
import com.chushang.inspection.project.dto.AuditDTO;
|
||||||
import com.chushang.inspection.project.service.InspectionDataService;
|
import com.chushang.inspection.project.service.InspectionDataService;
|
||||||
import com.chushang.inspection.terminal.po.FiveStore;
|
import com.chushang.inspection.terminal.po.FiveStore;
|
||||||
import com.chushang.inspection.terminal.po.Store;
|
import com.chushang.inspection.terminal.po.Store;
|
||||||
|
|
@ -340,6 +341,93 @@ public class WrkInfoServiceImpl extends ServiceImpl<WrkInfoMapper, WrkInfo> impl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工单审核
|
||||||
|
*
|
||||||
|
* @param audit 审核所需
|
||||||
|
* 工单共计有7个状态,
|
||||||
|
* 1. 已分配
|
||||||
|
* 2. 待初审
|
||||||
|
* 3. 待复审
|
||||||
|
* 4. 复审通过
|
||||||
|
* 5. 初审驳回
|
||||||
|
* 6. 复审驳回
|
||||||
|
* 7. 初审通过
|
||||||
|
* 8. 默认审核通过
|
||||||
|
* todo 当任务为只需要初审时, 点击初审通过, 则其状态由2 变为 7
|
||||||
|
* todo 当任务需要复审时, 点击初审通过, 其状态由2 变为3
|
||||||
|
* 当任务不需要审核时, 点击提交, 工单状态, 由1 变为8
|
||||||
|
* @param wrkId 工单id
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void audit(AuditDTO audit, Long wrkId) {
|
||||||
|
Integer auditStatus = audit.getAuditStatus();
|
||||||
|
// 1== auditStatus 代表审核通过, 否则代表审核拒绝
|
||||||
|
// 获取工单信息
|
||||||
|
WrkInfo wrkInfo = getById(wrkId);
|
||||||
|
AssertUtil.invalidate(ObjectUtil.isEmpty(wrkInfo), "未找寻到对应工单");
|
||||||
|
// 审核方式
|
||||||
|
Integer reviewMethod = TaskConfigUtils.reviewMethod(wrkInfo.getTaskId());
|
||||||
|
// 工单状态
|
||||||
|
Integer wrkStatus = wrkInfo.getWrkStatus();
|
||||||
|
// 当前 任务审核方式为 无需审核
|
||||||
|
AssertUtil.invalidate(1 == reviewMethod, "当前工单所属任务为无需审核");
|
||||||
|
// 获取最后一条数据, 用于判断是否为同一个审核人
|
||||||
|
WrkInfoAudit one = infoAuditService.getOne(new LambdaQueryWrapper<WrkInfoAudit>()
|
||||||
|
.eq(WrkInfoAudit::getWrkId, wrkId)
|
||||||
|
.eq(WrkInfoAudit::getAuditState, 1)
|
||||||
|
.eq(WrkInfoAudit::getIsRecord, 0)
|
||||||
|
);
|
||||||
|
Long userId;
|
||||||
|
if (ObjectUtil.isEmpty(one)){
|
||||||
|
userId = -1L;
|
||||||
|
}else {
|
||||||
|
userId = one.getUserId();
|
||||||
|
}
|
||||||
|
AssertUtil.invalidate(Objects.equals(userId, SecurityUtils.getUserId()), "两次审核通过不能为同一人");
|
||||||
|
WrkInfo auditInfo = new WrkInfo();
|
||||||
|
auditInfo.setWrkId(wrkId);
|
||||||
|
// 初审
|
||||||
|
if (2 == reviewMethod){
|
||||||
|
// 审核通过
|
||||||
|
if (1 == auditStatus){
|
||||||
|
|
||||||
|
}
|
||||||
|
// 审核驳回
|
||||||
|
else {
|
||||||
|
|
||||||
|
}
|
||||||
|
// 判断原先的状态
|
||||||
|
auditInfo.setWrkStatus(wrkStatus == 2 ? 7 : 2);
|
||||||
|
}
|
||||||
|
// 需复审
|
||||||
|
else if (3 == reviewMethod){
|
||||||
|
|
||||||
|
}
|
||||||
|
updateById(auditInfo);
|
||||||
|
|
||||||
|
// 新增一条审核工单记录
|
||||||
|
WrkInfoAudit infoAudit = new WrkInfoAudit();
|
||||||
|
infoAudit.setIsRecord(1);
|
||||||
|
// 修改其他记录为历史
|
||||||
|
infoAuditService.update(
|
||||||
|
infoAudit,
|
||||||
|
new LambdaQueryWrapper<WrkInfoAudit>()
|
||||||
|
.eq(WrkInfoAudit::getWrkId, wrkId)
|
||||||
|
);
|
||||||
|
// 同时新增一条记录
|
||||||
|
infoAudit.setAuditState(auditStatus);
|
||||||
|
infoAudit.setAuditTime(LocalDateTime.now());
|
||||||
|
infoAudit.setUserId(SecurityUtils.getUserId());
|
||||||
|
infoAudit.setUserName(SecurityUtils.getUsername());
|
||||||
|
infoAudit.setWrkId(wrkId);
|
||||||
|
infoAudit.setDeptId(SecurityUtils.getDeptId());
|
||||||
|
infoAudit.setIsRecord(0);
|
||||||
|
infoAudit.setRemark(audit.getRemark());
|
||||||
|
// 此处需要创建一条审核记录
|
||||||
|
infoAuditService.save(infoAudit);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算经纬度 偏差
|
* 计算经纬度 偏差
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue