diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/conf/controller/admin/BaseTypeController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/conf/controller/admin/BaseTypeController.java index cfb48480..c5b01923 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/conf/controller/admin/BaseTypeController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/conf/controller/admin/BaseTypeController.java @@ -101,6 +101,4 @@ public class BaseTypeController { public CommonResult> getBaseTypeList(@Valid BaseTypeListReqVO listReqVO) { return success(baseTypeService.getBaseTypeList(listReqVO)); } - - } \ No newline at end of file diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarBrandController.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarBrandController.java index 8f438392..0869d603 100644 --- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarBrandController.java +++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/custom/controller/admin/CarBrandController.java @@ -77,7 +77,8 @@ public class CarBrandController { @GetMapping("/get") @Operation(summary = "获得车辆品牌") @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('base:car-brand:query')") + // 有些地方要用,但是又没有权限,故把查看单个的权限公开---小李 +// @PreAuthorize("@ss.hasPermission('base:car-brand:query')") public CommonResult getCarBrand(@RequestParam("id") String id) { CarBrand carBrand = carBrandService.getCarBrand(id); return success(BeanUtils.toBean(carBrand, CarBrandRespVO.class)); 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 34781e67..0c3e2dd2 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 @@ -390,5 +390,18 @@ public class DlRepairTicketsController { dlRepairTicketsService.removeTicketById(id); return CommonResult.ok(); } + + /** + * 根据工单ID查客户和车辆信息 + * + * @author 小李 + * @date 19:07 2024/11/18 + * @param id id + **/ + @GetMapping("/getCusAndCarById") + @Operation(summary = "根据工单ID查客户和车辆信息") + public CommonResult getCusAndCarById(@RequestParam("id") String id) { + return success(dlRepairTicketsService.getCusAndCarById(id)); + } } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlTicketWaresController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlTicketWaresController.java index 26726bac..1df612e4 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlTicketWaresController.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/controller/admin/DlTicketWaresController.java @@ -11,6 +11,8 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.List; + import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; /** @@ -195,5 +197,18 @@ public class DlTicketWaresController { dlTicketWaresService.updateSafe(respVO); return CommonResult.ok(); } + + /** + * 根据选择的配件生成采购单需要的数据 + * + * @author 小李 + * @date 18:14 2024/11/18 + * @param ids ids + **/ + @GetMapping("/getByIds") + @Operation(summary = "根据选择的配件生成采购单需要的数据") + public CommonResult getByIds(@RequestParam("ids") List ids){ + return success(dlTicketWaresService.getByIds(ids)); + } } 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 cfe2fc56..9bf7bf17 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 @@ -252,4 +252,13 @@ public interface DlRepairTicketsService extends IService { * @date 15:00 2024/11/16 **/ Boolean hasPrice(String id); + + /** + * 根据工单ID查客户和车辆信息 + * + * @author 小李 + * @date 19:07 2024/11/18 + * @param id id + **/ + CustomerAndCarVO getCusAndCarById(String id); } diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlTicketWaresService.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlTicketWaresService.java index c2f0cf73..b5a47bfe 100644 --- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlTicketWaresService.java +++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/tickets/service/DlTicketWaresService.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.tickets.service; import cn.iocoder.yudao.module.tickets.entity.DlTicketWares; import cn.iocoder.yudao.module.tickets.vo.DlTicketWaresReqVO; import cn.iocoder.yudao.module.tickets.vo.DlTicketWaresRespVO; +import cn.iocoder.yudao.module.tickets.vo.DlTwItemRespVO; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; @@ -113,4 +114,13 @@ public interface DlTicketWaresService extends IService { * @param respVO 对象 **/ void updateSafe(DlTicketWaresRespVO respVO); + + /** + * 根据选择的配件生成采购单需要的数据 + * + * @author 小李 + * @date 18:14 2024/11/18 + * @param ids ids + **/ + Map> getByIds(List ids); } 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 d36d62e7..1044eaf4 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 @@ -22,6 +22,7 @@ import cn.iocoder.yudao.module.conf.entity.BaseType; import cn.iocoder.yudao.module.conf.service.BaseTypeService; import cn.iocoder.yudao.module.custom.entity.*; import cn.iocoder.yudao.module.custom.service.*; +import cn.iocoder.yudao.module.custom.vo.CarMainReqVO; import cn.iocoder.yudao.module.custom.vo.CarMainRespVO; import cn.iocoder.yudao.module.custom.vo.CustomerMainRespVO; import cn.iocoder.yudao.module.order.entity.RepairOrderInfo; @@ -1746,6 +1747,28 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl> getByIds(List ids){ + // 查配件申请表子表 + List twItems = twItemService.listByIds(ids); + // 查配件 + List waresIds = twItems.stream().map(DlTwItem::getWaresId).collect(Collectors.toList()); + List wares = repairWaresService.listByIds(waresIds); + // 关联配件申请表子项和配件 + List newTwItems = twItems.stream().map(item -> { + DlTwItemRespVO twItem = BeanUtil.toBean(item, DlTwItemRespVO.class); + RepairWares ware = wares.stream().filter(i -> i.getId().equals(item.getWaresId())).findFirst().orElse(null); + if (ware != null) { + twItem.setWares(ware); + } + return twItem; + }).collect(Collectors.toList()); + // 分组 + Map> map = newTwItems.stream().collect(Collectors.groupingBy(item -> { + String key = item.getWares().getType(); + return key != null && !key.isEmpty() ? key : "default"; + })); + // 查分类 + List baseTypes = baseTypeService.listByIds(map.keySet()); + Map TypeMap = baseTypes.stream().collect(Collectors.toMap(BaseType::getId, BaseType::getName)); + // 映射 + Map> result = new HashMap<>(); + for (Map.Entry> entry : map.entrySet()) { + String key = entry.getKey(); + String newKey = TypeMap.get(key); + if (newKey == null || newKey.isEmpty()) { + newKey = "未分类"; + } + result.put(newKey, entry.getValue()); + } + return result; + } }