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