123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- package com.steerinfo.dil.service.impl;
- import com.steerinfo.dil.mapper.RmsMaterialMapper;
- import com.steerinfo.dil.mapper.RmsMaterialSteelMapper;
- import com.steerinfo.dil.mapper.RmsMaterialTypeMapper;
- import com.steerinfo.dil.mapper.RmsUnitOfMeasureMapper;
- import com.steerinfo.dil.model.RmsCarrier;
- import com.steerinfo.dil.model.RmsMaterial;
- import com.steerinfo.dil.model.RmsMaterialType;
- import com.steerinfo.dil.model.RmsUnitOfMeasure;
- import com.steerinfo.dil.service.IRmsMaterialService;
- import com.steerinfo.dil.util.DataChange;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.math.BigDecimal;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * RmsMaterial服务实现:
- * @author generator
- * @version 1.0-SNAPSHORT 2021-10-22 05:55
- * 类描述
- * 修订历史:
- * 日期:2021-10-22
- * 作者:HuJieHuan
- * 参考:
- * 描述:RmsMaterial服务实现
- * @see null
- * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
- */
- @Service(value = "rmsMaterialService")
- public class RmsMaterialServiceImpl implements IRmsMaterialService {
- @Autowired
- private RmsMaterialMapper rmsMaterialMapper;
- @Autowired
- RmsMaterialTypeMapper rmsMaterialTypeMapper;
- @Autowired
- RmsUnitOfMeasureMapper rmsUnitOfMeasureMapper;
- @Autowired
- RmsMaterialSteelMapper rmsMaterialSteelMapper;
- /**
- * 操作物资
- *
- * @param mapVal
- * @return
- */
- @Override
- public int operationMaterial(Map<String, Object> mapVal) {
- // 得到金蝶物资主键id
- Integer EASMaterialIdValue = (Integer) mapVal.get("EASMaterialId");
- String EASMaterialId = EASMaterialIdValue.toString();
- // 得到物资唯一编码
- String materialCode = (String) mapVal.get("materialCode");
- // 得到物资类型
- String materialType = (String) mapVal.get("materialType");
- // 得到物资名称
- String materialName = (String) mapVal.get("materialName");
- // 得到物资规格
- String materialSpecification = (String) mapVal.get("materialSpecification");
- // 得到物资型号
- String materialModel = (String) mapVal.get("materialModel");
- // 得到计量单位
- String unitOfMeasure = (String) mapVal.get("unitOfMeasure");
- // 得到长度
- Double materialLengthValue = (Double) mapVal.get("materialLength");
- BigDecimal materialLength = new BigDecimal(materialLengthValue);
- // 得到数据状态
- Integer dataStatus = (Integer) mapVal.get("dataStatus");
- // 判断是否EASId已存在
- Map<String, Object> map1 = new HashMap<>();
- map1.put("easMaterialId", EASMaterialId);
- BigDecimal deleted = new BigDecimal(0);
- map1.put("deleted", deleted);
- List<RmsMaterial> rmsMaterials = rmsMaterialMapper.selectByParameters(map1);
- // 判断物资类型是否已存在
- Map<String, Object> map2 = new HashMap<>();
- map2.put("materialType", materialType);
- List<RmsMaterialType> rmsMaterialTypes = rmsMaterialTypeMapper.selectByParameters(map2);
- RmsMaterialType rmsMaterialType = rmsMaterialTypes.get(0);
- // 判断单位是否已存在
- Map<String, Object> map3 = new HashMap<>();
- map3.put("unitOfMeasure", unitOfMeasure);
- List<RmsUnitOfMeasure> rmsUnitOfMeasures = rmsUnitOfMeasureMapper.selectByParameters(map3);
- RmsUnitOfMeasure rmsUnitOfMeasure = rmsUnitOfMeasures.get(0);
- RmsMaterial rmsMaterial = new RmsMaterial();
- rmsMaterial.setMaterialName(materialName);
- rmsMaterial.setMaterialCode(materialCode);
- rmsMaterial.setMaterialSpecification(materialSpecification);
- rmsMaterial.setMaterialModel(materialModel);
- rmsMaterial.setMaterialLength(materialLength);
- rmsMaterial.setEasMaterialId(EASMaterialId);
- rmsMaterial.setMaterialTypeId(rmsMaterialType.getMaterialTypeId());
- rmsMaterial.setUnitOfMeasureId(rmsUnitOfMeasure.getUnitOfMeasureId());
- int result = 0;
- // 新增
- if (rmsMaterials.size() == 0) {
- rmsMaterial.setDeleted(new BigDecimal(0));
- BigDecimal materialId = rmsMaterialMapper.getMaterialId();
- rmsMaterial.setMaterialId(materialId);
- result = rmsMaterialMapper.insertSelective(rmsMaterial);
- }
- // 修改
- if (rmsMaterials.size() != 0 && dataStatus == 2) {
- RmsMaterial rmsMaterial1 = rmsMaterials.get(0);
- rmsMaterial.setMaterialId(rmsMaterial1.getMaterialId());
- result = rmsMaterialMapper.updateByPrimaryKeySelective(rmsMaterial);
- }
- // 逻辑删除
- if (rmsMaterials.size() != 0 && dataStatus == 3) {
- RmsMaterial rmsMaterial1 = rmsMaterials.get(0);
- rmsMaterial.setMaterialId(rmsMaterial1.getMaterialId());
- rmsMaterial.setDeleted(new BigDecimal(1));
- result = rmsMaterialMapper.updateByPrimaryKeySelective(rmsMaterial);
- }
- return result;
- }
- /**
- * 展示物资信息
- *
- * @param mapVal
- * @return
- */
- @Override
- public List<Map<String, Object>> getMaterialList(Map<String, Object> mapVal) {
- return rmsMaterialMapper.getMaterialList(mapVal);
- }
- /**
- * 添加原料信息
- *
- * @param rmsMaterial
- * @return
- */
- @Override
- public int insertMaterial(RmsMaterial rmsMaterial) {
- String code="lx";
- Integer id=rmsMaterialMapper.getMaterialId().intValue();
- String materialCode=DataChange.generateEightDigitsNumber(code,id);
- rmsMaterial.setMaterialCode(materialCode);
- rmsMaterial.setDeleted(new BigDecimal(0));
- rmsMaterial.setMaterialId(new BigDecimal(id));
- rmsMaterial.setInsertTime(new Date());
- rmsMaterial.setInsertUsername("admin");
- return rmsMaterialMapper.insertSelective(rmsMaterial);
- }
- /**
- * 修改原料信息
- *
- * @param rmsMaterial
- * @return
- */
- @Override
- public int updateMaterial(RmsMaterial rmsMaterial) {
- rmsMaterial.setUpdateUsername("admin");
- rmsMaterial.setUpdateTime(new Date());
- return rmsMaterialMapper.updateByPrimaryKeySelective(rmsMaterial);
- }
- /**
- * 删除原料信息
- *
- * @param id
- * @return
- */
- @Override
- public int deleteMaterial(BigDecimal id) {
- RmsMaterial rmsMaterial = rmsMaterialMapper.selectByPrimaryKey(id);
- rmsMaterial.setDeleted(new BigDecimal(1));
- return rmsMaterialMapper.updateByPrimaryKeySelective(rmsMaterial);
- }
- /**
- * 根据id值获取原材料信息
- *
- * @param id
- * @return
- */
- @Override
- public List<Map<String, Object>> getMaterialById(BigDecimal id) {
- return rmsMaterialMapper.selectMaterialById(id);
- }
- /**
- * 获取原材料类型Id
- * @return
- */
- @Override
- public List<Map<String, Object>> getMaterialTypeId() {
- return rmsMaterialMapper.getMaterialTypeId();
- }
- /**
- *获得计量单位的Id
- * @return
- */
- @Override
- public List<Map<String, Object>> getUnitOfMeasureId() {
- return rmsMaterialMapper.getUnitOfMeasureId();
- }
- /*
- * 根据汽车衡测量的物资id,进行展示物资
- * */
- @Override
- public List<Map<String, Object>> getCalculateOfMaterialList(Map<String, Object> mapVal) {
- return rmsMaterialMapper.getCalculateOfMaterialList(mapVal);
- }
- }
|