Compare commits

...

4 Commits

  1. 36
      src/main/java/org/springblade/modules/business/contraller/MaintenanceController.java
  2. 277
      src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java
  3. 438
      src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrder.java
  4. 17
      src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java

@ -21,11 +21,10 @@ import org.springblade.modules.business.pojo.entity.MaintenanceTaskDetailGoods;
import org.springblade.modules.business.pojo.entity.maintenance.MaintenancePlan;
import org.springblade.modules.business.pojo.entity.maintenance.MaintenanceTask;
import org.springblade.modules.business.pojo.entity.maintenance.MaintenanceTaskDetail;
import org.springblade.modules.business.service.IMaintenanceApplyGoodsService;
import org.springblade.modules.business.service.IMaintenancePlanService;
import org.springblade.modules.business.service.IMaintenanceTaskDetailService;
import org.springblade.modules.business.service.IMaintenanceTaskService;
import org.springblade.modules.business.service.*;
import org.springblade.modules.business.sms.SmsService;
import org.springblade.modules.system.pojo.entity.User;
import org.springblade.modules.system.service.IUserService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
@ -51,6 +50,8 @@ public class MaintenanceController extends BladeController {
private final IMaintenanceTaskDetailService taskDetailService;
private final IMaintenanceApplyGoodsService maintenanceApplyGoodsService;
private final SmsService smsService;
private final IMessageService messageService;
private final IUserService userService;
/*---------- 维修计划开始 ----------*/
@ -137,7 +138,7 @@ public class MaintenanceController extends BladeController {
taskOld.setServicemanName(task.getServicemanName());
taskOld.setTaskStatus(MaintenanceStatusEnum.TASK_SUPERVISOR_CONFIRM.getValue());
taskService.updateById(taskOld);
smsService.sendSms("17852327323", "靳娜");
smsService.sendSms("15053473693", "张迪");
return R.success();
}
@ -187,7 +188,10 @@ public class MaintenanceController extends BladeController {
taskOld.setTaskStatus(MaintenanceStatusEnum.TASK_SERVICEMAN_SUBMIT.getValue());
taskOld.setFinishTime(DateUtil.now());
taskService.updateById(taskOld);
List<User> deptPersonList = userService.list(Wrappers.lambdaQuery(User.class).eq(User::getDeptId, task.getDeptId()));
for (User deptPerson : deptPersonList) {
messageService.saveMessage(task.getTaskCode(), "维修已完成,请确认", deptPerson.getId(), 1);
}
return R.success();
}
@ -197,7 +201,10 @@ public class MaintenanceController extends BladeController {
MaintenanceTask taskOld = taskService.getById(task.getId());
taskOld.setTaskStatus(MaintenanceStatusEnum.TASK_CUSTOMER_CONFIRM.getValue());
taskService.updateById(taskOld);
//发送消息
String role = "1839536982874193922";
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
messageService.saveMessage(task.getTaskCode(), "客户已经确认巡检任务完成", user.getId(), 1);
return R.success();
}
@ -277,6 +284,9 @@ public class MaintenanceController extends BladeController {
MaintenanceTask taskOld = taskService.getById(task.getId());
taskOld.setRepairStatus(MaintenanceStatusEnum.REPAIR_SERVICEMAN_SUBMIT.getValue());
taskService.updateById(taskOld);
String role = "1839537055389515777";
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
messageService.saveMessage(task.getTaskCode(), "维修方案已提交,请进行审核", user.getId(), 1);
return R.success();
}
@ -286,7 +296,10 @@ public class MaintenanceController extends BladeController {
MaintenanceTask taskOld = taskService.getById(task.getId());
taskOld.setRepairStatus(MaintenanceStatusEnum.REPAIR_SUPERVISOR_CONFIRM.getValue());
taskService.updateById(taskOld);
List<User> userList = userService.list(Wrappers.lambdaQuery(User.class).eq(User::getDeptId, task.getDeptId()));
for (User user : userList) {
messageService.saveMessage(task.getTaskCode(), "维修方案已提交,请确认", user.getId(), 1);
}
return R.success();
}
@ -301,7 +314,7 @@ public class MaintenanceController extends BladeController {
taskOld.setApproveRemark(task.getApproveRemark());
taskOld.setRepairStatus(MaintenanceStatusEnum.SUPERVISOR_CONFIRM_REFUSE.getValue());
taskService.updateById(taskOld);
messageService.saveMessage(task.getTaskCode(), "维修方案已被驳回,请重新提交维修方案", task.getServicemanId(), 1);
return R.success();
}
@ -338,7 +351,10 @@ public class MaintenanceController extends BladeController {
taskOld.setApproveRemark(task.getApproveRemark());
taskOld.setRepairStatus(MaintenanceStatusEnum.CUSTOMER_CONFIRM_REFUSE.getValue());
taskService.updateById(taskOld);
//发送消息
String role = "1847220301770326017";
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
messageService.saveMessage(task.getTaskCode(), "维修方案已被客户驳回,请重新审批", user.getId(), 1);
return R.success();
}

@ -235,32 +235,35 @@ public class WorkOrderController extends BladeController {
workOrderOld.setCustomerOpinion(workOrder.getCustomerOpinion());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_ALLOT.getValue());
workOrderService.updateById(workOrderOld);
User repairPerson = userService.getById(workOrder.getRepairPerson());
messageService.saveMessage(workOrder.getRequirementCode(), "您已接收新的维修单,请尽快处理", repairPerson.getId(), 2);
if (workOrder.getRepairType() == 1) {
messageService.saveMessage(workOrder.getRequirementCode(), "您已接收新的紧急维修单,请火速处理", workOrder.getRepairPerson(), 2);
} else {
messageService.saveMessage(workOrder.getRequirementCode(), "您已接收新的维修单,请尽快处理", workOrder.getRepairPerson(), 2);
}
// todo 审核通过
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KF_ORDER_ALLOT.getName());
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KF_ORDER_ALLOT.getName());
return R.success("");
}
/**
* 维修人员接收工单
*/
@ApiLog(value = "提报管理-维修人员接收工单")
@PostMapping("/serviceman-receive")
public R serviceReceive(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setReceiveOrderTime(DateUtil.now());
if(workOrderOld.getRepairType().equals(1)){
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getName());
}else{
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_ORDER_ACCEPT.getName());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_ORDER_ACCEPT.getValue());
}
workOrderService.updateById(workOrderOld);
/**
* 维修人员接收工单
*/
@ApiLog(value = "提报管理-维修人员接收工单")
@PostMapping("/serviceman-receive")
public R serviceReceive(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setReceiveOrderTime(DateUtil.now());
if (workOrderOld.getRepairType().equals(1)) {
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getName());
} else {
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_ORDER_ACCEPT.getName());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_ORDER_ACCEPT.getValue());
}
workOrderService.updateById(workOrderOld);
// todo 审核通过
@ -281,9 +284,9 @@ public class WorkOrderController extends BladeController {
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getRepaiRejectReason());
approvalService.save(approval);
// todo 审核拒绝
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_ORDER_REFUSE.getName());
return R.success("");
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_ORDER_REFUSE.getName());
return R.success("");
}
/**
@ -314,12 +317,12 @@ public class WorkOrderController extends BladeController {
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.TRUE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案已提交,请确认", workOrder.getInformant(), 2);
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案已提交,请确认", workOrder.getInformant(), 2);
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.ZG_REPAIR_PLAN_PASS.getName());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.ZG_REPAIR_PLAN_PASS.getName());
return R.success("");
return R.success("");
}
/**
@ -352,10 +355,10 @@ public class WorkOrderController extends BladeController {
approvalService.save(approval);
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案已通过,请尽快维修", workOrder.getRepairPerson(), 2);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KH_REPAIR_PLAN_PASS.getName());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KH_REPAIR_PLAN_PASS.getName());
return R.success("");
return R.success("");
}
/**
@ -379,31 +382,31 @@ public class WorkOrderController extends BladeController {
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
messageService.saveMessage(workOrder.getRequirementCode(), "审批方案已驳回,请重新修改", user.getId(), 2);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KH_REPAIR_PLAN_REFUSE.getName());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KH_REPAIR_PLAN_REFUSE.getName());
return R.success("");
return R.success("");
}
/**
* 维修人员提交维修结果
*/
@ApiLog(value = "提报管理-维修人员提交维修结果")
@PostMapping("/serviceman-repair-submit")
public R servicemanRepairSubmit(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setCloseReason(workOrder.getCloseReason());
if(workOrderOld.getRepairType().equals(1)){
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_REPAIR_FINISH.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_EMERGENCY_REPAIR_FINISH.getName());
}else{
workOrderOld.setStatus(WorkOrderStatusEnum.WX_REPAIR_FINISH.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_REPAIR_FINISH.getName());
}
workOrderService.updateById(workOrderOld);
messageService.saveMessage(workOrder.getRequirementCode(), "维修已完成,请确认是否解决", workOrder.getInformant(), 2);
/**
* 维修人员提交维修结果
*/
@ApiLog(value = "提报管理-维修人员提交维修结果")
@PostMapping("/serviceman-repair-submit")
public R servicemanRepairSubmit(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setCloseReason(workOrder.getCloseReason());
if (workOrderOld.getRepairType().equals(1)) {
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_REPAIR_FINISH.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_EMERGENCY_REPAIR_FINISH.getName());
} else {
workOrderOld.setStatus(WorkOrderStatusEnum.WX_REPAIR_FINISH.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_REPAIR_FINISH.getName());
}
workOrderService.updateById(workOrderOld);
messageService.saveMessage(workOrder.getRequirementCode(), "维修已完成,请确认是否解决", workOrder.getInformant(), 2);
// todo 审核通过
@ -438,12 +441,13 @@ public class WorkOrderController extends BladeController {
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
//消息发送
messageService.saveMessage(workOrder.getRequirementCode(), "客户认为维修未完成,请尽快再次解决", workOrder.getRepairPerson(), 2);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),"维修完成,客户审核未通过");
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), "维修完成,客户审核未通过");
return R.success("");
return R.success("");
}
/**
@ -457,8 +461,8 @@ public class WorkOrderController extends BladeController {
workOrderOld.setStatus(WorkOrderStatusEnum.KF_REPAIR_FINISH.getValue());
workOrderService.updateById(workOrderOld);
User customer = userService.getById(workOrder.getInformant());
messageService.saveMessage(workOrder.getRequirementCode(), "请注意维修单评价", customer.getId(), 2);
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KF_REPAIR_FINISH.getName());
messageService.saveMessage(workOrder.getRequirementCode(), "请注意维修单评价", customer.getId(), 2);
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KF_REPAIR_FINISH.getName());
return R.success("");
}
@ -472,9 +476,9 @@ public class WorkOrderController extends BladeController {
workOrderOld.setCloseReason(workOrder.getCloseReason());
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_CLOSE.getValue());
workOrderService.updateById(workOrderOld);
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KF_ORDER_CLOSE.getName());
return R.success("");
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KF_ORDER_CLOSE.getName());
return R.success("");
}
/**
@ -539,76 +543,81 @@ public class WorkOrderController extends BladeController {
URLConnection httpConnection = url.openConnection();
httpConnection.connect();
InputStreamReader isr = new InputStreamReader(httpConnection.getInputStream());
BufferedReader reader = new BufferedReader(isr);
StringBuffer buffer = new StringBuffer();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
isr.close();
return buffer.toString();
}
/**
* 根据设备id查询工作订单列表
*
* @return 返回工作订单列表的响应对象
*/
@GetMapping("/find-list-by-device-id")
public R<List<WorkOrder>> findListByDeviceId(Long deviceId) {
List<WorkOrder> list = workOrderService.list(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getDeviceId,deviceId).eq(BaseEntity::getIsDeleted,0));
return R.data(list);
}
/**
* 评价签字
*/
@ApiLog(value = "提报管理-紧急维修客户确认维修效果")
@PostMapping("/customer-emergency-repair-confirm")
public R customerEmergencyRepairConfirm(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setApprovePoint("客户审批维修结果");
workOrderOld.setApprovePerson(workOrder.getApprovePerson());
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_REPAIR_CONFIRM.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.TRUE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KH_REPAIR_CONFIRM.getName());
return R.success("");
}
/**
* 紧急维修客户确认效果驳回
*/
@ApiLog(value = "提报管理-紧急维修,客户确认效果驳回")
@PostMapping("/customer-emergency-repair-reject")
public R customerEmergencyRepairReject(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setApprovePoint("客户审批维修结果");
workOrderOld.setApprovePerson(workOrder.getApprovePerson());
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getName());
return R.success("");
}
InputStreamReader isr = new InputStreamReader(httpConnection.getInputStream());
BufferedReader reader = new BufferedReader(isr);
StringBuffer buffer = new StringBuffer();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
isr.close();
return buffer.toString();
}
/**
* 根据设备id查询工作订单列表
*
* @return 返回工作订单列表的响应对象
*/
@GetMapping("/find-list-by-device-id")
public R<List<WorkOrder>> findListByDeviceId(Long deviceId) {
List<WorkOrder> list = workOrderService.list(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getDeviceId, deviceId).eq(BaseEntity::getIsDeleted, 0));
return R.data(list);
}
/**
* 评价签字
*/
@ApiLog(value = "提报管理-紧急维修客户确认维修效果")
@PostMapping("/customer-emergency-repair-confirm")
public R customerEmergencyRepairConfirm(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setApprovePoint("客户审批维修结果");
workOrderOld.setApprovePerson(workOrder.getApprovePerson());
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.KH_REPAIR_CONFIRM.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.TRUE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KH_REPAIR_CONFIRM.getName());
//消息发送
messageService.saveMessage(workOrder.getRequirementCode(), "客户审核维修成果已通过,请尽快补填维修方案和物料相关", workOrder.getRepairPerson(), 2);
return R.success("");
}
/**
* 紧急维修客户确认效果驳回
*/
@ApiLog(value = "提报管理-紧急维修,客户确认效果驳回")
@PostMapping("/customer-emergency-repair-reject")
public R customerEmergencyRepairReject(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setApprovePoint("客户审批维修结果");
workOrderOld.setApprovePerson(workOrder.getApprovePerson());
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setStatus(WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
approvalService.save(approval);
// todo 审核通过
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_EMERGENCY_ORDER_ACCEPT.getName());
//消息发送
messageService.saveMessage(workOrder.getRequirementCode(), "客户对维修成功不满意,请尽快再次维修", workOrder.getRepairPerson(), 2);
return R.success("");
}
}

