From de487cf3ac0cb5409d2b610e2004256973815eab Mon Sep 17 00:00:00 2001 From: renfan <2206580733@qq.com> Date: Wed, 4 Sep 2024 21:14:42 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90admin&front=E3=80=91=E6=96=B0=E5=A2=9E?= =?UTF-8?q?&=E4=BC=98=E5=8C=96#=201=E3=80=81=E4=BF=AE=E5=A4=8D=E8=8B=A5?= =?UTF-8?q?=E5=B9=B2bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../client/impl/EquipmentServiceImpl.java | 19 +++++++- .../service/plant/impl/PlantServiceImpl.java | 11 ++++- .../sparePart/impl/SparePartServiceImpl.java | 45 +++++++++++++++++-- .../impl/SparePartStockAuditServiceImpl.java | 2 +- .../impl/SystemAuthAdminServiceImpl.java | 2 +- .../validate/order/MaintenanceOrderParam.java | 3 ++ .../com/hcy/admin/vo/plant/PlantListVo.java | 11 +++++ .../common/dto/order/MaintenanceOrderDto.java | 3 +- .../mapper/MaintenanceOrderMapper.xml | 6 +++ .../front/service/impl/UserServiceImpl.java | 23 ++++++++++ .../com/hcy/front/vo/user/UserCenterVo.java | 2 + 11 files changed, 118 insertions(+), 9 deletions(-) diff --git a/admin/src/main/java/com/hcy/admin/service/client/impl/EquipmentServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/client/impl/EquipmentServiceImpl.java index 26e2dfe..5608611 100644 --- a/admin/src/main/java/com/hcy/admin/service/client/impl/EquipmentServiceImpl.java +++ b/admin/src/main/java/com/hcy/admin/service/client/impl/EquipmentServiceImpl.java @@ -13,6 +13,7 @@ import com.hcy.admin.vo.client.EquipmentListVo; import com.hcy.admin.vo.client.EquipmentDetailVo; import com.hcy.admin.vo.client.EquipmentModelDetailVo; import com.hcy.admin.vo.sparePart.SparePartListVo; +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; @@ -20,6 +21,7 @@ import com.hcy.common.entity.client.Equipment; import com.hcy.common.entity.client.EquipmentModel; 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.EquipmentMapper; import com.hcy.common.mapper.client.EquipmentModelMapper; @@ -154,7 +156,15 @@ public class EquipmentServiceImpl implements IEquipmentService { public void add(EquipmentParam equipmentParam) { Equipment model = new Equipment(); - model.setNumber(equipmentParam.getNumber()); + model.setNumber(equipmentParam.getNumber()); // 设备编号 + + Integer count = equipmentMapper.selectCount(new LambdaQueryWrapper() + .eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE) + .eq(Equipment::getNumber, equipmentParam.getNumber())); + if(count > 0){ + throw new OperateException("设备编号不可重复!"); + } + model.setClientId(equipmentParam.getClientId());//客户id model.setName(equipmentParam.getName()); model.setModel(equipmentParam.getModel()); // 设备型号 @@ -171,6 +181,7 @@ public class EquipmentServiceImpl implements IEquipmentService { model.setDailyAudit(equipmentParam.getDailyAudit()); // 每隔几天巡检 model.setCreateTime(System.currentTimeMillis() / 1000); //model.setDeviceCode(equipmentParam.getDeviceCode()); // 设备码 + equipmentMapper.insert(model); } @@ -194,6 +205,12 @@ public class EquipmentServiceImpl implements IEquipmentService { model.setClientId(equipmentParam.getClientId()); model.setModuleId(equipmentParam.getModuleId()); model.setNumber(equipmentParam.getNumber()); + Integer count = equipmentMapper.selectCount(new LambdaQueryWrapper() + .eq(Equipment::getIsDelete, GlobalConstant.NOT_DELETE) + .eq(Equipment::getNumber, equipmentParam.getNumber())); + if(count > 0){ + throw new OperateException("设备编号不可重复!"); + } model.setName(equipmentParam.getName()); model.setModel(equipmentParam.getModel()); model.setManufacturers(equipmentParam.getManufacturers()); diff --git a/admin/src/main/java/com/hcy/admin/service/plant/impl/PlantServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/plant/impl/PlantServiceImpl.java index 31e8532..5c375e8 100644 --- a/admin/src/main/java/com/hcy/admin/service/plant/impl/PlantServiceImpl.java +++ b/admin/src/main/java/com/hcy/admin/service/plant/impl/PlantServiceImpl.java @@ -64,7 +64,7 @@ public class PlantServiceImpl implements IPlantService { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("is_delete", 0); - queryWrapper.orderByDesc(Arrays.asList("sort", "id")); + queryWrapper.orderByDesc(Arrays.asList("sort", "create_time")); plantMapper.setSearch(queryWrapper, params, new String[]{ "like:name:str", @@ -93,6 +93,15 @@ public class PlantServiceImpl implements IPlantService { .eq(SystemAuthAdmin::getIsDelete, GlobalConstant.NOT_DELETE) .eq(SystemAuthAdmin::getPlantId, item.getId())); vo.setNumberUsers(numberUsers);// 管理员人数 + + //获取工厂地址 + Map regionMap = regionService.getRegionMap();//获取省市区 + vo.setProvince(regionMap.get(item.getProvinceId())); + vo.setCity(regionMap.get(item.getCityId())); + vo.setDistrict(regionMap.get(item.getDistrictId())); + //工厂位置 + vo.setFactoryLocation(vo.getProvince() + vo.getCity() + vo.getDistrict() + vo.getDetailedAddress()); + list.add(vo); } diff --git a/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java index ec05d70..a1e1188 100644 --- a/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java +++ b/admin/src/main/java/com/hcy/admin/service/sparePart/impl/SparePartServiceImpl.java @@ -12,16 +12,22 @@ import com.hcy.admin.vo.sparePart.SparePartListVo; import com.hcy.admin.vo.sparePart.SparePartDetailVo; import com.hcy.common.constant.GlobalConstant; import com.hcy.common.core.PageResult; +import com.hcy.common.entity.SparePartAudit.SparePartAudit; import com.hcy.common.entity.client.Client; import com.hcy.common.entity.client.ClientContacts; import com.hcy.common.entity.order.MaintenanceOrder; import com.hcy.common.entity.sparePart.SparePart; +import com.hcy.common.entity.sparePartStockAudit.SparePartStockAudit; import com.hcy.common.entity.warehouse.Warehouse; +import com.hcy.common.enums.SparePartStockAuditEnum; +import com.hcy.common.enums.audit.AuditStateEnum; import com.hcy.common.enums.order.MaintenanceOrderStatusEnum; import com.hcy.common.exception.OperateException; +import com.hcy.common.mapper.SparePartAudit.SparePartAuditMapper; import com.hcy.common.mapper.client.ClientContactsMapper; import com.hcy.common.mapper.client.ClientMapper; import com.hcy.common.mapper.sparePart.SparePartMapper; +import com.hcy.common.mapper.sparePartStockAudit.SparePartStockAuditMapper; import com.hcy.common.mapper.warehouse.WarehouseMapper; import com.hcy.common.utils.StringUtil; import com.hcy.common.utils.TimeUtil; @@ -52,6 +58,12 @@ public class SparePartServiceImpl implements ISparePartService { @Resource ClientContactsMapper clientContactsMapper; + @Resource + SparePartAuditMapper sparePartAuditMapper; + + @Resource + SparePartStockAuditMapper sparePartStockAuditMapper; + /** * 备件信息列表 * @@ -229,16 +241,41 @@ public class SparePartServiceImpl implements ISparePartService { new QueryWrapper() .in("id", ids)); - Assert.notNull(modelList, "数据不存在!"); // GlobalConstant.NOT_DELETE 调用未删除常量 // GlobalConstant.DELETE 删除标识 for (SparePart sparePart : modelList) { - sparePart.setIsDelete(GlobalConstant.DELETE); - sparePart.setDeleteTime(System.currentTimeMillis() / 1000); - sparePartMapper.updateById(sparePart);// 进行伪删除 根据id把is_delete修改成1 + //删除前,先判断此配件是否已被关联到出入库审核单,是的话则无法删除,反之,可以被删除。 + List auditList = sparePartAuditMapper.selectList(new LambdaQueryWrapper() + .eq(SparePartAudit::getIsDelete, GlobalConstant.NOT_DELETE) + .eq(SparePartAudit::getSparePartsId, sparePart.getId())); + if(auditList != null){ + for (SparePartAudit sparePartAudit : auditList) { + SparePartStockAudit sparePartStockAudit = sparePartStockAuditMapper.selectOne(new LambdaQueryWrapper() + .eq(SparePartStockAudit::getIsDelete, GlobalConstant.NOT_DELETE) + .eq(SparePartStockAudit::getId, sparePartAudit.getStockAuditId())); + if(sparePartStockAudit != null){ + if(sparePartStockAudit.getAuditResult() == null || + sparePartStockAudit.getAuditResult() == AuditStateEnum.NOT_PASS.getStatus()){ + throw new OperateException("此配件已被关联到出入库审核单!请先处理审核单再来删除!"); + }else{ + sparePart.setIsDelete(GlobalConstant.DELETE); + sparePart.setDeleteTime(System.currentTimeMillis() / 1000); + sparePartMapper.updateById(sparePart);// 进行伪删除 根据id把is_delete修改成1 + break; + } + } + } + }else{ + sparePart.setIsDelete(GlobalConstant.DELETE); + sparePart.setDeleteTime(System.currentTimeMillis() / 1000); + sparePartMapper.updateById(sparePart);// 进行伪删除 根据id把is_delete修改成1 + } + + } + } /** diff --git a/admin/src/main/java/com/hcy/admin/service/sparePartStockAudit/impl/SparePartStockAuditServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/sparePartStockAudit/impl/SparePartStockAuditServiceImpl.java index eacb55e..e1b2fda 100644 --- a/admin/src/main/java/com/hcy/admin/service/sparePartStockAudit/impl/SparePartStockAuditServiceImpl.java +++ b/admin/src/main/java/com/hcy/admin/service/sparePartStockAudit/impl/SparePartStockAuditServiceImpl.java @@ -529,7 +529,7 @@ public class SparePartStockAuditServiceImpl implements ISparePartStockAuditServi SparePartStockAudit model = sparePartStockAuditMapper.findSparePartStockAuditById(id); Assert.notNull(model, "数据不存在!"); - model.setIsDelete(GlobalConstant.NOT_DELETE); + model.setIsDelete(GlobalConstant.DELETE); // 是否删除: [0=否, 1=是] model.setDeleteTime(new Date()); sparePartStockAuditMapper.updateById(model); } diff --git a/admin/src/main/java/com/hcy/admin/service/system/impl/SystemAuthAdminServiceImpl.java b/admin/src/main/java/com/hcy/admin/service/system/impl/SystemAuthAdminServiceImpl.java index 2ee3964..2bfde90 100644 --- a/admin/src/main/java/com/hcy/admin/service/system/impl/SystemAuthAdminServiceImpl.java +++ b/admin/src/main/java/com/hcy/admin/service/system/impl/SystemAuthAdminServiceImpl.java @@ -162,7 +162,7 @@ public class SystemAuthAdminServiceImpl implements ISystemAuthAdminService { new QueryWrapper() .eq("id", vo.getUserId())); if(user != null){ - vo.setReceiveOrderStatus(user.getReceiveOrderStatus()); + item.setReceiveOrderStatus(user.getReceiveOrderStatus()); } list.add(item); diff --git a/admin/src/main/java/com/hcy/admin/validate/order/MaintenanceOrderParam.java b/admin/src/main/java/com/hcy/admin/validate/order/MaintenanceOrderParam.java index 8088a01..85b3287 100644 --- a/admin/src/main/java/com/hcy/admin/validate/order/MaintenanceOrderParam.java +++ b/admin/src/main/java/com/hcy/admin/validate/order/MaintenanceOrderParam.java @@ -102,4 +102,7 @@ public class MaintenanceOrderParam implements Serializable { private String creatorName; // 创建人姓名 private String receiverName; // 接单人姓名 private String returnCause; //退回原因 + + private String createTimeStart; //报修开始时间 + private String createTimeEnd; //报修结束时间 } diff --git a/admin/src/main/java/com/hcy/admin/vo/plant/PlantListVo.java b/admin/src/main/java/com/hcy/admin/vo/plant/PlantListVo.java index 1e7661f..dac442f 100644 --- a/admin/src/main/java/com/hcy/admin/vo/plant/PlantListVo.java +++ b/admin/src/main/java/com/hcy/admin/vo/plant/PlantListVo.java @@ -22,5 +22,16 @@ public class PlantListVo implements Serializable { private String remark; // 备注 private String createTime; // 创建时间 + private String longitude; // 经度 + private String latitude; // 纬度 + private Long provinceId; //省id + private Long cityId; //市id + private Long districtId; //区id + private String province; //省 + private String city; //市 + private String district; //区 + private String detailedAddress; // 详细地址 + private List authAdminList; //待绑定的用户 + private String factoryLocation; // 工厂位置 } diff --git a/common/src/main/java/com/hcy/common/dto/order/MaintenanceOrderDto.java b/common/src/main/java/com/hcy/common/dto/order/MaintenanceOrderDto.java index 396703f..a456d4f 100644 --- a/common/src/main/java/com/hcy/common/dto/order/MaintenanceOrderDto.java +++ b/common/src/main/java/com/hcy/common/dto/order/MaintenanceOrderDto.java @@ -67,5 +67,6 @@ public class MaintenanceOrderDto implements Serializable { private String likeWork; //关键字 private String shortName; //客户简称 private String completeImg; // 完工照片 - + private String createTimeStart; //报修开始时间 + private String createTimeEnd; //报修结束时间 } diff --git a/common/src/main/resources/mapper/MaintenanceOrderMapper.xml b/common/src/main/resources/mapper/MaintenanceOrderMapper.xml index 167619c..843a547 100644 --- a/common/src/main/resources/mapper/MaintenanceOrderMapper.xml +++ b/common/src/main/resources/mapper/MaintenanceOrderMapper.xml @@ -62,6 +62,12 @@ or lc.client_name like concat('%',#{param.likeWork},'%') or le.name like concat('%',#{param.likeWork},'%')) + + and lmo.create_time >= #{param.createTimeStart} + + + and lmo.create_time <= #{param.createTimeEnd} + order by create_time desc diff --git a/front/src/main/java/com/hcy/front/service/impl/UserServiceImpl.java b/front/src/main/java/com/hcy/front/service/impl/UserServiceImpl.java index 99c2474..0f9a9fb 100644 --- a/front/src/main/java/com/hcy/front/service/impl/UserServiceImpl.java +++ b/front/src/main/java/com/hcy/front/service/impl/UserServiceImpl.java @@ -10,8 +10,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; import com.hcy.common.config.GlobalConfig; import com.hcy.common.constant.GlobalConstant; +import com.hcy.common.entity.client.Client; import com.hcy.common.entity.client.ClientContacts; import com.hcy.common.entity.distribution.Distributor; +import com.hcy.common.entity.plant.Plant; import com.hcy.common.entity.staff.Staff; import com.hcy.common.entity.system.SystemAuthAdmin; import com.hcy.common.entity.system.SystemAuthRole; @@ -21,7 +23,9 @@ import com.hcy.common.enums.NoticeEnum; import com.hcy.common.enums.user.SystemAuthRoleEnum; import com.hcy.common.exception.OperateException; import com.hcy.common.mapper.client.ClientContactsMapper; +import com.hcy.common.mapper.client.ClientMapper; import com.hcy.common.mapper.distribution.DistributorMapper; +import com.hcy.common.mapper.plant.PlantMapper; import com.hcy.common.mapper.staff.StaffMapper; import com.hcy.common.mapper.system.SystemAuthAdminMapper; import com.hcy.common.mapper.system.SystemAuthRoleMapper; @@ -63,6 +67,12 @@ public class UserServiceImpl extends ServiceImpl implements IU @Resource DistributorMapper distributorMapper; + @Resource + PlantMapper plantMapper; + + @Resource + ClientMapper clientMapper; + @Resource ClientContactsMapper clientContactsMapper; @@ -147,6 +157,19 @@ public class UserServiceImpl extends ServiceImpl implements IU } vo.setRoleMap(roleMap); } + //返回客户名称 + Client clientName = clientMapper.selectOne(new LambdaQueryWrapper() + .eq(Client::getId, vo.getClientId())); + if(clientName != null){ + vo.setClientName(clientName.getClientName()); + } + + //管辖工厂名称 + Plant plantName = plantMapper.selectOne(new LambdaQueryWrapper() + .eq(Plant::getId, authAdmin.getPlantId())); + if(plantName != null){ + vo.setPlantName(plantName.getName()); + } return vo; } diff --git a/front/src/main/java/com/hcy/front/vo/user/UserCenterVo.java b/front/src/main/java/com/hcy/front/vo/user/UserCenterVo.java index 021bcce..b91a13a 100644 --- a/front/src/main/java/com/hcy/front/vo/user/UserCenterVo.java +++ b/front/src/main/java/com/hcy/front/vo/user/UserCenterVo.java @@ -32,5 +32,7 @@ public class UserCenterVo implements Serializable { private String district; //区 private String technicalGrade; // 技术等级 private Long warehouseId; // 仓库id + private String clientName; // 客户名称 + private String plantName; // 管辖工厂名称 }