From 4aea11bda27aa35b09972ef1bd370a1bee82ed9a Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期一, 02 六月 2025 09:56:49 +0800 Subject: [PATCH] art: 设备管理-执行维修详情接口修改 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java | 77 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 76 insertions(+), 1 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java index 2378ea9..db70249 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamRepairOrderController.java @@ -4,18 +4,28 @@ import javax.servlet.http.HttpServletRequest; import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; +import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; +import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.TranslateDictTextUtils; +import org.jeecg.modules.eam.constant.BusinessCodeConst; import org.jeecg.modules.eam.entity.EamRepairOrder; import org.jeecg.modules.eam.request.EamRepairOrderQuery; import org.jeecg.modules.eam.request.EamRepairOrderRequest; import org.jeecg.modules.eam.request.EamRepairOrderResponse; +import org.jeecg.modules.eam.request.EamReportRepairQuery; import org.jeecg.modules.eam.service.IEamRepairOrderService; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.system.base.controller.JeecgController; +import org.jeecg.modules.system.entity.SysUser; +import org.jeecg.modules.system.service.ISysUserService; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; @@ -34,6 +44,15 @@ @Resource private IEamRepairOrderService eamRepairOrderService; + + @Resource + private ObjectMapper objectMapper; + + @Resource + private TranslateDictTextUtils translateDictTextUtils; + + @Resource + private ISysUserService sysUserService; /** * 鍒嗛〉鍒楄〃鏌ヨ @@ -66,8 +85,44 @@ if (StringUtils.isBlank(eamRepairOrder.getReportId())) { return Result.error("棰嗗彇澶辫触,璇烽�夋嫨缁翠慨璁板綍锛�"); } + // 鏍¢獙棰嗗彇鏉冮檺 + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (!BusinessCodeConst.PCR0002.equals(user.getPost())) { + return Result.error("棰嗗彇澶辫触,娌℃湁棰嗗彇鏉冮檺锛�"); + } eamRepairOrderService.saveRepairOrder(eamRepairOrder); return Result.OK("娣诲姞鎴愬姛锛�"); + } + + /** + * 鎸囨淳 + * + * @param + * @return + */ + @AutoLog(value = "鏁呴殰鎶ヤ慨-鎸囨淳") + @ApiOperation(value = "鏁呴殰鎶ヤ慨-鎸囨淳", notes = "鏁呴殰鎶ヤ慨-鎸囨淳") + @PostMapping(value = "/assign") + public Result<?> assign(@RequestBody EamReportRepairQuery eamReportRepairQuery) { + if (StringUtils.isBlank(eamReportRepairQuery.getRepairer())) { + return Result.error("鎸囨淳澶辫触,璇烽�夋嫨缁翠慨宸ワ紒"); + } + // 鏍¢獙鎸囨淳鏉冮檺 + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (!BusinessCodeConst.PCR0004.equals(user.getPost())) { + return Result.error("鎸囨淳澶辫触,娌℃湁鎸囨淳鏉冮檺锛�"); + } + // 鏍¢獙缁翠慨宸ユ潈闄� + SysUser sysUser = sysUserService.getUserByName(eamReportRepairQuery.getRepairer()); + if (sysUser == null) { + return Result.error("鎸囨淳澶辫触,鏈壘鍒版缁翠慨宸ョ敤鎴凤紒"); + } + if (!BusinessCodeConst.PCR0002.equals(sysUser.getPost())) { + return Result.error("鎸囨淳澶辫触,姝ょ敤鎴蜂笉鏄淮淇伐锛�"); + } + eamRepairOrderService.assign(eamReportRepairQuery); + + return Result.OK("鎸囨淳鎴愬姛锛�"); } /** @@ -105,7 +160,27 @@ @GetMapping(value = "/queryById") public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { EamRepairOrderResponse eamRepairOrder = eamRepairOrderService.findById(id); - return Result.OK(eamRepairOrder); + if (eamRepairOrder == null) { + return Result.error("鏈壘鍒板搴旀暟鎹紒"); + } + try { + String json = objectMapper.writeValueAsString(eamRepairOrder); + JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); + translateDictTextUtils.translateField("createBy", eamRepairOrder.getCreateBy(), item, "sys_user,realname,username"); + translateDictTextUtils.translateField("breakdownFlag", eamRepairOrder.getBreakdownFlag(), item, "breakdown_flag"); + translateDictTextUtils.translateField("faultType", eamRepairOrder.getFaultType(), item, "fault_reason_category"); + translateDictTextUtils.translateField("reportStatus", eamRepairOrder.getReportStatus(), item, "report_repair_status"); + translateDictTextUtils.translateField("equipmentId", eamRepairOrder.getEquipmentId(), item, "eam_equipment,equipment_code,id"); + translateDictTextUtils.translateField("installationPosition", eamRepairOrder.getEquipmentId(), item, "eam_equipment,installation_position,id"); + translateDictTextUtils.translateField("repairStatus", eamRepairOrder.getRepairStatus(), item, "report_repair_status"); + translateDictTextUtils.translateField("repairer", eamRepairOrder.getRepairer(), item, "sys_user,realname,username"); + translateDictTextUtils.translateField("repairerPhone", eamRepairOrder.getRepairer(), item, "sys_user,phone,username"); + translateDictTextUtils.translateField("reporter", eamRepairOrder.getReporter(), item, "sys_user,realname,username"); + translateDictTextUtils.translateField("reporterPhone", eamRepairOrder.getReporter(), item, "sys_user,phone,username"); + return Result.OK(item); + } catch (Exception e) { + return Result.error("鏁版嵁杞瘧澶辫触锛�"); + } } /** -- Gitblit v1.9.3