From 5aae43c2d47e8c7c5ea6457fbb2db99fa9357642 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期二, 01 七月 2025 12:27:10 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java | 198 ++++++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java | 71 ++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/FindsBaseFactorysChildrenUtil.java | 108 ++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java | 98 ++++ lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java | 4 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java | 222 +++++++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java | 47 + lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java | 2 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java | 59 ++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml | 5 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java | 226 +++++++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java | 14 lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java | 4 db/设备管理数据库设计.pdma.json | 42 + lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java | 19 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java | 2 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml | 5 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java | 126 +++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java | 14 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/WorkShopOrgCodeProRule.java | 98 ++++ lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java | 14 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml | 3 22 files changed, 1,374 insertions(+), 7 deletions(-) diff --git "a/db/\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json" "b/db/\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json" index bc35746..0fc3808 100644 --- "a/db/\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json" +++ "b/db/\350\256\276\345\244\207\347\256\241\347\220\206\346\225\260\346\215\256\345\272\223\350\256\276\350\256\241.pdma.json" @@ -2,9 +2,9 @@ "name": "鏁版嵁搴撲骇鍝佸寲璁捐", "describe": "鎻忚堪璁惧绠$悊鏁版嵁搴撹璁℃枃妗�", "avatar": "", - "version": "4.9.2", + "version": "4.9.4", "createdTime": "2025-3-10 16:38:19", - "updatedTime": "2025-7-1 10:45:42", + "updatedTime": "2025-7-1 11:43:12", "dbConns": [], "profile": { "default": { @@ -632,7 +632,7 @@ "#DDE5FF" ], "DDLToggleCase": "L", - "menuWidth": "389px" + "menuWidth": "246px" }, "entities": [ { @@ -20685,6 +20685,42 @@ "extProps": {}, "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573", "id": "C1CE4BAB-DB43-4D6F-A0FA-24275F01F7B2" + }, + { + "defKey": "org_type", + "defName": "鏈烘瀯绫诲瀷", + "comment": "", + "type": "", + "len": "", + "scale": "", + "primaryKey": false, + "notNull": false, + "autoIncrement": false, + "defaultValue": "", + "hideInGraph": false, + "refDict": "", + "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64", + "extProps": {}, + "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573", + "id": "B5B65363-D1D6-497E-ACE7-8DA9CDA8AA75" + }, + { + "defKey": "org_code", + "defName": "鏈烘瀯缂栫爜", + "comment": "", + "type": "", + "len": "", + "scale": "", + "primaryKey": false, + "notNull": false, + "autoIncrement": false, + "defaultValue": "", + "hideInGraph": false, + "refDict": "", + "baseType": "FC9790A7-36B8-4A48-8F9A-BC1042BCFE64", + "extProps": {}, + "domain": "9092C4E0-1A54-4859-ABBB-5B62DBC27573", + "id": "7ECD6490-CFCE-4613-BC8C-A51FD324FF44" } ], "correlations": [], diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java index 741dd03..2321cfa 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java @@ -23,6 +23,10 @@ public static final String PRODUCTION = "org_num_rule"; /** + * 璁惧杞﹂棿缂栫爜 + */ + public static final String WORKSHOP = "work_shop_code_rule"; + /** * 鍒嗙被瀛楀吀缂栫爜 */ public static final String CATEGORY = "category_code_rule"; diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java new file mode 100644 index 0000000..4087258 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java @@ -0,0 +1,226 @@ +package org.jeecg.modules.eam.base.controller; + +import java.util.Arrays; +import java.util.List; +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.util.oConvertUtils; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecg.modules.eam.base.model.EamBaseFactoryTreeModel; +import org.jeecg.modules.eam.base.model.WorkShopIdModel; +import org.jeecg.modules.eam.base.service.IBaseFactoryService; + +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.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 璁惧杞﹂棿绠$悊 + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Api(tags="璁惧杞﹂棿绠$悊") +@RestController +@RequestMapping("/eam/BaseFactory") +@Slf4j +public class BaseFactoryController extends JeecgController<BaseFactory, IBaseFactoryService> { + @Autowired + private IBaseFactoryService BaseFactoryService; + + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param BaseFactory + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "璁惧杞﹂棿绠$悊-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value="璁惧杞﹂棿绠$悊-鍒嗛〉鍒楄〃鏌ヨ", notes="璁惧杞﹂棿绠$悊-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<IPage<BaseFactory>> queryPageList(BaseFactory BaseFactory, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper<BaseFactory> queryWrapper = QueryGenerator.initQueryWrapper(BaseFactory, req.getParameterMap()); + Page<BaseFactory> page = new Page<BaseFactory>(pageNo, pageSize); + IPage<BaseFactory> pageList = BaseFactoryService.page(page, queryWrapper); + return Result.OK(pageList); + } + + @AutoLog(value = "璁惧杞﹂棿绠$悊-鏍戝舰鍒楄〃") + @ApiOperation(value = "璁惧杞﹂棿绠$悊-鏍戝舰鍒楄〃", notes = "璁惧杞﹂棿绠$悊-鏍戝舰鍒楄〃") + @GetMapping(value = "/queryTreeList") + public Result<List<EamBaseFactoryTreeModel>> queryTreeList(@RequestParam(name = "ids", required = false) String ids) { + Result<List<EamBaseFactoryTreeModel>> result = new Result<>(); + try { + if (oConvertUtils.isNotEmpty(ids)) { + List<EamBaseFactoryTreeModel> productionList = BaseFactoryService.queryTreeList(ids); + result.setResult(productionList); + } else { + List<EamBaseFactoryTreeModel> list = BaseFactoryService.queryTreeList(); + result.setResult(list); + } + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + @AutoLog(value = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�") + @ApiOperation(value = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�", notes = "浜х嚎琛�-鏌ヨ鏍戝舰缁撴瀯鎵�鏈変骇绾垮悕绉�") + @GetMapping(value = "/queryIdTree") + public Result<List<WorkShopIdModel>> queryIdTree() { + Result<List<WorkShopIdModel>> result = new Result<>(); + try { + List<WorkShopIdModel> list = BaseFactoryService.queryProductionIdTreeList(); + result.setResult(list); + result.setSuccess(true); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return result; + } + + /** + * 娣诲姞 + * + * @param BaseFactory + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊-娣诲姞") + @ApiOperation(value = "璁惧杞﹂棿绠$悊-娣诲姞", notes = "璁惧杞﹂棿绠$悊-娣诲姞") + @PostMapping(value = "/add") + public Result<BaseFactory> add(@RequestBody BaseFactory BaseFactory) { + Result<BaseFactory> result = new Result<>(); + try { + BaseFactoryService.saveBaseFactoryData(BaseFactory); + result.success("娣诲姞鎴愬姛锛�"); + } catch (Exception e) { + log.error(e.getMessage(), e); + result.error500("鎿嶄綔澶辫触"); + } + return result; + } + + /** + * 缂栬緫 + * + * @param BaseFactory + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊-缂栬緫") + @ApiOperation(value = "璁惧杞﹂棿绠$悊-缂栬緫", notes = "璁惧杞﹂棿绠$悊-缂栬緫") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<BaseFactory> edit(@RequestBody BaseFactory BaseFactory) { + Result<BaseFactory> result = new Result<>(); + BaseFactory eamProductionEntity = BaseFactoryService.getById(BaseFactory.getId()); + if (eamProductionEntity == null) { + result.error500("鏈壘鍒板搴斿疄浣�"); + } else { + boolean ok = BaseFactoryService.updateBaseFactoryDataById(BaseFactory); + if (ok) { + result.success("淇敼鎴愬姛!"); + } + } + return result; + } + + /** + * 閫氳繃id鍒犻櫎 + * + * @param id + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊-閫氳繃id鍒犻櫎") + @ApiOperation(value = "璁惧杞﹂棿绠$悊-閫氳繃id鍒犻櫎", notes = "璁惧杞﹂棿绠$悊-閫氳繃id鍒犻櫎") + @DeleteMapping(value = "/delete") + public Result<BaseFactory> delete(@RequestParam(name = "id", required = true) String id) { + Result<BaseFactory> result = new Result<>(); + BaseFactory BaseFactory = BaseFactoryService.getById(id); + if (BaseFactory == null) { + result.error500("鏈壘鍒板搴斿疄浣�"); + } else { + boolean ok = BaseFactoryService.delete(id); + if (ok) { + result.success("鍒犻櫎鎴愬姛!"); + } + } + return result; + } + + /** + * 鎵归噺鍒犻櫎 + * + * @param ids + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊-鎵归噺鍒犻櫎") + @ApiOperation(value = "璁惧杞﹂棿绠$悊-鎵归噺鍒犻櫎", notes = "璁惧杞﹂棿绠$悊-鎵归噺鍒犻櫎") + @DeleteMapping(value = "/deleteBatch") + public Result<BaseFactory> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + Result<BaseFactory> result = new Result<>(); + if (ids == null || "".equals(ids.trim())) { + result.error500("鍙傛暟涓嶈瘑鍒紒"); + } else { + this.BaseFactoryService.deleteBatchWithChildren(Arrays.asList(ids.split(","))); + result.success("鍒犻櫎鎴愬姛!"); + } + return result; + } + /** + * 閫氳繃id鏌ヨ + * + * @param id + * @return + */ + //@AutoLog(value = "璁惧杞﹂棿绠$悊-閫氳繃id鏌ヨ") + @ApiOperation(value="璁惧杞﹂棿绠$悊-閫氳繃id鏌ヨ", notes="璁惧杞﹂棿绠$悊-閫氳繃id鏌ヨ") + @GetMapping(value = "/queryById") + public Result<BaseFactory> queryById(@RequestParam(name="id",required=true) String id) { + BaseFactory BaseFactory = BaseFactoryService.getById(id); + if(BaseFactory==null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } + return Result.OK(BaseFactory); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param BaseFactory + */ + //@RequiresPermissions("org.jeecg.modules.eam:sys_work_shop_depart:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, BaseFactory BaseFactory) { + return super.exportXls(request, BaseFactory, BaseFactory.class, "璁惧杞﹂棿绠$悊"); + } + + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("sys_work_shop_depart:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, BaseFactory.class); + } + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java new file mode 100644 index 0000000..6ea1d2b --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java @@ -0,0 +1,198 @@ +package org.jeecg.modules.eam.base.controller; + +import java.util.Arrays; +import java.util.List; +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.modules.eam.base.entity.BaseFactoryUser; +import org.jeecg.modules.eam.base.service.IBaseFactoryUserService; + +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.modules.system.entity.SysUser; +import org.jeecg.modules.system.service.ISysUserService; +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.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; + + /** + * @Description: 璁惧杞﹂棿绠$悊涓庣敤鎴� + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Api(tags="璁惧杞﹂棿绠$悊涓庣敤鎴�") +@RestController +@RequestMapping("/eam/BaseFactoryUser") +@Slf4j +public class BaseFactoryUserController extends JeecgController<BaseFactoryUser, IBaseFactoryUserService> { + @Autowired + private IBaseFactoryUserService BaseFactoryUserService; + + @Autowired + private ISysUserService sysUserService; + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param BaseFactoryUser + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-鍒嗛〉鍒楄〃鏌ヨ", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<IPage<BaseFactoryUser>> queryPageList(BaseFactoryUser BaseFactoryUser, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper<BaseFactoryUser> queryWrapper = QueryGenerator.initQueryWrapper(BaseFactoryUser, req.getParameterMap()); + Page<BaseFactoryUser> page = new Page<BaseFactoryUser>(pageNo, pageSize); + IPage<BaseFactoryUser> pageList = BaseFactoryUserService.page(page, queryWrapper); + return Result.OK(pageList); + } + + @RequestMapping(value = "/BaseFactoryUserList", method = RequestMethod.GET) + public Result<IPage<SysUser>> userRoleList(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { + Result<IPage<SysUser>> result = new Result<IPage<SysUser>>(); + Page<SysUser> page = new Page<SysUser>(pageNo, pageSize); + String BaseFactoryId = req.getParameter("BaseFactoryId"); + String username=req.getParameter("username"); + IPage<SysUser> pageList = sysUserService.getUserByworkShopDepartId(page, BaseFactoryId,username); + result.setSuccess(true); + result.setResult(pageList); + return result; + } + + /** + * 娣诲姞 + * + * @param BaseFactoryUser + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-娣诲姞") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-娣诲姞", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-娣诲姞") + //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:add") + @PostMapping(value = "/add") + public Result<String> add(@RequestBody BaseFactoryUser BaseFactoryUser) { + if (BaseFactoryUser.getUserId().contains(",")){ + String[] userIds = BaseFactoryUser.getUserId().split(","); + List<String> userIdList = Arrays.asList(userIds); + userIdList.forEach(userId -> { + BaseFactoryUser BaseFactoryUser1 = new BaseFactoryUser(); + BaseFactoryUser1.setUserId(userId); + BaseFactoryUser1.setFactoryId(BaseFactoryUser.getFactoryId()); + BaseFactoryUserService.save(BaseFactoryUser1); + }); + }else { + BaseFactoryUserService.save(BaseFactoryUser); + } + return Result.OK("娣诲姞鎴愬姛锛�"); + } + + /** + * 缂栬緫 + * + * @param BaseFactoryUser + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-缂栬緫") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-缂栬緫", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-缂栬緫") + //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result<String> edit(@RequestBody BaseFactoryUser BaseFactoryUser) { + BaseFactoryUserService.updateById(BaseFactoryUser); + return Result.OK("缂栬緫鎴愬姛!"); + } + + /** + * 閫氳繃id鍒犻櫎 + * + * @param id + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鍒犻櫎") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鍒犻櫎", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:delete") + @DeleteMapping(value = "/delete") + public Result<String> delete(String id, String BaseFactoryId) { + QueryWrapper<BaseFactoryUser> queryWrapper = new QueryWrapper<BaseFactoryUser>(); + queryWrapper.eq("work_shop_depart_id", BaseFactoryId) + .eq("user_id", id); + BaseFactoryUserService.remove(queryWrapper); + return Result.OK("鍒犻櫎鎴愬姛!"); + } + + /** + * 鎵归噺鍒犻櫎 + * + * @param ids + * @return + */ + @AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-鎵归噺鍒犻櫎") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-鎵归噺鍒犻櫎", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-鎵归噺鍒犻櫎") + //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result<String> deleteBatch(String ids,String BaseFactoryId) { + QueryWrapper<BaseFactoryUser> queryWrapper = new QueryWrapper<BaseFactoryUser>(); + queryWrapper.eq("work_shop_depart_id", BaseFactoryId) + .in("user_id", Arrays.asList(ids.split(","))); + BaseFactoryUserService.remove(queryWrapper); + return Result.OK("鎵归噺鍒犻櫎鎴愬姛!"); + } + + /** + * 閫氳繃id鏌ヨ + * + * @param id + * @return + */ + //@AutoLog(value = "璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鏌ヨ") + @ApiOperation(value="璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鏌ヨ", notes="璁惧杞﹂棿绠$悊涓庣敤鎴�-閫氳繃id鏌ヨ") + @GetMapping(value = "/queryById") + public Result<BaseFactoryUser> queryById(@RequestParam(name="id",required=true) String id) { + BaseFactoryUser BaseFactoryUser = BaseFactoryUserService.getById(id); + if(BaseFactoryUser==null) { + return Result.error("鏈壘鍒板搴旀暟鎹�"); + } + return Result.OK(BaseFactoryUser); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param BaseFactoryUser + */ + //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, BaseFactoryUser BaseFactoryUser) { + return super.exportXls(request, BaseFactoryUser, BaseFactoryUser.class, "璁惧杞﹂棿绠$悊涓庣敤鎴�"); + } + + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + //@RequiresPermissions("sys_work_shop_depart_user:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, BaseFactoryUser.class); + } + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/FindsBaseFactorysChildrenUtil.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/FindsBaseFactorysChildrenUtil.java new file mode 100644 index 0000000..a0d7778 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/FindsBaseFactorysChildrenUtil.java @@ -0,0 +1,108 @@ +package org.jeecg.modules.eam.base.controller.util; + +import cn.hutool.core.util.StrUtil; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecg.modules.eam.base.model.EamBaseFactoryTreeModel; +import org.jeecg.modules.eam.base.model.WorkShopIdModel; + +import java.util.ArrayList; +import java.util.List; + +/** + * 瀵瑰簲浜х嚎鐨勮〃锛屽鐞嗗苟鏌ユ壘鏍戠粨鏋勬暟鎹� + * + * @author: LiuS + * @create: 2023-03-23 14:46 + */ +public class FindsBaseFactorysChildrenUtil { + + /** + * queryTreeList鐨勫瓙鏂规硶 ====1===== + * 璇ユ柟娉曟槸s灏咮aseFactory绫诲瀷鐨刲ist闆嗗悎杞崲鎴怑amBaseFactoryTreeModel绫诲瀷鐨勯泦鍚� + */ + public static List<EamBaseFactoryTreeModel> wrapTreeDataToTreeList(List<BaseFactory> recordList) { + List<WorkShopIdModel> idList = new ArrayList<>(); + List<EamBaseFactoryTreeModel> records = new ArrayList<>(); + for (int i = 0; i < recordList.size(); i++) { + BaseFactory BaseFactory = recordList.get(i); + if (StrUtil.isEmpty(BaseFactory.getRemark())){ + BaseFactory.setRemark(""); + } + records.add(new EamBaseFactoryTreeModel(BaseFactory)); + } + List<EamBaseFactoryTreeModel> tree = findChildren(records, idList); + setEmptyChildrenAsNull(tree); + return tree; + } + + /** + * queryTreeList鐨勫瓙鏂规硶 ====1===== + * 璇ユ柟娉曟槸鎵惧埌骞跺皝瑁呴《绾х埗绫荤殑鑺傜偣鍒癟reeList闆嗗悎 + */ + public static List<EamBaseFactoryTreeModel> findChildren(List<EamBaseFactoryTreeModel> recordList, List<WorkShopIdModel> workShopIdModelList) { + List<EamBaseFactoryTreeModel> treeList = new ArrayList<>(); + for (int i = 0; i < recordList.size(); i++) { + EamBaseFactoryTreeModel branch = recordList.get(i); + if (oConvertUtils.isEmpty(branch.getParentId())) { + treeList.add(branch); + WorkShopIdModel WorkShopIdModel = new WorkShopIdModel().convert(branch); + workShopIdModelList.add(WorkShopIdModel); + } + } + getGrandChildren(treeList, recordList, workShopIdModelList); + return treeList; + } + + /** + * queryTreeList鐨勫瓙鏂规硶====3==== + *璇ユ柟娉曟槸鎵惧埌椤剁骇鐖剁被涓嬬殑鎵�鏈夊瓙鑺傜偣闆嗗悎骞跺皝瑁呭埌TreeList闆嗗悎 + */ + private static void getGrandChildren(List<EamBaseFactoryTreeModel> treeList, List<EamBaseFactoryTreeModel> recordList, List<WorkShopIdModel> idList) { + for (int i = 0; i < treeList.size(); i++) { + EamBaseFactoryTreeModel model = treeList.get(i); + WorkShopIdModel idModel = idList.get(i); + for (int i1 = 0; i1 < recordList.size(); i1++) { + EamBaseFactoryTreeModel m = recordList.get(i1); + if (m.getParentId() != null && m.getParentId().equals(model.getId())) { + model.getChildren().add(m); + WorkShopIdModel pim = new WorkShopIdModel().convert(m); + idModel.setSelectable(false); + idModel.getChildren().add(pim); + } + } + getGrandChildren(treeList.get(i).getChildren(), recordList, idList.get(i).getChildren()); + } + } + + /** + * queryTreeList鐨勫瓙鏂规硶 ====4==== + * 璇ユ柟娉曟槸灏嗗瓙鑺傜偣涓虹┖鐨凩ist闆嗗悎璁剧疆涓篘ull鍊� + */ + private static void setEmptyChildrenAsNull(List<EamBaseFactoryTreeModel> treeList) { + for (int i = 0; i < treeList.size(); i++) { + EamBaseFactoryTreeModel model = treeList.get(i); + if (model.getChildren().size() == 0) { + model.setChildren(null); + model.setLeaf(true); + } else { + setEmptyChildrenAsNull(model.getChildren()); + model.setLeaf(false); + } + } + } + + /** + * 鑾峰彇 DepartIdModel + */ + public static List<WorkShopIdModel> wrapTreeDataToProductionIdTreeList(List<BaseFactory> recordList) { + List<WorkShopIdModel> idList = new ArrayList<>(); + List<EamBaseFactoryTreeModel> records = new ArrayList<>(); + for (int i = 0; i < recordList.size(); i++) { + BaseFactory BaseFactory = recordList.get(i); + records.add(new EamBaseFactoryTreeModel(BaseFactory)); + } + findChildren(records, idList); + return idList; + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/WorkShopOrgCodeProRule.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/WorkShopOrgCodeProRule.java new file mode 100644 index 0000000..07d8ffc --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/util/WorkShopOrgCodeProRule.java @@ -0,0 +1,98 @@ +package org.jeecg.modules.eam.base.controller.util; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import io.netty.util.internal.StringUtil; +import org.jeecg.common.handler.IFillRuleHandler; +import org.jeecg.common.util.SpringContextUtils; +import org.jeecg.common.util.YouBianCodeUtil; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecg.modules.eam.base.service.IBaseFactoryService; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author: LiuS + * @create: 2023-07-04 16:15 + * @Description: 杞﹂棿鏈烘瀯缂栫爜鐢熸垚瑙勫垯 + */ +public class WorkShopOrgCodeProRule implements IFillRuleHandler { + + @Override + public Object execute(JSONObject params, JSONObject formData) { + IBaseFactoryService BaseFactoryService = (IBaseFactoryService) SpringContextUtils.getBean("BaseFactoryServiceImpl"); + + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<BaseFactory>(); + LambdaQueryWrapper<BaseFactory> query1 = new LambdaQueryWrapper<BaseFactory>(); + // 鍒涘缓涓�涓狶ist闆嗗悎,瀛樺偍鏌ヨ杩斿洖鐨勬墍鏈塀aseFactory瀵硅薄 + List<BaseFactory> BaseFactoryList = new ArrayList<>(); + String[] strArray = new String[2]; + //瀹氫箟杞﹂棿绫诲瀷 + String orgType = ""; + // 瀹氫箟鏂扮紪鐮佸瓧绗︿覆 + String newOrgCode = ""; + // 瀹氫箟鏃х紪鐮佸瓧绗︿覆 + String oldOrgCode = ""; + + String parentId = null; + if (formData != null && formData.size() > 0) { + Object obj = formData.get("parentId"); + if (obj != null) { + parentId = obj.toString(); + } + } else { + if (params != null) { + Object obj = params.get("parentId"); + if (obj != null) { + parentId = obj.toString(); + } + } + } + + //濡傛灉鏄渶楂樼骇,鍒欐煡璇㈠嚭鍚岀骇鐨刼rg_code, 璋冪敤宸ュ叿绫荤敓鎴愮紪鐮佸苟杩斿洖 + if (StringUtil.isNullOrEmpty(parentId)) { + // 绾垮垽鏂暟鎹簱涓殑琛ㄦ槸鍚︿负绌�,绌哄垯鐩存帴杩斿洖鍒濆缂栫爜 + query1.eq(BaseFactory::getParentId, "").or().isNull(BaseFactory::getParentId); + query1.orderByDesc(BaseFactory::getOrgCode); + BaseFactoryList = BaseFactoryService.list(query1); + if (BaseFactoryList == null || BaseFactoryList.size() == 0) { + strArray[0] = YouBianCodeUtil.getNextYouBianCode(null); + strArray[1] = "1"; + return strArray; + } else { + BaseFactory BaseFactory = BaseFactoryList.get(0); + oldOrgCode = BaseFactory.getOrgCode(); + orgType = BaseFactory.getOrgType(); + newOrgCode = YouBianCodeUtil.getNextYouBianCode(oldOrgCode); + } + } else {//鍙嶄箣鍒欐煡璇㈠嚭鎵�鏈夊悓绾х殑杞﹂棿,鑾峰彇缁撴灉鍚庢湁涓ょ鎯呭喌,鏈夊悓绾у拰娌℃湁鍚岀骇 + // 灏佽鏌ヨ鍚岀骇鐨勬潯浠� + query.eq(BaseFactory::getParentId, parentId); + // 闄嶅簭鎺掑簭 + query.orderByDesc(BaseFactory::getOrgCode); + // 鏌ヨ鍑哄悓绾т骇绾跨殑闆嗗悎 + List<BaseFactory> parentList = BaseFactoryService.list(query); + // 鏌ヨ鍑虹埗绾т骇绾� + BaseFactory production = BaseFactoryService.getById(parentId); + // 鑾峰彇鐖剁骇浜х嚎鐨刢ode + String parentCode = production.getOrgCode(); + // 鏍规嵁鐖剁骇浜х嚎绫诲瀷绠楀嚭褰撳墠浜х嚎鐨勭被鍨� + orgType = String.valueOf(Integer.valueOf(production.getOrgType()) + 1); + // 澶勭悊鍚岀骇浜х嚎涓簄ull鐨勬儏鍐� + if (parentList == null || parentList.size() == 0) { + // 鐩存帴鐢熸垚褰撳墠鐨勪骇绾跨紪鐮佸苟杩斿洖 + newOrgCode = YouBianCodeUtil.getSubYouBianCode(parentCode, null); + } else { //澶勭悊鏈夊悓绾т骇绾跨殑鎯呭喌 + // 鑾峰彇鍚岀骇浜х嚎鐨勭紪鐮�,鍒╃敤宸ュ叿绫� + String subCode = parentList.get(0).getOrgCode(); + // 杩斿洖鐢熸垚鐨勫綋鍓嶄骇绾跨紪鐮� + newOrgCode = YouBianCodeUtil.getSubYouBianCode(parentCode, subCode); + } + } + // 杩斿洖鏈�缁堝皝瑁呬簡浜х嚎缂栫爜鍜屼骇绾跨被鍨嬬殑鏁扮粍 + strArray[0] = newOrgCode; + strArray[1] = orgType; + return strArray; + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java new file mode 100644 index 0000000..3641e0c --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java @@ -0,0 +1,98 @@ +package org.jeecg.modules.eam.base.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; + +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.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 璁惧杞﹂棿绠$悊 + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Data +@TableName("eam_base_factory") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="eam_base_factory", description="宸ュ巶寤烘ā") +public class BaseFactory implements Serializable { + private static final long serialVersionUID = 1L; + + /**涓婚敭*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "涓婚敭") + private String id; + /**鐖剁骇id*/ + @Excel(name = "鐖剁骇id", width = 15) + @ApiModelProperty(value = "鐖剁骇id") + private String parentId; + /**鏈烘瀯鍚嶇О*/ + @Excel(name = "鏈烘瀯鍚嶇О", width = 15) + @ApiModelProperty(value = "鏈烘瀯鍚嶇О") + private String factoryName; + /**绠�绉�*/ + @Excel(name = "绠�绉�", width = 15) + @ApiModelProperty(value = "绠�绉�") + private String shortName; + /**鍏徃/涓績/宸ュ尯/宸ユ缂栫爜*/ + @Excel(name = "鍏徃/涓績/宸ュ尯/宸ユ缂栫爜", width = 15) + @ApiModelProperty(value = "鍏徃/涓績/宸ュ尯/宸ユ缂栫爜") + private String factoryCode; + /**鏈烘瀯绫诲瀷 1閮ㄩ棬 2瀛愰儴闂�*/ + @Excel(name = "鏈烘瀯绫诲瀷 1閮ㄩ棬 2瀛愰儴闂�", width = 15) + @ApiModelProperty(value = "鏈烘瀯绫诲瀷 1閮ㄩ棬 2瀛愰儴闂�") + private String orgType; + /**鏈烘瀯缂栫爜*/ + @Excel(name = "鏈烘瀯缂栫爜", width = 15) + @ApiModelProperty(value = "鏈烘瀯缂栫爜") + private String orgCode; + /**宸ュ巶鍒嗙被*/ + @Excel(name = "宸ュ巶鍒嗙被", width = 15) + @ApiModelProperty(value = "宸ュ巶鍒嗙被") + private String factoryCategory; + /**宸ュ巶鍒嗙被*/ + @Excel(name = "宸ュ巶鐘舵��", width = 15) + @ApiModelProperty(value = "宸ュ巶鐘舵��") + private String factoryStatus; + /**鎺掑簭*/ + @Excel(name = "鎺掑簭", width = 15) + @ApiModelProperty(value = "鎺掑簭") + private Integer sorter; + /**澶囨敞*/ + @Excel(name = "澶囨敞", width = 20) + @ApiModelProperty(value = "澶囨敞") + private String remark; + /**鍒犻櫎鐘舵�侊紙0锛屾甯革紝1宸插垹闄わ級*/ + @Excel(name = "鍒犻櫎鐘舵�侊紙0锛屾甯革紝1宸插垹闄わ級", width = 15) + @ApiModelProperty(value = "鍒犻櫎鐘舵�侊紙0锛屾甯革紝1宸插垹闄わ級") + @TableLogic + private String delFlag; + /**鍒涘缓浜�*/ + @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; +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java new file mode 100644 index 0000000..cfe2f91 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java @@ -0,0 +1,47 @@ +package org.jeecg.modules.eam.base.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.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 璁惧杞﹂棿绠$悊涓庣敤鎴� + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Data +@TableName("eam_base_factory_user") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="eam_base_factory_user瀵硅薄", description="宸ュ巶寤烘ā涓庣敤鎴�") +public class BaseFactoryUser implements Serializable { + private static final long serialVersionUID = 1L; + + /**涓婚敭*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "涓婚敭") + private String id; + /**璁惧杞﹂棿绠$悊id*/ + @Excel(name = "宸ュ巶寤烘āid", width = 15) + @ApiModelProperty(value = "宸ュ巶寤烘āid") + private String factoryId; + /**鐢ㄦ埛id*/ + @Excel(name = "鐢ㄦ埛id", width = 15) + @ApiModelProperty(value = "鐢ㄦ埛id") + private String userId; +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java new file mode 100644 index 0000000..b8b1a56 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.eam.base.mapper; + +import org.jeecg.modules.eam.base.entity.BaseFactory; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 璁惧杞﹂棿绠$悊 + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +public interface BaseFactoryMapper extends BaseMapper<BaseFactory> { + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java new file mode 100644 index 0000000..540e1b3 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.eam.base.mapper; + +import org.jeecg.modules.eam.base.entity.BaseFactoryUser; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 璁惧杞﹂棿绠$悊涓庣敤鎴� + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +public interface BaseFactoryUserMapper extends BaseMapper<BaseFactoryUser> { + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml new file mode 100644 index 0000000..e488574 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.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.eam.base.mapper.BaseFactoryMapper"> + +</mapper> diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml new file mode 100644 index 0000000..4362d52 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.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.eam.base.mapper.BaseFactoryUserMapper"> + +</mapper> diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java new file mode 100644 index 0000000..6f8f16f --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java @@ -0,0 +1,126 @@ +package org.jeecg.modules.eam.base.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author: LiuS + * @create: 2023-03-23 14:16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "璁惧杞﹂棿绠$悊鏍戠粨鏋勬暟鎹疄浣�", description = "璁惧杞﹂棿绠$悊") +public class EamBaseFactoryTreeModel implements Serializable { + + private static final long serialVersionUID = -1309711609760828658L; + + /** + * 瀵瑰簲BaseFactory涓殑id瀛楁,鍓嶇鏁版嵁鏍戜腑鐨刱ey + */ + private String key; + + /** + * 瀵瑰簲BaseFactory涓殑id瀛楁,鍓嶇鏁版嵁鏍戜腑鐨剉alue + */ + private String value; + + /** + * 瀵瑰簲depart_name瀛楁,鍓嶇鏁版嵁鏍戜腑鐨則itle + */ + private String title; + + private boolean isLeaf; + + /** + * 绫诲瀷 + */ + private Integer type; + //浠ヤ笅鎵�鏈夊瓧娈靛潎涓嶣aseFactory鐩稿悓 + + /**涓婚敭*/ + private String id; + /**鐖剁骇id*/ + private String parentId; + /**鏈烘瀯鍚嶇О*/ + private String factoryName; + /**绠�绉�*/ + private String shortName; + /**鍏徃/涓績/宸ュ尯/宸ユ缂栫爜*/ + private String factoryCode; + /**鏈烘瀯绫诲瀷 1閮ㄩ棬 2瀛愰儴闂�*/ + private String orgType; + /**鏈烘瀯缂栫爜*/ + private String orgCode; + /**宸ュ巶鍒嗙被*/ + private String factoryCategory; + /**宸ュ巶鍒嗙被*/ + private String factoryStatus; + /**鎺掑簭*/ + private Integer sorter; + /**澶囨敞*/ + private String remark; + /**鍒犻櫎鐘舵�侊紙0锛屾甯革紝1宸插垹闄わ級*/ + private String delFlag; + /**鍒涘缓浜�*/ + private String createBy; + /**鍒涘缓鏃ユ湡*/ + private Date createTime; + /**鏇存柊浜�*/ + private String updateBy; + /**鏇存柊鏃ユ湡*/ + private Date updateTime; + + /** + * 浜х嚎璐熻矗浜篿ds + */ + private String directorUserIds; + + private List<EamBaseFactoryTreeModel> children = new ArrayList<>(); + + public EamBaseFactoryTreeModel() { + + } + + /** + * 灏咮aseFactory瀵硅薄杞崲鎴怑amBaseFactoryTreeModel瀵硅薄 + * + * @param BaseFactory + */ + public EamBaseFactoryTreeModel(BaseFactory BaseFactory) { + this.key = BaseFactory.getId(); + this.value = BaseFactory.getId(); + this.title= BaseFactory.getFactoryName(); + this.factoryName = BaseFactory.getFactoryName(); + this.id = BaseFactory.getId(); + this.parentId = BaseFactory.getParentId(); + this.shortName = BaseFactory.getShortName(); + this.orgType = BaseFactory.getOrgType(); + this.orgCode = BaseFactory.getOrgCode(); + this.sorter=BaseFactory.getSorter(); + this.factoryCode=BaseFactory.getFactoryCode(); + this.factoryStatus=BaseFactory.getFactoryStatus(); + this.factoryCategory=BaseFactory.getFactoryCategory(); + this.remark = BaseFactory.getRemark(); + this.delFlag = BaseFactory.getDelFlag(); + this.createBy = BaseFactory.getCreateBy(); + this.createTime = BaseFactory.getCreateTime(); + this.updateBy = BaseFactory.getUpdateBy(); + this.updateTime = BaseFactory.getUpdateTime(); + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java new file mode 100644 index 0000000..609a4a2 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java @@ -0,0 +1,71 @@ +package org.jeecg.modules.eam.base.model; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecg.modules.eam.base.entity.BaseFactory; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * 浜х嚎琛� 灏佽鏍戠粨鏋勭殑浜х嚎鐨勫悕绉扮殑瀹炰綋绫� + * + * @author: LiuS + * @create: 2023-03-23 15:15 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +public class WorkShopIdModel implements Serializable { + + private static final long serialVersionUID = 6403075134223338239L; + + /** + * 涓婚敭ID + */ + private String key; + + /** + * 涓婚敭ID + */ + private String value; + + /** + * 浜х嚎鍚嶇О + */ + private String title; + + /** + * 鏄惁鍙�� + */ + private Boolean selectable = true; + + List<WorkShopIdModel> children = new ArrayList<>(); + + /** + * 灏咵amBaseFactoryTreeModel鐨勯儴鍒嗘暟鎹斁鍦ㄨ瀵硅薄褰撲腑 + * + * @param treeModel + * @return + */ + public WorkShopIdModel convert(EamBaseFactoryTreeModel treeModel) { + this.key = treeModel.getId(); + this.value = treeModel.getId(); + this.title = treeModel.getFactoryName(); + return this; + } + + /** + * 璇ユ柟娉曚负鐢ㄦ埛浜х嚎鐨勫疄鐜扮被鎵�浣跨敤 + * + * @return + */ + public WorkShopIdModel convertByUserProduction(BaseFactory BaseFactory) { + this.key = BaseFactory.getId(); + this.value = BaseFactory.getId(); + this.title = BaseFactory.getFactoryName(); + return this; + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java new file mode 100644 index 0000000..396fd16 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java @@ -0,0 +1,59 @@ +package org.jeecg.modules.eam.base.service; + +import org.jeecg.modules.eam.base.entity.BaseFactory; +import com.baomidou.mybatisplus.extension.service.IService; +import org.jeecg.modules.eam.base.model.EamBaseFactoryTreeModel; +import org.jeecg.modules.eam.base.model.WorkShopIdModel; + +import java.util.List; + +/** + * @Description: 璁惧杞﹂棿绠$悊 + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +public interface IBaseFactoryService extends IService<BaseFactory> { + + /** + * 鏌ヨ鎵�鏈変骇绾夸俊鎭紝骞跺垎鑺傜偣杩涜鏄剧ず + */ + List<EamBaseFactoryTreeModel> queryTreeList(); + + + /** + * 鏌ヨ鎵�鏈変骇绾夸俊鎭紝骞跺垎鑺傜偣杩涜鏄剧ず + */ + List<EamBaseFactoryTreeModel> queryTreeList(String ids); + + + /** + * 鏍规嵁鍏抽敭瀛楁悳绱㈢浉鍏崇殑浜х嚎鏁版嵁 + */ + List<EamBaseFactoryTreeModel> searchByKeyWord(String keyWord); + + /** + * 淇濆瓨浜х嚎鏁版嵁 + */ + void saveBaseFactoryData(BaseFactory BaseFactory); + + /** + * 鏌ヨ鎵�鏈夐儴闂―epartId淇℃伅,骞跺垎鑺傜偣杩涜鏄剧ず + */ + List<WorkShopIdModel> queryProductionIdTreeList(); + + /** + * 鏇存柊浜х嚎鏁版嵁 + */ + boolean updateBaseFactoryDataById(BaseFactory BaseFactory); + + /** + * 鏍规嵁浜х嚎id鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾т骇绾� + */ + boolean delete(String id); + + /** + * 鏍规嵁浜х嚎id鎵归噺鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾т骇绾� + */ + void deleteBatchWithChildren(List<String> ids); +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java new file mode 100644 index 0000000..a280fdc --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java @@ -0,0 +1,14 @@ +package org.jeecg.modules.eam.base.service; + +import org.jeecg.modules.eam.base.entity.BaseFactoryUser; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 璁惧杞﹂棿绠$悊涓庣敤鎴� + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +public interface IBaseFactoryUserService extends IService<BaseFactoryUser> { + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java new file mode 100644 index 0000000..8507439 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java @@ -0,0 +1,222 @@ +package org.jeecg.modules.eam.base.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; +import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.constant.FillRuleConstant; +import org.jeecg.common.util.FillRuleUtil; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecg.modules.eam.base.entity.BaseFactoryUser; +import org.jeecg.modules.eam.base.mapper.BaseFactoryMapper; +import org.jeecg.modules.eam.base.mapper.BaseFactoryUserMapper; +import org.jeecg.modules.eam.base.model.EamBaseFactoryTreeModel; +import org.jeecg.modules.eam.base.model.WorkShopIdModel; +import org.jeecg.modules.eam.base.service.IBaseFactoryService; +import org.jeecg.modules.eam.base.controller.util.FindsBaseFactorysChildrenUtil; +import org.jeecg.modules.system.entity.SysUser; +import org.jeecg.modules.system.mapper.SysUserMapper; +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.util.*; + +/** + * @Description: 璁惧杞﹂棿绠$悊 + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Service("BaseFactoryServiceImpl") +public class BaseFactoryServiceImpl extends ServiceImpl<BaseFactoryMapper, BaseFactory> implements IBaseFactoryService { + + @Autowired + private SysUserMapper sysUserMapper; + + @Autowired + private BaseFactoryUserMapper BaseFactoryUserMapper; + + /** + * queryTreeList 瀵瑰簲 queryTreeList 鏌ヨ鎵�鏈夌殑璁惧杞﹂棿绠$悊鏁版嵁,浠ユ爲缁撴瀯褰㈠紡鍝嶅簲缁欏墠绔� + */ + @Override + public List<EamBaseFactoryTreeModel> queryTreeList() { + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<BaseFactory>(); + query.eq(BaseFactory::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + query.orderByAsc(BaseFactory::getSorter); + List<BaseFactory> list = this.list(query); + //璁剧疆鐢ㄦ埛id锛岃鍓嶅彴鏄剧ず + this.setUserIdsByProList(list); + //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 + return FindsBaseFactorysChildrenUtil.wrapTreeDataToTreeList(list); + } + + /** + * queryTreeList 鏍规嵁璁惧杞﹂棿绠$悊id鏌ヨ,鍓嶇鍥炴樉璋冪敤 + */ + @Override + public List<EamBaseFactoryTreeModel> queryTreeList(String ids) { + List<EamBaseFactoryTreeModel> listResult = new ArrayList<>(); + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<BaseFactory>(); + query.eq(BaseFactory::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + if (oConvertUtils.isNotEmpty(ids)) { + query.in(true, BaseFactory::getId, ids.split(",")); + } + query.orderByAsc(BaseFactory::getSorter); + List<BaseFactory> list = this.list(query); + for (BaseFactory production : list) { + if (production.getRemark().isEmpty()){ + production.setRemark(""); + } + listResult.add(new EamBaseFactoryTreeModel(production)); + } + return listResult; + } + + /** + * 鏍规嵁鍏抽敭瀛楁悳绱㈢浉鍏崇殑閮ㄩ棬鏁版嵁 + */ + @Override + public List<EamBaseFactoryTreeModel> searchByKeyWord(String keyWord) { + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>(); + List<EamBaseFactoryTreeModel> newList = new ArrayList<>(); + query.like(BaseFactory::getFactoryName, keyWord); + EamBaseFactoryTreeModel model = new EamBaseFactoryTreeModel(); + List<BaseFactory> productionList = this.list(query); + if (!productionList.isEmpty()) { + for (BaseFactory BaseFactory : productionList) { + model = new EamBaseFactoryTreeModel(BaseFactory); + model.setChildren(null); + newList.add(model); + } + return newList; + } + return Collections.emptyList(); + } + + /** + * saveProductionData 瀵瑰簲 add 淇濆瓨鐢ㄦ埛鍦ㄩ〉闈㈡坊鍔犵殑鏂扮殑璁惧杞﹂棿绠$悊瀵硅薄鏁版嵁 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void saveBaseFactoryData(BaseFactory BaseFactory) { + if (BaseFactory != null) { + if (BaseFactory.getParentId() == null) { + BaseFactory.setParentId(""); + } + BaseFactory.setId(IdWorker.getIdStr(BaseFactory)); + // 鍏堝垽鏂瀵硅薄鏈夋棤鐖剁骇ID,鏈夊垯鎰忓懗鐫�涓嶆槸鏈�楂樼骇,鍚﹀垯鎰忓懗鐫�鏄渶楂樼骇 + // 鑾峰彇鐖剁骇ID + String parentId = BaseFactory.getParentId(); + JSONObject formData = new JSONObject(); + formData.put("parentId",parentId); + String[] codeArray = (String[]) FillRuleUtil.executeRule(FillRuleConstant.WORKSHOP,formData); + BaseFactory.setOrgCode(codeArray[0]); + String orgType = codeArray[1]; + BaseFactory.setOrgType(String.valueOf(orgType)); + BaseFactory.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); + this.save(BaseFactory); + } + } + + @Override + public List<WorkShopIdModel> queryProductionIdTreeList() { + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>(); + query.eq(BaseFactory::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + query.orderByAsc(BaseFactory::getSorter); + List<BaseFactory> list = this.list(query); + //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 + return FindsBaseFactorysChildrenUtil.wrapTreeDataToProductionIdTreeList(list); + } + + + /** + * updateProductionDataById 瀵瑰簲 edit 鏍规嵁璁惧杞﹂棿绠$悊涓婚敭鏉ユ洿鏂板搴旂殑璁惧杞﹂棿绠$悊鏁版嵁 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean updateBaseFactoryDataById(BaseFactory BaseFactory) { + if (BaseFactory != null) { + this.updateById(BaseFactory); + return true; + } + return false; + } + + /** + * 鏍规嵁璁惧杞﹂棿绠$悊id鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾ц澶囪溅闂寸鐞� + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean delete(String id) { + List<String> idList = new ArrayList<>(); + idList.add(id); + this.checkChildrenExists(id, idList); + boolean result = this.removeByIds(idList); + //鏍规嵁璁惧杞﹂棿绠$悊id鍒犻櫎鐢ㄦ埛涓庤澶囪溅闂寸鐞嗗叧绯� + BaseFactoryUserMapper.delete(new LambdaQueryWrapper<BaseFactoryUser>().in(BaseFactoryUser::getFactoryId, idList)); + return result; + } + + /** + * 鏍规嵁璁惧杞﹂棿绠$悊id鎵归噺鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾ц澶囪溅闂寸鐞� + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteBatchWithChildren(List<String> ids) { + List<String> idList = new ArrayList<>(); + for (String id : ids) { + idList.add(id); + this.checkChildrenExists(id, idList); + } + this.removeByIds(idList); + //鏍规嵁璁惧杞﹂棿绠$悊id鍒犻櫎鐢ㄦ埛涓庤澶囪溅闂寸鐞嗗叧绯� + BaseFactoryUserMapper.delete(new LambdaQueryWrapper<BaseFactoryUser>().in(BaseFactoryUser::getFactoryId, idList)); + } + + /** + * 閫氳繃璁惧杞﹂棿绠$悊闆嗗悎涓鸿澶囪溅闂寸鐞嗚缃敤鎴穒d锛岀敤浜庡墠鍙板睍绀� + */ + private void setUserIdsByProList(List<BaseFactory> productionList) { + //鏌ヨ璐熻矗閮ㄩ棬涓嶄负绌虹殑鎯呭喌 + LambdaQueryWrapper<SysUser> query = new LambdaQueryWrapper<>(); + query.isNotNull(SysUser::getDepartIds); + List<SysUser> users = sysUserMapper.selectList(query); + Map<String, Object> map = new HashMap(5); + //鍏堝惊鐜竴閬嶆壘鍒颁笉鍚岀殑璐熻矗璁惧杞﹂棿绠$悊id + for (SysUser user : users) { + String productionIds = user.getProductionIds(); + if (StringUtils.isNotBlank(productionIds)) { + String[] productionIdArray = productionIds.split(","); + for (String productionId : productionIdArray) { + if (map.containsKey(productionId)) { + String userIds = map.get(productionId) + "," + user.getId(); + map.put(productionId, userIds); + } else { + map.put(productionId, user.getId()); + } + } + } + } + } + + /** + * delete 鏂规硶璋冪敤 閫掑綊鏌ユ壘瀛愰泦id + */ + private void checkChildrenExists(String id, List<String> idList) { + LambdaQueryWrapper<BaseFactory> query = new LambdaQueryWrapper<>(); + query.eq(BaseFactory::getParentId, id); + List<BaseFactory> BaseFactoryList = this.list(query); + if (BaseFactoryList != null && !BaseFactoryList.isEmpty()) { + for (BaseFactory BaseFactory : BaseFactoryList) { + idList.add(BaseFactory.getId()); + this.checkChildrenExists(BaseFactory.getId(), idList); + } + } + } +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java new file mode 100644 index 0000000..9f300b2 --- /dev/null +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java @@ -0,0 +1,19 @@ +package org.jeecg.modules.eam.base.service.impl; + +import org.jeecg.modules.eam.base.entity.BaseFactoryUser; +import org.jeecg.modules.eam.base.mapper.BaseFactoryUserMapper; +import org.jeecg.modules.eam.base.service.IBaseFactoryUserService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 璁惧杞﹂棿绠$悊涓庣敤鎴� + * @Author: jeecg-boot + * @Date: 2025-06-30 + * @Version: V1.0 + */ +@Service +public class BaseFactoryUserServiceImpl extends ServiceImpl<BaseFactoryUserMapper, BaseFactoryUser> implements IBaseFactoryUserService { + +} diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java index e6eba38..1ea2fdb 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java @@ -69,7 +69,7 @@ * @param workShopDepartId 璁惧杞﹂棿绠$悊Id * @return */ - IPage<SysUser> getUserByWorkShopDepartId(Page page, @Param("workShopDepartId") String workShopDepartId); + IPage<SysUser> getUserByWorkShopDepartId(Page page, @Param("workShopDepartId") String workShopDepartId, @Param("username") String username); /** * 鏍规嵁鐢ㄦ埛鍚嶈缃儴闂↖D diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml index 4a9892b..9a75b55 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml @@ -232,5 +232,8 @@ </select> <select id="getUserByWorkShopDepartId" resultType="org.jeecg.modules.system.entity.SysUser"> select * from sys_user where del_flag = 0 and id in (select user_id from mom_eam_work_shop_depart_user where work_shop_depart_id = #{workShopDepartId}) + <if test="username!=null and username!=''"> + and username = #{username} + </if> </select> </mapper> diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java index 4ff2058..054f458 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java @@ -170,7 +170,7 @@ * @param workShopDepartId 璁惧杞﹂棿绠$悊Id * @return */ - public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId); + public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId,String username); /** diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 83f4b47..3540c10 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -365,8 +365,8 @@ * @param workShopDepartId 璁惧杞﹂棿绠$悊Id * @return */ - public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId){ - return userMapper.getUserByWorkShopDepartId(page,workShopDepartId); + public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId,String username){ + return userMapper.getUserByWorkShopDepartId(page,workShopDepartId,username); } -- Gitblit v1.9.3