From 23855599412c4d61b38d78f0f3abd3430a48b5b1 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期三, 25 六月 2025 11:51:38 +0800 Subject: [PATCH] Merge branch 'mdc_hyjs_master' --- lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java | 357 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 357 insertions(+), 0 deletions(-) diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java new file mode 100644 index 0000000..555cd8c --- /dev/null +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/MdcProductionController.java @@ -0,0 +1,357 @@ +package org.jeecg.modules.system.controller; + +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.extension.plugins.pagination.Page; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.shiro.SecurityUtils; +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.system.query.QueryGenerator; +import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.system.entity.MdcProduction; +import org.jeecg.modules.system.model.MdcProductionTreeModel; +import org.jeecg.modules.system.model.ProductionIdModel; +import org.jeecg.modules.system.service.IMdcProductionService; +import org.jeecg.modules.system.vo.MdcProOptionsVo; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @Description: 浜х嚎琛� + * @Author: liuS + * @Date: 2023-03-23 + * @Version: V1.0 + */ +@Slf4j +@Api(tags = "浜х嚎琛�") +@RestController +@RequestMapping("/mdc/mdcProduction") +public class MdcProductionController extends JeecgController<MdcProduction, IMdcProductionService> { + @Resource + private IMdcProductionService mdcProductionService; + + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param mdcProduction + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "浜х嚎琛�-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value = "浜х嚎琛�-鍒嗛〉鍒楄〃鏌ヨ", notes = "浜х嚎琛�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<?> queryPageList(MdcProduction mdcProduction, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper<MdcProduction> queryWrapper = QueryGenerator.initQueryWrapper(mdcProduction, req.getParameterMap()); + Page<MdcProduction> page = new Page<MdcProduction>(pageNo, pageSize); + IPage<MdcProduction> pageList = mdcProductionService.page(page, queryWrapper); + return Result.OK(pageList); + } + + @AutoLog(value = "浜х嚎琛�-鏍戝舰鍒楄〃") + @ApiOperation(value = "浜х嚎琛�-鏍戝舰鍒楄〃", notes = "浜х嚎琛�-鏍戝舰鍒楄〃") + @GetMapping(value = "/queryTreeList") + public Result<List<MdcProductionTreeModel>> queryTreeList(@RequestParam(name = "ids", required = false) String ids) { + Result<List<MdcProductionTreeModel>> result = new Result<>(); + try { + if (oConvertUtils.isNotEmpty(ids)) { + List<MdcProductionTreeModel> productionList = mdcProductionService.queryTreeList(ids); + result.setResult(productionList); + } else { + List<MdcProductionTreeModel> list = mdcProductionService.queryTreeList(); + result.setResult(list); + } + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-鏍戝舰鍒楄〃(MDC)") + @ApiOperation(value = "浜х嚎琛�-鏍戝舰鍒楄〃(MDC)", notes = "浜х嚎琛�-鏍戝舰鍒楄〃(MDC)") + @GetMapping(value = "/queryTreeListByMdc") + public Result<List<MdcProductionTreeModel>> queryTreeListByMdc(@RequestParam(name = "ids", required = false) String ids) { + Result<List<MdcProductionTreeModel>> result = new Result<>(); + try { + if (oConvertUtils.isNotEmpty(ids)) { + List<MdcProductionTreeModel> productionList = mdcProductionService.queryTreeListByMdc(ids); + result.setResult(productionList); + } else { + List<MdcProductionTreeModel> list = mdcProductionService.queryTreeListByMdc(); + result.setResult(list); + } + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-鏍戝舰鍒楄〃(娣诲姞绯荤粺閰嶇疆)") + @ApiOperation(value = "浜х嚎琛�-鏍戝舰鍒楄〃(娣诲姞绯荤粺閰嶇疆)", notes = "浜х嚎琛�-鏍戝舰鍒楄〃(娣诲姞绯荤粺閰嶇疆)") + @GetMapping(value = "/queryTreeListByConfig") + public Result<List<MdcProductionTreeModel>> queryTreeListByConfig(@RequestParam(name = "ids", required = false) String ids) { + Result<List<MdcProductionTreeModel>> result = new Result<>(); + try { + if (oConvertUtils.isNotEmpty(ids)) { + List<MdcProductionTreeModel> productionList = mdcProductionService.queryTreeList(ids); + result.setResult(productionList); + } else { + List<MdcProductionTreeModel> list = mdcProductionService.queryTreeListByConfig(); + result.setResult(list); + } + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @ApiOperation(value = "浜х嚎琛�-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」", notes = "浜х嚎琛�-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」") + @GetMapping(value = "/loadProductionTreeOptions") + public Result<List<ProductionIdModel>> loadProductionTreeOptions() { + Result<List<ProductionIdModel>> result = new Result<>(); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + try { + List<ProductionIdModel> list = mdcProductionService.loadProductionTreeOptions(userId); + result.setSuccess(true); + result.setResult(list); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-id闆嗗悎") + @ApiOperation(value = "浜х嚎琛�-id闆嗗悎", notes = "浜х嚎琛�-id闆嗗悎") + @GetMapping(value = "/queryTreeIdList") + public Result<List<String>> queryTreeIdList() { + Result<List<String>> result = new Result<>(); + try { + List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0).orderByAsc(MdcProduction::getProductionOrder)); + List<String> ids = productionList.stream().map(MdcProduction::getId).collect(Collectors.toList()); + result.setSuccess(true); + result.setResult(ids); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + /** + * 娣诲姞 + * + * @param mdcProduction + * @return + */ + @AutoLog(value = "浜х嚎琛�-娣诲姞") + @ApiOperation(value = "浜х嚎琛�-娣诲姞", notes = "浜х嚎琛�-娣诲姞") + @PostMapping(value = "/add") + @CacheEvict(value = {"mdc:cache:production:alldata", "mdc:cache:production:allids"}, allEntries = true) + public Result<MdcProduction> add(@RequestBody MdcProduction mdcProduction) { + Result<MdcProduction> result = new Result<>(); + try { + mdcProductionService.saveProductionData(mdcProduction); + result.success("娣诲姞鎴愬姛锛�"); + } catch (Exception e) { + log.error(e.getMessage(), e); + result.error500("鎿嶄綔澶辫触"); + } + return result; + } + + /** + * 缂栬緫 + * + * @param mdcProduction + * @return + */ + @AutoLog(value = "浜х嚎琛�-缂栬緫") + @ApiOperation(value = "浜х嚎琛�-缂栬緫", notes = "浜х嚎琛�-缂栬緫") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + @CacheEvict(value = {"mdc:cache:production:alldata", "mdc:cache:production:allids"}, allEntries = true) + public Result<MdcProduction> edit(@RequestBody MdcProduction mdcProduction) { + Result<MdcProduction> result = new Result<>(); + MdcProduction mdcProductionEntity = mdcProductionService.getById(mdcProduction.getId()); + if (mdcProductionEntity == null) { + result.error500("鏈壘鍒板搴斿疄浣�"); + } else { + boolean ok = mdcProductionService.updateProductionDataById(mdcProduction); + if (ok) { + result.success("淇敼鎴愬姛!"); + } + } + return result; + } + + /** + * 閫氳繃id鍒犻櫎 + * + * @param id + * @return + */ + @AutoLog(value = "浜х嚎琛�-閫氳繃id鍒犻櫎") + @ApiOperation(value = "浜х嚎琛�-閫氳繃id鍒犻櫎", notes = "浜х嚎琛�-閫氳繃id鍒犻櫎") + @DeleteMapping(value = "/delete") + @CacheEvict(value = {"mdc:cache:production:alldata", "mdc:cache:production:allids"}, allEntries = true) + public Result<MdcProduction> delete(@RequestParam(name = "id", required = true) String id) { + Result<MdcProduction> result = new Result<>(); + MdcProduction mdcProduction = mdcProductionService.getById(id); + if (mdcProduction == null) { + result.error500("鏈壘鍒板搴斿疄浣�"); + } else { + boolean ok = mdcProductionService.delete(id); + if (ok) { + result.success("鍒犻櫎鎴愬姛!"); + } + } + return result; + } + + /** + * 鎵归噺鍒犻櫎 + * + * @param ids + * @return + */ + @AutoLog(value = "浜х嚎琛�-鎵归噺鍒犻櫎") + @ApiOperation(value = "浜х嚎琛�-鎵归噺鍒犻櫎", notes = "浜х嚎琛�-鎵归噺鍒犻櫎") + @DeleteMapping(value = "/deleteBatch") + @CacheEvict(value = {"mdc:cache:production:alldata", "mdc:cache:production:allids"}, allEntries = true) + public Result<MdcProduction> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + Result<MdcProduction> result = new Result<>(); + if (ids == null || "".equals(ids.trim())) { + result.error500("鍙傛暟涓嶈瘑鍒紒"); + } else { + this.mdcProductionService.deleteBatchWithChildren(Arrays.asList(ids.split(","))); + result.success("鍒犻櫎鎴愬姛!"); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�") + @ApiOperation(value = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�", notes = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�") + @GetMapping(value = "/queryIdTree") + public Result<List<ProductionIdModel>> queryIdTree() { + Result<List<ProductionIdModel>> result = new Result<>(); + try { + List<ProductionIdModel> list = mdcProductionService.queryProductionIdTreeList(); + result.setResult(list); + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-鏍规嵁鍏抽敭瀛楁ā绯婃悳绱㈢浉鍏充骇绾�") + @ApiOperation(value = "浜х嚎琛�-鏍规嵁鍏抽敭瀛楁ā绯婃悳绱㈢浉鍏充骇绾�", notes = "浜х嚎琛�-鏍规嵁鍏抽敭瀛楁ā绯婃悳绱㈢浉鍏充骇绾�") + @GetMapping(value = "/searchBy") + public Result<List<MdcProductionTreeModel>> searchBy(@RequestParam(name = "keyWord", required = true) String keyWord) { + Result<List<MdcProductionTreeModel>> result = new Result<>(); + List<MdcProductionTreeModel> treeList = mdcProductionService.searchByKeyWord(keyWord); + if (treeList == null || treeList.isEmpty()) { + result.setSuccess(false); + result.setMessage("鏈煡璇㈠尮閰嶆暟鎹紒"); + return result; + } + result.setResult(treeList); + return result; + } + + /** + * 閫氳繃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) { + MdcProduction mdcProduction = mdcProductionService.getById(id); + return Result.OK(mdcProduction); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param mdcProduction + */ + @AutoLog(value = "浜х嚎琛�-瀵煎嚭excel") + @ApiOperation(value = "浜х嚎琛�-瀵煎嚭excel", notes = "浜х嚎琛�-瀵煎嚭excel") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, MdcProduction mdcProduction) { + return super.exportXls(request, mdcProduction, MdcProduction.class, "浜х嚎琛�"); + } + + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + @AutoLog(value = "浜х嚎琛�-閫氳繃excel瀵煎叆鏁版嵁") + @ApiOperation(value = "浜х嚎琛�-閫氳繃excel瀵煎叆鏁版嵁", notes = "浜х嚎琛�-閫氳繃excel瀵煎叆鏁版嵁") + @PostMapping(value = "/importExcel") + @CacheEvict(value = {"mdc:cache:production:alldata", "mdc:cache:production:allids"}, allEntries = true) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, MdcProduction.class); + } + + @ApiOperation(value = "浜х嚎琛�-鏍规嵁鐢ㄦ埛id鑾峰彇MDC浜х嚎(涓績)鎴栫彮缁勪笅鎷夐�夐」", notes = "浜х嚎琛�-鏍规嵁鐢ㄦ埛id鑾峰彇MDC浜х嚎(涓績)鎴栫彮缁勪笅鎷夐�夐」") + @GetMapping(value = "/loadProductionOptions") + public Result<?> loadProductionOptions(String productionId) { + Result<List<MdcProOptionsVo>> result = new Result<>(); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + try { + List<MdcProOptionsVo> list = mdcProductionService.loadProductionOptions(userId, productionId); + result.setSuccess(true); + result.setResult(list); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @ApiOperation(value = "浜х嚎琛�-鏍规嵁鐝粍id鑾峰彇閰嶉�佺粍涓嬫媺閫夐」", notes = "浜х嚎琛�-鏍规嵁鐝粍id鑾峰彇閰嶉�佺粍涓嬫媺閫夐」") + @GetMapping(value = "/loadTeamOptions") + public Result<?> loadTeamOptions(@RequestParam(name = "productionId", required = true) String productionId) { + Result<List<MdcProOptionsVo>> result = new Result<>(); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + try { + List<MdcProOptionsVo> list = mdcProductionService.loadTeamOptions(userId, productionId); + result.setSuccess(true); + result.setResult(list); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + +} -- Gitblit v1.9.3