diff --git a/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java b/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java index 5b9829f..02c9d62 100644 --- a/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java +++ b/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.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))); diff --git a/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java b/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java index 6ef9f06..320607f 100644 --- a/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java +++ b/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java @@ -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> servicePage(WorkOrderDTO workOrderDTO, Query query) { + // 创建工作订单的查询条件包装器 + LambdaQueryWrapper 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 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 workOrder) { + return R.status(workOrderService.serviceSaveAndSubmit(workOrder)); + } + + /** + * 客服工单为草稿 + */ + @ApiLog(value = "提报管理-客服工单为草稿") + @PostMapping("/service-draft") + public R serviceDraft(@RequestBody List 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 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); } diff --git a/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java b/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java index e3d6951..7314809 100644 --- a/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java +++ b/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java @@ -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; diff --git a/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java b/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java index 3ab8a5d..0bb30a2 100644 --- a/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java +++ b/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java @@ -39,6 +39,22 @@ public interface IWorkOrderService extends BaseService { */ boolean saveAndSubmit(List workOrder); + /** + * 客服保存工单 + * + * @param workOrder + * @return + */ + boolean serviceSave(List workOrder); + + /** + * 客服保存并提交工单 + * + * @param workOrder + * @return + */ + boolean serviceSaveAndSubmit(List workOrder); + /** * 工单签名 * diff --git a/src/main/java/org/springblade/modules/business/service/impl/InvoiceApplyServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/InvoiceApplyServiceImpl.java index ffbc3ef..e6fe37b 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/InvoiceApplyServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/InvoiceApplyServiceImpl.java @@ -108,7 +108,7 @@ public class InvoiceApplyServiceImpl extends BaseServiceImpl 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 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 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());