“linengliang”
2023-12-13 ae33e68baf21878ce145d75ac377d14c1e2b2a82
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/AreaController.java
@@ -1,16 +1,27 @@
package org.jeecg.modules.eam.controller;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.apache.poi.hssf.record.DVALRecord;
import org.jeecg.common.api.vo.CommonGenericTree;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.modules.eam.entity.Area;
import org.jeecg.modules.eam.entity.FaultCause;
import org.jeecg.modules.eam.entity.Team;
import org.jeecg.modules.eam.service.IAreaService;
import org.jeecg.modules.eam.service.ITeamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.ParameterResolutionDelegate;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -30,10 +41,14 @@
@Api(tags = "车间 前端控制器")
@RestController
@RequestMapping("/base/area")
public class AreaController {
public class AreaController extends JeecgController<Area,IAreaService> {
   @Autowired
   private IAreaService areaService;
   @Autowired
   private ITeamService teamService;
   @AutoLog(value = "车间-分页查询")
   @ApiOperation(value = "车间-分页查询", notes = "车间-分页查询")
@@ -43,6 +58,22 @@
      QueryWrapper<Area> queryWrapper = QueryGenerator.initQueryWrapper(area, req.getParameterMap());
      Page<Area> page = new Page<Area>(pageNo, pageSize);
      IPage<Area> pageList = areaService.page(page, queryWrapper);
      for (Area record : pageList.getRecords()) {
         String teamNames ="";
         String teamIds = record.getTeamId();
         if(StringUtils.isNotBlank(teamIds)){
            List<String> ids = Arrays.asList(teamIds.split(","));
            for (int i = 0; i < ids.size(); i++) {
               Team team = teamService.getById(ids.get(i));
               String name = team.getName();
               teamNames +=name;
               if(i != ids.size()-1){
                  teamNames += ",";
               }
            }
         }
         record.setTeamNames(teamNames);
      }
      return Result.ok(pageList);
   }
@@ -50,6 +81,18 @@
   @ApiOperation(value = "车间-新增", notes = "车间-新增")
   @PostMapping("/add")
   public Result<?> add(@RequestBody Area area) {
      String parentId = area.getParentId();
      if("-1".equals(parentId)){
         area.setType("1");
      }else{
         Area nextArea = areaService.getById(parentId);
         String type = nextArea.getType();
         if("1".equals(type)){
            area.setType("2");
         }else{
            area.setType("3");
         }
      }
      area.setStatus(CommonConstant.STATUS_1);
      areaService.save(area);
      return Result.ok("新增成功");
@@ -93,4 +136,46 @@
      return Result.ok("更新成功!");
   }
   @GetMapping(value = "/getAlllist")
   public Result<?> getAlllist(Area area, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                    @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
//      QueryWrapper<Area> queryWrapper = QueryGenerator.initQueryWrapper(area, req.getParameterMap());
      QueryWrapper<Area> queryWrapper = Wrappers.query();
      Page<Area> page = new Page<Area>(pageNo, pageSize);
      String num = area.getNum();
      String name = area.getName();
      String parentId = area.getParentId();
      if(StringUtils.isNotBlank(parentId)){
         queryWrapper.eq("parent_id", parentId);
      }else{
         queryWrapper.eq("parent_id", "-1");
      }
      if(StringUtils.isNotBlank(num)){
         queryWrapper.like("num", num);
      }
      if(StringUtils.isNotBlank(name)){
         queryWrapper.like("name", name);
      }
      IPage<Area> pageList = areaService.page(page, queryWrapper);
      List<Area> records = pageList.getRecords();
      for (Area record : records) {
         String id = record.getId();
         List<Area> areas = areaService.lambdaQuery().eq(Area::getParentId, id).eq(Area::getDelFlag, "0").list();
         record.setNextAreas(areas);
      }
      return Result.OK(pageList);
   }
   /**
    * @MethodName: loadTree
    * @Description: 故障原因 树
    */
   @GetMapping("/loadTree")
   public Result<?> loadTree(HttpServletRequest httpServletRequest) {
      List<CommonGenericTree> list = areaService.loadTree();
      return Result.ok(list);
   }
}