|
@@ -1,8 +1,12 @@
|
|
|
package com.steerinfo.dil.service.impl;
|
|
|
|
|
|
+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.DataChange;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
@@ -29,9 +33,59 @@ public class RmsLineServiceImpl implements IRmsLineService {
|
|
|
@Autowired
|
|
|
private RmsLineMapper rmsLineMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ CommonSeq commonSeq;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ IRmsLineSegemntService rmsLineSegemntService;
|
|
|
+
|
|
|
@Override
|
|
|
- public int insertSelective(RmsLine rmsLine) {
|
|
|
- return rmsLineMapper.insertSelective(rmsLine);
|
|
|
+ public int insertSelective(Map<String, Object> 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<Map<String,Object>> linkList = (List<Map<String, Object>>) mapVal.get("linkList");
|
|
|
+ //生成运输线路编号
|
|
|
+ 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 = rmsLineMapper.insertSelective(rmsLine);
|
|
|
+ int i1 = 0;
|
|
|
+ if(i == 1){
|
|
|
+ for (int j = 0;j<linkList.size();j++){
|
|
|
+ //创建线路子表实体
|
|
|
+ RmsLineSegemnt rmsLineSegemnt = new RmsLineSegemnt();
|
|
|
+ //获取线路子表主键id
|
|
|
+ int segmentId = commonSeq.getId("seq_RMS_LINE_SEGEMNT");
|
|
|
+ //将获取到的线路子表id添加到线路子表实体中
|
|
|
+ rmsLineSegemnt.setSegmentId(new BigDecimal(segmentId));
|
|
|
+ //将线路主表的主键id添加到线路子表实体中
|
|
|
+ rmsLineSegemnt.setLineId(new BigDecimal(lineId));
|
|
|
+ //添加线路子表的路段顺序号
|
|
|
+ rmsLineSegemnt.setSegmentSqe(new BigDecimal(j+1));
|
|
|
+ //拿到前端传递的运输路线起点id
|
|
|
+ Integer segmentStartNodeId = (Integer) linkList.get(j).get("linkId");
|
|
|
+ //将起点id添加到线路子表的实体中
|
|
|
+ rmsLineSegemnt.setSegmentStartNodeId(new BigDecimal(segmentStartNodeId));
|
|
|
+ //逻辑删除(0为未删除,1为删除)
|
|
|
+ rmsLineSegemnt.setDeleted(0);
|
|
|
+ //调用rmsLineSegemntService的新增方法
|
|
|
+ i1 = rmsLineSegemntService.insertSelective(rmsLineSegemnt);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return i1;
|
|
|
}
|
|
|
|
|
|
@Override
|