| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- package com.steerinfo.dil.service.impl;
- import com.steerinfo.dil.mapper.WmshGridMaterialMapper;
- import com.steerinfo.dil.model.WmshGridMaterial;
- import com.steerinfo.dil.service.IWmshGridMaterialService;
- 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;
- @Service(value = "wmshGridMaterialService")
- public class WmshGridMaterialServiceImpl implements IWmshGridMaterialService {
- @Autowired
- private WmshGridMaterialMapper wmshGridMaterialMapper;
-
- @Override
- public List<Map<String, Object>> getUnloadPortStockList(Map<String, Object> mapVal) {
- return wmshGridMaterialMapper.getUnloadPortStockList(mapVal);
- }
-
- @Override
- public List<Map<String, Object>> getLoadPortStockList(Map<String, Object> mapVal) {
- return wmshGridMaterialMapper.getLoadPortStockList(mapVal);
- }
-
- @Override
- public int updatePortStock(Map<String,Object> map) {
- BigDecimal portId = DataChange.dataToBigDecimal(map.get("downSwimPortId"));
- BigDecimal batchId = DataChange.dataToBigDecimal(map.get("batchId"));
- BigDecimal tonnage = DataChange.dataToBigDecimal(map.get("resultTonnage"));
- BigDecimal status = DataChange.dataToBigDecimal(map.get("status"));
- Map<String,Object> selectMap = new HashMap<>();
- selectMap.put("portId",portId);
- selectMap.put("batchId",batchId);
-
- List<WmshGridMaterial> wmshGridMaterials = wmshGridMaterialMapper.selectByParameters(selectMap);
- if (wmshGridMaterials.size() == 0) {
- WmshGridMaterial wmshGridMaterial = new WmshGridMaterial();
- BigDecimal gmId = wmshGridMaterialMapper.selectMaxId();
- wmshGridMaterial.setGmId(gmId);
- wmshGridMaterial.setBatchId(batchId);
- wmshGridMaterial.setPortId(portId);
- wmshGridMaterial.setGmTonnage(tonnage);
- wmshGridMaterial.setDeleted(new BigDecimal(0));
- return wmshGridMaterialMapper.insertSelective(wmshGridMaterial);
- }
- WmshGridMaterial wmshGridMaterial = wmshGridMaterials.get(0);
- BigDecimal oldGmsTonnage = wmshGridMaterial.getGmTonnage();
- BigDecimal gmsTonnage;
- if (status.intValue() == 0) {
- gmsTonnage = new BigDecimal(oldGmsTonnage.doubleValue() - tonnage.doubleValue());
- }
- else {
- gmsTonnage = new BigDecimal(tonnage.doubleValue() + oldGmsTonnage.doubleValue());
- }
- if (gmsTonnage.intValue()>=0) {
- wmshGridMaterial.setGmTonnage(gmsTonnage);
- }else {
- return -1;
- }
- wmshGridMaterial.setUpdateTime(new Date());
- int i = wmshGridMaterialMapper.updateByPrimaryKeySelective(wmshGridMaterial);
- return i;
- }
- @Override
- public int clearWmshGridMaterial(Map<String, Object> map) {
- BigDecimal gmId =DataChange.dataToBigDecimal(map.get("gmId"));
- WmshGridMaterial wmshGridMaterial=new WmshGridMaterial();
- wmshGridMaterial.setGmId(gmId);
- wmshGridMaterial.setGmTonnage(new BigDecimal(0));
- int i = wmshGridMaterialMapper.updateByPrimaryKeySelective(wmshGridMaterial);
- return i;
- }
- }
|