From 8904f9e6005e7e1f3cc06f415fdcde0033c32332 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期一, 21 七月 2025 20:33:53 +0800 Subject: [PATCH] art: 技术状态鉴定工单-生成逻辑优化 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java | 246 ++++++++++++++++++++++++------------------------ 1 files changed, 122 insertions(+), 124 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java index 45b2c89..4911f1a 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamTechnicalStatusEvaluationOrderController.java @@ -1,151 +1,149 @@ package org.jeecg.modules.eam.controller; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; 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.common.util.TranslateDictTextUtils; +import org.jeecg.modules.eam.constant.OrderCreationMethodEnum; import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder; +import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationOrderQuery; +import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationOrderRequest; import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.util.Arrays; - - /** +/** * @Description: 鎶�鏈姸鎬侀壌瀹氬伐鍗� * @Author: jeecg-boot - * @Date: 2025-07-09 + * @Date: 2025-07-09 * @Version: V1.0 */ @Slf4j -@Api(tags="鎶�鏈姸鎬侀壌瀹氬伐鍗�") +@Api(tags = "鎶�鏈姸鎬侀壌瀹氬伐鍗�") @RestController @RequestMapping("/eam/eamTechnicalStatusEvaluationOrder") public class EamTechnicalStatusEvaluationOrderController extends JeecgController<EamTechnicalStatusEvaluationOrder, IEamTechnicalStatusEvaluationOrderService> { - @Autowired - private IEamTechnicalStatusEvaluationOrderService eamTechnicalStatusEvaluationOrderService; - - /** - * 鍒嗛〉鍒楄〃鏌ヨ - * - * @param eamTechnicalStatusEvaluationOrder - * @param pageNo - * @param pageSize - * @param req - * @return - */ - @ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ") - @GetMapping(value = "/list") - public Result<?> queryPageList(EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder, - @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, - @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, - HttpServletRequest req) { - QueryWrapper<EamTechnicalStatusEvaluationOrder> queryWrapper = QueryGenerator.initQueryWrapper(eamTechnicalStatusEvaluationOrder, req.getParameterMap()); - Page<EamTechnicalStatusEvaluationOrder> page = new Page<EamTechnicalStatusEvaluationOrder>(pageNo, pageSize); - IPage<EamTechnicalStatusEvaluationOrder> pageList = eamTechnicalStatusEvaluationOrderService.page(page, queryWrapper); - return Result.OK(pageList); - } - - /** - * 娣诲姞 - * - * @param eamTechnicalStatusEvaluationOrder - * @return - */ - @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞") - @ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞") - @PostMapping(value = "/add") - public Result<?> add(@RequestBody EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) { - eamTechnicalStatusEvaluationOrderService.save(eamTechnicalStatusEvaluationOrder); - return Result.OK("娣诲姞鎴愬姛锛�"); - } - - /** - * 缂栬緫 - * - * @param eamTechnicalStatusEvaluationOrder - * @return - */ - @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫") - @ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-缂栬緫") - @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<?> edit(@RequestBody EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) { - eamTechnicalStatusEvaluationOrderService.updateById(eamTechnicalStatusEvaluationOrder); - 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) { - eamTechnicalStatusEvaluationOrderService.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.eamTechnicalStatusEvaluationOrderService.removeByIds(Arrays.asList(ids.split(","))); - return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�"); - } - - /** - * 閫氳繃id鏌ヨ - * - * @param id - * @return - */ - @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ") - @ApiOperation(value="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ", notes="鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ") - @GetMapping(value = "/queryById") - public Result<?> queryById(@RequestParam(name="id",required=true) String id) { - EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder = eamTechnicalStatusEvaluationOrderService.getById(id); - return Result.OK(eamTechnicalStatusEvaluationOrder); - } + @Autowired + private IEamTechnicalStatusEvaluationOrderService eamTechnicalStatusEvaluationOrderService; + @Autowired + private ObjectMapper objectMapper; + @Autowired + private TranslateDictTextUtils translateDictTextUtils; - /** - * 瀵煎嚭excel - * - * @param request - * @param eamTechnicalStatusEvaluationOrder - */ - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder) { - return super.exportXls(request, eamTechnicalStatusEvaluationOrder, EamTechnicalStatusEvaluationOrder.class, "鎶�鏈姸鎬侀壌瀹氬伐鍗�"); - } + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param query + * @param pageNo + * @param pageSize + * @return + */ + @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ", notes = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<?> queryPageList(EamTechnicalStatusEvaluationOrderQuery query, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + Page<EamTechnicalStatusEvaluationOrder> page = new Page<EamTechnicalStatusEvaluationOrder>(pageNo, pageSize); + IPage<EamTechnicalStatusEvaluationOrder> pageList = eamTechnicalStatusEvaluationOrderService.queryPageList(page, query); + return Result.OK(pageList); + } - /** - * 閫氳繃excel瀵煎叆鏁版嵁 - * - * @param request - * @param response - * @return - */ - @RequestMapping(value = "/importExcel", method = RequestMethod.POST) - public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, EamTechnicalStatusEvaluationOrder.class); - } + /** + * 娣诲姞 + * + * @param request + * @return + */ + @AutoLog(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞") + @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞", notes = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-娣诲姞") + @PostMapping(value = "/add") + public Result<?> add(@RequestBody EamTechnicalStatusEvaluationOrderRequest request) { + if (request == null) { + return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒"); + } + if (CollectionUtil.isEmpty(request.getTableDetailList())) { + return Result.error("妫�鏌ラ」涓嶈兘涓虹┖锛�"); + } + request.setCreationMethod(OrderCreationMethodEnum.MANUAL.name()); + boolean b = eamTechnicalStatusEvaluationOrderService.addTechnicalStatusEvaluationOrder(request); + if (!b) { + return Result.error("娣诲姞澶辫触锛�"); + } + 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 = eamTechnicalStatusEvaluationOrderService.collect(id); + if (!b) { + Result.OK("棰嗗彇澶辫触!"); + } + return Result.OK("棰嗗彇鎴愬姛!"); + } + + /** + * 鎴戠殑寰呭姙锛屽鎵瑰姩浣� + * + * @param request + * @return + */ + @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-鎵ц鎿嶄綔", notes = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-鎵ц鎿嶄綔") + @PutMapping(value = "/approval") + public Result<?> approval(@RequestBody EamTechnicalStatusEvaluationOrderRequest request) { + if (request == null) { + return Result.error("瀹℃壒鐨勫璞′笉鑳戒负绌猴紒"); + } + // 妫�鏌ヨ姹傚弬鏁� + if (StrUtil.isBlank(request.getTaskId()) || StrUtil.isBlank(request.getDataId()) || StrUtil.isBlank(request.getInstanceId())) { + return Result.error("瀹℃壒浠诲姟閿欒鎴栦笉瀛樺湪锛�"); + } + EamTechnicalStatusEvaluationOrder entity = eamTechnicalStatusEvaluationOrderService.approval(request); + if (entity == null) { + return Result.error("鎿嶄綔澶辫触锛�"); + } + return Result.ok("鎿嶄綔鎴愬姛锛�"); + } + + + /** + * 閫氳繃id鏌ヨ + * + * @param id + * @return + */ + @ApiOperation(value = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ", notes = "鎶�鏈姸鎬侀壌瀹氬伐鍗�-閫氳繃id鏌ヨ") + @GetMapping(value = "/queryById") + public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { + EamTechnicalStatusEvaluationOrder eamTechnicalStatusEvaluationOrder = eamTechnicalStatusEvaluationOrderService.getById(id); + if (eamTechnicalStatusEvaluationOrder == null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } + try { + String json = objectMapper.writeValueAsString(eamTechnicalStatusEvaluationOrder); + JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); + translateDictTextUtils.translateField("evaluator", eamTechnicalStatusEvaluationOrder.getEvaluator(), item, "sys_user,realname,username"); + return Result.OK(item); + } catch (JsonProcessingException e) { + return Result.error("鏁版嵁杞瘧澶辫触锛�"); + } + } } -- Gitblit v1.9.3