From 6386be7e7d35d6d00db032cc84669ad25b90ce41 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 14:41:15 +0800 Subject: [PATCH 01/23] =?UTF-8?q?=E7=BB=B4=E4=BF=AE=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/common/RepairConstants.java | 9 --- .../yudao/common/TicketsStatusEnum.java | 65 +++++++++++++++++++ .../yudao/common/TicketsWorkStatusEnum.java | 57 ++++++++++++++++ .../impl/DlRepairTicketsServiceImpl.java | 6 +- 4 files changed, 127 insertions(+), 10 deletions(-) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsStatusEnum.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsWorkStatusEnum.java diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairConstants.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairConstants.java index 0a74788c..25d22bbc 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairConstants.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairConstants.java @@ -8,14 +8,5 @@ package cn.iocoder.yudao.common; **/ public class RepairConstants { - public static final String SERVICE_ADVISOR = "维修服务顾问"; - - public static final String GENERAL_INSPECTION = "维修总检"; - - public static final String TEAM_LEADER = "班组长"; - - public static final String REPAIR_STAFF = "维修工"; - - public static final String REPAIR_WAREHOUSE = "维修仓库管理员"; } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsStatusEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsStatusEnum.java new file mode 100644 index 00000000..c3284401 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsStatusEnum.java @@ -0,0 +1,65 @@ +package cn.iocoder.yudao.common; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 维修工单状态枚举 + * + * @author vinjor-m + */ +@AllArgsConstructor +@Getter +public enum TicketsStatusEnum { + /** + * 未派工 + */ + NO_WORK("04","未派工"), + /** + * 施工中 + */ + WORKING("05","施工中"), + /** + * 未结账 + */ + NO_PAY("01","未结账"), + /** + * 挂单/记账 + */ + ACCOUNTING("06","挂单/记账"), + /** + * 已结账 + */ + CHECK_OUT("02","已结账"), + /** + * 已作废 + */ + CANCEL("03","已作废"); + + /** + * 角色code + */ + private String code; + /** + * 角色名称 + */ + private String name; + + /** + * 根据角色code返回对应的枚举 + * @author vinjor-M + * @date 14:23 2024/10/16 + * @param code 角色code + * @return cn.iocoder.yudao.common.SystemEnum + **/ + public static TicketsStatusEnum getRepairRole(String code) { + for (TicketsStatusEnum roleEnum : TicketsStatusEnum.values()) { + if (roleEnum.getCode().equalsIgnoreCase(code)) { + // 找到对应的枚举 + return roleEnum; + } + } + throw new IllegalArgumentException("无效的角色code:" + code); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsWorkStatusEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsWorkStatusEnum.java new file mode 100644 index 00000000..685fd387 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/TicketsWorkStatusEnum.java @@ -0,0 +1,57 @@ +package cn.iocoder.yudao.common; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 维修工单施工状态枚举 + * + * @author vinjor-m + */ +@AllArgsConstructor +@Getter +public enum TicketsWorkStatusEnum { + /** + * 等待接单 + */ + WAITING_RECEIVING("01","等待接单"), + /** + * 已接单 + */ + RECEIVED("04","已接单"), + /** + * 施工中 + */ + DOING("02","施工中"), + /** + * 已完成 + */ + END("03","已完成"); + + /** + * 角色code + */ + private String code; + /** + * 角色名称 + */ + private String name; + + /** + * 根据角色code返回对应的枚举 + * @author vinjor-M + * @date 14:23 2024/10/16 + * @param code 角色code + * @return cn.iocoder.yudao.common.SystemEnum + **/ + public static TicketsWorkStatusEnum getRepairRole(String code) { + for (TicketsWorkStatusEnum roleEnum : TicketsWorkStatusEnum.values()) { + if (roleEnum.getCode().equalsIgnoreCase(code)) { + // 找到对应的枚举 + return roleEnum; + } + } + throw new IllegalArgumentException("无效的角色code:" + code); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 6bf1ef85..fa51db4b 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -5,6 +5,8 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.common.RepairErrorCodeConstants; import cn.iocoder.yudao.common.RepairRoleEnum; +import cn.iocoder.yudao.common.TicketsStatusEnum; +import cn.iocoder.yudao.common.TicketsWorkStatusEnum; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.base.entity.RepairWorker; import cn.iocoder.yudao.module.base.service.RepairWorkerService; @@ -166,7 +168,9 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl collect = itemList.stream().filter(item -> item.getItemType().equals("02")).collect(Collectors.toList()); ticketsRespVO.setPartStatus(CollectionUtil.isEmpty(collect) ? "01" : "02"); // 工单进行状态 默认是等待接单 - ticketsRespVO.setTicketsWorkStatus("01"); + ticketsRespVO.setTicketsWorkStatus(TicketsWorkStatusEnum.WAITING_RECEIVING.getCode()); + // 工单状态 默认是待派工 + ticketsRespVO.setTicketsStatus(TicketsStatusEnum.NO_WORK.getCode()); // 新增主表 baseMapper.insert(ticketsRespVO); From f2c0fbf010b204ec397097091381af5255804c93 Mon Sep 17 00:00:00 2001 From: xiaofajia <1665375861@qq.com> Date: Fri, 18 Oct 2024 15:32:05 +0800 Subject: [PATCH 02/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/iocoder/yudao/common/BaseConstants.java | 7 ++++--- .../admin/DlRepairTitemController.java | 13 +++++++++++++ .../tickets/service/DlRepairTitemService.java | 12 ++++++++++++ .../service/impl/DlRepairTitemServiceImpl.java | 18 ++++++++++++++++++ 4 files changed, 47 insertions(+), 3 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java index 564a4167..c4e307a0 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java @@ -119,7 +119,8 @@ public class BaseConstants { public static final String REPAIR_RECORD_TYPE_ZJ = "zj"; /**结束工单*/ public static final String REPAIR_RECORD_TYPE_JSGD = "jsgd"; - - - + /** 开始施工 */ + public static final String REPAIR_RECORD_TYPE_KSSG = "kssg"; + /** 施工中 */ + public static final String REPAIR_RECORD_TYPE_SGZ = "sgz"; } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTitemController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTitemController.java index b6bbc2fa..072e1a0c 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTitemController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTitemController.java @@ -48,5 +48,18 @@ public class DlRepairTitemController { Page page = new Page<>(pageNo, pageSize); return success(dlRepairTitemService.getTItemPage(repairTitemRespVO, page)); } + + /** + * 获取当前操作人操作的工单中的项目 + * + * @author 小李 + * @date 15:01 2024/10/18 + * @param ticketId 工单ID + **/ + @GetMapping("/listProject") + @Operation(summary = "获取当前操作人操作的工单中的项目") + public CommonResult getProjectList(@RequestParam("ticketId") String ticketId){ + return success(dlRepairTitemService.getProjectList(ticketId)); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTitemService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTitemService.java index fea0013d..82bd2045 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTitemService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTitemService.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** * 针对表【dl_repair_titem(维修工单子表)】的数据库操作Service * @@ -22,4 +24,14 @@ public interface DlRepairTitemService extends IService { * @param repairTitemRespVO 查询对象 **/ IPage getTItemPage(DlRepairTitemRespVO repairTitemRespVO, Page page); + + /** + * 获取当前操作人操作的工单中的项目 + * + * @param ticketId 工单ID + * @author 小李 + * @date 15:01 2024/10/18 + **/ + List getProjectList(String ticketId); + } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTitemServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTitemServiceImpl.java index b972b1d2..c2f0a9b5 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTitemServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTitemServiceImpl.java @@ -4,11 +4,14 @@ import cn.iocoder.yudao.module.tickets.entity.DlRepairTitem; import cn.iocoder.yudao.module.tickets.mapper.DlRepairTitemMapper; import cn.iocoder.yudao.module.tickets.service.DlRepairTitemService; import cn.iocoder.yudao.module.tickets.vo.DlRepairTitemRespVO; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.List; + /** * 针对表【dl_repair_titem(维修工单子表)】的数据库操作Service实现 * @@ -30,6 +33,21 @@ public class DlRepairTitemServiceImpl extends ServiceImpl getTItemPage(DlRepairTitemRespVO repairTitemRespVO, Page page){ return baseMapper.getTItemPage(repairTitemRespVO, page); } + + /** + * 获取当前操作人操作的工单中的项目 + * + * @param ticketId 工单ID + * @author 小李 + * @date 15:01 2024/10/18 + **/ + @Override + public List getProjectList(String ticketId){ + return baseMapper.selectList(new LambdaQueryWrapper().and(item -> { + item.eq(DlRepairTitem::getItemType, "01") + .eq(DlRepairTitem::getTicketId, ticketId); + })); + } } From 88dab0293f4e9aa18445a67613829b2525b7e21b Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 16:10:53 +0800 Subject: [PATCH 03/23] 1 --- .../service/impl/DlRepairTicketsServiceImpl.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 8cc502f6..9cdd4c24 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -495,17 +495,18 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl() .set(DlRepairTickets::getNowRepairId, reqVO.getNowRepairId()) .set(DlRepairTickets::getNowRepairName, reqVO.getNowRepairName()) - .and(item -> { - item.eq(DlRepairTickets::getId, reqVO.getId()) - .eq(DlRepairTickets::getTicketsWorkStatus, "01"); - }) + //工单状态设置为---施工中 + .set(DlRepairTickets::getTicketsStatus, TicketsStatusEnum.WORKING.getCode()) + //维修状态设置为待接单 + .set(DlRepairTickets::getTicketsWorkStatus, TicketsWorkStatusEnum.WAITING_RECEIVING.getCode()) + .and(item -> item.eq(DlRepairTickets::getId, reqVO.getId())) ); - if (update != 1){ + if (update != 1) { throw exception0(500, "工单已开始"); } } From a789c5916963b871442144eca8c131460975a373 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 16:33:09 +0800 Subject: [PATCH 04/23] =?UTF-8?q?=E6=93=8D=E4=BD=9C=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/common/RecordTypeEnum.java | 65 +++++++++++++++++++ .../tickets/utils/TicketsOperateUtil.java | 2 + 2 files changed, 67 insertions(+) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/utils/TicketsOperateUtil.java diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java new file mode 100644 index 00000000..c3284401 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java @@ -0,0 +1,65 @@ +package cn.iocoder.yudao.common; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 维修工单状态枚举 + * + * @author vinjor-m + */ +@AllArgsConstructor +@Getter +public enum TicketsStatusEnum { + /** + * 未派工 + */ + NO_WORK("04","未派工"), + /** + * 施工中 + */ + WORKING("05","施工中"), + /** + * 未结账 + */ + NO_PAY("01","未结账"), + /** + * 挂单/记账 + */ + ACCOUNTING("06","挂单/记账"), + /** + * 已结账 + */ + CHECK_OUT("02","已结账"), + /** + * 已作废 + */ + CANCEL("03","已作废"); + + /** + * 角色code + */ + private String code; + /** + * 角色名称 + */ + private String name; + + /** + * 根据角色code返回对应的枚举 + * @author vinjor-M + * @date 14:23 2024/10/16 + * @param code 角色code + * @return cn.iocoder.yudao.common.SystemEnum + **/ + public static TicketsStatusEnum getRepairRole(String code) { + for (TicketsStatusEnum roleEnum : TicketsStatusEnum.values()) { + if (roleEnum.getCode().equalsIgnoreCase(code)) { + // 找到对应的枚举 + return roleEnum; + } + } + throw new IllegalArgumentException("无效的角色code:" + code); + } + +} diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/utils/TicketsOperateUtil.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/utils/TicketsOperateUtil.java new file mode 100644 index 00000000..661fcee5 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/utils/TicketsOperateUtil.java @@ -0,0 +1,2 @@ +package cn.iocoder.yudao.module.tickets.utils;public class TicketsOprateUtil { +} From 328c865bb6938becc6d278b616b3333a30e07775 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 16:33:23 +0800 Subject: [PATCH 05/23] =?UTF-8?q?=E5=90=8E=E7=AB=AF=E5=AF=B9=E5=BA=94=20Re?= =?UTF-8?q?cordTypeEnum=20=E6=9E=9A=E4=B8=BE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iocoder/yudao/common/RecordTypeEnum.java | 72 +++++++++++-------- .../base/service/RepairRecordsService.java | 2 +- .../impl/RepairRecordsServiceImpl.java | 2 +- .../tickets/utils/TicketsOperateUtil.java | 18 ++++- 4 files changed, 61 insertions(+), 33 deletions(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java index c3284401..04c9fa5d 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java @@ -4,62 +4,74 @@ import lombok.AllArgsConstructor; import lombok.Getter; /** - * 维修工单状态枚举 + * 工单操作记录-工作类型枚举 * * @author vinjor-m */ @AllArgsConstructor @Getter -public enum TicketsStatusEnum { +public enum RecordTypeEnum { /** - * 未派工 + * 创建工单 */ - NO_WORK("04","未派工"), + CJGD("cjgd","创建工单"), + /** + * 指派施工 + */ + ZPSG("zpsg","指派施工"), + /** + * 领料 + */ + LL("ll","领料"), + /** + * 退料 + */ + TL("tl","退料"), + /** + * 施工完成(自检) + */ + SGWCZJ("sgwczj","施工完成(自检)"), + /** + * 总检 + */ + ZJ("zj","总检"), + /** + * 结束工单 + */ + JSGD("jsgd","结束工单"), + /** + * 开始施工 + */ + KSSG("kssg","开始施工"), /** * 施工中 */ - WORKING("05","施工中"), - /** - * 未结账 - */ - NO_PAY("01","未结账"), - /** - * 挂单/记账 - */ - ACCOUNTING("06","挂单/记账"), - /** - * 已结账 - */ - CHECK_OUT("02","已结账"), - /** - * 已作废 - */ - CANCEL("03","已作废"); + SGZ("sgz","施工中"); /** - * 角色code + * code */ private String code; /** - * 角色名称 + * 名称 */ private String name; /** - * 根据角色code返回对应的枚举 + * 根据code返回对应的枚举 * @author vinjor-M * @date 14:23 2024/10/16 - * @param code 角色code + * @param code code * @return cn.iocoder.yudao.common.SystemEnum **/ - public static TicketsStatusEnum getRepairRole(String code) { - for (TicketsStatusEnum roleEnum : TicketsStatusEnum.values()) { - if (roleEnum.getCode().equalsIgnoreCase(code)) { + public static RecordTypeEnum getRepairRole(String code) { + for (RecordTypeEnum thisEnum : RecordTypeEnum.values()) { + if (thisEnum.getCode().equalsIgnoreCase(code)) { // 找到对应的枚举 - return roleEnum; + return thisEnum; } } - throw new IllegalArgumentException("无效的角色code:" + code); + throw new IllegalArgumentException("无效的枚举code:" + code); } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java index 4b02dc59..742c36fb 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairRecordsService.java @@ -19,7 +19,7 @@ public interface RepairRecordsService extends IService { * * @param ticketId 工单id * @param repairItemId 工单子表id - * @param type 工作类型(数据字典:repair_records_type;后端已初始化常量,可直接引用base包中BaseConstants下106-119行) + * @param type 工作类型(数据字典:repair_records_type;后端对应 RecordTypeEnum 枚举) * @param remark 备注 * @param images 图片(相对路径按照“,”分隔) * @author PQZ diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java index 867cbd38..b04a9d8b 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairRecordsServiceImpl.java @@ -42,7 +42,7 @@ public class RepairRecordsServiceImpl extends ServiceImpl Date: Fri, 18 Oct 2024 16:36:09 +0800 Subject: [PATCH 06/23] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/DlRepairTicketsController.java | 14 ++++++++++ .../service/DlRepairTicketsService.java | 10 +++++++ .../impl/DlRepairTicketsServiceImpl.java | 27 +++++++++++++++++++ .../tickets/vo/DlRepairTicketsRespVO.java | 6 +++++ 4 files changed, 57 insertions(+) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java index 659d5ad0..14977811 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java @@ -213,5 +213,19 @@ public class DlRepairTicketsController { dlRepairTicketsService.updateRepair(reqVO); return CommonResult.ok(); } + + /** + * 更新工单状态 + * + * @author 小李 + * @date 15:46 2024/10/18 + * @param respVO 请求对象 + **/ + @GetMapping("/updateStatus") + @Operation(summary = "更新工单状态") + public CommonResult updateStatus(@RequestBody DlRepairTicketsRespVO respVO){ + dlRepairTicketsService.updateStatus(respVO); + return CommonResult.ok(); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java index e835c805..c8c24f75 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlRepairTicketsService.java @@ -116,4 +116,14 @@ public interface DlRepairTicketsService extends IService { * @param reqVO 请求对象 **/ void updateRepair(DlRepairTicketsReqVO reqVO); + + /** + * 更新工单状态 + * + * @param respVO 请求对象 + * @author 小李 + * @date 15:46 2024/10/18 + **/ + void updateStatus(DlRepairTicketsRespVO respVO); + } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 8cc502f6..cdf3867f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -9,6 +9,7 @@ import cn.iocoder.yudao.common.TicketsStatusEnum; import cn.iocoder.yudao.common.TicketsWorkStatusEnum; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.base.entity.RepairWorker; +import cn.iocoder.yudao.module.base.service.RepairRecordsService; import cn.iocoder.yudao.module.base.service.RepairWorkerService; import cn.iocoder.yudao.module.booking.entity.DlRepairBooking; import cn.iocoder.yudao.module.booking.service.DlRepairBookingService; @@ -135,6 +136,9 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl() + .set(DlRepairTickets::getTicketsWorkStatus, respVO.getTicketsWorkStatus()) + .eq(DlRepairTickets::getId, respVO.getId()) + ); + // 更新工单子表 + titemService.update(new LambdaUpdateWrapper() + .set(DlRepairTitem::getItemStatus, respVO.getItem().getItemStatus()) + .eq(DlRepairTitem::getId, respVO.getItem().getId()) + ); + // 记录日志 + recordsService.saveRepairRecord(respVO.getId(), respVO.getItem().getId(), "", respVO.getRemark(), respVO.getImage()); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/DlRepairTicketsRespVO.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/DlRepairTicketsRespVO.java index 7a842e9b..8ab3e9eb 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/DlRepairTicketsRespVO.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/vo/DlRepairTicketsRespVO.java @@ -25,4 +25,10 @@ public class DlRepairTicketsRespVO extends DlRepairTickets { /** 预约记录ID */ private String bookingId; + + /** 图片路径 */ + private String image; + + /** 子表单条数据 */ + private DlRepairTitem item; } From b0df9941d936be22f665c1abdf08608ee3fd8ae1 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 16:37:31 +0800 Subject: [PATCH 07/23] 1 --- .../src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java index 04c9fa5d..442558c7 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java @@ -64,7 +64,7 @@ public enum RecordTypeEnum { * @param code code * @return cn.iocoder.yudao.common.SystemEnum **/ - public static RecordTypeEnum getRepairRole(String code) { + public static RecordTypeEnum getEnumByCode(String code) { for (RecordTypeEnum thisEnum : RecordTypeEnum.values()) { if (thisEnum.getCode().equalsIgnoreCase(code)) { // 找到对应的枚举 From 88e5379ea2bf82a02a85ea51c492ff6c54ee64f2 Mon Sep 17 00:00:00 2001 From: PQZ Date: Fri, 18 Oct 2024 16:50:38 +0800 Subject: [PATCH 08/23] 111 --- .../iocoder/yudao/common/BaseConstants.java | 2 + .../base/service/RepairWorkerService.java | 9 +++ .../service/impl/RepairWorkerServiceImpl.java | 55 +++++++++++++++++-- .../impl/DlRepairTicketsServiceImpl.java | 1 + 4 files changed, 61 insertions(+), 6 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java index 564a4167..f104692e 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java @@ -55,6 +55,8 @@ public class BaseConstants { public static final Integer BATCH_SIZE = 100; /**资质临期通知模板*/ public static final String QUALS_INTERIM_PERIOD = "quals_interim_period"; + /**站内信模版*/ + public static final String TICKET_EMPLOY = "ticket_employ"; /**资质过期通知模板*/ public static final String QUALS_EXPIRED = "quals_expired"; /** 资产临期通知模板 */ diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairWorkerService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairWorkerService.java index 730e7e3d..c267c455 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairWorkerService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/RepairWorkerService.java @@ -69,6 +69,15 @@ public interface RepairWorkerService extends IService { **/ List listByTicketId(String ticketId); + /** + * 向指定用户发送消息 + * @author PQZ + * @date 16:27 2024/10/18 + * @param userId 用户id + * @param text 消息通知内容 + **/ + void sentMessage(Long userId,String text); + /** * 通过班组长的id查该班组的员工 * diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairWorkerServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairWorkerServiceImpl.java index c06edd16..3fc5a4dd 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairWorkerServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/base/service/impl/RepairWorkerServiceImpl.java @@ -2,13 +2,18 @@ package cn.iocoder.yudao.module.base.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.security.core.LoginUser; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; +import cn.iocoder.yudao.module.app.controller.admin.NotifyMessageSocket; import cn.iocoder.yudao.module.base.entity.RepairWorker; import cn.iocoder.yudao.module.base.mapper.RepairWorkerMapper; import cn.iocoder.yudao.module.base.service.RepairWorkerService; import cn.iocoder.yudao.module.base.vo.RepairWorkerPageReqVO; import cn.iocoder.yudao.module.base.vo.RepairWorkerRespVO; import cn.iocoder.yudao.module.base.vo.RepairWorkerSaveReqVO; +import cn.iocoder.yudao.module.system.api.notify.NotifyMessageSendApi; +import cn.iocoder.yudao.module.system.api.notify.dto.NotifySendSingleToUserReqDTO; +import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.dto.UserDTO; import cn.iocoder.yudao.module.tickets.entity.DlRepairTitem; import cn.iocoder.yudao.module.tickets.service.DlRepairTitemService; @@ -16,14 +21,18 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.io.IOException; import java.util.*; import java.util.stream.Collectors; +import static cn.iocoder.yudao.common.BaseConstants.TICKET_EMPLOY; + /** * 维修工人 Service 实现类 * @@ -39,6 +48,12 @@ public class RepairWorkerServiceImpl extends ServiceImpl userList) { - if (CollectionUtil.isNotEmpty(userList)){ + if (CollectionUtil.isNotEmpty(userList)) { //获取已有的维修工人ID列表 List existingWorkerIds = workerMapper.getAllWorkerIds(); @@ -98,18 +113,18 @@ public class RepairWorkerServiceImpl extends ServiceImpl queryListPage(RepairWorkerPageReqVO pageReqVO, Page page) { - return workerMapper.queryListPage(pageReqVO,page); + return workerMapper.queryListPage(pageReqVO, page); } /** * 通过工单ID查到工单ID中所选择的员工信息 * + * @param ticketId 工单ID * @author 小李 * @date 15:53 2024/10/14 - * @param ticketId 工单ID **/ @Override - public List listByTicketId(String ticketId){ + public List listByTicketId(String ticketId) { // 查工单的项目信息 List titems = dlRepairTitemService.list(new LambdaQueryWrapper() .and(item -> { @@ -122,6 +137,34 @@ public class RepairWorkerServiceImpl extends ServiceImpl templateParams = new HashMap<>(); + // 发送模版内容 + templateParams.put("text", text); + // 发送站内信 + sendApi.sendSingleMessageToAdmin(new NotifySendSingleToUserReqDTO() + .setUserId(userId) + .setTemplateCode(TICKET_EMPLOY).setTemplateParams(templateParams)); + //发送语音提醒 + notifyMessageSocket.sendMessage(text, loginUser.getTenantId().toString(), userId.toString()); + } catch (IOException e) { + e.printStackTrace(); + } + } + /** * 通过班组长的id查该班组的员工 * @@ -129,7 +172,7 @@ public class RepairWorkerServiceImpl extends ServiceImpl listByLeads(){ + public List listByLeads() { // 取班组长的记录 RepairWorker worker = baseMapper.selectOne(new LambdaQueryWrapper().eq(RepairWorker::getUserId, SecurityFrameworkUtils.getLoginUserId())); // 根据班组长的工种查所有该工程的工人 @@ -149,7 +192,7 @@ public class RepairWorkerServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper() - .eq(RepairWorker::getUserId,userId); + .eq(RepairWorker::getUserId, userId); List list = this.list(queryWrapper); return !list.isEmpty() && "1".equals(list.get(0).getIsLeads()); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 9cdd4c24..d322a4c4 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -509,6 +509,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl Date: Fri, 18 Oct 2024 16:52:30 +0800 Subject: [PATCH 09/23] 1 --- .../iocoder/yudao/common/BaseConstants.java | 15 --------------- .../iocoder/yudao/common/RecordTypeEnum.java | 6 +++++- .../impl/DlRepairTicketsServiceImpl.java | 19 +++++++++++++------ 3 files changed, 18 insertions(+), 22 deletions(-) diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java index 564a4167..24281f66 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/common/BaseConstants.java @@ -105,21 +105,6 @@ public class BaseConstants { /**维修记录*/ public static final String REPAIR_RECORD_TYPE_RECORD = "record"; - /**创建工单*/ - public static final String REPAIR_RECORD_TYPE_CJGD = "cjgd"; - /**指派施工*/ - public static final String REPAIR_RECORD_TYPE_ZPSG = "zpsg"; - /**领料*/ - public static final String REPAIR_RECORD_TYPE_LL = "ll"; - /**退料*/ - public static final String REPAIR_RECORD_TYPE_TL = "tl"; - /**施工完成(自检)*/ - public static final String REPAIR_RECORD_TYPE_SGWCZJ = "sgwczj"; - /**总检*/ - public static final String REPAIR_RECORD_TYPE_ZJ = "zj"; - /**结束工单*/ - public static final String REPAIR_RECORD_TYPE_JSGD = "jsgd"; - } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java index 442558c7..00ce000f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RecordTypeEnum.java @@ -46,7 +46,11 @@ public enum RecordTypeEnum { /** * 施工中 */ - SGZ("sgz","施工中"); + SGZ("sgz","施工中"), + /** + * 接单 + */ + jd("jd","接单"); /** * code diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 9cdd4c24..cd677d1b 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -3,12 +3,10 @@ package cn.iocoder.yudao.module.tickets.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; -import cn.iocoder.yudao.common.RepairErrorCodeConstants; -import cn.iocoder.yudao.common.RepairRoleEnum; -import cn.iocoder.yudao.common.TicketsStatusEnum; -import cn.iocoder.yudao.common.TicketsWorkStatusEnum; +import cn.iocoder.yudao.common.*; import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.base.entity.RepairWorker; +import cn.iocoder.yudao.module.base.service.RepairRecordsService; import cn.iocoder.yudao.module.base.service.RepairWorkerService; import cn.iocoder.yudao.module.booking.entity.DlRepairBooking; import cn.iocoder.yudao.module.booking.service.DlRepairBookingService; @@ -52,6 +50,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.deepoove.poi.XWPFTemplate; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -135,6 +134,8 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl() - .set(DlRepairTickets::getTicketsWorkStatus, "02") + .set(DlRepairTickets::getTicketsWorkStatus, TicketsWorkStatusEnum.RECEIVED) .and(item -> { item.eq(DlRepairTickets::getId, id) - .eq(DlRepairTickets::getTicketsWorkStatus, "01"); + .eq(DlRepairTickets::getTicketsWorkStatus, TicketsWorkStatusEnum.WAITING_RECEIVING); })); if (update != 1){ throw exception0(500, "工单已被其他人接单了"); } + //最后记录操作日志--接单 + repairRecordsService.saveRepairRecord(id,null, RecordTypeEnum.jd.getCode(), "接单",null); } /** @@ -509,6 +514,8 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl Date: Fri, 18 Oct 2024 17:11:58 +0800 Subject: [PATCH 10/23] =?UTF-8?q?app=E6=96=B0=E5=BB=BA=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E8=B5=B0=E9=80=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/RepairProjectController.java | 9 +++++ .../project/mapper/RepairProjectMapper.java | 8 ++++ .../project/service/RepairProjectService.java | 8 ++++ .../impl/RepairProjectServiceImpl.java | 38 +++++++++++++++++++ .../module/project/vo/RepairProjectAppvo.java | 13 +++++++ .../mapper/project/RepairProjectMapper.xml | 12 ++++++ 6 files changed, 88 insertions(+) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairProjectAppvo.java diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairProjectController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairProjectController.java index c2874b70..db435e3d 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairProjectController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/controller/admin/RepairProjectController.java @@ -128,4 +128,13 @@ public class RepairProjectController { List list = repairProjectService.list(new LambdaQueryWrapper().eq(RepairProject::getName, name)); return success(list.stream().max(Comparator.comparing(RepairProject::getCreateTime)).orElse(null)); } + + /** + * 获取维修项目和分类 + * @return + */ + @GetMapping("/getRepairProjectAndCateGory") + public CommonResult getRepairProjectAndCateGory(){ + return success(repairProjectService.getRepairProjectAndCateGory()); + } } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairProjectMapper.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairProjectMapper.java index a35fbe10..d57ec2f0 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairProjectMapper.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/mapper/RepairProjectMapper.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.project.mapper; import cn.iocoder.yudao.module.project.entity.RepairProject; +import cn.iocoder.yudao.module.project.vo.RepairProjectAppvo; import cn.iocoder.yudao.module.project.vo.RepairProjectPageReqVO; import cn.iocoder.yudao.module.project.vo.RepairProjectRespVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -9,6 +10,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * 维修项目 Mapper * @@ -28,4 +31,9 @@ public interface RepairProjectMapper extends BaseMapper { **/ IPage selectListPage(@Param("entity") RepairProjectPageReqVO pageReqVO, Page page); + /** + * 查询维修项目和维修项目分类信息 + * @return + */ + List selectProjectAndCateGory(); } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairProjectService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairProjectService.java index bc23ab89..9cb2a453 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairProjectService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/RepairProjectService.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.project.service; import cn.iocoder.yudao.module.project.entity.RepairProject; +import cn.iocoder.yudao.module.project.vo.RepairProjectAppvo; import cn.iocoder.yudao.module.project.vo.RepairProjectPageReqVO; import cn.iocoder.yudao.module.project.vo.RepairProjectRespVO; import cn.iocoder.yudao.module.project.vo.RepairProjectSaveReqVO; @@ -9,6 +10,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** * 维修项目 Service 接口 * @@ -56,4 +59,9 @@ public interface RepairProjectService extends IService { IPage queryListPage(RepairProjectPageReqVO pageReqVO, Page page); + /** + * 查询服务分类和维修项目列表 + * @return + */ + List getRepairProjectAndCateGory(); } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairProjectServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairProjectServiceImpl.java index 7fdd8dfe..10afa53e 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairProjectServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/service/impl/RepairProjectServiceImpl.java @@ -1,9 +1,13 @@ package cn.iocoder.yudao.module.project.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.project.entity.RepairProject; import cn.iocoder.yudao.module.project.mapper.RepairProjectMapper; import cn.iocoder.yudao.module.project.service.RepairProjectService; +import cn.iocoder.yudao.module.project.vo.RepairProjectAppvo; import cn.iocoder.yudao.module.project.vo.RepairProjectPageReqVO; import cn.iocoder.yudao.module.project.vo.RepairProjectRespVO; import cn.iocoder.yudao.module.project.vo.RepairProjectSaveReqVO; @@ -14,6 +18,9 @@ import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; /** * 维修项目 Service 实现类 @@ -82,5 +89,36 @@ public class RepairProjectServiceImpl extends ServiceImpl getRepairProjectAndCateGory() { + List repairProjectAppvos = repairProjectMapper.selectProjectAndCateGory(); + // 提取并去重 typeId + List uniqueTypeIds = repairProjectAppvos.stream() + .map(RepairProjectAppvo::getTypeId) + .distinct() + .collect(Collectors.toList()); + List list = new ArrayList<>(); + for (String uniqueTypeId : uniqueTypeIds) { + RepairProjectAppvo repairProjectAppvo = new RepairProjectAppvo(); + repairProjectAppvo.setTypeId(uniqueTypeId); + if (ObjectUtil.isNotEmpty(uniqueTypeId)) { + List filteredList = repairProjectAppvos.stream() + .filter(appvo -> uniqueTypeId.equals(appvo.getTypeId())) + .collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(filteredList)) { + repairProjectAppvo.setTypeName(filteredList.get(0).getTypeName()); + repairProjectAppvo.setGroupList(BeanUtil.copyToList(filteredList, RepairProject.class)); + } + } + list.add(repairProjectAppvo); + } + return list; + } + } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairProjectAppvo.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairProjectAppvo.java new file mode 100644 index 00000000..66128b3e --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/project/vo/RepairProjectAppvo.java @@ -0,0 +1,13 @@ +package cn.iocoder.yudao.module.project.vo; + +import cn.iocoder.yudao.module.project.entity.RepairProject; +import lombok.Data; + +import java.util.List; + +@Data +public class RepairProjectAppvo extends RepairProject{ + private String typeName; + private String typeId; + private List groupList; +} diff --git a/dl-module-repair/src/main/resources/mapper/project/RepairProjectMapper.xml b/dl-module-repair/src/main/resources/mapper/project/RepairProjectMapper.xml index e2314d79..bb2dca22 100644 --- a/dl-module-repair/src/main/resources/mapper/project/RepairProjectMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/project/RepairProjectMapper.xml @@ -33,4 +33,16 @@ ORDER BY drp.create_time DESC + \ No newline at end of file From 524a66e6f1162f4bb96fcb721578f02a05266e1f Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 17:48:29 +0800 Subject: [PATCH 11/23] 1 --- .../src/main/java/cn/iocoder/yudao/common/RepairCons.java | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java new file mode 100644 index 00000000..8a5a45c4 --- /dev/null +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java @@ -0,0 +1,2 @@ +package cn.iocoder.yudao.common;public class RepairCons { +} From 457c896ce815d9dac73d4132d81641bf2c24d296 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Fri, 18 Oct 2024 17:50:45 +0800 Subject: [PATCH 12/23] 1 --- .../cn/iocoder/yudao/common/RepairCons.java | 14 +++- .../admin/DlRepairTicketsController.java | 6 ++ .../tickets/mapper/DlRepairTicketsMapper.java | 10 ++- .../impl/DlRepairTicketsServiceImpl.java | 6 +- .../tickets/vo/DlRepairTicketsReqVO.java | 2 + .../mapper/tickets/DlRepairTicketsMapper.xml | 64 ++++++++++++++++--- 6 files changed, 91 insertions(+), 11 deletions(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java index 8a5a45c4..d0b8f61c 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/common/RepairCons.java @@ -1,2 +1,14 @@ -package cn.iocoder.yudao.common;public class RepairCons { +package cn.iocoder.yudao.common; + +/** + * 维修系统常量 + * @author vinjor-M + * @date 17:44 2024/10/18 +**/ +public class RepairCons { + + /**工单-待处理*/ + public static final String TICKETS_WAITING = "waiting"; + /**工单-所有*/ + public static final String TICKETS_ALL = "all"; } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java index 659d5ad0..3ac7c5d2 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlRepairTicketsController.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.tickets.controller.admin; +import cn.iocoder.yudao.common.RepairCons; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.tickets.entity.DlRepairTickets; import cn.iocoder.yudao.module.tickets.service.DlRepairTicketsService; @@ -9,6 +10,7 @@ import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsReqVO; import cn.iocoder.yudao.module.tickets.vo.DlRepairTicketsRespVO; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; +import org.apache.commons.lang3.StringUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -171,6 +173,10 @@ public class DlRepairTicketsController { @RequestParam(value = "pageNo", defaultValue = "1")Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10")Integer pageSize){ Page page = new Page<>(pageNo, pageSize); + if(StringUtils.isEmpty(repairTicketsReqVO.getSelectType())){ + //查询类型为空,默认查待处理的 + repairTicketsReqVO.setSelectType(RepairCons.TICKETS_WAITING); + } return success(dlRepairTicketsService.getPageType(repairTicketsReqVO, page)); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/mapper/DlRepairTicketsMapper.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/mapper/DlRepairTicketsMapper.java index 23dec322..4a53a9f2 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/mapper/DlRepairTicketsMapper.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/mapper/DlRepairTicketsMapper.java @@ -27,13 +27,21 @@ public interface DlRepairTicketsMapper extends BaseMapper { IPage getTicketsPage(@Param("map") DlRepairTicketsReqVO repairTicketsReqVO, Page page); /** - * 分类查询工单分页 + * 分类查询工单分页----待处理的 * * @author 小李 * @date 16:26 2024/10/12 * @param repairTicketsReqVO 查询对象 **/ IPage getPageType(@Param("map") DlRepairTicketsReqVO repairTicketsReqVO, Page page); + /** + * 分类查询工单分页----所有记录 + * + * @author 小李 + * @date 16:26 2024/10/12 + * @param repairTicketsReqVO 查询对象 + **/ + IPage getPageTypeAll(@Param("map") DlRepairTicketsReqVO repairTicketsReqVO, Page page); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 1c55d600..1b7b3aa4 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -421,7 +421,11 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl userIds; + /** 查询类型(waiting 待处理的 | all 所有数据) */ + private String selectType; } diff --git a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml index 8272a711..3a2694cd 100644 --- a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml @@ -203,17 +203,65 @@ and drt.is_finish = #{map.isFinish} - and ( - - find_in_set(#{item}, drti.repair_ids) > 0 + and (drt.tickets_status = '05') + and (drt.now_repair_id in + + #{item} ) - - and (drt.now_repair_id in - - #{item} - + order by drt.create_time desc + + + + diff --git a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml index 72a44b68..809307fb 100644 --- a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml @@ -46,28 +46,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + @@ -157,30 +181,9 @@ order by drt.create_time desc - + select drt.* from dl_repair_tickets drt - left join dl_repair_titem drti - on drt.id = drti.ticket_id AND drti.deleted = '0' where drt.deleted = '0' and ( @@ -215,27 +218,32 @@ order by drt.create_time desc - + select drti.id , + drti.ticket_id , + drti.item_name , + drti.item_count , + drti.item_unit , + drti.item_price , + drti.item_discount , + drti.item_money , + drti.repair_ids , + drti.repair_names , + drti.sale_id , + drti.sale_name , + drti.item_type , + drti.project_id , + drti.part_id , + drti.other_id , + drti.item_type_id , + drti.item_status , + drti.remark + from dl_repair_titem drti + where drti.ticket_id = #{id} AND drti.deleted = '0' + + + From a268b43f149b64615afa2f90879b2f71a3e94ca2 Mon Sep 17 00:00:00 2001 From: xiaofajia <1665375861@qq.com> Date: Sat, 19 Oct 2024 22:56:01 +0800 Subject: [PATCH 23/23] =?UTF-8?q?=E9=85=8D=E4=BB=B6=E9=A2=86=E9=80=80?= =?UTF-8?q?=E4=BC=98=E5=8C=961/2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yudao/module/tickets/entity/DlTwItem.java | 8 +- .../impl/DlRepairTicketsServiceImpl.java | 7 +- .../impl/DlTicketWaresServiceImpl.java | 127 ++++++++++++------ .../service/impl/DlTwItemServiceImpl.java | 6 + .../mapper/tickets/DlRepairTicketsMapper.xml | 23 +++- .../mapper/tickets/DlTwItemMapper.xml | 4 +- 6 files changed, 123 insertions(+), 52 deletions(-) diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlTwItem.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlTwItem.java index 75e9f924..43f249ea 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlTwItem.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/entity/DlTwItem.java @@ -48,7 +48,7 @@ public class DlTwItem extends TenantBaseDO { private Integer waresCount; /** - * 配件状态(01:已领料,02:未领料,03:已退料 tw_item_status) + * 配件状态(01:已领料,02:未领料,03:已退料,04可确认领料,可确认退料 tw_item_status) */ private String waresStatus; @@ -57,4 +57,10 @@ public class DlTwItem extends TenantBaseDO { /** 客户是否可见(字典yes_no);已存在于系统中(是:1,否:0) */ private String isShow; + + /** 可领取数量 */ + private Integer waresCouldCount; + + /** 已领料数量 */ + private Integer waresAlreadyCount; } \ No newline at end of file diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java index 59b2691c..f7e69d0f 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/impl/DlRepairTicketsServiceImpl.java @@ -259,8 +259,11 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl - implements DlTicketWaresService { + implements DlTicketWaresService { @Resource @@ -76,29 +77,30 @@ public class DlTicketWaresServiceImpl extends ServiceImpl getPage(DlTicketWaresReqVO reqVO, Page page){ + public IPage getPage(DlTicketWaresReqVO reqVO, Page page) { // 确认查看者身份 String userRoleCode = repairTicketsService.getUserRole(); - if(userRoleCode.equals(RepairRoleEnum.ADMIN.getCode())|| userRoleCode.equals(RepairRoleEnum.INSPECTION.getCode())){ + if (userRoleCode.equals(RepairRoleEnum.ADMIN.getCode()) || userRoleCode.equals(RepairRoleEnum.INSPECTION.getCode())) { //维修管理员和总检,看所有数据 - }else if(userRoleCode.equals(RepairRoleEnum.ADVISOR.getCode())){ + } else if (userRoleCode.equals(RepairRoleEnum.ADVISOR.getCode())) { //服务顾问 reqVO.setAdviserId(SecurityFrameworkUtils.getLoginUserId()); - }else if(userRoleCode.equals(RepairRoleEnum.REPAIR_STAFF.getCode())){ + } else if (userRoleCode.equals(RepairRoleEnum.REPAIR_STAFF.getCode())) { //维修工,进一步判断是否是班组长 boolean ifLeader = workerService.getIfLeader(); - if(ifLeader){ + if (ifLeader) { //班组长,看本班组所有数据 RepairWorker one = repairWorkerService.getOne(new LambdaQueryWrapper().eq(RepairWorker::getUserId, SecurityFrameworkUtils.getLoginUserId())); // 查自己班组的员工信息 @@ -106,15 +108,15 @@ public class DlTicketWaresServiceImpl extends ServiceImpl userIds = list.stream().map(RepairWorker::getUserId).collect(Collectors.toList()); reqVO.setUserIds(userIds); - }else{ + } else { //普通维修工 reqVO.setUserIds(Collections.singletonList(SecurityFrameworkUtils.getLoginUserId())); } - }else if(userRoleCode.equals(RepairRoleEnum.WAREHOUSE.getCode())){ + } else if (userRoleCode.equals(RepairRoleEnum.WAREHOUSE.getCode())) { // 维修仓库管理员 reqVO.setStatus(null); reqVO.setUserRole(5); - }else{ + } else { return null; } return baseMapper.getPage(reqVO, page); @@ -123,13 +125,13 @@ public class DlTicketWaresServiceImpl extends ServiceImpl().eq(RepairWorker::getUserId, SecurityFrameworkUtils.getLoginUserId())); @@ -138,7 +140,7 @@ public class DlTicketWaresServiceImpl extends ServiceImpl list = respVO.getItems().stream().map(item -> item.setTwId(respVO.getId())).collect(Collectors.toList()); - if (CollectionUtil.isEmpty(list)){ + if (CollectionUtil.isEmpty(list)) { throw exception0(500, "配件列表为空"); } twItemService.saveOrUpdateBatch(list); @@ -147,13 +149,13 @@ public class DlTicketWaresServiceImpl extends ServiceImpl() .set(DlTicketWares::getStatus, respVO.getStatus()) .eq(DlTicketWares::getId, respVO.getId()) ); // 如果是通过并且是领料就还需要把配件信息加入到工单中 - if (ObjectUtil.isNotEmpty(respVO.getStatus()) && respVO.getStatus().equals("02") && respVO.getType().equals("01")){ + if (ObjectUtil.isNotEmpty(respVO.getStatus()) && respVO.getStatus().equals("02") && respVO.getType().equals("01")) { // 更新维修工单 // 计算配件的总价 BigDecimal reduce = respVO.getWares().stream().map(DlRepairTitem::getItemMoney).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -205,7 +207,7 @@ public class DlTicketWaresServiceImpl extends ServiceImpl { respVO.getWares().stream().filter(i -> i.getPartId().equals(item.getPartId())).findFirst().ifPresent(i -> { // 如果只是退部分就减少数量 - if (!i.getItemCount().equals(item.getItemCount())){ + if (!i.getItemCount().equals(item.getItemCount())) { repairTitemService.update(new LambdaUpdateWrapper() .setSql("item_count = item_count - " + i.getItemCount()) .setSql("item_money = item_money - " + i.getItemMoney()) @@ -242,7 +244,7 @@ public class DlTicketWaresServiceImpl extends ServiceImpl list = repairTitemService.list(new LambdaQueryWrapper() - .eq(DlRepairTitem::getTicketId, respVO.getTicketId()) - .in(DlRepairTitem::getPartId, respVO.getRepairSois() - .stream() - .map(DlRepairSoi::getGoodsId) - .collect(Collectors.toList()))); - // 计算总价 - BigDecimal reduce = list.stream().map(DlRepairTitem::getItemMoney).reduce(BigDecimal.ZERO, BigDecimal::add); - respVO.getRepairSo().setItemCount(list.size()); - respVO.getRepairSo().setTotalPrice(reduce); + List list = repairTitemService.list(new LambdaQueryWrapper().and(i -> { + i.eq(DlRepairTitem::getTicketId, respVO.getTicketId()) + .in(DlRepairTitem::getPartId, respVO.getRepairSois() + .stream() + .map(DlRepairSoi::getGoodsId) + .collect(Collectors.toList())); + }) + ); + // 计算总价 (通知领料的数量可能和请求的不一样,所以需要这样计算) + BigDecimal reduce = list.stream() + /* + item:维修工单子表中的每一个配件 + map中是找到与item对应的领料单子表的配件,记soi + 将item的价格设置给soi的价格 + */ + .map(item -> { + DlRepairSoi repairSoi = respVO.getRepairSois().stream() + .filter(i -> i.getGoodsId().equals(item.getPartId())).findFirst() + .orElse(null); + if (repairSoi != null) { + repairSoi.setGoodsPrice(item.getItemPrice()); + } + return repairSoi; + }) + .filter(Objects::nonNull) + // 计算soi的价格 + .map(i -> new BigDecimal(i.getGoodsCount()).multiply(i.getGoodsPrice())) + // 计算总价 + .reduce(BigDecimal.ZERO, BigDecimal::add); // 生成领料单 + respVO.getRepairSo().setTotalPrice(reduce); + respVO.getRepairSo().setItemCount(list.size()); repairSoService.save(respVO.getRepairSo()); // 生成领料单子表 respVO.getRepairSois().forEach(item -> { item.setSoId(respVO.getRepairSo().getId()); - DlRepairTitem titem = list.stream().filter(i -> i.getPartId().equals(item.getGoodsId())).collect(Collectors.toList()).get(0); - item.setGoodsPrice(titem.getItemPrice()); }); repairSoiService.saveBatch(respVO.getRepairSois()); - // 更新领料申请子表 - twItemService.updateBatchById(respVO.getItems()); + // 更新配件申请子表 + /* + 同理,通知领料的数量可能与实际需要的数量不一致,需要重新计算状态 + */ + // 先查老数据 + List oldData = twItemService.list(new LambdaQueryWrapper().in(DlTwItem::getId, respVO.getItems().stream().map(DlTwItem::getId).collect(Collectors.toList()))); + // 构造新数据 + List newData = oldData.stream().map(item -> { + DlTwItem dlTwItem = new DlTwItem(); + dlTwItem.setId(item.getId()); + respVO.getRepairSois().stream() + .filter(i -> i.getGoodsId().equals(item.getWaresId())) + .findFirst() + .ifPresent(repairSoi -> { + dlTwItem.setWaresCouldCount(repairSoi.getGoodsCount()); + dlTwItem.setWaresStatus(repairSoi.getGoodsCount().equals(item.getWaresCount()) ? "04" : item.getWaresStatus()); + }); + return dlTwItem; + }).collect(Collectors.toList()); + twItemService.updateBatchById(newData); + + // 通知维修工 + // 查维修工的userId + repairWorkerService.sentMessage(respVO.getRepairId(), "您有新的领料单需要确认"); } /** * 员工确认领料 * + * @param respVO 请求对象 * @author 小李 * @date 22:07 2024/10/16 - * @param respVO 请求对象 **/ @Override @DSTransactional - public void repairPassTicketWares(DlTicketWaresRespVO respVO){ + public void repairPassTicketWares(DlTicketWaresRespVO respVO) { // 更新领料申请子表 twItemService.updateBatchById(respVO.getItems()); // 更新领料申请表 @@ -315,12 +358,12 @@ public class DlTicketWaresServiceImpl extends ServiceImpl @Resource private RepairWaresService repairWaresService; + @Resource + @Lazy + private DlTicketWaresService ticketWaresService; + /** * 根据主表查看全部 * diff --git a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml index 72a44b68..136429b6 100644 --- a/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/tickets/DlRepairTicketsMapper.xml @@ -204,13 +204,24 @@ and drt.is_finish = #{map.isFinish} - + and (drt.tickets_status = '05') - and (drt.now_repair_id in - - #{item} - - ) + + + and (drt.now_repair_id in + + #{item} + + ) + + + and ( + + find_in_set(#{item}, drti.repair_ids) > 0 + + ) + + order by drt.create_time desc diff --git a/dl-module-repair/src/main/resources/mapper/tickets/DlTwItemMapper.xml b/dl-module-repair/src/main/resources/mapper/tickets/DlTwItemMapper.xml index 34946b94..4ca9cf57 100644 --- a/dl-module-repair/src/main/resources/mapper/tickets/DlTwItemMapper.xml +++ b/dl-module-repair/src/main/resources/mapper/tickets/DlTwItemMapper.xml @@ -13,13 +13,15 @@ + + select id,tw_id,wares_id, wares_name,wares_count,wares_status,remark, - is_show + is_show,wares_could_count, wares_already_count from dl_tw_item dti where dti.deleted = '0'