From 4864c87d65e797d2ecd827b1eca9d46aec0950aa Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期三, 25 六月 2025 11:56:27 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MajorPartialRepairStatusEnum.java | 12 lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml | 5 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairMapper.java | 11 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/LogTableServiceImpl.java | 80 ++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairController.java | 257 ++++++++++--- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairDetailService.java | 4 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepair.java | 173 +++++--- lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsClassifyServiceImpl.java | 4 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/ILogTableService.java | 17 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairDetailMapper.java | 4 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairDetailController.java | 114 +++-- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMajorPartialRepairQuery.java | 30 + lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/LogTableMapper.java | 11 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairService.java | 17 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/SqlExecutor.java | 29 + lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepairDetail.java | 82 ++- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/LogTable.java | 39 ++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMajorPartialRepairMapper.xml | 6 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/LogTableMapper.xml | 5 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairDetailServiceImpl.java | 4 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairServiceImpl.java | 120 ++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/ImportXmlToDataJob.java | 62 +++ lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java | 2 23 files changed, 853 insertions(+), 235 deletions(-) diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MajorPartialRepairStatusEnum.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MajorPartialRepairStatusEnum.java new file mode 100644 index 0000000..da35956 --- /dev/null +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/MajorPartialRepairStatusEnum.java @@ -0,0 +1,12 @@ +package org.jeecg.modules.eam.constant; + +import lombok.Data; + +public enum MajorPartialRepairStatusEnum { + + PENDING_SUBMISSION,// 寰呮彁浜� + PENDING_CONFIRMATION,// 寰呯‘璁� + CONFIRMED,// 宸茬‘璁� + COMPLETED,// 宸插畬鎴� + INVALIDATED// 浣滃簾 +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairController.java index 17793d5..f1cfdbe 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairController.java @@ -1,31 +1,35 @@ package org.jeecg.modules.eam.controller; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + +import cn.hutool.core.collection.CollectionUtil; +import org.apache.shiro.authz.annotation.RequiresPermissions; 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.constant.MajorPartialRepairStatusEnum; import org.jeecg.modules.eam.entity.EamMajorPartialRepair; +import org.jeecg.modules.eam.entity.EamMajorPartialRepairDetail; +import org.jeecg.modules.eam.request.EamMajorPartialRepairQuery; import org.jeecg.modules.eam.service.IEamMajorPartialRepairService; -import java.util.Date; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.jeecg.common.system.base.controller.JeecgController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -34,17 +38,18 @@ import com.alibaba.fastjson.JSON; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; /** - * @Description: 澶т慨椤逛慨 + * @Description: eam_major_partial_repair * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ -@Slf4j -@Api(tags="澶т慨椤逛慨") +@Api(tags="eam_major_partial_repair") @RestController @RequestMapping("/eam/eamMajorPartialRepair") +@Slf4j public class EamMajorPartialRepairController extends JeecgController<EamMajorPartialRepair, IEamMajorPartialRepairService> { @Autowired private IEamMajorPartialRepairService eamMajorPartialRepairService; @@ -52,79 +57,198 @@ /** * 鍒嗛〉鍒楄〃鏌ヨ * - * @param eamMajorPartialRepair + * @param query * @param pageNo * @param pageSize * @param req * @return */ - @AutoLog(value = "澶т慨椤逛慨-鍒嗛〉鍒楄〃鏌ヨ") - @ApiOperation(value="澶т慨椤逛慨-鍒嗛〉鍒楄〃鏌ヨ", notes="澶т慨椤逛慨-鍒嗛〉鍒楄〃鏌ヨ") + //@AutoLog(value = "eam_major_partial_repair-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value="eam_major_partial_repair-鍒嗛〉鍒楄〃鏌ヨ", notes="eam_major_partial_repair-鍒嗛〉鍒楄〃鏌ヨ") @GetMapping(value = "/list") - public Result<?> queryPageList(EamMajorPartialRepair eamMajorPartialRepair, - @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, - @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, - HttpServletRequest req) { - QueryWrapper<EamMajorPartialRepair> queryWrapper = QueryGenerator.initQueryWrapper(eamMajorPartialRepair, req.getParameterMap()); + public Result<IPage<EamMajorPartialRepair>> queryPageList(EamMajorPartialRepairQuery query, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { Page<EamMajorPartialRepair> page = new Page<EamMajorPartialRepair>(pageNo, pageSize); - IPage<EamMajorPartialRepair> pageList = eamMajorPartialRepairService.page(page, queryWrapper); + IPage<EamMajorPartialRepair> pageList = eamMajorPartialRepairService.queryPageList(page, query); return Result.OK(pageList); } /** - * 娣诲姞 + * 娣诲姞 * * @param eamMajorPartialRepair * @return */ - @AutoLog(value = "澶т慨椤逛慨-娣诲姞") - @ApiOperation(value="澶т慨椤逛慨-娣诲姞", notes="澶т慨椤逛慨-娣诲姞") + @AutoLog(value = "eam_major_partial_repair-娣诲姞") + @ApiOperation(value="eam_major_partial_repair-娣诲姞", notes="eam_major_partial_repair-娣诲姞") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:add") @PostMapping(value = "/add") - public Result<?> add(@RequestBody EamMajorPartialRepair eamMajorPartialRepair) { - eamMajorPartialRepairService.save(eamMajorPartialRepair); + public Result<String> add(@RequestBody EamMajorPartialRepair eamMajorPartialRepair) { + eamMajorPartialRepairService.saveMajorPartialRepair(eamMajorPartialRepair); return Result.OK("娣诲姞鎴愬姛锛�"); } - + /** - * 缂栬緫 + * 缂栬緫 * * @param eamMajorPartialRepair * @return */ - @AutoLog(value = "澶т慨椤逛慨-缂栬緫") - @ApiOperation(value="澶т慨椤逛慨-缂栬緫", notes="澶т慨椤逛慨-缂栬緫") + @AutoLog(value = "eam_major_partial_repair-缂栬緫") + @ApiOperation(value="eam_major_partial_repair-缂栬緫", notes="eam_major_partial_repair-缂栬緫") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<?> edit(@RequestBody EamMajorPartialRepair eamMajorPartialRepair) { - eamMajorPartialRepairService.updateById(eamMajorPartialRepair); + public Result<String> edit(@RequestBody EamMajorPartialRepair eamMajorPartialRepair) { + eamMajorPartialRepairService.updateMajorPartialRepair(eamMajorPartialRepair); return Result.OK("缂栬緫鎴愬姛!"); + } + + @AutoLog(value = "eam_major_partial_repair-鎻愪氦") + @ApiOperation(value="eam_major_partial_repair-鎻愪氦", notes="eam_major_partial_repair-鎻愪氦") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:submit") + @GetMapping(value = "/submit") + public Result<String> submit(@RequestParam("id") String id) { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.isNull(majorPartialRepair)) { + return Result.error("瑕佹彁浜ょ殑缁翠慨鍗曚笉瀛樺湪锛岃鍒锋柊閲嶈瘯锛�"); + } + if (!MajorPartialRepairStatusEnum.PENDING_SUBMISSION.name().equals(majorPartialRepair.getRepairStatus())) { + return Result.error("璇ョ姸鎬佺殑缁翠慨鍗曚笉鑳芥彁浜わ紒"); + } + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.PENDING_CONFIRMATION.name()); + eamMajorPartialRepairService.updateById(majorPartialRepair); + return Result.OK("鎻愪氦鎴愬姛!"); + } + + @AutoLog(value = "eam_major_partial_repair-鎵归噺鎻愪氦") + @ApiOperation(value="eam_major_partial_repair-鎵归噺鎻愪氦", notes="eam_major_partial_repair-鎵归噺鎻愪氦") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:submit") + @GetMapping(value = "/submitBatch") + public Result<String> submitBatch(@RequestParam(name="ids") String ids) { + List<String> idList = Arrays.asList(ids.split(",")); + List<EamMajorPartialRepair> submitList = CollectionUtil.newArrayList(); + idList.forEach(id -> { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.nonNull(majorPartialRepair) && MajorPartialRepairStatusEnum.PENDING_SUBMISSION.name().equals(majorPartialRepair.getRepairStatus())) { + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.PENDING_CONFIRMATION.name()); + submitList.add(majorPartialRepair); + } + }); + eamMajorPartialRepairService.updateBatchById(submitList); + return Result.OK("鎵归噺鎻愪氦 " + submitList.size() + " 鏉$淮淇崟!"); + } + + @AutoLog(value = "eam_major_partial_repair-纭") + @ApiOperation(value="eam_major_partial_repair-纭", notes="eam_major_partial_repair-纭") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:confirm") + @GetMapping(value = "/confirm") + public Result<String> confirm(@RequestParam("id") String id) { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.isNull(majorPartialRepair)) { + return Result.error("瑕佺‘璁ょ殑缁翠慨鍗曚笉瀛樺湪锛岃鍒锋柊閲嶈瘯锛�"); + } + if (!MajorPartialRepairStatusEnum.PENDING_CONFIRMATION.name().equals(majorPartialRepair.getRepairStatus())) { + return Result.error("璇ョ姸鎬佺殑缁翠慨鍗曚笉鑳界‘璁わ紒"); + } + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.CONFIRMED.name()); + majorPartialRepair.setActualStartTime(new Date()); + eamMajorPartialRepairService.updateById(majorPartialRepair); + return Result.OK("纭鎴愬姛!"); + } + + @AutoLog(value = "eam_major_partial_repair-鎵归噺纭") + @ApiOperation(value="eam_major_partial_repair-鎵归噺纭", notes="eam_major_partial_repair-鎵归噺纭") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:confirm") + @GetMapping(value = "/confirmBatch") + public Result<String> confirmBatch(@RequestParam(name="ids") String ids) { + List<String> idList = Arrays.asList(ids.split(",")); + List<EamMajorPartialRepair> confirmList = CollectionUtil.newArrayList(); + idList.forEach(id -> { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.nonNull(majorPartialRepair) && MajorPartialRepairStatusEnum.PENDING_CONFIRMATION.name().equals(majorPartialRepair.getRepairStatus())) { + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.CONFIRMED.name()); + majorPartialRepair.setActualStartTime(new Date()); + confirmList.add(majorPartialRepair); + } + }); + eamMajorPartialRepairService.updateBatchById(confirmList); + return Result.OK("鎵归噺纭 " + confirmList.size() + " 鏉$淮淇崟锛�"); + } + + @AutoLog(value = "eam_major_partial_repair-浣滃簾") + @ApiOperation(value="eam_major_partial_repair-浣滃簾", notes="eam_major_partial_repair-浣滃簾") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:repeal") + @GetMapping(value = "/repeal") + public Result<String> repeal(@RequestParam("id") String id) { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.isNull(majorPartialRepair)) { + return Result.error("瑕佷綔搴熺殑缁翠慨鍗曚笉瀛樺湪锛岃鍒锋柊閲嶈瘯锛�"); + } + if (!MajorPartialRepairStatusEnum.CONFIRMED.name().equals(majorPartialRepair.getRepairStatus())) { + return Result.error("璇ョ姸鎬佺殑缁翠慨鍗曚笉鑳戒綔搴燂紒"); + } + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.INVALIDATED.name()); + eamMajorPartialRepairService.updateById(majorPartialRepair); + return Result.OK("浣滃簾鎴愬姛!"); + } + + @AutoLog(value = "eam_major_partial_repair-鎵归噺浣滃簾") + @ApiOperation(value="eam_major_partial_repair-鎵归噺浣滃簾", notes="eam_major_partial_repair-鎵归噺浣滃簾") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:repeal") + @GetMapping(value = "/repealBatch") + public Result<String> repealBatch(@RequestParam(name="ids") String ids) { + List<String> idList = Arrays.asList(ids.split(",")); + List<EamMajorPartialRepair> repealList = CollectionUtil.newArrayList(); + idList.forEach(id -> { + EamMajorPartialRepair majorPartialRepair = eamMajorPartialRepairService.getById(id); + if (Objects.nonNull(majorPartialRepair) && MajorPartialRepairStatusEnum.PENDING_SUBMISSION.name().equals(majorPartialRepair.getRepairStatus())) { + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.INVALIDATED.name()); + repealList.add(majorPartialRepair); + } + }); + eamMajorPartialRepairService.updateBatchById(repealList); + return Result.OK("鎵归噺浣滃簾 " + repealList.size() + " 鏉$淮淇崟锛�"); + } + + @AutoLog(value = "eam_major_partial_repair-缁撴灉濉姤") + @ApiOperation(value="eam_major_partial_repair-缁撴灉濉姤", notes="eam_major_partial_repair-缁撴灉濉姤") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:fillResult") + @RequestMapping(value = "/fillResult", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result<String> fillResult(@RequestBody List<EamMajorPartialRepairDetail> detailList) { + eamMajorPartialRepairService.fillResult(detailList); + return Result.OK("缁撴灉濉姤鎴愬姛!"); } /** - * 閫氳繃id鍒犻櫎 + * 閫氳繃id鍒犻櫎 * * @param id * @return */ - @AutoLog(value = "澶т慨椤逛慨-閫氳繃id鍒犻櫎") - @ApiOperation(value="澶т慨椤逛慨-閫氳繃id鍒犻櫎", notes="澶т慨椤逛慨-閫氳繃id鍒犻櫎") + @AutoLog(value = "eam_major_partial_repair-閫氳繃id鍒犻櫎") + @ApiOperation(value="eam_major_partial_repair-閫氳繃id鍒犻櫎", notes="eam_major_partial_repair-閫氳繃id鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:delete") @DeleteMapping(value = "/delete") - public Result<?> delete(@RequestParam(name="id",required=true) String id) { + public Result<String> delete(@RequestParam(name="id",required=true) String id) { eamMajorPartialRepairService.removeById(id); return Result.OK("鍒犻櫎鎴愬姛!"); } /** - * 鎵归噺鍒犻櫎 + * 鎵归噺鍒犻櫎 * * @param ids * @return */ - @AutoLog(value = "澶т慨椤逛慨-鎵归噺鍒犻櫎") - @ApiOperation(value="澶т慨椤逛慨-鎵归噺鍒犻櫎", notes="澶т慨椤逛慨-鎵归噺鍒犻櫎") + @AutoLog(value = "eam_major_partial_repair-鎵归噺鍒犻櫎") + @ApiOperation(value="eam_major_partial_repair-鎵归噺鍒犻櫎", notes="eam_major_partial_repair-鎵归噺鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:deleteBatch") @DeleteMapping(value = "/deleteBatch") - public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { + public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) { this.eamMajorPartialRepairService.removeByIds(Arrays.asList(ids.split(","))); - return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�"); + return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); } /** @@ -133,35 +257,40 @@ * @param id * @return */ - @AutoLog(value = "澶т慨椤逛慨-閫氳繃id鏌ヨ") - @ApiOperation(value="澶т慨椤逛慨-閫氳繃id鏌ヨ", notes="澶т慨椤逛慨-閫氳繃id鏌ヨ") + //@AutoLog(value = "eam_major_partial_repair-閫氳繃id鏌ヨ") + @ApiOperation(value="eam_major_partial_repair-閫氳繃id鏌ヨ", notes="eam_major_partial_repair-閫氳繃id鏌ヨ") @GetMapping(value = "/queryById") - public Result<?> queryById(@RequestParam(name="id",required=true) String id) { + public Result<EamMajorPartialRepair> queryById(@RequestParam(name="id",required=true) String id) { EamMajorPartialRepair eamMajorPartialRepair = eamMajorPartialRepairService.getById(id); + if(eamMajorPartialRepair==null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } return Result.OK(eamMajorPartialRepair); } - /** - * 瀵煎嚭excel - * - * @param request - * @param eamMajorPartialRepair - */ - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, EamMajorPartialRepair eamMajorPartialRepair) { - return super.exportXls(request, eamMajorPartialRepair, EamMajorPartialRepair.class, "澶т慨椤逛慨"); - } + /** + * 瀵煎嚭excel + * + * @param request + * @param eamMajorPartialRepair + */ + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EamMajorPartialRepair eamMajorPartialRepair) { + return super.exportXls(request, eamMajorPartialRepair, EamMajorPartialRepair.class, "eam_major_partial_repair"); + } - /** - * 閫氳繃excel瀵煎叆鏁版嵁 - * - * @param request - * @param response - * @return - */ - @RequestMapping(value = "/importExcel", method = RequestMethod.POST) - public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, EamMajorPartialRepair.class); - } + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("eam_major_partial_repair:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EamMajorPartialRepair.class); + } } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairDetailController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairDetailController.java index 8c64303..4bdb9dd 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairDetailController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamMajorPartialRepairDetailController.java @@ -3,6 +3,7 @@ import java.util.Arrays; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; @@ -10,22 +11,21 @@ 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.EamMajorPartialRepairDetail; import org.jeecg.modules.eam.service.IEamMajorPartialRepairDetailService; -import java.util.Date; + import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.jeecg.common.system.base.controller.JeecgController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -34,17 +34,18 @@ import com.alibaba.fastjson.JSON; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; /** - * @Description: 澶т慨椤逛慨鏄庣粏琛� + * @Description: eam_major_partial_repair_detail * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ -@Slf4j -@Api(tags="澶т慨椤逛慨鏄庣粏琛�") +@Api(tags="eam_major_partial_repair_detail") @RestController @RequestMapping("/eam/eamMajorPartialRepairDetail") +@Slf4j public class EamMajorPartialRepairDetailController extends JeecgController<EamMajorPartialRepairDetail, IEamMajorPartialRepairDetailService> { @Autowired private IEamMajorPartialRepairDetailService eamMajorPartialRepairDetailService; @@ -58,10 +59,10 @@ * @param req * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-鍒嗛〉鍒楄〃鏌ヨ") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-鍒嗛〉鍒楄〃鏌ヨ", notes="澶т慨椤逛慨鏄庣粏琛�-鍒嗛〉鍒楄〃鏌ヨ") + //@AutoLog(value = "eam_major_partial_repair_detail-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value="eam_major_partial_repair_detail-鍒嗛〉鍒楄〃鏌ヨ", notes="eam_major_partial_repair_detail-鍒嗛〉鍒楄〃鏌ヨ") @GetMapping(value = "/list") - public Result<?> queryPageList(EamMajorPartialRepairDetail eamMajorPartialRepairDetail, + public Result<IPage<EamMajorPartialRepairDetail>> queryPageList(EamMajorPartialRepairDetail eamMajorPartialRepairDetail, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { @@ -72,59 +73,63 @@ } /** - * 娣诲姞 + * 娣诲姞 * * @param eamMajorPartialRepairDetail * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-娣诲姞") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-娣诲姞", notes="澶т慨椤逛慨鏄庣粏琛�-娣诲姞") + @AutoLog(value = "eam_major_partial_repair_detail-娣诲姞") + @ApiOperation(value="eam_major_partial_repair_detail-娣诲姞", notes="eam_major_partial_repair_detail-娣诲姞") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair_detail:add") @PostMapping(value = "/add") - public Result<?> add(@RequestBody EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { + public Result<String> add(@RequestBody EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { eamMajorPartialRepairDetailService.save(eamMajorPartialRepairDetail); return Result.OK("娣诲姞鎴愬姛锛�"); } /** - * 缂栬緫 + * 缂栬緫 * * @param eamMajorPartialRepairDetail * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-缂栬緫") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-缂栬緫", notes="澶т慨椤逛慨鏄庣粏琛�-缂栬緫") + @AutoLog(value = "eam_major_partial_repair_detail-缂栬緫") + @ApiOperation(value="eam_major_partial_repair_detail-缂栬緫", notes="eam_major_partial_repair_detail-缂栬緫") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair_detail:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) - public Result<?> edit(@RequestBody EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { + public Result<String> edit(@RequestBody EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { eamMajorPartialRepairDetailService.updateById(eamMajorPartialRepairDetail); return Result.OK("缂栬緫鎴愬姛!"); } /** - * 閫氳繃id鍒犻櫎 + * 閫氳繃id鍒犻櫎 * * @param id * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鍒犻櫎") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鍒犻櫎", notes="澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鍒犻櫎") + @AutoLog(value = "eam_major_partial_repair_detail-閫氳繃id鍒犻櫎") + @ApiOperation(value="eam_major_partial_repair_detail-閫氳繃id鍒犻櫎", notes="eam_major_partial_repair_detail-閫氳繃id鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair_detail:delete") @DeleteMapping(value = "/delete") - public Result<?> delete(@RequestParam(name="id",required=true) String id) { + public Result<String> delete(@RequestParam(name="id",required=true) String id) { eamMajorPartialRepairDetailService.removeById(id); return Result.OK("鍒犻櫎鎴愬姛!"); } /** - * 鎵归噺鍒犻櫎 + * 鎵归噺鍒犻櫎 * * @param ids * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-鎵归噺鍒犻櫎") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-鎵归噺鍒犻櫎", notes="澶т慨椤逛慨鏄庣粏琛�-鎵归噺鍒犻櫎") + @AutoLog(value = "eam_major_partial_repair_detail-鎵归噺鍒犻櫎") + @ApiOperation(value="eam_major_partial_repair_detail-鎵归噺鍒犻櫎", notes="eam_major_partial_repair_detail-鎵归噺鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair_detail:deleteBatch") @DeleteMapping(value = "/deleteBatch") - public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { + public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) { this.eamMajorPartialRepairDetailService.removeByIds(Arrays.asList(ids.split(","))); - return Result.OK("鎵归噺鍒犻櫎鎴愬姛锛�"); + return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); } /** @@ -133,35 +138,40 @@ * @param id * @return */ - @AutoLog(value = "澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鏌ヨ") - @ApiOperation(value="澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鏌ヨ", notes="澶т慨椤逛慨鏄庣粏琛�-閫氳繃id鏌ヨ") + //@AutoLog(value = "eam_major_partial_repair_detail-閫氳繃id鏌ヨ") + @ApiOperation(value="eam_major_partial_repair_detail-閫氳繃id鏌ヨ", notes="eam_major_partial_repair_detail-閫氳繃id鏌ヨ") @GetMapping(value = "/queryById") - public Result<?> queryById(@RequestParam(name="id",required=true) String id) { + public Result<EamMajorPartialRepairDetail> queryById(@RequestParam(name="id",required=true) String id) { EamMajorPartialRepairDetail eamMajorPartialRepairDetail = eamMajorPartialRepairDetailService.getById(id); + if(eamMajorPartialRepairDetail==null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } return Result.OK(eamMajorPartialRepairDetail); } - /** - * 瀵煎嚭excel - * - * @param request - * @param eamMajorPartialRepairDetail - */ - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { - return super.exportXls(request, eamMajorPartialRepairDetail, EamMajorPartialRepairDetail.class, "澶т慨椤逛慨鏄庣粏琛�"); - } + /** + * 瀵煎嚭excel + * + * @param request + * @param eamMajorPartialRepairDetail + */ + //@RequiresPermissions("org.jeecg.modules:eam_major_partial_repair_detail:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, EamMajorPartialRepairDetail eamMajorPartialRepairDetail) { + return super.exportXls(request, eamMajorPartialRepairDetail, EamMajorPartialRepairDetail.class, "eam_major_partial_repair_detail"); + } - /** - * 閫氳繃excel瀵煎叆鏁版嵁 - * - * @param request - * @param response - * @return - */ - @RequestMapping(value = "/importExcel", method = RequestMethod.POST) - public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, EamMajorPartialRepairDetail.class); - } + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("eam_major_partial_repair_detail:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, EamMajorPartialRepairDetail.class); + } } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepair.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepair.java index 147df1e..3f2674e 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepair.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepair.java @@ -1,106 +1,135 @@ package org.jeecg.modules.eam.entity; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import java.util.List; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; -import org.jeecgframework.poi.excel.annotation.Excel; -import java.io.Serializable; -import java.util.Date; /** - * @Description: 澶т慨椤逛慨 + * @Description: eam_major_partial_repair * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ @Data @TableName("eam_major_partial_repair") -@EqualsAndHashCode(callSuper = false) @Accessors(chain = true) -@ApiModel(value="eam_major_partial_repair瀵硅薄", description="澶т慨椤逛慨") +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="eam_major_partial_repair瀵硅薄", description="eam_major_partial_repair") public class EamMajorPartialRepair implements Serializable { - + private static final long serialVersionUID = 1L; + /**涓婚敭*/ @TableId(type = IdType.ASSIGN_ID) @ApiModelProperty(value = "涓婚敭") - private String id; - /**鍒涘缓浜�*/ - @Excel(name = "鍒涘缓浜�", width = 15) - @ApiModelProperty(value = "鍒涘缓浜�") - private String createBy; - /**鍒涘缓鏃堕棿*/ - @ApiModelProperty(value = "鍒涘缓鏃堕棿") - private Date createTime; - /**鏇存柊浜�*/ - @Excel(name = "鏇存柊浜�", width = 15) - @ApiModelProperty(value = "鏇存柊浜�") - private String updateBy; - /**鏇存柊鏃堕棿*/ - @ApiModelProperty(value = "鏇存柊鏃堕棿") - private Date updateTime; - /**鍒犻櫎鏍囪*/ - @Excel(name = "鍒犻櫎鏍囪", width = 15) - @ApiModelProperty(value = "鍒犻櫎鏍囪") - private Integer delFlag; - /**璁惧ID*/ - @Excel(name = "璁惧ID", width = 15) - @ApiModelProperty(value = "璁惧ID") - private String equipmentId; - /**缁翠慨绫诲瀷*/ - @Excel(name = "缁翠慨绫诲瀷", width = 15) - @ApiModelProperty(value = "缁翠慨绫诲瀷") - private String repairType; - /**璁″垝寮�濮嬫椂闂�*/ - @ApiModelProperty(value = "璁″垝寮�濮嬫椂闂�") - private Date planStartTime; - /**璁″垝缁撴潫鏃堕棿*/ - @ApiModelProperty(value = "璁″垝缁撴潫鏃堕棿") - private Date planEndTime; + private String id; /**缁翠慨缂栫爜*/ - @Excel(name = "缁翠慨缂栫爜", width = 15) + @Excel(name = "缁翠慨缂栫爜", width = 20) @ApiModelProperty(value = "缁翠慨缂栫爜") - private String repairCode; - /**缁翠慨鍚嶇О*/ - @Excel(name = "缁翠慨鍚嶇О", width = 15) - @ApiModelProperty(value = "缁翠慨鍚嶇О") - private String repairName; + private String repairCode; + /**椤圭洰鍚嶇О*/ + @Excel(name = "椤圭洰鍚嶇О", width = 20) + @ApiModelProperty(value = "椤圭洰鍚嶇О") + private String repairName; /**缁翠慨鐘舵��*/ @Excel(name = "缁翠慨鐘舵��", width = 15) @ApiModelProperty(value = "缁翠慨鐘舵��") - private String repairStatus; + @Dict(dicCode = "major_partial_repair_status") + private String repairStatus; + /**缁翠慨绫诲瀷*/ + @Excel(name = "缁翠慨绫诲瀷", width = 15) + @ApiModelProperty(value = "缁翠慨绫诲瀷") + private String repairType; + /**鐢宠浜�*/ + @Excel(name = "鐢宠浜�", width = 15) + @ApiModelProperty(value = "鐢宠浜�") + @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username") + private String applicant; + /**鐢宠杞﹂棿*/ + @Excel(name = "鐢宠杞﹂棿", width = 15) + @ApiModelProperty(value = "鐢宠杞﹂棿") + @Dict(dictTable = "mdc_production", dicText = "production_name", dicCode = "id") + private String applicantProduction; + /**璁″垝寮�濮嬫棩鏈�*/ + @Excel(name = "璁″垝寮�濮嬫棩鏈�", width = 20, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "璁″垝寮�濮嬫棩鏈�") + private Date planStartDate; + /**璁″垝缁撴潫鏃ユ湡*/ + @Excel(name = "璁″垝缁撴潫鏃ユ湡", width = 20, format = "yyyy/MM/dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "璁″垝缁撴潫鏃ユ湡") + private Date planEndDate; /**瀹為檯寮�濮嬫椂闂�*/ + @Excel(name = "瀹為檯寮�濮嬫椂闂�", width = 20, format = "yyyy/MM/dd HH") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH") + @DateTimeFormat(pattern="yyyy-MM-dd HH") @ApiModelProperty(value = "瀹為檯寮�濮嬫椂闂�") - private Date actualStartTime; + private Date actualStartTime; /**瀹為檯缁撴潫鏃堕棿*/ + @Excel(name = "瀹為檯缁撴潫鏃堕棿", width = 20, format = "yyyy/MM/dd HH") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH") + @DateTimeFormat(pattern="yyyy-MM-dd HH") @ApiModelProperty(value = "瀹為檯缁撴潫鏃堕棿") - private Date actualEndTime; + private Date actualEndTime; /**鎬婚噾棰�*/ @Excel(name = "鎬婚噾棰�", width = 15) @ApiModelProperty(value = "鎬婚噾棰�") - private java.math.BigDecimal totalAmount; - /**闄勪欢*/ - @Excel(name = "闄勪欢", width = 15) - @ApiModelProperty(value = "闄勪欢") - private String attachment; - /**缁翠慨鎻忚堪*/ - @Excel(name = "缁翠慨鎻忚堪", width = 15) - @ApiModelProperty(value = "缁翠慨鎻忚堪") - private String repairDescription; - /**缁翠慨鏂瑰紡*/ - @Excel(name = "缁翠慨鏂瑰紡", width = 15) - @ApiModelProperty(value = "缁翠慨鏂瑰紡") - private String repairMethod; - /**濮斿鍏徃*/ - @Excel(name = "濮斿鍏徃", width = 15) - @ApiModelProperty(value = "濮斿鍏徃") - private String outsourcedCompany; + private BigDecimal totalAmount; + /**鏁呴殰鎻忚堪*/ + @Excel(name = "鏁呴殰鎻忚堪", width = 50) + @ApiModelProperty(value = "鏁呴殰鎻忚堪") + private String faultDescription; + /**鐢宠鍘熷洜*/ + @Excel(name = "鐢宠鍘熷洜", width = 15) + @ApiModelProperty(value = "鐢宠鍘熷洜") + private String applicantReason; /**璐d换浜�*/ @Excel(name = "璐d换浜�", width = 15) @ApiModelProperty(value = "璐d换浜�") - private String responsiblePerson; + @Dict(dictTable = "sys_user", dicText = "realname", dicCode = "username") + private String responsiblePerson; + /**澶囨敞*/ + @Excel(name = "澶囨敞", width = 50) + @ApiModelProperty(value = "澶囨敞") + private String remark; + /**鍒涘缓浜�*/ + @ApiModelProperty(value = "鍒涘缓浜�") + private String createBy; + /**鍒涘缓鏃堕棿*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "鍒涘缓鏃堕棿") + private Date createTime; + /**鏇存柊浜�*/ + @ApiModelProperty(value = "鏇存柊浜�") + private String updateBy; + /**鏇存柊鏃堕棿*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "鏇存柊鏃堕棿") + private Date updateTime; + /**鍒犻櫎鏍囪*/ + @Excel(name = "鍒犻櫎鏍囪", width = 15) + @ApiModelProperty(value = "鍒犻櫎鏍囪") + @TableLogic + private Integer delFlag; + + @TableField(exist = false) + @ApiModelProperty(value = "缁翠慨鏄庣粏淇℃伅") + private List<EamMajorPartialRepairDetail> eamMajorPartialRepairDetailList; } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepairDetail.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepairDetail.java index 5266590..567c471 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepairDetail.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamMajorPartialRepairDetail.java @@ -1,62 +1,76 @@ package org.jeecg.modules.eam.entity; +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; -import org.jeecgframework.poi.excel.annotation.Excel; -import java.io.Serializable; -import java.util.Date; /** - * @Description: 澶т慨椤逛慨鏄庣粏琛� + * @Description: eam_major_partial_repair_detail * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ @Data @TableName("eam_major_partial_repair_detail") -@EqualsAndHashCode(callSuper = false) @Accessors(chain = true) -@ApiModel(value="eam_major_partial_repair_detail瀵硅薄", description="澶т慨椤逛慨鏄庣粏琛�") +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="eam_major_partial_repair_detail瀵硅薄", description="eam_major_partial_repair_detail") public class EamMajorPartialRepairDetail implements Serializable { - + private static final long serialVersionUID = 1L; + /**涓婚敭*/ @TableId(type = IdType.ASSIGN_ID) @ApiModelProperty(value = "涓婚敭") - private String id; - /**鍒涘缓浜�*/ - @Excel(name = "鍒涘缓浜�", width = 15) - @ApiModelProperty(value = "鍒涘缓浜�") - private String createBy; - /**鍒涘缓鏃堕棿*/ - @ApiModelProperty(value = "鍒涘缓鏃堕棿") - private Date createTime; - /**鏇存柊浜�*/ - @Excel(name = "鏇存柊浜�", width = 15) - @ApiModelProperty(value = "鏇存柊浜�") - private String updateBy; - /**鏇存柊鏃堕棿*/ - @ApiModelProperty(value = "鏇存柊鏃堕棿") - private Date updateTime; - /**鍒犻櫎鏍囪*/ - @Excel(name = "鍒犻櫎鏍囪", width = 15) - @ApiModelProperty(value = "鍒犻櫎鏍囪") - private Integer delFlag; - /**绱ф�ョ▼搴�*/ - @Excel(name = "绱ф�ョ▼搴�", width = 15) - @ApiModelProperty(value = "绱ф�ョ▼搴�") - private String emergencyDegree; + private String id; + /**缁翠慨ID*/ + @Excel(name = "缁翠慨ID", width = 15) + @ApiModelProperty(value = "缁翠慨ID") + private String repairId; + /**璁惧ID*/ + @Excel(name = "璁惧ID", width = 15) + @ApiModelProperty(value = "璁惧ID") + @Dict(dictTable = "eam_equipment", dicText = "equipment_name", dicCode = "id") + private String equipmentId; + /**鍗曚环*/ + @Excel(name = "鍗曚环", width = 15) + @ApiModelProperty(value = "鍗曚环") + private BigDecimal unitPrice; /**缁翠慨缁撴灉*/ @Excel(name = "缁翠慨缁撴灉", width = 15) @ApiModelProperty(value = "缁翠慨缁撴灉") - private String repairResult; + private String repairResult; /**缁翠慨鎻忚堪*/ @Excel(name = "缁翠慨鎻忚堪", width = 15) @ApiModelProperty(value = "缁翠慨鎻忚堪") - private String repairDescription; + private String repairDescription; + /**鍒涘缓浜�*/ + @ApiModelProperty(value = "鍒涘缓浜�") + private String createBy; + /**鍒涘缓鏃堕棿*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "鍒涘缓鏃堕棿") + private Date createTime; + /**鏇存柊浜�*/ + @ApiModelProperty(value = "鏇存柊浜�") + private String updateBy; + /**鏇存柊鏃堕棿*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "鏇存柊鏃堕棿") + private Date updateTime; } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairDetailMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairDetailMapper.java index 350a6a3..e06af6a 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairDetailMapper.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairDetailMapper.java @@ -7,9 +7,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** - * @Description: 澶т慨椤逛慨鏄庣粏琛� + * @Description: eam_major_partial_repair_detail * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ public interface EamMajorPartialRepairDetailMapper extends BaseMapper<EamMajorPartialRepairDetail> { diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairMapper.java index 8e845eb..ddc2d33 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairMapper.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamMajorPartialRepairMapper.java @@ -2,16 +2,23 @@ import java.util.List; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.eam.entity.EamMajorPartialRepair; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** - * @Description: 澶т慨椤逛慨 + * @Description: eam_major_partial_repair * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ public interface EamMajorPartialRepairMapper extends BaseMapper<EamMajorPartialRepair> { + IPage<EamMajorPartialRepair> queryPageList(Page<EamMajorPartialRepair> page, + @Param(Constants.WRAPPER) Wrapper<EamMajorPartialRepair> queryWrapper); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMajorPartialRepairMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMajorPartialRepairMapper.xml index f5da47e..5ad5095 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMajorPartialRepairMapper.xml +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamMajorPartialRepairMapper.xml @@ -2,4 +2,10 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.jeecg.modules.eam.mapper.EamMajorPartialRepairMapper"> + <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamMajorPartialRepair"> + select + t.* + from eam_major_partial_repair t + ${ew.customSqlSegment} + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMajorPartialRepairQuery.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMajorPartialRepairQuery.java new file mode 100644 index 0000000..3f1ef0a --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamMajorPartialRepairQuery.java @@ -0,0 +1,30 @@ +package org.jeecg.modules.eam.request; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; +import java.util.Date; + +@Data +public class EamMajorPartialRepairQuery { + /**缁翠慨缂栫爜*/ + private String repairCode; + /**椤圭洰鍚嶇О*/ + private String repairName; + /**缁翠慨鐘舵��*/ + private String repairStatus; + /**缁翠慨绫诲瀷*/ + private String repairType; + /**璁″垝寮�濮嬫棩鏈�*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date planStartDate; + /**璁″垝缁撴潫鏃ユ湡*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date planEndDate; + + private String column; + + private String order; +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairDetailService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairDetailService.java index 81a4706..ce469b7 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairDetailService.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairDetailService.java @@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService; /** - * @Description: 澶т慨椤逛慨鏄庣粏琛� + * @Description: eam_major_partial_repair_detail * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ public interface IEamMajorPartialRepairDetailService extends IService<EamMajorPartialRepairDetail> { diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairService.java index 5ccf59b..b33e7a4 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairService.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamMajorPartialRepairService.java @@ -1,14 +1,27 @@ package org.jeecg.modules.eam.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.modules.eam.entity.EamMajorPartialRepair; import com.baomidou.mybatisplus.extension.service.IService; +import org.jeecg.modules.eam.entity.EamMajorPartialRepairDetail; +import org.jeecg.modules.eam.request.EamMajorPartialRepairQuery; + +import java.util.List; /** - * @Description: 澶т慨椤逛慨 + * @Description: eam_major_partial_repair * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ public interface IEamMajorPartialRepairService extends IService<EamMajorPartialRepair> { + void saveMajorPartialRepair(EamMajorPartialRepair eamMajorPartialRepair); + + void fillResult(List<EamMajorPartialRepairDetail> detailList); + + void updateMajorPartialRepair(EamMajorPartialRepair eamMajorPartialRepair); + + IPage<EamMajorPartialRepair> queryPageList(Page<EamMajorPartialRepair> page, EamMajorPartialRepairQuery query); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairDetailServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairDetailServiceImpl.java index d2b19fd..d206752 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairDetailServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairDetailServiceImpl.java @@ -8,9 +8,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** - * @Description: 澶т慨椤逛慨鏄庣粏琛� + * @Description: eam_major_partial_repair_detail * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ @Service diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairServiceImpl.java index df56a71..9ab3aaa 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamMajorPartialRepairServiceImpl.java @@ -1,19 +1,135 @@ package org.jeecg.modules.eam.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.constant.DataBaseConstant; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.eam.constant.MajorPartialRepairStatusEnum; import org.jeecg.modules.eam.entity.EamMajorPartialRepair; +import org.jeecg.modules.eam.entity.EamMajorPartialRepairDetail; import org.jeecg.modules.eam.mapper.EamMajorPartialRepairMapper; +import org.jeecg.modules.eam.request.EamMajorPartialRepairQuery; +import org.jeecg.modules.eam.service.IEamMajorPartialRepairDetailService; import org.jeecg.modules.eam.service.IEamMajorPartialRepairService; +import org.jeecg.modules.system.service.ISysBusinessCodeRuleService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import java.util.stream.Collectors; /** - * @Description: 澶т慨椤逛慨 + * @Description: eam_major_partial_repair * @Author: jeecg-boot - * @Date: 2025-05-13 + * @Date: 2025-06-20 * @Version: V1.0 */ @Service public class EamMajorPartialRepairServiceImpl extends ServiceImpl<EamMajorPartialRepairMapper, EamMajorPartialRepair> implements IEamMajorPartialRepairService { + @Autowired + private ISysBusinessCodeRuleService sysBusinessCodeRuleService; + @Autowired + private IEamMajorPartialRepairDetailService eamMajorPartialRepairDetailService; + + @Override + @Transactional(rollbackFor = Exception.class) + public void saveMajorPartialRepair(EamMajorPartialRepair eamMajorPartialRepair) { + BigDecimal totalPrice = eamMajorPartialRepair.getEamMajorPartialRepairDetailList().stream() + .map(EamMajorPartialRepairDetail::getUnitPrice).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); + eamMajorPartialRepair.setRepairCode(sysBusinessCodeRuleService.generateBusinessCodeSeq("MajorPartialRepairRule")); + eamMajorPartialRepair.setTotalAmount(totalPrice); + eamMajorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.PENDING_SUBMISSION.name()); + eamMajorPartialRepair.setDelFlag(CommonConstant.DEL_FLAG_0); + save(eamMajorPartialRepair); + eamMajorPartialRepair.getEamMajorPartialRepairDetailList().forEach(eamMajorPartialRepairDetail -> { + eamMajorPartialRepairDetail.setRepairId(eamMajorPartialRepair.getId()); + }); + eamMajorPartialRepairDetailService.saveBatch(eamMajorPartialRepair.getEamMajorPartialRepairDetailList()); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateMajorPartialRepair(EamMajorPartialRepair eamMajorPartialRepair) { + eamMajorPartialRepairDetailService.remove(new LambdaQueryWrapper<EamMajorPartialRepairDetail>() + .eq(EamMajorPartialRepairDetail::getRepairId, eamMajorPartialRepair.getId())); + BigDecimal totalPrice = eamMajorPartialRepair.getEamMajorPartialRepairDetailList().stream() + .map(EamMajorPartialRepairDetail::getUnitPrice).reduce(BigDecimal::add).orElse(BigDecimal.ZERO); + eamMajorPartialRepair.setTotalAmount(totalPrice); + updateById(eamMajorPartialRepair); + eamMajorPartialRepair.getEamMajorPartialRepairDetailList().forEach(eamMajorPartialRepairDetail -> { + eamMajorPartialRepairDetail.setRepairId(eamMajorPartialRepair.getId()); + }); + eamMajorPartialRepairDetailService.saveBatch(eamMajorPartialRepair.getEamMajorPartialRepairDetailList()); + } + + @Override + public IPage<EamMajorPartialRepair> queryPageList(Page<EamMajorPartialRepair> page, EamMajorPartialRepairQuery query) { + QueryWrapper<EamMajorPartialRepair> queryWrapper = Wrappers.query(); + if (Objects.nonNull(query)) { + if (StringUtils.isNotBlank(query.getRepairCode())) { + queryWrapper.like("t.repair_code", query.getRepairCode()); + } + if (StringUtils.isNotBlank(query.getRepairName())) { + queryWrapper.like("t.repair_name", query.getRepairName()); + } + if (StringUtils.isNotBlank(query.getRepairStatus())) { + queryWrapper.eq("t.repair_status", query.getRepairStatus()); + } + if (StringUtils.isNotBlank(query.getRepairType())) { + queryWrapper.like("t.repair_type", query.getRepairType()); + } + if (query.getPlanStartDate() != null && query.getPlanEndDate() != null) { + queryWrapper.between("t.plan_start_date", query.getPlanStartDate(), query.getPlanEndDate()); + } + //鎺掑簭 + if (StringUtils.isNotBlank(query.getColumn()) && StringUtils.isNotBlank(query.getOrder())) { + String column = query.getColumn(); + if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) { + column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX)); + } + if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(query.getOrder())) { + queryWrapper.orderByAsc("t." + oConvertUtils.camelToUnderline(column)); + } else { + queryWrapper.orderByDesc("t." + oConvertUtils.camelToUnderline(column)); + } + } else { + queryWrapper.orderByDesc("t.create_time"); + } + } + return this.baseMapper.queryPageList(page, queryWrapper); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void fillResult(List<EamMajorPartialRepairDetail> detailList) { + List<EamMajorPartialRepairDetail> result = CollectionUtil.newArrayList(); + detailList.forEach(eamMajorPartialRepairDetail -> { + EamMajorPartialRepairDetail detail = new EamMajorPartialRepairDetail(); + detail.setId(eamMajorPartialRepairDetail.getId()); + detail.setRepairResult(eamMajorPartialRepairDetail.getRepairResult()); + detail.setRepairDescription(eamMajorPartialRepairDetail.getRepairDescription()); + result.add(detail); + }); + eamMajorPartialRepairDetailService.updateBatchById(result); + String repairId = detailList.get(0).getRepairId(); + EamMajorPartialRepair majorPartialRepair = getById(repairId); + majorPartialRepair.setRepairStatus(MajorPartialRepairStatusEnum.COMPLETED.name()); + majorPartialRepair.setActualEndTime(new Date()); + updateById(majorPartialRepair); + } + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/LogTable.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/LogTable.java new file mode 100644 index 0000000..d522be5 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/LogTable.java @@ -0,0 +1,39 @@ +package org.jeecg.modules.mdc.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.Date; + +/** + * @author Lius + * @date 2024/12/18 14:19 + */ +@Data +@TableName("log_table") +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "log_table瀵硅薄", description = "sql璁板綍琛�") +public class LogTable implements Serializable { + + private static final long serialVersionUID = 953864495681756550L; + + /** + * 鎿嶄綔绫诲瀷锛圛NSERT / UPDATE / DELETE锛� + */ + private String action; + + /** + * 鍒涘缓鏃堕棿 + */ + private Date createTime; + + /** + * sql璁板綍 + */ + private String sqlLog; +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/ImportXmlToDataJob.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/ImportXmlToDataJob.java new file mode 100644 index 0000000..2dee55d --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/ImportXmlToDataJob.java @@ -0,0 +1,62 @@ +package org.jeecg.modules.mdc.job; + +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.util.DateUtils; +import org.jeecg.modules.mdc.service.ILogTableService; +import org.jeecg.modules.mdc.util.ThrowableUtil; +import org.jeecg.modules.quartz.entity.QuartzJob; +import org.jeecg.modules.quartz.entity.SysQuartzLog; +import org.jeecg.modules.quartz.service.IQuartzJobService; +import org.jeecg.modules.quartz.service.ISysQuartzLogService; +import org.jeecg.modules.system.service.ISysAnnouncementService; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * @author Lius + * @date 2024/12/19 16:43 + */ +@Slf4j +public class ImportXmlToDataJob implements Job { + + @Resource + private ISysQuartzLogService sysQuartzLogService; + + @Resource + private IQuartzJobService quartzJobService; + + @Resource + private ISysAnnouncementService sysAnnouncementService; + + @Resource + private ILogTableService logTableService; + + @Override + public void execute(JobExecutionContext context) throws JobExecutionException { + SysQuartzLog quartzLog = new SysQuartzLog(); + quartzLog.setCreateTime(new Date()); + List<QuartzJob> byJobClassName = this.quartzJobService.findByJobClassName(this.getClass().getName()); + if (byJobClassName != null && !byJobClassName.isEmpty()) { + quartzLog.setJobId(byJobClassName.get(0).getId()); + } + log.info("瀹氭椂瀵煎叆sql鏁版嵁浠诲姟 ImportXmlToDataJob start! 鏃堕棿:" + DateUtils.now()); + long startTime = System.currentTimeMillis(); + try { + logTableService.importXmlToData(); + quartzLog.setIsSuccess(0); + } catch (Exception e) { + quartzLog.setIsSuccess(-1); + quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e)); + // 鍙戦�佹秷鎭�氱煡 + sysAnnouncementService.jobSendMessage("瀹氭椂瀵煎叆sql鏁版嵁浠诲姟", quartzLog.getExceptionDetail()); + } + long endTime = System.currentTimeMillis(); + quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime))); + sysQuartzLogService.save(quartzLog); + } +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/LogTableMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/LogTableMapper.java new file mode 100644 index 0000000..98cc17f --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/LogTableMapper.java @@ -0,0 +1,11 @@ +package org.jeecg.modules.mdc.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.jeecg.modules.mdc.entity.LogTable; + +/** + * @author Lius + * @date 2024/12/18 14:24 + */ +public interface LogTableMapper extends BaseMapper<LogTable> { +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/LogTableMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/LogTableMapper.xml new file mode 100644 index 0000000..3d79dd7 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/LogTableMapper.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="org.jeecg.modules.mdc.mapper.LogTableMapper"> + +</mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/ILogTableService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/ILogTableService.java new file mode 100644 index 0000000..9e9f887 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/ILogTableService.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.mdc.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import org.jeecg.modules.mdc.entity.LogTable; + +/** + * @author Lius + * @date 2024/12/18 14:29 + */ +public interface ILogTableService extends IService<LogTable> { + + /** + * 瀵煎叆鍚屾鏁版嵁sql鎵ц鍒版暟鎹簱 + */ + void importXmlToData(); + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/LogTableServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/LogTableServiceImpl.java new file mode 100644 index 0000000..8f5d25e --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/LogTableServiceImpl.java @@ -0,0 +1,80 @@ +package org.jeecg.modules.mdc.service.impl; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.io.file.FileReader; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.exception.JeecgBootException; +import org.jeecg.modules.mdc.entity.LogTable; +import org.jeecg.modules.mdc.mapper.LogTableMapper; +import org.jeecg.modules.mdc.service.ILogTableService; +import org.jeecg.modules.mdc.util.SqlExecutor; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.io.File; +import java.util.ArrayList; +import java.util.List; + +/** + * @author Lius + * @date 2024/12/18 14:29 + */ +@Service +@Slf4j +public class LogTableServiceImpl extends ServiceImpl<LogTableMapper, LogTable> implements ILogTableService { + + @Value("${fileService.localFilePath}") + private String localFilePath; + + @Value("${fileService.newFilePath}") + private String newFilePath; + + @Value("${fileService.failedLocFilePath}") + private String failedLocFilePath; + + @Resource + private SqlExecutor sqlExecutor; + + /** + * 瀵煎叆鍚屾鏁版嵁sql鎵ц鍒版暟鎹簱 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void importXmlToData() { + File[] files = FileUtil.ls(localFilePath); + List<String> failedSqlList = new ArrayList<>(); // 鐢ㄤ簬瀛樺偍鎵ц澶辫触鐨� SQL + for (File file : files) { + if (file.isFile()) { + String loFilePath = localFilePath + file.getName(); + FileReader fileReader = new FileReader(loFilePath); + List<String> sqlList = fileReader.readLines(); + log.info("鎴愬姛璇诲彇鍒皗}鏉ql,鎵ц鎿嶄綔", sqlList.size()); + for (String sql : sqlList) { + try { + sqlExecutor.execute(sql); + } catch (Exception e) { + failedSqlList.add(sql); + } + } + if (!failedSqlList.isEmpty()) { + try { + FileUtil.appendLines(failedSqlList, failedLocFilePath, "UTF-8"); + } catch (Exception e) { + throw new JeecgBootException("鏁版嵁鍐欏叆鏂囦欢澶辫触锛�"); + } + } + + if (Integer.parseInt(file.getName().substring(file.getName().length() - 10, file.getName().length() - 4)) == 1) { + // 鍒犻櫎鍘嗗彶鏂囦欢 + FileUtil.clean(newFilePath); + } + + // 澶囦唤 + FileUtil.move(new File(loFilePath), new File(newFilePath + file.getName()), true); + } + } + } +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/SqlExecutor.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/SqlExecutor.java new file mode 100644 index 0000000..646dc55 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/SqlExecutor.java @@ -0,0 +1,29 @@ +package org.jeecg.modules.mdc.util; + +import org.apache.ibatis.jdbc.SqlRunner; +import org.apache.ibatis.session.SqlSession; +import org.apache.ibatis.session.SqlSessionFactory; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * @author Lius + * @date 2025/1/3 13:26 + */ +@Component +public class SqlExecutor { + + @Resource + private SqlSessionFactory sqlSessionFactory; + + public void execute(String sql) { + try (SqlSession sqlSession = sqlSessionFactory.openSession(true)) { + SqlRunner runner = new SqlRunner(sqlSession.getConnection()); + runner.run(sql); + } catch (Exception e) { +// e.printStackTrace(); + throw new RuntimeException("Error executing SQL: " + sql, e); + } + } +} diff --git a/lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml b/lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml index 682766c..127a534 100644 --- a/lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml +++ b/lxzn-module-system/lxzn-system-start/src/main/resources/application-dev.yml @@ -321,3 +321,8 @@ interval: 10000 # 鐩戞帶闂撮殧(ms) security: encryption-key: 1234567890abcdef # 鍔犺В瀵嗙閽� +#mdc鏂囦欢璺緞閰嶇疆 +fileService: + localFilePath: D:/data/sql/ #鏈湴鏂囦欢璺緞 + newFilePath: D:/data/bak/ #澶囦唤鏂囦欢璺緞 + failedLocFilePath: D:/data/failed/failed.sql #澶辫触鏂囦欢璺緞 diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java index b9e31ed..c9a24b8 100644 --- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java +++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/InboundOrderServiceImpl.java @@ -445,7 +445,7 @@ result.put("content","淇濆瓨鎴愬姛"); results.add(result); } - return results; + return results; } @Override diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsClassifyServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsClassifyServiceImpl.java index cee90e8..35ae470 100644 --- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsClassifyServiceImpl.java +++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/ToolsClassifyServiceImpl.java @@ -247,6 +247,7 @@ .setTypeName(name) .setStatus("1") .setLeafFlag(leafFlag) + .setEncodingType("3") .setSeq(seq) .setParentId(toolsClassify.getId()) .setParaTypeFlag(paraTypeFlag); @@ -256,6 +257,7 @@ .setTypeName(name) .setStatus("1") .setLeafFlag(leafFlag) + .setEncodingType("3") .setSeq(seq) .setParentId(toolsClassify.getId()) .setParaTypeFlag(paraTypeFlag); @@ -272,6 +274,7 @@ .setTypeName(name) .setStatus("1") .setLeafFlag(leafFlag) + .setEncodingType("3") .setSeq(seq) .setParentId("-1") .setParaTypeFlag(paraTypeFlag); @@ -283,6 +286,7 @@ .setParentId("-1") .setSeq(seq) .setLeafFlag(leafFlag) + .setEncodingType("3") .setParaTypeFlag(paraTypeFlag); this.save(newToolsClassify); } -- Gitblit v1.9.3