【admin】优化# 1、优化部分bug
parent
fd0df4fe69
commit
904de747ac
|
@ -10,6 +10,7 @@ import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
|||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
import com.hcy.common.core.AjaxResult;
|
||||
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.validator.annotation.IDMust;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@ -38,7 +39,7 @@ public class ClientSiteController {
|
|||
@GetMapping("/list")
|
||||
public Object list(@Validated PageParam pageParam,
|
||||
ClientSiteParam clientSiteParam) {
|
||||
List<ClientSiteListVo> list = iClientSiteService.list(pageParam, clientSiteParam);
|
||||
PageResult<ClientSiteListVo> list = iClientSiteService.list(pageParam, clientSiteParam);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
/**
|
||||
|
@ -96,4 +97,5 @@ public class ClientSiteController {
|
|||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -64,9 +64,9 @@ public class EquipmentController {
|
|||
@Log(title = "设备管理新增")
|
||||
@PostMapping("/add")
|
||||
public Object add(@Validated(value = EquipmentParam.create.class) @RequestBody EquipmentParam equipmentParam) {
|
||||
if (iEquipmentService.checkEquipmentNumberUnique(equipmentParam)) {
|
||||
/*if (iEquipmentService.checkEquipmentNumberUnique(equipmentParam)) {
|
||||
return AjaxResult.success(300,"","新增设备失败,设备编号已存在");
|
||||
}
|
||||
}*/
|
||||
iEquipmentService.add(equipmentParam);
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import com.hcy.admin.validate.client.ClientSiteParam;
|
|||
import com.hcy.admin.validate.common.PageParam;
|
||||
import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
import com.hcy.common.core.PageResult;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
@ -21,7 +22,7 @@ public interface IClientSiteService {
|
|||
* @param clientSiteParam 搜索参数
|
||||
* @return PageResult<SiteVo>
|
||||
*/
|
||||
List<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam);
|
||||
PageResult<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam);
|
||||
|
||||
/**
|
||||
* 站点详情
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.hcy.admin.service.client.impl;
|
|||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.hcy.admin.AdminThreadLocal;
|
||||
import com.hcy.admin.service.client.IClientSiteService;
|
||||
import com.hcy.admin.service.region.IDevRegionService;
|
||||
|
@ -12,6 +13,7 @@ import com.hcy.admin.vo.client.EquipmentModelDetailVo;
|
|||
import com.hcy.admin.vo.client.ClientSiteDetailVo;
|
||||
import com.hcy.admin.vo.client.ClientSiteListVo;
|
||||
import com.hcy.common.constant.GlobalConstant;
|
||||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.ClientSiteDto;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
|
@ -23,6 +25,7 @@ import com.hcy.common.mapper.client.EquipmentMapper;
|
|||
import com.hcy.common.mapper.client.EquipmentModelMapper;
|
||||
import com.hcy.common.mapper.client.ClientSiteMapper;
|
||||
import com.hcy.common.mapper.user.UserMapper;
|
||||
import com.hcy.common.utils.TimeUtil;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.Assert;
|
||||
|
@ -63,17 +66,17 @@ public class ClientSiteServiceImpl implements IClientSiteService {
|
|||
* @return PageResult<SiteListVo>
|
||||
*/
|
||||
@Override
|
||||
public List<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam) {
|
||||
public PageResult<ClientSiteListVo> list(PageParam pageParam, ClientSiteParam clientSiteParam) {
|
||||
Integer page = pageParam.getPageNo();
|
||||
Integer limit = pageParam.getPageSize();
|
||||
|
||||
ClientSiteDto clientSiteDto = new ClientSiteDto();
|
||||
BeanUtils.copyProperties(clientSiteParam, clientSiteDto);
|
||||
|
||||
List<ClientSiteDto> clientSiteDtos = clientSiteMapper.siteEquipmentList(clientSiteDto);
|
||||
Page<ClientSiteDto> iPage = clientSiteMapper.siteEquipmentList(new Page<>(page, limit), clientSiteDto);
|
||||
|
||||
List<ClientSiteListVo> list = new LinkedList<>();
|
||||
for(ClientSiteDto item : clientSiteDtos) {
|
||||
for(ClientSiteDto item : iPage.getRecords()) {
|
||||
ClientSiteListVo vo = new ClientSiteListVo();
|
||||
BeanUtils.copyProperties(item, vo);
|
||||
|
||||
|
@ -114,15 +117,23 @@ public class ClientSiteServiceImpl implements IClientSiteService {
|
|||
}
|
||||
//设置设备模块信息
|
||||
equipmentListVo.setEquipmentModel(equipmentModelDetailVo);
|
||||
|
||||
//设备创建时间
|
||||
equipmentListVo.setCreateTime(TimeUtil.timestampToDate(equipmentItem.getCreateTime()));
|
||||
equipmentList.add(equipmentListVo);
|
||||
}
|
||||
}
|
||||
|
||||
vo.setEquipmentList(equipmentList);
|
||||
|
||||
//省市区名称
|
||||
vo.setProvince(regionMap.get(vo.getProvinceId()));
|
||||
vo.setCity(regionMap.get(vo.getCityId()));
|
||||
vo.setDistrict(regionMap.get(vo.getDistrictId()));
|
||||
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
return list;
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -144,6 +155,50 @@ public class ClientSiteServiceImpl implements IClientSiteService {
|
|||
|
||||
ClientSiteDetailVo vo = new ClientSiteDetailVo();
|
||||
BeanUtils.copyProperties(model, vo);
|
||||
|
||||
// 获取设备列表
|
||||
List<Equipment> equipment = equipmentMapper.selectList(new LambdaQueryWrapper<Equipment>()
|
||||
.eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.eq(Equipment::getClientSiteId, model.getId()));
|
||||
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();//获取省市区
|
||||
List<EquipmentListVo> equipmentList = new LinkedList<>();
|
||||
if(equipment != null){
|
||||
for (Equipment equipmentItem : equipment) {
|
||||
EquipmentListVo equipmentListVo = new EquipmentListVo();
|
||||
BeanUtils.copyProperties(equipmentItem, equipmentListVo);
|
||||
|
||||
equipmentListVo.setProvince(regionMap.get(equipmentListVo.getProvinceId()));
|
||||
equipmentListVo.setCity(regionMap.get(equipmentListVo.getCityId()));
|
||||
equipmentListVo.setDistrict(regionMap.get(equipmentListVo.getDistrictId()));
|
||||
//获取客户名称
|
||||
Client client = clientMapper.selectOne(
|
||||
new QueryWrapper<Client>()
|
||||
.eq("id", equipmentItem.getClientId())
|
||||
.last("limit 1"));
|
||||
if (client != null){
|
||||
equipmentListVo.setClientName(client.getClientName());
|
||||
}
|
||||
|
||||
//设置设备模块信息
|
||||
EquipmentModel equipmentModel = equipmentModelMapper.findEquipmentModelByEquipmentId(vo.getId());
|
||||
EquipmentModelDetailVo equipmentModelDetailVo = new EquipmentModelDetailVo();
|
||||
if(equipmentModel != null){
|
||||
BeanUtils.copyProperties(equipmentModel, equipmentModelDetailVo);
|
||||
|
||||
User insetallUser = userMapper.selectById(equipmentModel.getUserId());
|
||||
if(insetallUser != null){
|
||||
equipmentModelDetailVo.setInstallationName(insetallUser.getUsername());
|
||||
}
|
||||
}
|
||||
//设置设备模块信息
|
||||
equipmentListVo.setEquipmentModel(equipmentModelDetailVo);
|
||||
equipmentList.add(equipmentListVo);
|
||||
}
|
||||
}
|
||||
|
||||
vo.setEquipmentList(equipmentList);
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
|
@ -193,6 +248,9 @@ public class ClientSiteServiceImpl implements IClientSiteService {
|
|||
model.setCityId(clientSiteParam.getCityId()); // 市id
|
||||
model.setDetailedAddress(clientSiteParam.getDetailedAddress()); // 详细地址
|
||||
|
||||
model.setInspectionCycle(clientSiteParam.getInspectionCycle()); // 巡检周期方式(0=天数间隔,1=固定日期)
|
||||
model.setDailyAudit(clientSiteParam.getDailyAudit()); // 每隔几天巡检
|
||||
|
||||
clientSiteMapper.updateById(model);
|
||||
}
|
||||
|
||||
|
|
|
@ -17,12 +17,15 @@ import com.hcy.common.constant.GlobalConstant;
|
|||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.EquipmentDto;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.ClientSite;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
import com.hcy.common.entity.client.EquipmentModel;
|
||||
import com.hcy.common.entity.order.RepairOrder;
|
||||
import com.hcy.common.entity.user.User;
|
||||
import com.hcy.common.enums.equipment.EquipmentStateEnum;
|
||||
import com.hcy.common.exception.OperateException;
|
||||
import com.hcy.common.mapper.client.ClientMapper;
|
||||
import com.hcy.common.mapper.client.ClientSiteMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentModelMapper;
|
||||
import com.hcy.common.mapper.user.UserMapper;
|
||||
|
@ -58,6 +61,9 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
@Resource
|
||||
UserMapper userMapper;
|
||||
|
||||
@Resource
|
||||
ClientSiteMapper clientSiteMapper;
|
||||
|
||||
/**
|
||||
* 设备管理列表
|
||||
*
|
||||
|
@ -111,7 +117,7 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
}
|
||||
//设置设备模块信息
|
||||
vo.setEquipmentModel(equipmentModelDetailVo);
|
||||
|
||||
//设备创建时间
|
||||
vo.setCreateTime(TimeUtil.timestampToDate(item.getCreateTime()));
|
||||
list.add(vo);
|
||||
}
|
||||
|
@ -163,7 +169,11 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
throw new OperateException("设备编号不可重复!");
|
||||
}
|
||||
model.setClientSiteId(equipmentParam.getClientSiteId()); // 站点id
|
||||
model.setClientId(equipmentParam.getClientId());//客户id
|
||||
// 获取站点客户id
|
||||
ClientSite clientSite = clientSiteMapper.selectOne(new LambdaQueryWrapper<ClientSite>()
|
||||
.eq(ClientSite::getId, equipmentParam.getClientSiteId()));
|
||||
model.setClientId(clientSite.getClientId());//客户id
|
||||
model.setNumber(getEquipmentNo(equipmentParam.getClientSiteId())); // 设备编号
|
||||
model.setName(equipmentParam.getName());
|
||||
model.setModel(equipmentParam.getModel()); // 设备型号
|
||||
model.setManufacturers(equipmentParam.getManufacturers()); // 设备厂家
|
||||
|
@ -202,13 +212,13 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
model.setId(equipmentParam.getId());
|
||||
model.setClientId(equipmentParam.getClientId());
|
||||
model.setModuleId(equipmentParam.getModuleId());
|
||||
model.setNumber(equipmentParam.getNumber());
|
||||
/*model.setNumber(equipmentParam.getNumber());
|
||||
Integer count = equipmentMapper.selectCount(new LambdaQueryWrapper<Equipment>()
|
||||
.eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.eq(Equipment::getNumber, equipmentParam.getNumber()));
|
||||
if(count > 0){
|
||||
throw new OperateException("设备编号不可重复!");
|
||||
}
|
||||
}*/
|
||||
model.setClientSiteId(equipmentParam.getClientSiteId());
|
||||
model.setName(equipmentParam.getName());
|
||||
model.setModel(equipmentParam.getModel());
|
||||
|
@ -417,4 +427,37 @@ public class EquipmentServiceImpl implements IEquipmentService {
|
|||
|
||||
return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list);
|
||||
}
|
||||
|
||||
private String getEquipmentNo(Long clientSiteId) {
|
||||
//获取站点信息
|
||||
ClientSite clientSite = clientSiteMapper.selectOne(new LambdaQueryWrapper<ClientSite>()
|
||||
.eq(ClientSite::getId, clientSiteId));
|
||||
//获取客户信息
|
||||
Client client = clientMapper.selectOne(new LambdaQueryWrapper<Client>()
|
||||
.eq(Client::getId, clientSite.getClientId()));
|
||||
|
||||
StringBuilder currentEquipmentNo = new StringBuilder(client.getClientNo() + "-" + "000001");
|
||||
Equipment equipment = equipmentMapper.selectOne(new LambdaQueryWrapper<Equipment>()
|
||||
.eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE)
|
||||
.like(Equipment::getNumber, client.getClientNo())
|
||||
.orderByDesc(Equipment::getNumber)
|
||||
.last("limit 1"));
|
||||
//当天日期加第一条流水号,如果数据库不存在,则代表今天第一条数据
|
||||
if (equipment == null) {
|
||||
return currentEquipmentNo.toString();
|
||||
} else {
|
||||
int lastEquipmentNo = Integer.parseInt(equipment.getNumber().substring(8));
|
||||
int length = String.valueOf((lastEquipmentNo + 1)).length();
|
||||
StringBuilder newEquipmentNo = new StringBuilder(lastEquipmentNo + 1 + "");
|
||||
|
||||
//如果流水号长度小于6位,则在前面补0
|
||||
if (length < 6) {
|
||||
for (int i = 0; i < 6 - length; i++) {
|
||||
newEquipmentNo.insert(0, "0");
|
||||
}
|
||||
}
|
||||
|
||||
return client.getClientNo() + "-" + newEquipmentNo;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@ import com.hcy.common.constant.GlobalConstant;
|
|||
import com.hcy.common.core.PageResult;
|
||||
import com.hcy.common.dto.RoutingInspectionOrderDto;
|
||||
import com.hcy.common.entity.client.Client;
|
||||
import com.hcy.common.entity.client.ClientSite;
|
||||
import com.hcy.common.entity.client.Equipment;
|
||||
import com.hcy.common.entity.fault.Fault;
|
||||
import com.hcy.common.entity.order.MaintenanceOrder;
|
||||
|
@ -27,6 +28,7 @@ import com.hcy.common.enums.order.MaintenanceOrderStatusEnum;
|
|||
import com.hcy.common.enums.order.OrderOperateRecordEnum;
|
||||
import com.hcy.common.enums.order.OrderStateEnum;
|
||||
import com.hcy.common.mapper.client.ClientMapper;
|
||||
import com.hcy.common.mapper.client.ClientSiteMapper;
|
||||
import com.hcy.common.mapper.client.EquipmentMapper;
|
||||
import com.hcy.common.mapper.fault.FaultMapper;
|
||||
import com.hcy.common.mapper.order.OrderOperateRecordMapper;
|
||||
|
@ -77,6 +79,9 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
@Resource
|
||||
OrderOperateRecordMapper orderOperateRecordMapper;
|
||||
|
||||
@Resource
|
||||
ClientSiteMapper clientSiteMapper;
|
||||
|
||||
/**
|
||||
* 巡检订单列表
|
||||
*
|
||||
|
@ -93,7 +98,9 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
|
||||
inspectionOrderDto.setOrderNo(StringUtils.isEmpty(params.get("orderNo")) ? null : params.get("orderNo"));
|
||||
inspectionOrderDto.setClientName(StringUtils.isEmpty(params.get("clientName")) ? null : params.get("clientName"));
|
||||
/*
|
||||
inspectionOrderDto.setEquipmentName(StringUtils.isEmpty(params.get("equipmentName")) ? null : params.get("equipmentName"));
|
||||
*/
|
||||
inspectionOrderDto.setReceiverName(StringUtils.isEmpty(params.get("receiverName")) ? null : params.get("receiverName"));
|
||||
if(StringUtils.isNotEmpty(params.get("orderSource"))){
|
||||
inspectionOrderDto.setOrderSource(Long.valueOf(params.get("orderSource")));
|
||||
|
@ -104,11 +111,26 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
|
||||
Page<RoutingInspectionOrderDto> iPage = routingInspectionOrderMapper.pageList(page, inspectionOrderDto);
|
||||
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();
|
||||
|
||||
List<RoutingInspectionOrderListVo> list = new LinkedList<>();
|
||||
for(RoutingInspectionOrderDto item : iPage.getRecords()) {
|
||||
RoutingInspectionOrderListVo vo = new RoutingInspectionOrderListVo();
|
||||
BeanUtils.copyProperties(item, vo);
|
||||
|
||||
//站点名称 站点地址
|
||||
ClientSite clientSite = clientSiteMapper.selectOne(new LambdaQueryWrapper<ClientSite>()
|
||||
.eq(ClientSite::getId, item.getClientSiteId()));
|
||||
if(clientSite != null){
|
||||
//站点名称
|
||||
vo.setSiteName(clientSite.getSiteName());
|
||||
//站点地址
|
||||
String province = regionMap.get(clientSite.getProvinceId());
|
||||
String city = regionMap.get(clientSite.getCityId());
|
||||
String district = regionMap.get(clientSite.getDistrictId());
|
||||
vo.setSiteAddress(province + city + district + clientSite.getDetailedAddress());
|
||||
}
|
||||
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
|
@ -142,7 +164,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
vo.setClientName(client.getClientName());
|
||||
//设备信息
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();
|
||||
Equipment equipment = equipmentMapper.selectOne(
|
||||
/*Equipment equipment = equipmentMapper.selectOne(
|
||||
new QueryWrapper<Equipment>()
|
||||
.eq("id", model.getEquipmentId())
|
||||
.last("limit 1"));
|
||||
|
@ -151,7 +173,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
equipmentListVo.setCity(regionMap.get(equipment.getCityId()));
|
||||
equipmentListVo.setDistrict(regionMap.get(equipment.getDistrictId()));
|
||||
BeanUtils.copyProperties(equipment, equipmentListVo);
|
||||
vo.setEquipment(equipmentListVo); //设备信息
|
||||
vo.setEquipment(equipmentListVo); //设备信息*/
|
||||
//接单人
|
||||
User user = userMapper.selectOne(
|
||||
new QueryWrapper<User>()
|
||||
|
@ -182,6 +204,22 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
.eq(OrderOperateRecord::getOrderType, OrderOperateRecordEnum.ROUTING_INSPECTION.getStatus())
|
||||
.eq(OrderOperateRecord::getOrderId, model.getId());
|
||||
vo.setOrderOperateRecords(orderOperateRecordMapper.selectList(queryWrapper));;
|
||||
|
||||
//站点名称 站点地址
|
||||
ClientSite clientSite = clientSiteMapper.selectOne(new LambdaQueryWrapper<ClientSite>()
|
||||
.eq(ClientSite::getId, model.getClientSiteId()));
|
||||
if(clientSite != null){
|
||||
//站点名称
|
||||
vo.setSiteName(clientSite.getSiteName());
|
||||
//站点地址
|
||||
String province = regionMap.get(clientSite.getProvinceId());
|
||||
String city = regionMap.get(clientSite.getCityId());
|
||||
String district = regionMap.get(clientSite.getDistrictId());
|
||||
vo.setSiteAddress(province + city + district + clientSite.getDetailedAddress());
|
||||
}
|
||||
|
||||
|
||||
|
||||
return vo;
|
||||
}
|
||||
|
||||
|
@ -208,7 +246,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
|
||||
model.setOrderNo(getOrderNo()); // 订单编号
|
||||
model.setClientId(routingInspectionOrderParam.getClientId()); //客户id
|
||||
model.setEquipmentId(routingInspectionOrderParam.getEquipmentId());// 设备id
|
||||
model.setClientSiteId(routingInspectionOrderParam.getClientSiteId()); // 客户站点id
|
||||
model.setReceiverId(routingInspectionOrderParam.getReceiverId()); // 接单人id
|
||||
model.setRemark(routingInspectionOrderParam.getRemark()); // 备注
|
||||
model.setReceiverType(routingInspectionOrderParam.getReceiverType()); // 接单类型 0-区域派单;1-距离派单
|
||||
|
|
|
@ -8,6 +8,7 @@ import org.hibernate.validator.constraints.Length;
|
|||
import lombok.Data;
|
||||
import javax.validation.constraints.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -27,35 +28,27 @@ public class ClientSiteParam implements Serializable {
|
|||
|
||||
private Long id;
|
||||
|
||||
@NotNull(message = "clientId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "clientId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long clientId;
|
||||
|
||||
@NotNull(message = "siteName参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 50, message = "siteName参数不能超出50个字符", groups = {create.class, update.class})
|
||||
private String siteName;
|
||||
|
||||
@NotNull(message = "longitude参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 24, message = "longitude参数不能超出24个字符", groups = {create.class, update.class})
|
||||
private String longitude;
|
||||
|
||||
@NotNull(message = "latitude参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 24, message = "latitude参数不能超出24个字符", groups = {create.class, update.class})
|
||||
private String latitude;
|
||||
|
||||
@NotNull(message = "provinceId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "provinceId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long provinceId;
|
||||
|
||||
@NotNull(message = "districtId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "districtId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long districtId;
|
||||
|
||||
@NotNull(message = "cityId参数缺失", groups = {create.class, update.class})
|
||||
@DecimalMin(value = "0", message = "cityId参数值不能少于0", groups = {create.class, update.class})
|
||||
private Long cityId;
|
||||
|
||||
@NotNull(message = "detailedAddress参数缺失", groups = {create.class, update.class})
|
||||
@Length(max = 255, message = "detailedAddress参数不能超出255个字符", groups = {create.class, update.class})
|
||||
private String detailedAddress;
|
||||
|
||||
|
@ -63,5 +56,7 @@ public class ClientSiteParam implements Serializable {
|
|||
private Long creatorId;
|
||||
|
||||
private List<Integer> ids; //批量删除
|
||||
|
||||
private Integer inspectionCycle; // 巡检周期方式(0=天数间隔,1=固定日期)
|
||||
private Integer dailyAudit; // 每隔几天巡检
|
||||
private Date frontPollingTime; //上次巡检时间
|
||||
}
|
||||
|
|
|
@ -62,5 +62,6 @@ public class RoutingInspectionOrderParam implements Serializable {
|
|||
private Integer receiverType; // 接单类型 0-区域派单;1-距离派单
|
||||
private BigDecimal orderDistance; // 订单距离
|
||||
private Integer repairWorkOrderFlow; //工单去向 0=工单池 1=检修员
|
||||
|
||||
private Long clientSiteId; // 客户站点id
|
||||
private String siteName; // 站点名称
|
||||
}
|
||||
|
|
|
@ -3,6 +3,8 @@ package com.hcy.admin.vo.client;
|
|||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* SiteVo
|
||||
|
@ -22,5 +24,8 @@ public class ClientSiteDetailVo implements Serializable {
|
|||
private Long cityId; // 市id
|
||||
private String detailedAddress; // 详细地址
|
||||
private Long creatorId; // 创建人id
|
||||
|
||||
private List<EquipmentListVo> equipmentList; // 设备列表
|
||||
private Integer inspectionCycle; // 巡检周期方式(0=天数间隔,1=固定日期)
|
||||
private Integer dailyAudit; // 每隔几天巡检
|
||||
private Date frontPollingTime; //上次巡检时间
|
||||
}
|
||||
|
|
|
@ -30,4 +30,11 @@ public class ClientSiteListVo implements Serializable {
|
|||
private Integer underOverhaulCount; // 设备检修中数量
|
||||
private Integer underWarrantyCount; // 设备报修中数量
|
||||
private List<EquipmentListVo> equipmentList; // 设备列表
|
||||
|
||||
private Integer inspectionCycle; // 巡检周期方式(0=天数间隔,1=固定日期)
|
||||
private Integer dailyAudit; // 每隔几天巡检
|
||||
|
||||
private String province; // 省
|
||||
private String district; // 区
|
||||
private String city; // 市
|
||||
}
|
||||
|
|
|
@ -56,5 +56,7 @@ public class RoutingInspectionOrderDetailVo implements Serializable {
|
|||
private String inspectionPhoto; //巡检照片
|
||||
private String inspectionResultRemark; //巡检结果备注
|
||||
private List<OrderOperateRecord> orderOperateRecords; //订单操作记录
|
||||
|
||||
private Long clientSiteId; // 客户站点id
|
||||
private String siteName; // 站点名称
|
||||
private String siteAddress; // 站点地址
|
||||
}
|
||||
|
|
|
@ -39,4 +39,7 @@ public class RoutingInspectionOrderListVo implements Serializable {
|
|||
private Date receiverTime; // 接单时间
|
||||
private String shortName; //客户简称
|
||||
private Integer inspectionResult; //巡检结果(0=正常 1=异常)
|
||||
private Long clientSiteId; // 客户站点id
|
||||
private String siteName; // 站点名称
|
||||
private String siteAddress; // 站点地址
|
||||
}
|
||||
|
|
|
@ -22,9 +22,8 @@ public class RoutingInspectionOrderDto implements Serializable {
|
|||
private Long clientId; // 客户id
|
||||
private String clientName; // 客户名称
|
||||
private Long equipmentId; // 设备id
|
||||
private String equipmentNo; //设备编号
|
||||
private String equipmentName; //设备名称
|
||||
private String detailedAddress; // 设备详细地址
|
||||
/*private String equipmentNo; //设备编号
|
||||
private String equipmentName; //设备名称*/
|
||||
private Long creatorId; // 创建人id
|
||||
private String creatorName; //创建人名称
|
||||
private Date createTime; // 创建时间
|
||||
|
@ -37,17 +36,20 @@ public class RoutingInspectionOrderDto implements Serializable {
|
|||
private Date receiverTime; // 接单时间
|
||||
private String likeWork; // 模糊查询(工单编号/客户名称/设备编号)
|
||||
private String inspectionPhoto; //巡检照片
|
||||
private double longitude; //经度
|
||||
private double latitude; //纬度
|
||||
private Double longitude; //经度
|
||||
private Double latitude; //纬度
|
||||
private BigDecimal orderDistance; // 订单距离
|
||||
private Integer queryType; // 查询类型 0-离我最近 1-时间优先
|
||||
private Date cancelOrderTime; // 取消订单时间
|
||||
private String cancelCause; // 取消原因
|
||||
private Long equipmentProvinceId; //设备省id
|
||||
private Long equipmentDistrictId; //设备区id
|
||||
private Long equipmentCityId; //设备市id
|
||||
private Long siteProvinceId; //站点省id
|
||||
private Long siteDistrictId; //站点区id
|
||||
private Long siteCityId; //站点市id
|
||||
private String shortName; //客户简称
|
||||
private Integer inspectionResult; //巡检结果(0=正常 1=异常)
|
||||
private String orderStatusIds; //订单状态ids
|
||||
|
||||
private Long clientSiteId; // 客户站点id
|
||||
private String siteName; // 站点名称
|
||||
private String detailedAddress; // 站点详细地址
|
||||
private Date inspectionTime; // 巡检时间
|
||||
}
|
||||
|
|
|
@ -30,4 +30,8 @@ public class ClientSite implements Serializable {
|
|||
private Date updateTime; // 更新时间
|
||||
private Integer isDelete; // 是否删除 0-未删除 1-删除
|
||||
|
||||
private Integer inspectionCycle; // 巡检周期方式(0=天数间隔,1=固定日期)
|
||||
private Integer dailyAudit; // 每隔几天巡检
|
||||
private Date frontPollingTime; //上次巡检时间
|
||||
|
||||
}
|
|
@ -54,5 +54,7 @@ public class RoutingInspectionOrder implements Serializable {
|
|||
private Integer inspectionResult; //巡检结果(0=正常 1=异常)
|
||||
private String inspectionPhoto; //巡检照片
|
||||
private String inspectionResultRemark; //巡检结果备注
|
||||
private Long clientSiteId; // 客户站点id
|
||||
private Date inspectionTime; // 巡检时间
|
||||
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
package com.hcy.common.mapper.client;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.hcy.common.core.basics.IBaseMapper;
|
||||
import com.hcy.common.dto.ClientSiteDto;
|
||||
import com.hcy.common.entity.client.ClientSite;
|
||||
|
@ -19,6 +20,6 @@ public interface ClientSiteMapper extends IBaseMapper<ClientSite> {
|
|||
* 查询站点名称、设备总数、设备状态正常总数,报修中总数,检修中总数
|
||||
* @return
|
||||
*/
|
||||
List<ClientSiteDto> siteEquipmentList(@Param("form") ClientSiteDto form);
|
||||
Page<ClientSiteDto> siteEquipmentList(@Param("page") Page page, @Param("form") ClientSiteDto form);
|
||||
|
||||
}
|
||||
|
|
|
@ -49,19 +49,21 @@
|
|||
i.*,
|
||||
c.client_name,
|
||||
c.short_name,
|
||||
e.number as equipmentNo,
|
||||
e.name as equipmentName,
|
||||
e.detailed_address,
|
||||
cs.site_name as siteName,
|
||||
cs.detailed_address,
|
||||
a.nickname as creatorName,
|
||||
f.`name` as familiarFaultName,
|
||||
u.nickname as receiverName,
|
||||
e.longitude,
|
||||
e.latitude,
|
||||
cs.province_id as siteProvinceId,
|
||||
cs.district_id as siteDistrictId,
|
||||
cs.city_id as siteCityId,
|
||||
cs.longitude,
|
||||
cs.latitude,
|
||||
i.inspection_result as inspectionResult
|
||||
FROM
|
||||
la_routing_inspection_order AS i
|
||||
LEFT JOIN la_client AS c ON i.client_id = c.id
|
||||
LEFT JOIN la_equipment AS e ON i.equipment_id = e.id
|
||||
LEFT JOIN la_client_site AS cs ON i.client_site_id = cs.id
|
||||
LEFT JOIN la_system_auth_admin AS a ON i.creator_id = a.id
|
||||
LEFT JOIN la_fault AS f ON i.fault_id = f.id
|
||||
LEFT JOIN la_user as u on i.receiver_id = u.id
|
||||
|
@ -79,9 +81,6 @@
|
|||
<if test="param.likeWork != null and param.likeWork != ''">
|
||||
OR c.client_name LIKE concat('%', #{param.likeWork}, '%')
|
||||
</if>
|
||||
<if test="param.likeWork != null and param.likeWork != ''">
|
||||
OR e.number LIKE concat('%', #{param.likeWork}, '%'))
|
||||
</if>
|
||||
<if test="param.orderStatus != null">
|
||||
and i.order_status = #{param.orderStatus}
|
||||
</if>
|
||||
|
@ -95,21 +94,20 @@
|
|||
SELECT
|
||||
i.*,
|
||||
c.client_name,
|
||||
e.number as equipmentNo,
|
||||
e.name as equipmentName,
|
||||
e.detailed_address,
|
||||
cs.site_name as siteName,
|
||||
cs.detailed_address,
|
||||
a.nickname as creatorName,
|
||||
f.`name` as familiarFaultName,
|
||||
u.nickname as receiverName,
|
||||
e.province_id as equipmentProvinceId,
|
||||
e.district_id as equipmentDistrictId,
|
||||
e.city_id as equipmentCityId,
|
||||
e.longitude,
|
||||
e.latitude
|
||||
cs.province_id as siteProvinceId,
|
||||
cs.district_id as siteDistrictId,
|
||||
cs.city_id as siteCityId,
|
||||
cs.longitude,
|
||||
cs.latitude
|
||||
FROM
|
||||
la_routing_inspection_order AS i
|
||||
LEFT JOIN la_client AS c ON i.client_id = c.id
|
||||
LEFT JOIN la_equipment AS e ON i.equipment_id = e.id
|
||||
LEFT JOIN la_client_site AS cs ON i.client_site_id = cs.id
|
||||
LEFT JOIN la_system_auth_admin AS a ON i.creator_id = a.id
|
||||
LEFT JOIN la_fault AS f ON i.fault_id = f.id
|
||||
LEFT JOIN la_user as u on i.receiver_id = u.id
|
||||
|
|
|
@ -134,6 +134,7 @@ public class RepairOrderServiceImpl implements IRepairOrderService {
|
|||
List<RepairOrderListVo> returnData = new LinkedList<>();
|
||||
for (RepairOrderDto item : repairOrderDtoList) {
|
||||
if(repairOrderParam.getQueryType() == MaintenanceOrderStatusEnum.NEAREST_TO_ME.getStatus()){
|
||||
//获取管理员id
|
||||
SystemAuthAdmin systemAuthAdminByUserId = systemAuthAdminMapper.findSystemAuthAdminByUserId(Math.toIntExact(item.getCreatorId()));
|
||||
//获取工厂
|
||||
Plant plant = plantMapper.findPlantByAdminId(Long.valueOf(systemAuthAdminByUserId.getPlantId()));
|
||||
|
|
|
@ -117,7 +117,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
}
|
||||
|
||||
Page<RoutingInspectionOrderDto> iPage = routingInspectionOrderMapper.frontPageList(page, inspectionOrderDto);
|
||||
|
||||
Map<Long, String> regionMap = regionService.getRegionMap();
|
||||
List<RoutingInspectionOrderListVo> list = new LinkedList<>();
|
||||
for(RoutingInspectionOrderDto item : iPage.getRecords()) {
|
||||
RoutingInspectionOrderListVo vo = new RoutingInspectionOrderListVo();
|
||||
|
@ -127,6 +127,13 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
if(user != null){
|
||||
vo.setReceiverName(user.getNickname());
|
||||
}
|
||||
|
||||
//站点地址
|
||||
String province = regionMap.get(item.getSiteProvinceId());
|
||||
String city = regionMap.get(item.getSiteCityId());
|
||||
String district = regionMap.get(item.getSiteDistrictId());
|
||||
vo.setSiteAddress(province + city + district + item.getDetailedAddress());
|
||||
|
||||
list.add(vo);
|
||||
}
|
||||
|
||||
|
@ -238,6 +245,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
Assert.notNull(model, "数据不存在!");
|
||||
|
||||
model.setOrderStatus(OrderStateEnum.DURING_INSPECTION.getStatus()); // 用户开始巡检后工单状态为巡检中
|
||||
model.setInspectionTime(new Date()); // 巡检时间
|
||||
routingInspectionOrderMapper.updateById(model);
|
||||
|
||||
//新增巡检单操作记录
|
||||
|
@ -356,6 +364,7 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
}
|
||||
|
||||
/**
|
||||
* 巡检单工单池
|
||||
* 查询未被接单的订单
|
||||
*
|
||||
* @param routingInspectionOrderParam
|
||||
|
@ -380,9 +389,9 @@ public class RoutingInspectionOrderServiceImpl implements IRoutingInspectionOrde
|
|||
, routingInspectionOrderParam.getLongitude(), routingInspectionOrderParam.getLatitude());
|
||||
|
||||
if(item.getReceiverType() == OrderStateEnum.REGIONAL_DISPATCH.getStatus()){
|
||||
if(item.getEquipmentProvinceId().equals(systemAuthAdmin.getProvinceId()) &&
|
||||
item.getEquipmentCityId().equals(systemAuthAdmin.getCityId()) &&
|
||||
item.getEquipmentDistrictId().equals(systemAuthAdmin.getDistrictId()) ){
|
||||
if(item.getSiteProvinceId().equals(systemAuthAdmin.getProvinceId()) &&
|
||||
item.getSiteCityId().equals(systemAuthAdmin.getCityId()) &&
|
||||
item.getSiteDistrictId().equals(systemAuthAdmin.getDistrictId()) ){
|
||||
|
||||
// 计算距离
|
||||
RoutingInspectionOrderListVo vo = new RoutingInspectionOrderListVo();
|
||||
|
|
|
@ -71,16 +71,17 @@ public class RoutingInspectionOrderParam implements Serializable {
|
|||
|
||||
private Date orderAccomplishTime; // 订单完成时间
|
||||
private String clientName; // 客户名称
|
||||
private String equipmentNo; //设备编号
|
||||
private String equipmentName; //设备名称
|
||||
/*private String equipmentNo; //设备编号
|
||||
private String equipmentName; //设备名称*/
|
||||
|
||||
private String detailedAddress; // 设备详细地址
|
||||
private String creatorName; //创建人名称
|
||||
private String createTime; // 创建时间
|
||||
private String familiarFaultName; //故障类型
|
||||
private String receiverName; // 接单人名称
|
||||
private String likeWork; // 模糊查询(工单编号/客户名称/设备编号)
|
||||
private double longitude; //经度
|
||||
private double latitude; //纬度
|
||||
private Double longitude; //经度
|
||||
private Double latitude; //纬度
|
||||
private Integer queryType; // 查询类型 0-离我最近 1-时间优先
|
||||
private String cancelCause; // 取消原因
|
||||
|
||||
|
|
|
@ -38,5 +38,6 @@ public class RoutingInspectionOrderDetailVo implements Serializable {
|
|||
private Date cancelOrderTime; // 取消订单时间
|
||||
private String cancelCause; // 取消原因
|
||||
private String remark; // 备注
|
||||
private Date inspectionTime; // 巡检时间
|
||||
|
||||
}
|
||||
|
|
|
@ -19,10 +19,9 @@ public class RoutingInspectionOrderListVo implements Serializable {
|
|||
private Date orderAccomplishTime; // 订单完成时间
|
||||
private Long clientId; // 客户id
|
||||
private String clientName; // 客户名称
|
||||
private Long equipmentId; // 设备id
|
||||
/*private Long equipmentId; // 设备id
|
||||
private String equipmentNo; //设备编号
|
||||
private String equipmentName; //设备名称
|
||||
private String detailedAddress; // 设备详细地址
|
||||
private String equipmentName; //设备名称*/
|
||||
private Date createTime; // 创建时间
|
||||
private Long orderStatus; // 订单状态 0-待抢单;1-待接单;2-接单超时;3-巡检中;4-已完成;5-已退单;6-待巡检
|
||||
private Double distance; //距离
|
||||
|
@ -32,12 +31,15 @@ public class RoutingInspectionOrderListVo implements Serializable {
|
|||
private Date cancelOrderTime; // 取消订单时间
|
||||
private String cancelCause; // 取消原因
|
||||
|
||||
private Long equipmentProvinceId; //设备省id
|
||||
private Long equipmentDistrictId; //设备区id
|
||||
private Long equipmentCityId; //设备市id
|
||||
private Long siteProvinceId; //设备省id
|
||||
private Long siteDistrictId; //设备区id
|
||||
private Long siteCityId; //设备市id
|
||||
private Integer inspectionResult; //巡检结果(0=正常 1=异常)
|
||||
|
||||
private Long receiverId; // 接单人id
|
||||
private String receiverName; // 接单人名称
|
||||
private String detailedAddress; // 站点详细地址
|
||||
private Date receiverTime; // 接单时间
|
||||
private String siteAddress; // 站点地址
|
||||
private Date inspectionTime; // 巡检时间
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue