package com.steerinfo.dil.controller; import com.steerinfo.dil.feign.ESFeign; import com.steerinfo.dil.mapper.CommonSeq; import com.steerinfo.dil.mapper.RmsLineMapper; import com.steerinfo.dil.model.RmsLine; import com.steerinfo.dil.model.RmsLineSegemnt; import com.steerinfo.dil.service.IRmsLineSegemntService; import com.steerinfo.dil.service.IRmsLineService; import com.steerinfo.dil.util.BaseRESTfulController; import com.steerinfo.dil.util.ColumnDataUtil; import com.steerinfo.dil.util.DataChange; import com.steerinfo.dil.util.PageListAdd; import com.steerinfo.framework.controller.RESTfulResult; import com.steerinfo.framework.service.pagehelper.PageHelper; import com.steerinfo.framework.service.pagehelper.PageList; import com.steerinfo.framework.utils.collection.ListUtils; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; /** * RmsLine RESTful接口: * @author generator * @version 1.0-SNAPSHORT 2021-11-23 07:22 * 类描述 * 修订历史: * 日期:2021-11-23 * 作者:generator * 参考: * 描述:RmsLine RESTful接口 * @see null * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved. */ @RestController @RequestMapping("/${api.version}/rmslines") public class RmsLineController extends BaseRESTfulController { @Autowired IRmsLineService rmsLineService; @Autowired CommonSeq commonSeq; @Autowired IRmsLineSegemntService rmsLineSegemntService; @Autowired RmsLineMapper rmsLineMapper; @Autowired ColumnDataUtil columnDataUtil; @Autowired ESFeign esFeign; @ApiOperation(value="查询所有线路", notes="分页查询") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"), @ApiImplicitParam(name = "apiId", value = "249", required = false, dataType = "BigDecimal"), }) @PostMapping(value = "/getAllLineDesk") public RESTfulResult getAllLineDesk(@RequestBody(required = false) Map mapValue, Integer pageNum, Integer pageSize, Integer apiId, String con){ if(con != null){ if(!"".equals(con)){ mapValue.put("index", con); } } List> list = rmsLineMapper.getAllLineDesk(mapValue); PageHelper.startPage(pageNum, pageSize); //分页查询数据 List> columnList = rmsLineMapper.getAllLineDesk(mapValue); PageListAdd data = columnDataUtil.tableColumnData(apiId,list,columnList); return success(data); } /** * @author huk * @return */ //新增运输路线 @ApiOperation(value="新增运输路线") @ApiImplicitParams({ @ApiImplicitParam(name = "mapValue", value = "运输路线", required = false, dataType = "Map"), }) @PostMapping("/insertSelective") @Transactional public RESTfulResult insertSelective(@RequestBody(required = false) Map mapVal){ // 创建运输路线主表实体 RmsLine rmsLine = new RmsLine(); //获取线路主表主键id int lineId = commonSeq.getId("seq_RMS_LINE"); //将获取到的运输路线主表id赋值给运输路线主表实体中 rmsLine.setLineId(new BigDecimal(lineId)); // 拿到前端传递的运输路线名称,并存放到运输路线主表实体中 rmsLine.setLineName((String) mapVal.get("line_name")); // 拿到前端传递的运输线路类型,并存放到运输路线主表实体中 rmsLine.setLineType((Integer) mapVal.get("line_type")); // 拿到前端传递的运输路线开始 List> linkList = (List>) mapVal.get("linkList"); Integer lineStartNodeId = (Integer) linkList.get(0).get("linkId"); //存放到运输路线主表实体中 rmsLine.setLineStartNodeId(new BigDecimal(lineStartNodeId)); // 拿到前端传递的运输路线结束 Integer lineEndNodeId = (Integer) linkList.get(linkList.size()-1).get("linkId"); //存放到运输路线主表实体中 rmsLine.setLineEndNodeId(new BigDecimal(lineEndNodeId)); //生成运输线路编号 String lineNo = DataChange.generateEightDigitsNumber("YSXL", lineId); //将运输线路存放进运输线路主表实体中 rmsLine.setLineNo(lineNo); //逻辑删除(0为未删除,1为删除) rmsLine.setDeleted(0); //拿到前端传递的拼数 Integer spellNumber = (Integer) mapVal.get("spellNumber"); //把拼数添加到运输路线主表实体中 rmsLine.setSpellNumber(spellNumber); //调用rmsLineService的新增方法 int i = rmsLineService.insertSelective(rmsLine); int i1 = 0; if(i == 1){ for (int j = 0;j 0){ return success(); } return failed(); } @ApiOperation(value = "根据主键查询出数据以供修改") @PostMapping("/getLinkToUpdate") public RESTfulResult getLinkToUpdate(@RequestParam Integer lineId) { Map map = rmsLineService.getRmsLine(new BigDecimal(lineId)); List> mapList = rmsLineSegemntService.getRmsLineSegemnt(new BigDecimal(lineId)); map.put("mapList",mapList); return success(map); } @ApiOperation(value = "修改运输线路信息") @PostMapping("/updateByPrimaryKeySelective") public RESTfulResult updateByPrimaryKeySelective(@RequestBody(required = false) Map mapVal) { RmsLine rmsLine = new RmsLine(); //拿到前端传递的运输线路主表id Integer lineId = (Integer) mapVal.get("lineId"); //将运输线路主表id添加到运输线路主表实体中 rmsLine.setLineId(new BigDecimal(lineId)); //拿到前端传递的运输线路名称 String lineName = (String) mapVal.get("line_name"); //将运输线路名称添加到运输线路主表实体中 rmsLine.setLineName(lineName); //拿到前端传递的运输线路类别 Integer lineType = (Integer) mapVal.get("line_type"); //将运输线路类别添加到运输线路主表实体中 rmsLine.setLineType(lineType); //拿到前端传递的拼数 Integer spellNumber = (Integer) mapVal.get("spellNumber"); //将拼数存添加运输路线主表实体中 rmsLine.setSpellNumber(spellNumber); //根据运输线路实体的数据进行修改 int i = rmsLineService.updateByPrimaryKeySelective(rmsLine); int i1 = 0; if(i == 1){ //修改运输路线主表的数据成功之后,根据运输线路主表id查询运输线路子表的数据 List> lineSegemntListMap = rmsLineSegemntService.getRmsLineSegemntUpdate(new BigDecimal(lineId)); //将拿到的运输线路子表数据全部逻辑删除 for (int j = 0 ; j 0){ // 拿到前端传递的运输路线 List> linkList = (List>) mapVal.get("linkList"); for (int j = 0;j 0){ return success(); } return failed(); } @ApiOperation(value = "根据运输线路主表ID修改数据,为逻辑删除") @PostMapping("/updateRmsLine") public RESTfulResult updateRmsLine(@RequestBody(required = false) Map mapVal) { //拿到前端传递的主键id String lineId = mapVal.get("lineId").toString(); //创建一个运输线路主表实体 RmsLine rmsLine = new RmsLine(); //将运输线路主表id添加到运输线路主表实体中 rmsLine.setLineId(new BigDecimal(lineId)); //更改逻辑删除状态(0为未删除,1为删除) rmsLine.setDeleted(1); //根据运输线路实体的数据进行修改 int i = rmsLineService.updateByPrimaryKeySelective(rmsLine); int i1 = 0; if(i == 1){ //修改运输路线主表的数据成功之后,根据运输线路主表id查询运输线路子表的数据 List> lineSegemntListMap = rmsLineSegemntService.getRmsLineSegemntUpdate(new BigDecimal(lineId)); //将拿到的运输线路子表数据全部逻辑删除 for (int j = 0 ; j 0){ return success(); } return failed(); } @ApiOperation(value = "getLinkToUpdate") @PostMapping("/getCountNumber") public RESTfulResult getCountNumber(@RequestParam Integer lineId) { int countNumber = rmsLineService.getOmstruckOrderNumber(new BigDecimal(lineId)); return success(countNumber); } }