From 178278bf8d570ace8cc59ee865035b49333a4421 Mon Sep 17 00:00:00 2001 From: cuikaidong <ckd2942379034@163.com> Date: 星期二, 27 五月 2025 17:32:25 +0800 Subject: [PATCH] 设备报废功能增加 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentScrapController.java | 344 ++++++++++++++++++++++++++++++++------------------------ 1 files changed, 196 insertions(+), 148 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentScrapController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentScrapController.java index dee0f33..9aa318e 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentScrapController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentScrapController.java @@ -1,167 +1,215 @@ package org.jeecg.modules.eam.controller; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import org.jeecg.common.api.vo.Result; -import org.jeecg.common.system.query.QueryGenerator; -import org.jeecg.common.aspect.annotation.AutoLog; -import org.jeecg.common.util.oConvertUtils; -import org.jeecg.modules.eam.entity.EamEquipmentScrap; -import org.jeecg.modules.eam.service.IEamEquipmentScrapService; -import java.util.Date; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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 lombok.extern.slf4j.Slf4j; -import org.jeecg.common.system.base.controller.JeecgController; -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; -import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; +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.constant.CommonConstant; +import org.jeecg.common.system.base.controller.JeecgController; +import org.jeecg.common.util.TranslateDictTextUtils; +import org.jeecg.modules.eam.constant.BusinessCodeConst; +import org.jeecg.modules.eam.constant.EquipmentScrapStatusEnum; +import org.jeecg.modules.eam.entity.EamEquipmentScrap; +import org.jeecg.modules.eam.request.EamEquipmentScrapQuery; +import org.jeecg.modules.eam.request.EamEquipmentScrapRequest; +import org.jeecg.modules.eam.service.IEamEquipmentScrapService; +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; + +/** * @Description: 璁惧鎶ュ簾(杞) * @Author: jeecg-boot - * @Date: 2025-05-15 + * @Date: 2025-05-15 * @Version: V1.0 */ @Slf4j -@Api(tags="璁惧鎶ュ簾(杞)") +@Api(tags = "璁惧鎶ュ簾(杞)") @RestController @RequestMapping("/eam/eamEquipmentScrap") public class EamEquipmentScrapController extends JeecgController<EamEquipmentScrap, IEamEquipmentScrapService> { - @Autowired - private IEamEquipmentScrapService eamEquipmentScrapService; - - /** - * 鍒嗛〉鍒楄〃鏌ヨ - * - * @param eamEquipmentScrap - * @param pageNo - * @param pageSize - * @param req - * @return - */ - @AutoLog(value = "璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ") - @ApiOperation(value="璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ", notes="璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ") - @GetMapping(value = "/list") - public Result<?> queryPageList(EamEquipmentScrap eamEquipmentScrap, - @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, - @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, - HttpServletRequest req) { - QueryWrapper<EamEquipmentScrap> queryWrapper = QueryGenerator.initQueryWrapper(eamEquipmentScrap, req.getParameterMap()); - Page<EamEquipmentScrap> page = new Page<EamEquipmentScrap>(pageNo, pageSize); - IPage<EamEquipmentScrap> pageList = eamEquipmentScrapService.page(page, queryWrapper); - return Result.OK(pageList); - } - - /** - * 娣诲姞 - * - * @param eamEquipmentScrap - * @return - */ - @AutoLog(value = "璁惧鎶ュ簾(杞)-娣诲姞") - @ApiOperation(value="璁惧鎶ュ簾(杞)-娣诲姞", notes="璁惧鎶ュ簾(杞)-娣诲姞") - @PostMapping(value = "/add") - public Result<?> add(@RequestBody EamEquipmentScrap eamEquipmentScrap) { - eamEquipmentScrapService.save(eamEquipmentScrap); - return Result.OK("娣诲姞鎴愬姛锛�"); - } - - /** - * 缂栬緫 - * - * @param eamEquipmentScrap - * @return - */ - @AutoLog(value = "璁惧鎶ュ簾(杞)-缂栬緫") - @ApiOperation(value="璁惧鎶ュ簾(杞)-缂栬緫", notes="璁惧鎶ュ簾(杞)-缂栬緫") - @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<?> edit(@RequestBody EamEquipmentScrap eamEquipmentScrap) { - eamEquipmentScrapService.updateById(eamEquipmentScrap); - 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) { - eamEquipmentScrapService.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.eamEquipmentScrapService.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) { - EamEquipmentScrap eamEquipmentScrap = eamEquipmentScrapService.getById(id); - return Result.OK(eamEquipmentScrap); - } + @Autowired + private IEamEquipmentScrapService eamEquipmentScrapService; + @Autowired + private ISysBusinessCodeRuleService businessCodeRuleService; + @Autowired + private ObjectMapper objectMapper; + @Autowired + private TranslateDictTextUtils translateDictTextUtils; - /** - * 瀵煎嚭excel - * - * @param request - * @param eamEquipmentScrap - */ - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, EamEquipmentScrap eamEquipmentScrap) { - return super.exportXls(request, eamEquipmentScrap, EamEquipmentScrap.class, "璁惧鎶ュ簾(杞)"); - } + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param eamEquipmentScrap + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value = "璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ", notes = "璁惧鎶ュ簾(杞)-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<?> queryPageList(EamEquipmentScrapQuery query, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + Page<EamEquipmentScrap> page = new Page<EamEquipmentScrap>(pageNo, pageSize); + IPage<EamEquipmentScrap> pageList = eamEquipmentScrapService.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, EamEquipmentScrap.class); - } + /** + * 娣诲姞 + * + * @param request + * @return + */ + @AutoLog(value = "璁惧鎶ュ簾(杞)-娣诲姞") + @ApiOperation(value = "璁惧鎶ュ簾(杞)-娣诲姞", notes = "璁惧鎶ュ簾(杞)-娣诲姞") + @PostMapping(value = "/add") + public Result<?> add(@RequestBody EamEquipmentScrap request) { + if (request == null) { + return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒"); + } + request.setCode(businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.SCRAP_CODE_RULE)); + request.setScrapStatus(EquipmentScrapStatusEnum.WAIT_SUBMIT.name()); + request.setDelFlag(CommonConstant.DEL_FLAG_0); + boolean b = eamEquipmentScrapService.addScrap(request); + if (!b) { + return Result.error("娣诲姞澶辫触锛�"); + } + return Result.OK("娣诲姞鎴愬姛锛�"); + } + /** + * 缂栬緫 + * + * @param request + * @return + */ + @AutoLog(value = "璁惧鎶ュ簾(杞)-缂栬緫") + @ApiOperation(value = "璁惧鎶ュ簾(杞)-缂栬緫", notes = "璁惧鎶ュ簾(杞)-缂栬緫") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<?> edit(@RequestBody EamEquipmentScrap request) { + if (request == null) { + return Result.error("缂栬緫鐨勫璞′笉鑳戒负绌猴紒"); + } + boolean b = eamEquipmentScrapService.editScrap(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) { + EamEquipmentScrap entity = eamEquipmentScrapService.getById(id); + if (entity != null) { + entity.setDelFlag(CommonConstant.DEL_FLAG_1); + eamEquipmentScrapService.updateById(entity); + } + 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.eamEquipmentScrapService.removeByIds(Arrays.asList(ids.split(","))); + List<String> list = Arrays.asList(ids.split(",")); + list.forEach(id -> { + EamEquipmentScrap entity = eamEquipmentScrapService.getById(id); + if (entity != null) { + entity.setDelFlag(CommonConstant.DEL_FLAG_1); + eamEquipmentScrapService.updateById(entity); + } + }); + 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) { + EamEquipmentScrap eamEquipmentScrap = eamEquipmentScrapService.getById(id); + if (eamEquipmentScrap == null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } + try { + String json = objectMapper.writeValueAsString(eamEquipmentScrap); + JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); + translateDictTextUtils.translateField("reportUser", eamEquipmentScrap.getReportUser(), item, "sys_user,realname,username"); + return Result.OK(item); + } catch (JsonProcessingException e) { + return Result.error("鏁版嵁杞瘧澶辫触锛�"); + } + } + + /** + * 鎻愪氦 + * + * @param id + * @return + */ + @AutoLog(value = "璁惧鎶ュ簾(杞)-鎻愪氦") + @ApiOperation(value = "璁惧鎶ュ簾(杞)-鎻愪氦", notes = "璁惧鎶ュ簾(杞)-鎻愪氦") + @GetMapping(value = "/submit") + public Result<?> submit(@RequestParam(name = "id", required = true) String id) { + boolean b = eamEquipmentScrapService.submit(id); + if (!b) { + return Result.error("鎿嶄綔澶辫触锛�"); + } + return Result.OK("鎿嶄綔鎴愬姛!"); + } + + /** + * 瀹℃壒娴� + * + * @param request + * @return + */ + @AutoLog(value = "璁惧鎶ュ簾(杞)-瀹℃壒娴�") + @ApiOperation(value = "璁惧鎶ュ簾(杞)-瀹℃壒娴�", notes = "璁惧鎶ュ簾(杞)-瀹℃壒娴�") + @RequestMapping(value = "/approval", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<?> approval(@RequestBody EamEquipmentScrapRequest request) { + if (request == null) { + return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒"); + } + EamEquipmentScrap entity = eamEquipmentScrapService.approval(request); + if (entity == null) { + return Result.error("鎿嶄綔澶辫触锛�"); + } + return Result.OK("鎿嶄綔鎴愬姛!"); + } } -- Gitblit v1.9.3