@ -20,222 +20,226 @@ import java.util.Date;
@EqualsAndHashCode(callSuper = true)
public class WorkOrder extends BaseEntity {
/**
* 工单状态:
* -1 草稿 0 待客服处理
* 1 待维修人员确认 2 待提交维修方案
* 3 待主管审批 4 待客户审批
* 5 维修中
* 6 客户评价 7 客服确认付款 8 工单关闭
*/
@Schema(
description = "业务状态",
hidden = true
)
private Integer status;
/**
* 流程实例id
*/
private String processInstanceId;
/**
* 故障位置
*/
private String faultLocation;
/**
* 客服意见
*/
private String customerOpinion;
/**
* 设备id
*/
private Long deviceId;
/**
* 设备名称
*/
private String deviceName;
/**
* 故障类型
*/
private String faultType;
/**
* 故障描述
*/
private String faultDescribe;
/**
* 填报人
*/
private Long informant;
/**
* 填报人电话
*/
private String informantPhone;
/**
* 填报时间
*/
private Date fillingTime;
/**
* 需求单号
*/
private String requirementCode;
/**
* 提报单位
*/
private String reportUnit;
/**
* 提报单位名称
*/
@TableField(exist = false)
private String reportUnitName;
/**
* 维修班组
*/
private Long maintenanceTeam;
/**
* 派单时间客服
*/
private Date dispatchTime;
/**
* 计划完成时间
*/
private Date planCompleteTime;
/**
* 维修人员
*/
private Long repairPerson;
/**
* 备注
*/
private String remark;
/**
* 接单时间维修人员
*/
private Date receiveOrderTime;
/**
* 故障原因
*/
private String faultCause;
/**
* 处理方法
*/
private String processMethod;
/**
* 是否需要申领物料(0否 1是)
*/
private Integer isNeedMaterial;
/**
* 审批结果0不通过 1通过
*/
private Integer approveResult;
/**
* 审核节点
*/
private String approvePoint;
/**
* 审批人
*/
private Long approvePerson;
/**
* 审批时间
*/
private Date approveTime;
/**
* 审批备注
*/
private String approveRemark;
/**
* 评价质量是否满意(0否 1是)
*/
private Integer isOkQuality;
/**
* 评价安全是否满意(0否 1是)
*/
private Integer isOkSecure;
/**
* 评价时效是否满意(0否 1是)
*/
private Integer isOkValidity;
/**
* 签名图片地址
*/
private String signatureUrl;
/**
* 签名人
*/
private String signaturePerson;
/**
* 签名时间
*/
private Date signatureTime;
/**
* 签名时间
*/
private Date finishTime;
/**
* 维修人员驳回原因
*/
private String repaiRejectReason;
/**
* 维修负责人驳回原因
*/
private String repaiTeamRejectReason;
/**
* 关闭原因
*/
private String closeReason;
/**
* 总价
*/
private Double totalPrice;
/**
* 折扣
*/
private Double discount;
/**
* 折扣后总价
*/
private Double discountPrice;
/**
* 维修类型 1紧急维修 2故障维修 3改造需求
*/
private Integer repairType;
/**
* 工单状态:
* -1 草稿 0 待客服处理
* 1 待维修人员确认 2 待提交维修方案
* 3 待主管审批 4 待客户审批
* 5 维修中
* 6 客户评价 7 客服确认付款 8 工单关闭
*/
@Schema(
description = "业务状态",
hidden = true
)
private Integer status;
/**
* 流程实例id
*/
private String processInstanceId;
/**
* 故障位置
*/
private String faultLocation;
/**
* 客服意见
*/
private String customerOpinion;
/**
* 设备id
*/
private Long deviceId;
/**
* 设备名称
*/
private String deviceName;
/**
* 故障类型
*/
private String faultType;
/**
* 故障描述
*/
private String faultDescribe;
/**
* 填报人
*/
private Long informant;
/**
* 填报人电话
*/
private String informantPhone;
/**
* 填报时间
*/
private Date fillingTime;
/**
* 需求单号
*/
private String requirementCode;
/**
* 提报单位
*/
private String reportUnit;
/**
* 提报单位名称
*/
@TableField(exist = false)
private String reportUnitName;
/**
* 维修班组
*/
private Long maintenanceTeam;
/**
* 派单时间客服
*/
private Date dispatchTime;
/**
* 计划完成时间
*/
private Date planCompleteTime;
/**
* 维修人员
*/
private Long repairPerson;
/**
* 备注
*/
private String remark;
/**
* 接单时间维修人员
*/
private Date receiveOrderTime;
/**
* 故障原因
*/
private String faultCause;
/**
* 处理方法
*/
private String processMethod;
/**
* 是否需要申领物料(0否 1是)
*/
private Integer isNeedMaterial;
/**
* 审批结果0不通过 1通过
*/
private Integer approveResult;
/**
* 审核节点
*/
private String approvePoint;
/**
* 审批人
*/
private Long approvePerson;
/**
* 审批时间
*/
private Date approveTime;
/**
* 审批备注
*/
private String approveRemark;
/**
* 评价质量是否满意(0否 1是)
*/
private Integer isOkQuality;
/**
* 评价安全是否满意(0否 1是)
*/
private Integer isOkSecure;
/**
* 评价时效是否满意(0否 1是)
*/
private Integer isOkValidity;
/**
* 签名图片地址
*/
private String signatureUrl;
/**
* 签名人
*/
private String signaturePerson;
/**
* 签名时间
*/
private Date signatureTime;
/**
* 签名时间
*/
private Date finishTime;
/**
* 维修人员驳回原因
*/
private String repaiRejectReason;
/**
* 维修负责人驳回原因
*/
private String repaiTeamRejectReason;
/**
* 关闭原因
*/
private String closeReason;
/**
* 总价
*/
private Double totalPrice;
/**
* 折扣
*/
private Double discount;
/**
* 折扣后总价
*/
private Double discountPrice;
/**
* 维修类型
*/
private Integer repairType;
/**
* 维修类型 1紧急维修 2故障维修 3改造需求
*/
}

