【admin】新增# 1.新增工单去向 2.新增检修详情
parent
ab69f6bb85
commit
f770a71adf
|
@ -14,11 +14,21 @@ import com.hcy.admin.vo.order.MaintenanceOrderDetailVo;
|
|||
import com.hcy.common.constant.GlobalConstant;
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.order.MaintenanceOrderDto;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
import com.hcy.common.entity.fault.Fault;
|
||||
import com.hcy.common.entity.order.MaintenanceOrder;
|
||||
import com.hcy.common.entity.system.SystemAuthAdmin;
|
||||
import com.hcy.common.entity.user.User;
|
||||
import com.hcy.common.enums.order.MaintenanceOrderStatusEnum;
|
||||
import com.hcy.common.enums.order.OrderStateEnum;
|
||||
import com.hcy.common.exception.OperateException;
|
||||
import com.hcy.common.mapper.client.ClientMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentMapper;
|
||||
import com.hcy.common.mapper.fault.FaultMapper;
|
||||
import com.hcy.common.mapper.order.MaintenanceOrderMapper;
|
||||
import com.hcy.common.mapper.system.SystemAuthAdminMapper;
|
||||
import com.hcy.common.mapper.user.UserMapper;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
@ -39,6 +49,21 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
@Resource
|
||||
IDevRegionService regionService;
|
||||
|
||||
@Resource
|
||||
ClientMapper clientMapper;
|
||||
|
||||
@Resource
|
||||
EquipmentMapper equipmentMapper;
|
||||
|
||||
@Resource
|
||||
SystemAuthAdminMapper systemAuthAdminMapper;
|
||||
|
||||
@Resource
|
||||
FaultMapper faultMapper;
|
||||
|
||||
@Resource
|
||||
UserMapper userMapper;
|
||||
|
||||
/**
|
||||
* 检修订单列表
|
||||
*
|
||||
|
@ -91,6 +116,29 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
|
||||
MaintenanceOrderDetailVo vo = new MaintenanceOrderDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
|
||||
//设置客户信息
|
||||
Client client = clientMapper.selectById(model.getClientId());
|
||||
vo.setClientName(client.getClientName());
|
||||
|
||||
//设置设备信息
|
||||
Equipment equipment = equipmentMapper.selectById(model.getEquipmentId());
|
||||
vo.setEquipment(equipment);
|
||||
|
||||
//设置接收人姓名
|
||||
SystemAuthAdmin systemAuthAdmin = systemAuthAdminMapper.selectById(model.getCreatorId());
|
||||
vo.setCreatorName(systemAuthAdmin.getNickname());
|
||||
|
||||
//设置接单人名称
|
||||
User user = userMapper.selectById(model.getReceiverId());
|
||||
if(user != null){
|
||||
vo.setReceiverName(user.getNickname());
|
||||
}
|
||||
|
||||
//设置故障名称
|
||||
Fault fault = faultMapper.selectById(model.getFaultId());
|
||||
vo.setFaultName(fault.getName());
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
|
@ -105,8 +153,8 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
BeanUtils.copyProperties(maintenanceOrderParam, model);
|
||||
|
||||
//订单去向
|
||||
Integer orderDestination = maintenanceOrderParam.getOrderDestination();
|
||||
if (orderDestination == OrderStateEnum.WORK_ORDER_TANK.getStatus()) {
|
||||
Integer repairWorkOrderFlow = maintenanceOrderParam.getRepairWorkOrderFlow();
|
||||
if (repairWorkOrderFlow == OrderStateEnum.WORK_ORDER_TANK.getStatus()) {
|
||||
model.setOrderStatus(OrderStateEnum.WAITING_LIST.getStatus());
|
||||
} else {
|
||||
model.setOrderStatus(OrderStateEnum.REPAIRER.getStatus());
|
||||
|
@ -124,28 +172,27 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
String formatDate = simpleDateFormat.format(new Date());
|
||||
|
||||
StringBuilder currentOrderNo = new StringBuilder(formatDate + "000001");
|
||||
MaintenanceOrder maintenanceOrder = maintenanceOrderMapper.selectOne(new LambdaQueryWrapper<MaintenanceOrder>()
|
||||
.eq(MaintenanceOrder::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.like(MaintenanceOrder::getOrderNo, formatDate));
|
||||
//当天日期加第一条流水号,如果数据库不存在,则代表今天第一条数据
|
||||
if (maintenanceOrder == null) {
|
||||
return currentOrderNo.toString();
|
||||
} else {
|
||||
MaintenanceOrder lastmMaintenanceOrder = maintenanceOrderMapper.selectOne(new LambdaQueryWrapper<MaintenanceOrder>()
|
||||
.eq(MaintenanceOrder::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.like(MaintenanceOrder::getOrderNo, formatDate)
|
||||
.orderByDesc(MaintenanceOrder::getOrderNo));
|
||||
.orderByDesc(MaintenanceOrder::getOrderNo)
|
||||
.last("limit 1"));
|
||||
//当天日期加第一条流水号,如果数据库不存在,则代表今天第一条数据
|
||||
if (lastmMaintenanceOrder == null) {
|
||||
return currentOrderNo.toString();
|
||||
} else {
|
||||
int lastOrderNo = Integer.parseInt(lastmMaintenanceOrder.getOrderNo().substring(8));
|
||||
int newOrderNoLength = String.valueOf(lastOrderNo + 1).length();
|
||||
int length = String.valueOf((lastOrderNo + 1)).length();
|
||||
StringBuilder newOrderNo = new StringBuilder(lastOrderNo + 1 + "");
|
||||
|
||||
//如果流水号长度小于6位,则在前面补0
|
||||
if (newOrderNoLength < 6) {
|
||||
for (int i = 0; i < 6 - newOrderNoLength; i++) {
|
||||
currentOrderNo.append("0");
|
||||
if (length < 6) {
|
||||
for (int i = 0; i < 6 - length; i++) {
|
||||
newOrderNo.insert(0, "0");
|
||||
}
|
||||
}
|
||||
|
||||
return formatDate + currentOrderNo;
|
||||
return formatDate + newOrderNo;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -166,7 +213,15 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
|
||||
if(param.getOrderStatus() == MaintenanceOrderStatusEnum.WAITING_LIST.getStatus() ||
|
||||
param.getOrderStatus() == MaintenanceOrderStatusEnum.PENDING_ORDER.getStatus()){
|
||||
|
||||
model.setReceiverId(param.getReceiverId());
|
||||
model.setReceiverType(param.getReceiverType());
|
||||
model.setOrderDistance(param.getOrderDistance());
|
||||
model.setProvinceId(param.getProvinceId());
|
||||
model.setCityId(param.getCityId());
|
||||
model.setDistrictId(param.getDistrictId());
|
||||
model.setFaultId(param.getFaultId());
|
||||
model.setFaultDescription(param.getFaultDescription());
|
||||
model.setRemark(param.getRemark());
|
||||
}else{
|
||||
throw new OperateException("工单已被接单,无法编辑");
|
||||
}
|
||||
|
@ -189,7 +244,14 @@ public class MaintenanceOrderServiceImpl implements IMaintenanceOrderService {
|
|||
|
||||
Assert.notNull(model, "数据不存在!");
|
||||
|
||||
model.setIsDelete(1);
|
||||
if(model.getOrderStatus() == MaintenanceOrderStatusEnum.WAITING_LIST.getStatus() ||
|
||||
model.getOrderStatus() == MaintenanceOrderStatusEnum.PENDING_ORDER.getStatus() ||
|
||||
model.getOrderStatus() == MaintenanceOrderStatusEnum.CLOSED.getStatus()) {
|
||||
model.setIsDelete(GlobalConstant.DELETE);
|
||||
}else{
|
||||
throw new OperateException("当前工单状态,无法被删除");
|
||||
}
|
||||
|
||||
maintenanceOrderMapper.updateById(model);
|
||||
}
|
||||
|
||||
|
|
|
@ -375,7 +375,6 @@ public class SystemAuthAdminServiceImpl implements ISystemAuthAdminService {
|
|||
model.setAge(systemAuthAdminParam.getAge());
|
||||
model.setEmail(systemAuthAdminParam.getEmail());
|
||||
model.setTechnicalGrade(systemAuthAdminParam.getTechnicalGrade());
|
||||
model.setReceiveOrderStatus(systemAuthAdminParam.getReceiveOrderStatus()); // 接单状态
|
||||
systemAuthAdminMapper.insert(model);
|
||||
}
|
||||
|
||||
|
|
|
@ -92,8 +92,8 @@ public class MaintenanceOrderParam implements Serializable {
|
|||
/**
|
||||
* 订单去向 0-工单池 1-检修员
|
||||
*/
|
||||
@NotNull(message = "orderDestination参数缺失", groups = {create.class, update.class})
|
||||
private Integer orderDestination;
|
||||
@NotNull(message = "repairWorkOrderFlow参数缺失", groups = {create.class, update.class})
|
||||
private Integer repairWorkOrderFlow; //工单去向 0=工单池 1=检修员
|
||||
|
||||
private String faultName; //故障名称
|
||||
private String equipmentNo; //设备编号
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package com.hcy.admin.vo.order;
|
||||
|
||||
import com.hcy.admin.vo.client.EquipmentDetailVo;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
@ -41,6 +43,11 @@ public class MaintenanceOrderDetailVo implements Serializable {
|
|||
private Date orderAccomplishTime; // 订单完成时间
|
||||
private Long familiarFaultId; // 常见维修结论id
|
||||
private String familiarFaultDescription; // 常见维修结论描述
|
||||
private Integer repairWorkOrderFlow; //工单去向 0=工单池 1=检修员
|
||||
|
||||
|
||||
private String clientName; // 客户姓名
|
||||
private Equipment equipment; //设备信息
|
||||
private String faultName; //故障名称
|
||||
private String creatorName; // 创建人姓名
|
||||
private String receiverName; // 接单人姓名
|
||||
}
|
||||
|
|
|
@ -43,6 +43,7 @@ public class MaintenanceOrderListVo implements Serializable {
|
|||
private String familiarFaultDescription; // 常见维修结论描述
|
||||
private Date createTime; // 创建时间
|
||||
private Date updateTime; // 更新时间
|
||||
private Integer repairWorkOrderFlow; //工单去向 0=工单池 1=检修员
|
||||
|
||||
private String faultName; //故障名称
|
||||
private String equipmentNo; //设备编号
|
||||
|
|
|
@ -44,6 +44,7 @@ public class MaintenanceOrderDto implements Serializable {
|
|||
private Date createTime; // 创建时间
|
||||
private Date updateTime; // 更新时间
|
||||
private Integer isDelete; // 是否删除 0-未删除 1-删除
|
||||
private Integer repairWorkOrderFlow; //工单去向 0=工单池 1=检修员
|
||||
|
||||
private String faultName; //故障名称
|
||||
private String equipmentNo; //设备编号
|
||||
|
|
|
@ -46,5 +46,4 @@ public class SystemAuthAdmin implements Serializable {
|
|||
private String technicalGrade; // 技术等级
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long userId; //用户id
|
||||
private Integer receiveOrderStatus; //接单状态(0=休假/停止接单中 1=作业中 2=可接单)
|
||||
}
|
||||
|
|
|
@ -18,8 +18,8 @@ public enum MaintenanceOrderStatusEnum {
|
|||
WAIT_CONFIRMATION(4,"待确认"),
|
||||
MAINTENANCE_ING(5,"维修中"),
|
||||
FINISHED(6,"已完成"),
|
||||
CHARGEBACK(6,"已退单"),
|
||||
CLOSED(6,"已关闭");
|
||||
CHARGEBACK(7,"已退单"),
|
||||
CLOSED(8,"已关闭");
|
||||
|
||||
private final int status;
|
||||
private final String desc;
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
le.number as equipmentNo,
|
||||
le.name as equipmentName,
|
||||
le.detailed_address as detailedAddress,
|
||||
lsaa.username as creatorName,
|
||||
lsaa.nickname as creatorName,
|
||||
lu.username as receiverName,
|
||||
le.province_id as equipmentProvinceId,
|
||||
le.district_id as equipmentDistrictId,
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
le.number as equipmentNo,
|
||||
le.name as equipmentName,
|
||||
le.detailed_address as detailedAddress,
|
||||
lsaa.username as creatorName,
|
||||
lsaa.nickname as creatorName,
|
||||
lu.username as receiverName,
|
||||
le.province_id as equipmentProvinceId,
|
||||
le.district_id as equipmentDistrictId,
|
||||
|
|
Loading…
Reference in New Issue