lxzn-boot-base-core/src/main/java/org/jeecg/config/Swagger2Config.java
@@ -103,6 +103,29 @@ .groupName("MDC"); } /** * swagger2çé ç½®æä»¶ï¼è¿éå¯ä»¥é ç½®swagger2çä¸äºåºæ¬çå å®¹ï¼æ¯å¦æ«æçå çç ï¼MDCï¼ * * @return Docket */ @Bean(value = "defaultApi1") public Docket defaultApi1() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() //æ¤å è·¯å¾ä¸çç±»ï¼æçææ¥å£ææ¡£ .apis(RequestHandlerSelectors.basePackage("org.jeecg.modules.eam")) //å äºApiOperation注解çç±»ï¼æçææ¥å£ææ¡£ .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class)) .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) .paths(PathSelectors.any()) .build() .securitySchemes(Collections.singletonList(securityScheme())) .securityContexts(securityContexts()) .globalOperationParameters(setHeaderToken()) .groupName("EAM"); } /*** * oauth2é ç½® * éè¦å¢å swaggerææåè°å°å lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/WorkShopDepartController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,231 @@ package org.jeecg.modules.eam.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.entity.WorkShopDepart; import org.jeecg.modules.eam.model.EamWorkShopDepartTreeModel; import org.jeecg.modules.eam.model.WorkShopIdModel; import org.jeecg.modules.eam.service.IWorkShopDepartService; 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.cache.annotation.CacheEvict; 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/workShopDepart") @Slf4j public class WorkShopDepartController extends JeecgController<WorkShopDepart, IWorkShopDepartService> { @Autowired private IWorkShopDepartService workShopDepartService; /** * å页å表æ¥è¯¢ * * @param workShopDepart * @param pageNo * @param pageSize * @param req * @return */ //@AutoLog(value = "设å¤è½¦é´ç®¡ç-å页å表æ¥è¯¢") @ApiOperation(value="设å¤è½¦é´ç®¡ç-å页å表æ¥è¯¢", notes="设å¤è½¦é´ç®¡ç-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<IPage<WorkShopDepart>> queryPageList(WorkShopDepart workShopDepart, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper<WorkShopDepart> queryWrapper = QueryGenerator.initQueryWrapper(workShopDepart, req.getParameterMap()); Page<WorkShopDepart> page = new Page<WorkShopDepart>(pageNo, pageSize); IPage<WorkShopDepart> pageList = workShopDepartService.page(page, queryWrapper); return Result.OK(pageList); } @AutoLog(value = "设å¤è½¦é´ç®¡ç-æ å½¢å表") @ApiOperation(value = "设å¤è½¦é´ç®¡ç-æ å½¢å表", notes = "设å¤è½¦é´ç®¡ç-æ å½¢å表") @GetMapping(value = "/queryTreeList") public Result<List<EamWorkShopDepartTreeModel>> queryTreeList(@RequestParam(name = "ids", required = false) String ids) { Result<List<EamWorkShopDepartTreeModel>> result = new Result<>(); try { if (oConvertUtils.isNotEmpty(ids)) { List<EamWorkShopDepartTreeModel> productionList = workShopDepartService.queryTreeList(ids); result.setResult(productionList); } else { List<EamWorkShopDepartTreeModel> list = workShopDepartService.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 = workShopDepartService.queryProductionIdTreeList(); result.setResult(list); result.setSuccess(true); } catch (Exception e) { log.error(e.getMessage(), e); } return result; } /** * æ·»å * * @param WorkShopDepart * @return */ @AutoLog(value = "设å¤è½¦é´ç®¡ç-æ·»å ") @ApiOperation(value = "设å¤è½¦é´ç®¡ç-æ·»å ", notes = "设å¤è½¦é´ç®¡ç-æ·»å ") @PostMapping(value = "/add") @CacheEvict(value = {"eam:cache:workShop:alldata", "eam:cache:workShop:allids"}, allEntries = true) public Result<WorkShopDepart> add(@RequestBody WorkShopDepart WorkShopDepart) { Result<WorkShopDepart> result = new Result<>(); try { workShopDepartService.saveWorkShopDepartData(WorkShopDepart); result.success("æ·»å æåï¼"); } catch (Exception e) { log.error(e.getMessage(), e); result.error500("æä½å¤±è´¥"); } return result; } /** * ç¼è¾ * * @param WorkShopDepart * @return */ @AutoLog(value = "设å¤è½¦é´ç®¡ç-ç¼è¾") @ApiOperation(value = "设å¤è½¦é´ç®¡ç-ç¼è¾", notes = "设å¤è½¦é´ç®¡ç-ç¼è¾") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) @CacheEvict(value = {"eam:cache:workShop:alldata", "eam:cache:workShop:allids"}, allEntries = true) public Result<WorkShopDepart> edit(@RequestBody WorkShopDepart WorkShopDepart) { Result<WorkShopDepart> result = new Result<>(); WorkShopDepart eamProductionEntity = workShopDepartService.getById(WorkShopDepart.getId()); if (eamProductionEntity == null) { result.error500("æªæ¾å°å¯¹åºå®ä½"); } else { boolean ok = workShopDepartService.updateWorkShopDepartDataById(WorkShopDepart); if (ok) { result.success("ä¿®æ¹æå!"); } } return result; } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "设å¤è½¦é´ç®¡ç-éè¿idå é¤") @ApiOperation(value = "设å¤è½¦é´ç®¡ç-éè¿idå é¤", notes = "设å¤è½¦é´ç®¡ç-éè¿idå é¤") @DeleteMapping(value = "/delete") @CacheEvict(value = {"eam:cache:workShop:alldata", "eam:cache:workShop:allids"}, allEntries = true) public Result<WorkShopDepart> delete(@RequestParam(name = "id", required = true) String id) { Result<WorkShopDepart> result = new Result<>(); WorkShopDepart WorkShopDepart = workShopDepartService.getById(id); if (WorkShopDepart == null) { result.error500("æªæ¾å°å¯¹åºå®ä½"); } else { boolean ok = workShopDepartService.delete(id); if (ok) { result.success("å 餿å!"); } } return result; } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "设å¤è½¦é´ç®¡ç-æ¹éå é¤") @ApiOperation(value = "设å¤è½¦é´ç®¡ç-æ¹éå é¤", notes = "设å¤è½¦é´ç®¡ç-æ¹éå é¤") @DeleteMapping(value = "/deleteBatch") @CacheEvict(value = {"eam:cache:workShop:alldata", "eam:cache:workShop:allids"}, allEntries = true) public Result<WorkShopDepart> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { Result<WorkShopDepart> result = new Result<>(); if (ids == null || "".equals(ids.trim())) { result.error500("åæ°ä¸è¯å«ï¼"); } else { this.workShopDepartService.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<WorkShopDepart> queryById(@RequestParam(name="id",required=true) String id) { WorkShopDepart workShopDepart = workShopDepartService.getById(id); if(workShopDepart==null) { return Result.error("æªæ¾å°å¯¹åºæ°æ®"); } return Result.OK(workShopDepart); } /** * 导åºexcel * * @param request * @param workShopDepart */ //@RequiresPermissions("org.jeecg.modules.eam:sys_work_shop_depart:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, WorkShopDepart workShopDepart) { return super.exportXls(request, workShopDepart, WorkShopDepart.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, WorkShopDepart.class); } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/WorkShopDepartUserController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,193 @@ package org.jeecg.modules.eam.controller; 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; 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.entity.WorkShopDepartUser; import org.jeecg.modules.eam.service.IWorkShopDepartUserService; 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.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; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import com.alibaba.fastjson.JSON; 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/workShopDepartUser") @Slf4j public class WorkShopDepartUserController extends JeecgController<WorkShopDepartUser, IWorkShopDepartUserService> { @Autowired private IWorkShopDepartUserService workShopDepartUserService; @Autowired private ISysUserService sysUserService; /** * å页å表æ¥è¯¢ * * @param workShopDepartUser * @param pageNo * @param pageSize * @param req * @return */ //@AutoLog(value = "设å¤è½¦é´ç®¡çä¸ç¨æ·-å页å表æ¥è¯¢") @ApiOperation(value="设å¤è½¦é´ç®¡çä¸ç¨æ·-å页å表æ¥è¯¢", notes="设å¤è½¦é´ç®¡çä¸ç¨æ·-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<IPage<WorkShopDepartUser>> queryPageList(WorkShopDepartUser workShopDepartUser, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper<WorkShopDepartUser> queryWrapper = QueryGenerator.initQueryWrapper(workShopDepartUser, req.getParameterMap()); Page<WorkShopDepartUser> page = new Page<WorkShopDepartUser>(pageNo, pageSize); IPage<WorkShopDepartUser> pageList = workShopDepartUserService.page(page, queryWrapper); return Result.OK(pageList); } @RequestMapping(value = "/workShopDepartUserList", 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 workShopDepartId = req.getParameter("workShopDepartId"); IPage<SysUser> pageList = sysUserService.getUserByworkShopDepartId(page, workShopDepartId); result.setSuccess(true); result.setResult(pageList); return result; } /** * æ·»å * * @param workShopDepartUser * @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 WorkShopDepartUser workShopDepartUser) { workShopDepartUserService.save(workShopDepartUser); return Result.OK("æ·»å æåï¼"); } /** * ç¼è¾ * * @param workShopDepartUser * @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 WorkShopDepartUser workShopDepartUser) { workShopDepartUserService.updateById(workShopDepartUser); 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(@RequestParam(name="id",required=true) String id) { workShopDepartUserService.removeById(id); 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(@RequestParam(name="ids",required=true) String ids) { this.workShopDepartUserService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("æ¹éå 餿å!"); } /** * éè¿idæ¥è¯¢ * * @param id * @return */ //@AutoLog(value = "设å¤è½¦é´ç®¡çä¸ç¨æ·-éè¿idæ¥è¯¢") @ApiOperation(value="设å¤è½¦é´ç®¡çä¸ç¨æ·-éè¿idæ¥è¯¢", notes="设å¤è½¦é´ç®¡çä¸ç¨æ·-éè¿idæ¥è¯¢") @GetMapping(value = "/queryById") public Result<WorkShopDepartUser> queryById(@RequestParam(name="id",required=true) String id) { WorkShopDepartUser workShopDepartUser = workShopDepartUserService.getById(id); if(workShopDepartUser==null) { return Result.error("æªæ¾å°å¯¹åºæ°æ®"); } return Result.OK(workShopDepartUser); } /** * 导åºexcel * * @param request * @param workShopDepartUser */ //@RequiresPermissions("org.jeecg.modules.mdc:sys_work_shop_depart_user:exportXls") @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, WorkShopDepartUser workShopDepartUser) { return super.exportXls(request, workShopDepartUser, WorkShopDepartUser.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, WorkShopDepartUser.class); } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/WorkShopDepart.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,113 @@ 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.*; 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("mom_eam_work_shop_depart") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) @ApiModel(value="mom_eam_work_shop_depart", description="设å¤è½¦é´ç®¡ç") public class WorkShopDepart 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 workShopName; /**è±æåç§°*/ @Excel(name = "è±æåç§°", width = 15) @ApiModelProperty(value = "è±æåç§°") private String workShopNameEn; /**æåº*/ @Excel(name = "æåº", width = 15) @ApiModelProperty(value = "æåº") private Integer workShopOrder; /**æè¿°*/ @Excel(name = "æè¿°", width = 15) @ApiModelProperty(value = "æè¿°") private String description; /**æºæç±»å« 0 å ¬å¸ 1.ä¸å¿2.å·¥åº3.工段*/ @Excel(name = "æºæç±»å« 0 å ¬å¸ 1.ä¸å¿2.å·¥åº3.工段", width = 15) @ApiModelProperty(value = "æºæç±»å«1.ä¸å¿2.å·¥åº3.工段") private String orgCategory; /**æºæç±»å 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 workShopCode; /**å°å*/ @Excel(name = "å°å", width = 15) @ApiModelProperty(value = "å°å") private String address; /**夿³¨*/ @Excel(name = "夿³¨", width = 20) @ApiModelProperty(value = "夿³¨") private String memo; /**ç¶æï¼1å¯ç¨ï¼0ä¸å¯ç¨ï¼*/ @Excel(name = "ç¶æï¼1å¯ç¨ï¼0ä¸å¯ç¨ï¼", width = 15) @ApiModelProperty(value = "ç¶æï¼1å¯ç¨ï¼0ä¸å¯ç¨ï¼") private String status; /**å é¤ç¶æï¼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; /**æå±é¨é¨*/ @ApiModelProperty(value = "æå±é¨é¨") private String sysOrgCode; /**é¨é¨è´è´£äººçids*/ @TableField(exist = false) private String directorUserIds; } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/WorkShopDepartUser.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,47 @@ 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.EqualsAndHashCode; import lombok.experimental.Accessors; /** * @Description: 设å¤è½¦é´ç®¡çä¸ç¨æ· * @Author: jeecg-boot * @Date: 2025-06-30 * @Version: V1.0 */ @Data @TableName("mom_eam_work_shop_depart_user") @Accessors(chain = true) @EqualsAndHashCode(callSuper = false) @ApiModel(value="sys_work_shop_depart_user对象", description="设å¤è½¦é´ç®¡çä¸ç¨æ·") public class WorkShopDepartUser 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 workShopDepartId; /**ç¨æ·id*/ @Excel(name = "ç¨æ·id", width = 15) @ApiModelProperty(value = "ç¨æ·id") private String userId; } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/WorkShopDepartMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ package org.jeecg.modules.eam.mapper; import java.util.List; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.eam.entity.WorkShopDepart; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: 设å¤è½¦é´ç®¡ç * @Author: jeecg-boot * @Date: 2025-06-30 * @Version: V1.0 */ public interface WorkShopDepartMapper extends BaseMapper<WorkShopDepart> { } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/WorkShopDepartUserMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,17 @@ package org.jeecg.modules.eam.mapper; import java.util.List; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.eam.entity.WorkShopDepartUser; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @Description: 设å¤è½¦é´ç®¡çä¸ç¨æ· * @Author: jeecg-boot * @Date: 2025-06-30 * @Version: V1.0 */ public interface WorkShopDepartUserMapper extends BaseMapper<WorkShopDepartUser> { } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/WorkShopDepartMapper.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.mapper.WorkShopDepartMapper"> </mapper> lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/WorkShopDepartUserMapper.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.mapper.WorkShopDepartUserMapper"> </mapper> lxzn-module-eam/src/main/java/org/jeecg/modules/eam/model/EamWorkShopDepartTreeModel.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,122 @@ package org.jeecg.modules.eam.model; import io.swagger.annotations.ApiModel; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.modules.eam.entity.WorkShopDepart; 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 EamWorkShopDepartTreeModel implements Serializable { private static final long serialVersionUID = -1309711609760828658L; /** * 对åºworkShopDepartä¸çidåæ®µ,åç«¯æ°æ®æ ä¸çkey */ private String key; /** * 对åºworkShopDepartä¸çidåæ®µ,åç«¯æ°æ®æ ä¸çvalue */ private String value; /** * 对åºdepart_nameåæ®µ,åç«¯æ°æ®æ ä¸çtitle */ private String title; private boolean isLeaf; /** * ç±»å */ private Integer type; //以䏿æå段åä¸workShopDepartç¸å private String id; private String parentId; private String productionName; private String productionNameAbbr; private Integer productionOrder; private String description; private String orgType; private String orgCode; private String productionCode; private String address; private String memo; private String status; private String delFlag; private String createBy; private Date createTime; private String updateBy; private Date updateTime; private String mdcFlag; /** * 产线è´è´£äººids */ private String directorUserIds; private List<EamWorkShopDepartTreeModel> children = new ArrayList<>(); public EamWorkShopDepartTreeModel() { } /** * å°workShopDepartå¯¹è±¡è½¬æ¢æEamWorkShopDepartTreeModel对象 * * @param workShopDepart */ public EamWorkShopDepartTreeModel(WorkShopDepart workShopDepart) { this.key = workShopDepart.getId(); this.value = workShopDepart.getId(); this.title = workShopDepart.getWorkShopName(); this.id = workShopDepart.getId(); this.parentId = workShopDepart.getParentId(); this.productionName = workShopDepart.getWorkShopName(); this.productionNameAbbr = workShopDepart.getWorkShopNameEn(); this.productionOrder = workShopDepart.getWorkShopOrder(); this.description = workShopDepart.getDescription(); this.orgType = workShopDepart.getOrgType(); this.orgCode = workShopDepart.getOrgCode(); this.productionCode = workShopDepart.getWorkShopCode(); this.address = workShopDepart.getAddress(); this.memo = workShopDepart.getMemo(); this.status = workShopDepart.getStatus(); this.delFlag = workShopDepart.getDelFlag(); this.createBy = workShopDepart.getCreateBy(); this.createTime = workShopDepart.getCreateTime(); this.updateBy = workShopDepart.getUpdateBy(); this.updateTime = workShopDepart.getUpdateTime(); } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/model/WorkShopIdModel.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,73 @@ package org.jeecg.modules.eam.model; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.modules.eam.entity.WorkShopDepart; import org.jeecg.modules.system.entity.MdcProduction; import org.jeecg.modules.system.model.MdcProductionTreeModel; 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<>(); /** * å°EamWorkShopDepartTreeModelçé¨åæ°æ®æ¾å¨è¯¥å¯¹è±¡å½ä¸ * * @param treeModel * @return */ public WorkShopIdModel convert(EamWorkShopDepartTreeModel treeModel) { this.key = treeModel.getId(); this.value = treeModel.getId(); this.title = treeModel.getProductionName(); return this; } /** * è¯¥æ¹æ³ä¸ºç¨æ·äº§çº¿çå®ç°ç±»æä½¿ç¨ * * @return */ public WorkShopIdModel convertByUserProduction(WorkShopDepart workShopDepart) { this.key = workShopDepart.getId(); this.value = workShopDepart.getId(); this.title = workShopDepart.getWorkShopName(); return this; } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IWorkShopDepartService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,60 @@ package org.jeecg.modules.eam.service; import org.jeecg.modules.eam.entity.WorkShopDepart; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.eam.model.EamWorkShopDepartTreeModel; import org.jeecg.modules.eam.model.WorkShopIdModel; import org.jeecg.modules.system.model.ProductionIdModel; import java.util.List; /** * @Description: 设å¤è½¦é´ç®¡ç * @Author: jeecg-boot * @Date: 2025-06-30 * @Version: V1.0 */ public interface IWorkShopDepartService extends IService<WorkShopDepart> { /** * æ¥è¯¢ææäº§çº¿ä¿¡æ¯ï¼å¹¶åèç¹è¿è¡æ¾ç¤º */ List<EamWorkShopDepartTreeModel> queryTreeList(); /** * æ¥è¯¢ææäº§çº¿ä¿¡æ¯ï¼å¹¶åèç¹è¿è¡æ¾ç¤º */ List<EamWorkShopDepartTreeModel> queryTreeList(String ids); /** * æ ¹æ®å ³é®åæç´¢ç¸å ³çäº§çº¿æ°æ® */ List<EamWorkShopDepartTreeModel> searchByKeyWord(String keyWord); /** * ä¿åäº§çº¿æ°æ® */ void saveWorkShopDepartData(WorkShopDepart workShopDepart); /** * æ¥è¯¢ææé¨é¨DepartIdä¿¡æ¯,å¹¶åèç¹è¿è¡æ¾ç¤º */ List<WorkShopIdModel> queryProductionIdTreeList(); /** * æ´æ°äº§çº¿æ°æ® */ boolean updateWorkShopDepartDataById(WorkShopDepart workShopDepart); /** * æ ¹æ®äº§çº¿idå é¤å¹¶å é¤å ¶å¯è½åå¨çå级产线 */ boolean delete(String id); /** * æ ¹æ®äº§çº¿idæ¹éå é¤å¹¶å é¤å ¶å¯è½åå¨çå级产线 */ void deleteBatchWithChildren(List<String> ids); } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IWorkShopDepartUserService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package org.jeecg.modules.eam.service; import org.jeecg.modules.eam.entity.WorkShopDepartUser; import com.baomidou.mybatisplus.extension.service.IService; /** * @Description: 设å¤è½¦é´ç®¡çä¸ç¨æ· * @Author: jeecg-boot * @Date: 2025-06-30 * @Version: V1.0 */ public interface IWorkShopDepartUserService extends IService<WorkShopDepartUser> { } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/WorkShopDepartServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,230 @@ package org.jeecg.modules.eam.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.entity.WorkShopDepart; import org.jeecg.modules.eam.entity.WorkShopDepartUser; import org.jeecg.modules.eam.mapper.WorkShopDepartMapper; import org.jeecg.modules.eam.mapper.WorkShopDepartUserMapper; import org.jeecg.modules.eam.model.EamWorkShopDepartTreeModel; import org.jeecg.modules.eam.model.WorkShopIdModel; import org.jeecg.modules.eam.service.IWorkShopDepartService; import org.jeecg.modules.eam.util.FindsWorkShopDepartsChildrenUtil; import org.jeecg.modules.system.entity.SysUser; import org.jeecg.modules.system.mapper.SysUserMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.Cacheable; 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 public class WorkShopDepartServiceImpl extends ServiceImpl<WorkShopDepartMapper, WorkShopDepart> implements IWorkShopDepartService { @Autowired private SysUserMapper sysUserMapper; @Autowired private WorkShopDepartUserMapper workShopDepartUserMapper; /** * queryTreeList å¯¹åº queryTreeList æ¥è¯¢ææç设å¤è½¦é´ç®¡çæ°æ®,以æ ç»æå½¢å¼ååºç»å端 */ @Override public List<EamWorkShopDepartTreeModel> queryTreeList() { LambdaQueryWrapper<WorkShopDepart> query = new LambdaQueryWrapper<WorkShopDepart>(); query.eq(WorkShopDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); query.orderByAsc(WorkShopDepart::getWorkShopOrder); List<WorkShopDepart> list = this.list(query); //è®¾ç½®ç¨æ·idï¼è®©åå°æ¾ç¤º this.setUserIdsByProList(list); //è°ç¨wrapTreeDataToTreeListæ¹æ³çææ ç¶æ°æ® return FindsWorkShopDepartsChildrenUtil.wrapTreeDataToTreeList(list); } /** * queryTreeList æ ¹æ®è®¾å¤è½¦é´ç®¡çidæ¥è¯¢,åç«¯åæ¾è°ç¨ */ @Override public List<EamWorkShopDepartTreeModel> queryTreeList(String ids) { List<EamWorkShopDepartTreeModel> listResult = new ArrayList<>(); LambdaQueryWrapper<WorkShopDepart> query = new LambdaQueryWrapper<WorkShopDepart>(); query.eq(WorkShopDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); if (oConvertUtils.isNotEmpty(ids)) { query.in(true, WorkShopDepart::getId, ids.split(",")); } query.orderByAsc(WorkShopDepart::getWorkShopOrder); List<WorkShopDepart> list = this.list(query); for (WorkShopDepart production : list) { if (production.getDescription().isEmpty()){ production.setDescription(""); } listResult.add(new EamWorkShopDepartTreeModel(production)); } return listResult; } /** * æ ¹æ®å ³é®åæç´¢ç¸å ³çé¨é¨æ°æ® */ @Override public List<EamWorkShopDepartTreeModel> searchByKeyWord(String keyWord) { LambdaQueryWrapper<WorkShopDepart> query = new LambdaQueryWrapper<>(); List<EamWorkShopDepartTreeModel> newList = new ArrayList<>(); query.like(WorkShopDepart::getWorkShopName, keyWord); EamWorkShopDepartTreeModel model = new EamWorkShopDepartTreeModel(); List<WorkShopDepart> productionList = this.list(query); if (!productionList.isEmpty()) { for (WorkShopDepart WorkShopDepart : productionList) { model = new EamWorkShopDepartTreeModel(WorkShopDepart); model.setChildren(null); newList.add(model); } return newList; } return Collections.emptyList(); } /** * saveProductionData å¯¹åº add ä¿åç¨æ·å¨é¡µé¢æ·»å çæ°ç设å¤è½¦é´ç®¡çå¯¹è±¡æ°æ® */ @Override @Transactional(rollbackFor = Exception.class) public void saveWorkShopDepartData(WorkShopDepart WorkShopDepart) { if (WorkShopDepart != null) { if (WorkShopDepart.getParentId() == null) { WorkShopDepart.setParentId(""); } WorkShopDepart.setId(IdWorker.getIdStr(WorkShopDepart)); // å å¤æè¯¥å¯¹è±¡ææ ç¶çº§ID,æåæå³ç䏿¯æé«çº§,å¦åæå³çæ¯æé«çº§ // è·åç¶çº§ID String parentId = WorkShopDepart.getParentId(); JSONObject formData = new JSONObject(); formData.put("parentId",parentId); String[] codeArray = (String[]) FillRuleUtil.executeRule(FillRuleConstant.PRODUCTION,formData); WorkShopDepart.setOrgCode(codeArray[0]); String orgType = codeArray[1]; WorkShopDepart.setOrgType(String.valueOf(orgType)); WorkShopDepart.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); this.save(WorkShopDepart); } } @Override @Cacheable(value = "eam:cache:workshop:allids") public List<WorkShopIdModel> queryProductionIdTreeList() { LambdaQueryWrapper<WorkShopDepart> query = new LambdaQueryWrapper<>(); query.eq(WorkShopDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); query.orderByAsc(WorkShopDepart::getWorkShopOrder); List<WorkShopDepart> list = this.list(query); //è°ç¨wrapTreeDataToTreeListæ¹æ³çææ ç¶æ°æ® return FindsWorkShopDepartsChildrenUtil.wrapTreeDataToProductionIdTreeList(list); } /** * updateProductionDataById å¯¹åº edit æ ¹æ®è®¾å¤è½¦é´ç®¡ç䏻鮿¥æ´æ°å¯¹åºç设å¤è½¦é´ç®¡çæ°æ® */ @Override @Transactional(rollbackFor = Exception.class) public boolean updateWorkShopDepartDataById(WorkShopDepart WorkShopDepart) { if (WorkShopDepart != null) { this.updateById(WorkShopDepart); 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å é¤ç¨æ·ä¸è®¾å¤è½¦é´ç®¡çå ³ç³» workShopDepartUserMapper.delete(new LambdaQueryWrapper<WorkShopDepartUser>().in(WorkShopDepartUser::getWorkShopDepartId, 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å é¤ç¨æ·ä¸è®¾å¤è½¦é´ç®¡çå ³ç³» workShopDepartUserMapper.delete(new LambdaQueryWrapper<WorkShopDepartUser>().in(WorkShopDepartUser::getWorkShopDepartId, idList)); } /** * éè¿è®¾å¤è½¦é´ç®¡çéå为设å¤è½¦é´ç®¡çè®¾ç½®ç¨æ·idï¼ç¨äºåå°å±ç¤º */ private void setUserIdsByProList(List<WorkShopDepart> 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()); } } } } //循ç¯è®¾å¤è½¦é´ç®¡çéåæ¾å°è®¾å¤è½¦é´ç®¡çid对åºçè´è´£ç¨æ· for (WorkShopDepart WorkShopDepart : productionList) { if (map.containsKey(WorkShopDepart.getId())) { WorkShopDepart.setDirectorUserIds(map.get(WorkShopDepart.getId()).toString()); } } } /** * delete æ¹æ³è°ç¨ é彿¥æ¾åéid */ private void checkChildrenExists(String id, List<String> idList) { LambdaQueryWrapper<WorkShopDepart> query = new LambdaQueryWrapper<>(); query.eq(WorkShopDepart::getParentId, id); List<WorkShopDepart> workShopDepartList = this.list(query); if (workShopDepartList != null && !workShopDepartList.isEmpty()) { for (WorkShopDepart workShopDepart : workShopDepartList) { idList.add(workShopDepart.getId()); this.checkChildrenExists(workShopDepart.getId(), idList); } } } } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/WorkShopDepartUserServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ package org.jeecg.modules.eam.service.impl; import org.jeecg.modules.eam.entity.WorkShopDepartUser; import org.jeecg.modules.eam.mapper.WorkShopDepartUserMapper; import org.jeecg.modules.eam.service.IWorkShopDepartUserService; 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 WorkShopDepartUserServiceImpl extends ServiceImpl<WorkShopDepartUserMapper, WorkShopDepartUser> implements IWorkShopDepartUserService { } lxzn-module-eam/src/main/java/org/jeecg/modules/eam/util/FindsWorkShopDepartsChildrenUtil.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,108 @@ package org.jeecg.modules.eam.util; import cn.hutool.core.util.StrUtil; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.eam.entity.WorkShopDepart; import org.jeecg.modules.eam.model.EamWorkShopDepartTreeModel; import org.jeecg.modules.eam.model.WorkShopIdModel; import java.util.ArrayList; import java.util.List; /** * 对åºäº§çº¿ç表ï¼å¤çå¹¶æ¥æ¾æ ç»ææ°æ® * * @author: LiuS * @create: 2023-03-23 14:46 */ public class FindsWorkShopDepartsChildrenUtil { /** * queryTreeListçåæ¹æ³ ====1===== * è¯¥æ¹æ³æ¯så°WorkShopDepartç±»åçlistéåè½¬æ¢æEamWorkShopDepartTreeModelç±»åçéå */ public static List<EamWorkShopDepartTreeModel> wrapTreeDataToTreeList(List<WorkShopDepart> recordList) { List<WorkShopIdModel> idList = new ArrayList<>(); List<EamWorkShopDepartTreeModel> records = new ArrayList<>(); for (int i = 0; i < recordList.size(); i++) { WorkShopDepart WorkShopDepart = recordList.get(i); if (StrUtil.isEmpty(WorkShopDepart.getDescription())){ WorkShopDepart.setDescription(""); } records.add(new EamWorkShopDepartTreeModel(WorkShopDepart)); } List<EamWorkShopDepartTreeModel> tree = findChildren(records, idList); setEmptyChildrenAsNull(tree); return tree; } /** * queryTreeListçåæ¹æ³ ====1===== * è¯¥æ¹æ³æ¯æ¾å°å¹¶å°è£ 顶级ç¶ç±»çèç¹å°TreeListéå */ public static List<EamWorkShopDepartTreeModel> findChildren(List<EamWorkShopDepartTreeModel> recordList, List<WorkShopIdModel> workShopIdModelList) { List<EamWorkShopDepartTreeModel> treeList = new ArrayList<>(); for (int i = 0; i < recordList.size(); i++) { EamWorkShopDepartTreeModel 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<EamWorkShopDepartTreeModel> treeList, List<EamWorkShopDepartTreeModel> recordList, List<WorkShopIdModel> idList) { for (int i = 0; i < treeList.size(); i++) { EamWorkShopDepartTreeModel model = treeList.get(i); WorkShopIdModel idModel = idList.get(i); for (int i1 = 0; i1 < recordList.size(); i1++) { EamWorkShopDepartTreeModel 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==== * è¯¥æ¹æ³æ¯å°åèç¹ä¸ºç©ºçListéå设置为Nullå¼ */ private static void setEmptyChildrenAsNull(List<EamWorkShopDepartTreeModel> treeList) { for (int i = 0; i < treeList.size(); i++) { EamWorkShopDepartTreeModel 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<WorkShopDepart> recordList) { List<WorkShopIdModel> idList = new ArrayList<>(); List<EamWorkShopDepartTreeModel> records = new ArrayList<>(); for (int i = 0; i < recordList.size(); i++) { WorkShopDepart WorkShopDepart = recordList.get(i); records.add(new EamWorkShopDepartTreeModel(WorkShopDepart)); } findChildren(records, idList); return idList; } } lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysUserMapper.java
@@ -62,22 +62,30 @@ * @return */ IPage<SysUser> getUserByRoleId(Page page, @Param("roleId") String roleId, @Param("username") String username); /** * æ ¹æ®è®¾å¤è½¦é´ç®¡çIdæ¥è¯¢ * @param page * @param workShopDepartId 设å¤è½¦é´ç®¡çId * @return */ IPage<SysUser> getUserByWorkShopDepartId(Page page, @Param("workShopDepartId") String workShopDepartId); /** * æ ¹æ®ç¨æ·å设置é¨é¨ID * @param username * @param orgCode */ void updateUserDepart(@Param("username") String username,@Param("orgCode") String orgCode); /** * æ ¹æ®ææºå·æ¥è¯¢ç¨æ·ä¿¡æ¯ * @param phone * @return */ public SysUser getUserByPhone(@Param("phone") String phone); /** * æ ¹æ®é®ç®±æ¥è¯¢ç¨æ·ä¿¡æ¯ * @param email @@ -150,7 +158,7 @@ */ @Deprecated int updateNullByEmptyString(@Param("fieldName") String fieldName); /** * æ ¹æ®é¨é¨Ids,æ¥è¯¢é¨é¨ä¸ç¨æ·ä¿¡æ¯ * @param departIds lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysUserMapper.xml
@@ -45,7 +45,7 @@ and username = #{username} </if> </select> <!-- ä¿®æ¹ç¨æ·é¨é¨code --> <update id="updateUserDepart"> UPDATE sys_user SET org_code = #{orgCode} where username = #{username} @@ -55,7 +55,7 @@ <select id="getUserByPhone" resultType="org.jeecg.modules.system.entity.SysUser"> select * from sys_user where phone = #{phone} and del_flag = 0 </select> <!-- æ ¹æ®é®ç®±æ¥è¯¢ç¨æ·ä¿¡æ¯ --> <select id="getUserByEmail" resultType="org.jeecg.modules.system.entity.SysUser"> select * from sys_user where email = #{email} and del_flag = 0 @@ -230,4 +230,7 @@ #{roleCode} </foreach> </select> </mapper> <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}) </select> </mapper> lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysUserService.java
@@ -66,15 +66,15 @@ * @return SysUser */ public SysUser getUserByName(String username); /** * æ·»å ç¨æ·åç¨æ·è§è²å ³ç³» * @param user * @param roles */ public void addUserWithRole(SysUser user,String roles); /** * ä¿®æ¹ç¨æ·åç¨æ·è§è²å ³ç³» * @param user @@ -97,7 +97,7 @@ * @return */ public SysRoleIndex getDynamicIndexByUserRole(String username,String version); /** * æ¥è¯¢ç¨æ·ä¿¡æ¯å æ¬ é¨é¨ä¿¡æ¯ * @param username @@ -162,6 +162,16 @@ */ public IPage<SysUser> getUserByRoleId(Page<SysUser> page,String roleId, String username); /** * æ ¹æ®è®¾å¤è½¦é´ç®¡çIdæ¥è¯¢ * @param page * @param workShopDepartId 设å¤è½¦é´ç®¡çId * @return */ public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId); /** * éè¿ç¨æ·åè·åç¨æ·è§è²éå * @@ -177,14 +187,14 @@ * @return æééå */ Set<String> getUserPermissionsSet(String username); /** * æ ¹æ®ç¨æ·å设置é¨é¨ID * @param username * @param orgCode */ void updateUserDepart(String username,String orgCode); /** * æ ¹æ®ææºå·è·åç¨æ·ååå¯ç * @param phone ææºå· @@ -214,7 +224,7 @@ * @param departs */ void editUserWithDepart(SysUser user, String departs); /** * æ ¡éªç¨æ·æ¯å¦ææ * @param sysUser lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
@@ -48,7 +48,7 @@ @Service @Slf4j public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements ISysUserService { @Autowired private SysUserMapper userMapper; @Autowired @@ -141,8 +141,8 @@ public SysUser getUserByName(String username) { return userMapper.getUserByName(username); } @Override @Transactional(rollbackFor = Exception.class) public void addUserWithRole(SysUser user, String roles) { @@ -203,7 +203,7 @@ roleIndex = list.get(0); } } //妿componentUrl为空ï¼åè¿å空 if(oConvertUtils.isEmpty(roleIndex.getComponent())){ return null; @@ -269,7 +269,7 @@ info.setSysUserName(sysUser.getRealname()); info.setSysOrgCode(sysUser.getOrgCode()); } //å¤é¨é¨æ¯æinæ¥è¯¢ List<SysDepart> list = sysDepartMapper.queryUserDeparts(sysUser.getId()); List<String> sysMultiOrgCode = new ArrayList<String>(); @@ -285,7 +285,7 @@ } } info.setSysMultiOrgCode(sysMultiOrgCode); return info; } @@ -357,6 +357,16 @@ return userMapper.getUserByRoleId(page,roleId,username); } /** * æ ¹æ®è®¾å¤è½¦é´ç®¡çIdæ¥è¯¢ * @param page * @param workShopDepartId 设å¤è½¦é´ç®¡çId * @return */ public IPage<SysUser> getUserByworkShopDepartId(Page<SysUser> page,String workShopDepartId){ return userMapper.getUserByWorkShopDepartId(page,workShopDepartId); } @Override @CacheEvict(value= {CacheConstant.SYS_USERS_CACHE}, key="#username")