From a16b8f1035fa93ac1333fb273da2c48b68bf7126 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期三, 14 五月 2025 17:45:38 +0800 Subject: [PATCH] art: 设备管理-二保-新增,编辑功能 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSecondMaintenanceOrderController.java | 177 ++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 134 insertions(+), 43 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSecondMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSecondMaintenanceOrderController.java index 585655d..696bed5 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSecondMaintenanceOrderController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamSecondMaintenanceOrderController.java @@ -1,6 +1,6 @@ package org.jeecg.modules.eam.controller; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; @@ -9,16 +9,24 @@ import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; -import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.modules.eam.constant.BusinessCodeConst; +import org.jeecg.modules.eam.constant.OrderCreationMethodEnum; +import org.jeecg.modules.eam.constant.SecondMaintenanceStatusEnum; import org.jeecg.modules.eam.entity.EamSecondMaintenanceOrder; +import org.jeecg.modules.eam.request.EamSecondMaintenanceQuery; +import org.jeecg.modules.eam.request.EamSecondMaintenanceRequest; +import org.jeecg.modules.eam.service.IEamSecondMaintenanceOrderDetailService; import org.jeecg.modules.eam.service.IEamSecondMaintenanceOrderService; +import org.jeecg.modules.system.service.ISysBusinessCodeRuleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.Arrays; +import java.util.List; +import java.util.concurrent.atomic.AtomicInteger; - /** +/** * @Description: 璁惧浜岀骇淇濆吇 * @Author: jeecg-boot * @Date: 2025-04-29 @@ -27,15 +35,19 @@ @Slf4j @Api(tags="璁惧浜岀骇淇濆吇") @RestController -@RequestMapping("/eam/eamSecondMaintenanceOrder") +@RequestMapping("/eam/secondMaintenanceOrder") public class EamSecondMaintenanceOrderController extends JeecgController<EamSecondMaintenanceOrder, IEamSecondMaintenanceOrderService> { @Autowired private IEamSecondMaintenanceOrderService eamSecondMaintenanceOrderService; + @Autowired + private ISysBusinessCodeRuleService businessCodeRuleService; + @Autowired + private IEamSecondMaintenanceOrderDetailService secondMaintenanceOrderDetailService; /** * 鍒嗛〉鍒楄〃鏌ヨ * - * @param eamSecondMaintenanceOrder + * @param query * @param pageNo * @param pageSize * @param req @@ -44,72 +56,65 @@ @AutoLog(value = "璁惧浜岀骇淇濆吇-鍒嗛〉鍒楄〃鏌ヨ") @ApiOperation(value="璁惧浜岀骇淇濆吇-鍒嗛〉鍒楄〃鏌ヨ", notes="璁惧浜岀骇淇濆吇-鍒嗛〉鍒楄〃鏌ヨ") @GetMapping(value = "/list") - public Result<?> queryPageList(EamSecondMaintenanceOrder eamSecondMaintenanceOrder, + public Result<?> queryPageList(EamSecondMaintenanceQuery query, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { - QueryWrapper<EamSecondMaintenanceOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamSecondMaintenanceOrder, req.getParameterMap()); +// QueryWrapper<EamSecondMaintenanceOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamSecondMaintenanceOrder, req.getParameterMap()); Page<EamSecondMaintenanceOrder> page = new Page<EamSecondMaintenanceOrder>(pageNo, pageSize); - IPage<EamSecondMaintenanceOrder> pageList = eamSecondMaintenanceOrderService.page(page, queryWrapper); + IPage<EamSecondMaintenanceOrder> pageList = eamSecondMaintenanceOrderService.queryPageList(page, query); return Result.OK(pageList); } /** * 娣诲姞 * - * @param eamSecondMaintenanceOrder + * @param request * @return */ @AutoLog(value = "璁惧浜岀骇淇濆吇-娣诲姞") @ApiOperation(value="璁惧浜岀骇淇濆吇-娣诲姞", notes="璁惧浜岀骇淇濆吇-娣诲姞") @PostMapping(value = "/add") - public Result<?> add(@RequestBody EamSecondMaintenanceOrder eamSecondMaintenanceOrder) { - eamSecondMaintenanceOrderService.save(eamSecondMaintenanceOrder); + public Result<?> add(@RequestBody EamSecondMaintenanceRequest request) { + if (request == null) { + return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒"); + } + if (CollectionUtil.isEmpty(request.getTableDetailList())) { + return Result.error("淇濆吇椤逛笉鑳戒负绌猴紒"); + } + String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.SECOND_MAINTENANCE_CODE_RULE); + request.setOrderNum(codeSeq); + request.setCreationMethod(OrderCreationMethodEnum.MANUAL.name()); + boolean b = eamSecondMaintenanceOrderService.addWeekMaintenance(request); + if (!b) { + return Result.error("娣诲姞澶辫触锛�"); + } return Result.OK("娣诲姞鎴愬姛锛�"); } /** * 缂栬緫 * - * @param eamSecondMaintenanceOrder + * @param request * @return */ @AutoLog(value = "璁惧浜岀骇淇濆吇-缂栬緫") @ApiOperation(value="璁惧浜岀骇淇濆吇-缂栬緫", notes="璁惧浜岀骇淇濆吇-缂栬緫") @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<?> edit(@RequestBody EamSecondMaintenanceOrder eamSecondMaintenanceOrder) { - eamSecondMaintenanceOrderService.updateById(eamSecondMaintenanceOrder); + public Result<?> edit(@RequestBody EamSecondMaintenanceRequest request) { + if (request == null) { + return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒"); + } + if (CollectionUtil.isEmpty(request.getTableDetailList())) { + return Result.error("淇濆吇椤逛笉鑳戒负绌猴紒"); + } + boolean b = eamSecondMaintenanceOrderService.editWeekMaintenance(request); + if (!b) { + return Result.error("缂栬緫澶辫触锛�"); + } return Result.OK("缂栬緫鎴愬姛!"); } - - /** - * 閫氳繃id鍒犻櫎 - * - * @param id - * @return - */ - @AutoLog(value = "璁惧浜岀骇淇濆吇-閫氳繃id鍒犻櫎") - @ApiOperation(value="璁惧浜岀骇淇濆吇-閫氳繃id鍒犻櫎", notes="璁惧浜岀骇淇濆吇-閫氳繃id鍒犻櫎") - @DeleteMapping(value = "/delete") - public Result<?> delete(@RequestParam(name="id",required=true) String id) { - eamSecondMaintenanceOrderService.removeById(id); - return Result.OK("鍒犻櫎鎴愬姛!"); - } - - /** - * 鎵归噺鍒犻櫎 - * - * @param ids - * @return - */ - @AutoLog(value = "璁惧浜岀骇淇濆吇-鎵归噺鍒犻櫎") - @ApiOperation(value="璁惧浜岀骇淇濆吇-鎵归噺鍒犻櫎", notes="璁惧浜岀骇淇濆吇-鎵归噺鍒犻櫎") - @DeleteMapping(value = "/deleteBatch") - public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { - this.eamSecondMaintenanceOrderService.removeByIds(Arrays.asList(ids.split(","))); - return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�"); - } - + /** * 閫氳繃id鏌ヨ * @@ -123,4 +128,90 @@ EamSecondMaintenanceOrder eamSecondMaintenanceOrder = eamSecondMaintenanceOrderService.getById(id); return Result.OK(eamSecondMaintenanceOrder); } + + /** + * 閫氳繃id浣滃簾 + * + * @param id + * @return + */ + @AutoLog(value = "璁惧浜岀骇淇濆吇-浣滃簾") + @ApiOperation(value = "璁惧浜岀骇淇濆吇-浣滃簾", notes = "璁惧浜岀骇淇濆吇-浣滃簾") + @DeleteMapping(value = "/abolish") + public Result<?> abolish(@RequestParam(name = "id", required = true) String id) { + EamSecondMaintenanceOrder entity = eamSecondMaintenanceOrderService.getById(id); + if (entity == null) { + return Result.error("瑕佷綔搴熺殑鏁版嵁涓嶅瓨鍦紝璇峰埛鏂伴噸璇曪紒"); + } + if (!SecondMaintenanceStatusEnum.WAIT_MAINTENANCE.name().equals(entity.getMaintenanceStatus())) { + return Result.error("璇ョ姸鎬佺殑鏁版嵁涓嶅厑璁歌繘琛屼綔搴燂紒"); + } + entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.ABOLISH.name()); + eamSecondMaintenanceOrderService.updateById(entity); + return Result.OK("浣滃簾鎴愬姛!"); + } + + /** + * 閫氳繃id棰嗗彇 + * + * @param id + * @return + */ + @AutoLog(value = "璁惧浜岀骇淇濆吇-棰嗗彇") + @ApiOperation(value = "璁惧浜岀骇淇濆吇-棰嗗彇", notes = "璁惧浜岀骇淇濆吇-棰嗗彇") + @GetMapping(value = "/collect") + public Result<?> collect(@RequestParam(name = "id", required = true) String id) { + boolean b = eamSecondMaintenanceOrderService.collect(id); + if (!b) { + Result.OK("棰嗗彇澶辫触!"); + } + return Result.OK("棰嗗彇鎴愬姛!"); + } + + /** + * 閫氳繃id鎵归噺浣滃簾 + * + * @param ids + * @return + */ + @AutoLog(value = "鍛ㄤ繚宸ュ崟-鎵归噺浣滃簾") + @ApiOperation(value = "鍛ㄤ繚宸ュ崟-鎵归噺浣滃簾", notes = "鍛ㄤ繚宸ュ崟-鎵归噺浣滃簾") + @DeleteMapping(value = "/abolishBatch") + public Result<?> abolishBatch(@RequestParam(name = "ids", required = true) String ids) { + List<String> list = Arrays.asList(ids.split(",")); + AtomicInteger i = new AtomicInteger(); + list.forEach(id -> { + EamSecondMaintenanceOrder entity = eamSecondMaintenanceOrderService.getById(id); + if (entity != null && SecondMaintenanceStatusEnum.WAIT_MAINTENANCE.name().equals(entity.getMaintenanceStatus())) { + entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.ABOLISH.name()); + eamSecondMaintenanceOrderService.updateById(entity); + i.getAndIncrement(); + } + }); + return Result.OK("鎵归噺浣滃簾鎴愬姛 " + i.get() + " 鏉″伐鍗曪紒"); + } + + /** + * 閫氳繃id鎵归噺棰嗗彇 + * + * @param ids + * @return + */ + @AutoLog(value = "鍛ㄤ繚宸ュ崟-鎵归噺棰嗗彇") + @ApiOperation(value = "鍛ㄤ繚宸ュ崟-鎵归噺棰嗗彇", notes = "鍛ㄤ繚宸ュ崟-鎵归噺棰嗗彇") + @DeleteMapping(value = "/collectBatch") + public Result<?> collectBatch(@RequestParam(name = "ids", required = true) String ids) { + List<String> list = Arrays.asList(ids.split(",")); + AtomicInteger i = new AtomicInteger(); + list.forEach(id -> { + EamSecondMaintenanceOrder entity = eamSecondMaintenanceOrderService.getById(id); + if (entity != null && SecondMaintenanceStatusEnum.WAIT_MAINTENANCE.name().equals(entity.getMaintenanceStatus())) { + boolean b = eamSecondMaintenanceOrderService.collect(id); + if (b) { + i.getAndIncrement(); + } + } + }); + return Result.OK("鎵归噺棰嗗彇鎴愬姛 " + i.get() + " 鏉″伐鍗曪紒"); + } } -- Gitblit v1.9.3