@ -151,7 +151,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
// 保存附件
saveFiles(workOrder.getVideoAttaches(), workOrder.getPicAttaches(), workOrder.getId());
//保存日志
LogUtil.saveLog(workOrder.getRequirementCode(),user.getName()+"提交,待客服处理。");
LogUtil.saveLog(workOrder.getRequirementCode(), user.getName() + "提交,待客服处理。");
}
return save;
}
@ -265,7 +265,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
public void repairPlanSubmit(WorkOrder workOrder) {
// 修改工单状态
WorkOrder workOrderOld = this.getById(workOrder.getId());
if(workOrderOld.getRepairType().equals(1)){
if (workOrderOld.getRepairType().equals(1)) {
workOrderOld.setStatus(WorkOrderStatusEnum.WX_REPAIR_PLAN_SUBMIT_AFTER.getValue());
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.WX_REPAIR_PLAN_SUBMIT_AFTER.getName());
@ -279,7 +279,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
//发送消息给主管
String role = "1839537055389515777";
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案已提交,请审批", user.getId(), 2);
if (workOrder.getRepairType() == 1) {
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案及物料相关已补交,请评价", user.getId(), 2);
} else {
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案已提交,请审批", user.getId(), 2);
}
}
this.updateById(workOrderOld);
}
@ -305,7 +309,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
messageService.saveMessage(workOrder.getRequirementCode(), "维修方案审批未通过,请重新提交方案", workOrder.getRepairPerson(), 2);
//保存日志
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.ZG_REPAIR_PLAN_REFUSE.getName());
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.ZG_REPAIR_PLAN_REFUSE.getName());
}
@Transactional(rollbackFor = Exception.class)
@ -328,10 +332,10 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
// 若未产生费用,直接关闭工单
if (workOrderOld.getDiscountPrice() == null || workOrderOld.getDiscountPrice() == 0) {
workOrderOld.setStatus(WorkOrderStatusEnum.KF_ORDER_CLOSE.getValue());
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KF_ORDER_CLOSE.getName());
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KF_ORDER_CLOSE.getName());
} else {
workOrderOld.setStatus(WorkOrderStatusEnum.KH_EVALUATE_FINISH.getValue());
LogUtil.saveLog(workOrderOld.getRequirementCode(),WorkOrderStatusEnum.KH_EVALUATE_FINISH.getName());
LogUtil.saveLog(workOrderOld.getRequirementCode(), WorkOrderStatusEnum.KH_EVALUATE_FINISH.getName());
}
this.updateById(workOrderOld);
@ -342,6 +346,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
deviceService.updateStatus(CommonConstant.DEVICE_RUN_STATUS_WORKING, workOrder.getDeviceId());
String role = "1839536982874193922";
User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getRoleId, role));
//消息发送
messageService.saveMessage(workOrder.getRequirementCode(), "已完成维修,请确认客户是否付款", user.getId(), 2);
}

Loading…
Cancel
Save