1. 工单状态修改

2. 客服创建需求工单
master
liuqingkun 1 year ago
parent dbdb73e5f0
commit b7bbc0bd0a
  1. 8
      src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java
  2. 100
      src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java
  3. 70
      src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java
  4. 16
      src/main/java/org/springblade/modules/business/service/IWorkOrderService.java
  5. 2
      src/main/java/org/springblade/modules/business/service/impl/InvoiceApplyServiceImpl.java
  6. 95
      src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java

@ -208,23 +208,23 @@ public class WorkBenchesController extends BladeController {
if ("0".equals(perType)) {
// 客服今日待办
todoCount = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).in(WorkOrder::getStatus, CUSTOMER_SUBMIT.getValue(), EVALUATE_FINISH.getValue()));
todoCount = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).in(WorkOrder::getStatus, KH_ORDER_SUBMIT.getValue(), KH_EVALUATE_FINISH.getValue()));
// 客服今日已办
finish = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getDispatchTime, start, end));
} else if ("1".equals(perType)) {
// 主管今日待办
todoCount = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, SUPERVISOR_CONFIRM.getValue()));
todoCount = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, WX_REPAIR_PLAN_SUBMIT.getValue()));
// 主管今日已办
finish = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getDispatchTime, start, end));
}
LocalDate now = LocalDate.now();
// 本月已办结-需求提报
int monthCountWork = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, TICKET.getValue()).between(WorkOrder::getSignatureTime, getMonthStartAsDate(now), getMonthEndAsDate(now)));
int monthCountWork = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, KF_TICKET_FINISH.getValue()).between(WorkOrder::getSignatureTime, getMonthStartAsDate(now), getMonthEndAsDate(now)));
// 本月已办结-巡检任务
int monthCount = (int) maintenanceTaskService.count(Wrappers.lambdaQuery(MaintenanceTask.class).eq(MaintenanceTask::getTaskStatus, TASK_CUSTOMER_CONFIRM.getValue()).between(MaintenanceTask::getFinishTime, getMonthStartAsDate(now), getMonthEndAsDate(now)));
// 今年已办结-需求提报
int yearCountWork = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, TICKET.getValue()).between(WorkOrder::getSignatureTime, getYearStartAsDate(now), getYearEndAsDate(now)));
int yearCountWork = (int) workOrderService.count(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getStatus, KF_TICKET_FINISH.getValue()).between(WorkOrder::getSignatureTime, getYearStartAsDate(now), getYearEndAsDate(now)));
// 今年已办结-巡检任务
int yearCount = (int) maintenanceTaskService.count(Wrappers.lambdaQuery(MaintenanceTask.class).eq(MaintenanceTask::getTaskStatus, TASK_CUSTOMER_CONFIRM.getValue()).between(MaintenanceTask::getFinishTime, getYearStartAsDate(now), getYearEndAsDate(now)));

@ -78,11 +78,11 @@ public class WorkOrderController extends BladeController {
case "2":
// 客服
// eq.in(WorkOrder::getCreateDept, Func.toLongList(AuthUtil.getDeptId()));
wrapper.ne(WorkOrder::getStatus, WorkOrderStatusEnum.DRAFT.getValue());
wrapper.ne(WorkOrder::getStatus, WorkOrderStatusEnum.KH_ORDER_DRAFT.getValue());
break;
case "3":
// 维修负责人
wrapper.ge(WorkOrder::getStatus, WorkOrderStatusEnum.SERVICEMAN_CONFIRM.getValue());
wrapper.ge(WorkOrder::getStatus, WorkOrderStatusEnum.WX_ORDER_ACCEPT.getValue());
break;
case "4":
// 维修人员
@ -118,6 +118,42 @@ public class WorkOrderController extends BladeController {
return R.data(pages);
}
/**
* 客服查询自己提报的订单列表
*
* @param workOrderDTO 工作订单DTO包含查询条件
* @param query 分页查询对象
* @return 返回工作订单列表的响应对象
*/
@GetMapping("/service-page")
public R<IPage<WorkOrder>> servicePage(WorkOrderDTO workOrderDTO, Query query) {
// 创建工作订单的查询条件包装器
LambdaQueryWrapper<WorkOrder> wrapper = Wrappers.lambdaQuery(WorkOrder.class);
wrapper.eq(WorkOrder::getCreateUser, AuthUtil.getUserId());
// 设置查询条件:故障地点、故障类型、创建时间范围,并按创建时间降序排序
wrapper.eq(StringUtils.isNotBlank(workOrderDTO.getFaultLocation()), WorkOrder::getFaultLocation, workOrderDTO.getFaultLocation());
wrapper.eq(StringUtils.isNotBlank(workOrderDTO.getFaultType()), WorkOrder::getFaultType, workOrderDTO.getFaultType());
if (StringUtils.isNotBlank(workOrderDTO.getStatusSearch())) {
wrapper.in(WorkOrder::getStatus, workOrderDTO.getStatusSearch().split(","));
}
wrapper.like(StringUtils.isNotBlank(workOrderDTO.getRequirementCode()), WorkOrder::getRequirementCode, workOrderDTO.getRequirementCode());
wrapper.between(workOrderDTO.getStartTime() != null && workOrderDTO.getEndTime() != null, WorkOrder::getCreateTime, workOrderDTO.getStartTime(), workOrderDTO.getEndTime());
wrapper.orderByDesc(WorkOrder::getCreateTime);
// 执行分页查询
IPage<WorkOrder> pages = workOrderService.page(Condition.getPage(query), wrapper);
pages.getRecords().forEach(order -> {
if (Func.isNotEmpty(order.getReportUnit())) {
order.setReportUnitName(DeptCache.getDept(Long.parseLong(order.getReportUnit())).getDeptName());
}
});
// 返回查询结果
return R.data(pages);
}
/**
* 工单表 详情
*/
@ -145,6 +181,24 @@ public class WorkOrderController extends BladeController {
return R.status(workOrderService.saveDraft(workOrder));
}
/**
* 客服保存工单并提交
*/
@ApiLog(value = "提报管理-客服保存工单并提交")
@PostMapping("/service-save")
public R serviceSave(@RequestBody List<WorkOrderVO> workOrder) {
return R.status(workOrderService.serviceSaveAndSubmit(workOrder));
}
/**
* 客服工单为草稿
*/
@ApiLog(value = "提报管理-客服工单为草稿")
@PostMapping("/service-draft")
public R serviceDraft(@RequestBody List<WorkOrderVO> workOrder) {
return R.status(workOrderService.serviceSave(workOrder));
}
/**
* 修改工单信息
*/
@ -166,7 +220,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setPlanCompleteTime(workOrder.getPlanCompleteTime());
workOrderOld.setRemark(workOrder.getRemark());
workOrderOld.setCustomerOpinion(workOrder.getCustomerOpinion());
workOrderOld.setStatus(WorkOrderStatusEnum.SERVICE_SUBMIT.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_SUBMIT.getValue());
workOrderService.updateById(workOrderOld);
// todo 审核通过
@ -181,7 +235,7 @@ public class WorkOrderController extends BladeController {
public R serviceReceive(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setReceiveOrderTime(DateUtil.now());
workOrderOld.setStatus(WorkOrderStatusEnum.SERVICEMAN_CONFIRM.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_ORDER_ACCEPT.getValue());
workOrderService.updateById(workOrderOld);
// todo 审核通过
@ -197,7 +251,7 @@ public class WorkOrderController extends BladeController {
public R serviceReject(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setRepaiRejectReason(workOrder.getRepaiRejectReason());
workOrderOld.setStatus(WorkOrderStatusEnum.SERVICE_REFUSE.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_ORDER_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getRepaiRejectReason());
@ -214,7 +268,7 @@ public class WorkOrderController extends BladeController {
@PostMapping("/serviceman-submit")
public R serviceSubmit(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setStatus(WorkOrderStatusEnum.SUPERVISOR_CONFIRM.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_REPAIR_PLAN_SUBMIT.getValue());
workOrderService.updateById(workOrderOld);
// todo 审核通过
@ -234,7 +288,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.CUSTOMER_CONFIRM.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.ZG_REPAIR_PLAN_PASS.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.TRUE_STR, DateUtil.now(), workOrder.getApproveRemark());
@ -257,7 +311,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setRepaiTeamRejectReason(workOrder.getRepaiTeamRejectReason());
workOrderOld.setStatus(WorkOrderStatusEnum.SUPERVISOR_CONFIRM_REFUSE.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.ZG_REPAIR_PLAN_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
@ -280,7 +334,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.REPAIRING.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_REPAIR_PLAN_PASS.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.TRUE_STR, DateUtil.now(), workOrder.getApproveRemark());
@ -303,7 +357,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.CUSTOMER_CONFIRM_REFUSE.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_REPAIR_PLAN_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
@ -320,7 +374,7 @@ public class WorkOrderController extends BladeController {
@PostMapping("/serviceman-repair-submit")
public R servicemanRepairSubmit(@RequestBody WorkOrder workOrder) {
workOrder = workOrderService.getById(workOrder.getId());
workOrder.setStatus(WorkOrderStatusEnum.REPAIR_FINISH.getValue());
workOrder.setStatus(WorkOrderStatusEnum.WX_REPAIR_FINISH.getValue());
workOrderService.updateById(workOrder);
// todo 审核通过
@ -350,9 +404,9 @@ public class WorkOrderController extends BladeController {
workOrderOld.setIsOkQuality(workOrder.getIsOkQuality());
// 若未产生费用,直接关闭工单
if (workOrderOld.getDiscountPrice() == null || workOrderOld.getDiscountPrice() == 0) {
workOrderOld.setStatus(WorkOrderStatusEnum.CLOSE.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_CLOSE.getValue());
} else {
workOrderOld.setStatus(WorkOrderStatusEnum.EVALUATE_FINISH.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_EVALUATE_FINISH.getValue());
}
workOrderService.updateById(workOrderOld);
@ -376,7 +430,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.REPAIRING.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_REPAIR_PLAN_PASS.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
@ -387,6 +441,20 @@ public class WorkOrderController extends BladeController {
return R.success("");
}
/**
* 工单表 客服维修完成
*/
@ApiLog(value = "提报管理-客服维修完成")
@PostMapping("/service-repair-submit")
public R serviceRepairFinish(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setCloseReason(workOrder.getCloseReason());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_REPAIR_FINISH.getValue());
workOrderService.updateById(workOrderOld);
return R.success("");
}
/**
* 工单表 客服关闭
*/
@ -395,7 +463,7 @@ public class WorkOrderController extends BladeController {
public R serviceClose(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setCloseReason(workOrder.getCloseReason());
workOrderOld.setStatus(WorkOrderStatusEnum.SERVICE_CLOSE.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_CLOSE.getValue());
workOrderService.updateById(workOrderOld);
return R.success("");
@ -410,7 +478,7 @@ public class WorkOrderController extends BladeController {
List<WorkOrder> orderOldList = new ArrayList<>();
for (WorkOrder workOrder : orderList) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setStatus(WorkOrderStatusEnum.TICKET.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_TICKET_FINISH.getValue());
orderOldList.add(workOrderOld);
}

@ -12,80 +12,92 @@ import lombok.Getter;
@AllArgsConstructor
public enum WorkOrderStatusEnum {
// ---------------------------------- 客户状态以1开头
/**
* 草稿
*/
DRAFT(-1),
KH_ORDER_DRAFT(100),
/**
* 客户提交 待客服处理
*/
CUSTOMER_SUBMIT(0),
KH_ORDER_SUBMIT(101),
/**
* 服沟通后关闭工单
* 户维修方案审核拒绝待主管审核
*/
SERVICE_CLOSE(20),
KH_REPAIR_PLAN_REFUSE(102),
/**
* 服分配维修人员待维修人员确认
* 户维修方案审批通过 维修中
*/
SERVICE_SUBMIT(1),
KH_REPAIR_PLAN_PASS(103),
/**
* 维修人员拒绝 待客服处理
* 评价完成待客服确认付款
*/
SERVICE_REFUSE(100),
KH_EVALUATE_FINISH(104),
// ---------------------------------- 客服状态以2开头
/**
* 维修人员确认待提交维修方案
* 客服电话接单创建工单
*/
SERVICEMAN_CONFIRM(2),
KF_ORDER_DRAFT(200),
/**
* 维修人员提交待主管审批
* 客服电话提交工单并分配人员
*/
SUPERVISOR_CONFIRM(3),
KF_ORDER_SUBMIT(201),
/**
* 主管审核拒绝待提交维修方案
* 客服沟通后关闭工单
*/
SUPERVISOR_CONFIRM_REFUSE(101),
KF_REPAIR_FINISH(202),
/**
* 主管审批通过待客户审批
* 工单关闭
*/
CUSTOMER_CONFIRM(4),
KF_ORDER_CLOSE(203),
/**
* 客户审核拒绝待主管审核
* 已开发票
*/
CUSTOMER_CONFIRM_REFUSE(102),
KF_TICKET_FINISH(204),
// ---------------------------------- 维修人员以3开头
/**
* 客户审批通过 维修中
* 维修人员拒绝工单 待客服处理
*/
REPAIRING(5),
WX_ORDER_REFUSE(300),
/**
* 维修完成待评价
* 维修人员接收工单待提交维修方案
*/
REPAIR_FINISH(6),
WX_ORDER_ACCEPT(301),
/**
* 评价完成待客服确认付款
* 维修人员提交维修方案待主管审批
*/
EVALUATE_FINISH(7),
WX_REPAIR_PLAN_SUBMIT(302),
/**
* 工单关闭
* 维修人员提交维修完成待评价
*/
CLOSE(8),
WX_REPAIR_FINISH(303),
// ---------------------------------- 维修人员以4开头
/**
* 已开发票
* 主管审核拒绝待提交维修方案
*/
TICKET(9),
ZG_REPAIR_PLAN_REFUSE(400),
/**
* 主管审批通过待客户审批
*/
ZG_REPAIR_PLAN_PASS(401),
;
final int value;

@ -39,6 +39,22 @@ public interface IWorkOrderService extends BaseService<WorkOrder> {
*/
boolean saveAndSubmit(List<WorkOrderVO> workOrder);
/**
* 客服保存工单
*
* @param workOrder
* @return
*/
boolean serviceSave(List<WorkOrderVO> workOrder);
/**
* 客服保存并提交工单
*
* @param workOrder
* @return
*/
boolean serviceSaveAndSubmit(List<WorkOrderVO> workOrder);
/**
* 工单签名
*

@ -108,7 +108,7 @@ public class InvoiceApplyServiceImpl extends BaseServiceImpl<InvoiceApplyMapper,
}
if (String.valueOf(InvoiceEnum.BUSINESS_TYPE_MAINTENANCE.getValue()) == applyDetail.getBusinessType()) {
WorkOrder workOrderOld = workOrderService.getById(applyDetail.getBusinessId());
workOrderOld.setStatus(WorkOrderStatusEnum.TICKET.getValue());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_TICKET_FINISH.getValue());
orderOldList.add(workOrderOld);
}
}

@ -1,5 +1,6 @@
package org.springblade.modules.business.service.impl;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.AllArgsConstructor;
import lombok.Synchronized;
@ -25,7 +26,6 @@ import org.springblade.modules.system.service.IUserService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@ -86,7 +86,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
boolean save = false;
for (WorkOrderVO workOrder : workOrders) {
// 草稿状态
workOrder.setStatus(WorkOrderStatusEnum.DRAFT.getValue());
workOrder.setCreateUser(AuthUtil.getUserId());
workOrder.setStatus(WorkOrderStatusEnum.KH_ORDER_DRAFT.getValue());
save = this.saveOrUpdate(workOrder);
// 保存附件
@ -95,8 +96,6 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
return save;
}
/**
* @param workOrders
* @return
@ -105,21 +104,13 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
@Transactional(rollbackFor = Exception.class)
@Synchronized
public boolean saveAndSubmit(List<WorkOrderVO> workOrders) {
SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyyMMdd HH:mm:ss");
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
Date date = new Date();
String todayStr = format.format(date);
String startTimeStr = todayStr + " 00:00:00";
String endTimeStr = todayStr + " 23:59:59";
Date now = DateUtil.date();
String todayStr = format.format(now);
boolean save = false;
int count = 0;
try {
count = (int) this.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getCreateTime, dateTimeFormat.parse(startTimeStr), dateTimeFormat.parse(endTimeStr)));
} catch (ParseException e) {
log.error(e.toString());
}
int count = (int) this.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getCreateTime, DateUtil.beginOfDay(now), DateUtil.endOfDay(now)));
User user = userService.getById(AuthUtil.getUserId());
for (WorkOrderVO workOrder : workOrders) {
@ -127,10 +118,10 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
String hz = count < 9 ? "0" + (count + 1) : count + 1 + "";
String code = "WX-" + todayStr + "-" + hz;
workOrder.setFillingTime(date);
workOrder.setFillingTime(now);
workOrder.setRequirementCode(code);
// 待接单
workOrder.setStatus(WorkOrderStatusEnum.CUSTOMER_SUBMIT.getValue());
workOrder.setStatus(WorkOrderStatusEnum.KH_ORDER_SUBMIT.getValue());
if (user != null) {
workOrder.setInformant(user.getId());
@ -141,10 +132,70 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
save = this.saveOrUpdate(workOrder);
count++;
// // 记录流程id
// BladeFlow flow = flowService.startProcessInstance(String.valueOf(workOrder.getId()));
// workOrder.setProcessInstanceId(flow.getProcessInstanceId());
// updateById(workOrder);
// 保存附件
saveFiles(workOrder.getVideoAttaches(), workOrder.getPicAttaches(), workOrder.getId());
}
return save;
}
/**
* @param workOrders
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
@Synchronized
public boolean serviceSave(List<WorkOrderVO> workOrders) {
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
Date now = DateUtil.date();
String todayStr = format.format(now);
boolean save = false;
int count = (int) this.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getCreateTime, DateUtil.beginOfDay(now), DateUtil.endOfDay(now)));
for (WorkOrderVO workOrder : workOrders) {
// 查询今天已提报数量
String hz = count < 9 ? "0" + (count + 1) : count + 1 + "";
String code = "WX-" + todayStr + "-" + hz;
workOrder.setFillingTime(now);
workOrder.setRequirementCode(code);
workOrder.setStatus(WorkOrderStatusEnum.KF_ORDER_DRAFT.getValue());
workOrder.setCreateUser(AuthUtil.getUserId());
save = this.saveOrUpdate(workOrder);
count++;
// 保存附件
saveFiles(workOrder.getVideoAttaches(), workOrder.getPicAttaches(), workOrder.getId());
}
return save;
}
/**
* @param workOrders
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
@Synchronized
public boolean serviceSaveAndSubmit(List<WorkOrderVO> workOrders) {
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
Date now = DateUtil.date();
String todayStr = format.format(now);
boolean save = false;
int count = (int) this.count(Wrappers.lambdaQuery(WorkOrder.class).between(WorkOrder::getCreateTime, DateUtil.beginOfDay(now), DateUtil.endOfDay(now)));
for (WorkOrderVO workOrder : workOrders) {
// 查询今天已提报数量
String hz = count < 9 ? "0" + (count + 1) : count + 1 + "";
String code = "WX-" + todayStr + "-" + hz;
workOrder.setFillingTime(now);
workOrder.setRequirementCode(code);
workOrder.setStatus(WorkOrderStatusEnum.KF_ORDER_SUBMIT.getValue());
workOrder.setCreateUser(AuthUtil.getUserId());
save = this.saveOrUpdate(workOrder);
count++;
// 保存附件
saveFiles(workOrder.getVideoAttaches(), workOrder.getPicAttaches(), workOrder.getId());

Loading…
Cancel
Save