1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- 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.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * WmshGridMaterial服务实现:
- * @author generator
- * @version 1.0-SNAPSHORT 2021-10-09 07:25
- * 类描述
- * 修订历史:
- * 日期:2021-10-09
- * 作者:generator
- * 参考:
- * 描述:WmshGridMaterial服务实现
- * @see null
- * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
- */
- @Service(value = "wmshGridMaterialService")
- public class WmshGridMaterialServiceImpl implements IWmshGridMaterialService {
- @Autowired
- private WmshGridMaterialMapper wmshGridMaterialMapper;
- /**
- * 展示下游港口实时库存
- * @param mapVal
- * @return
- */
- @Override
- public List<Map<String, Object>> getUnloadPortStockList(Map<String, Object> mapVal) {
- return wmshGridMaterialMapper.getUnloadPortStockList(mapVal);
- }
- /**
- * 展示万州港实时库存
- * @param mapVal
- * @return
- */
- @Override
- public List<Map<String, Object>> getLoadPortStockList(Map<String, Object> mapVal) {
- return wmshGridMaterialMapper.getLoadPortStockList(mapVal);
- }
- /**
- * 修改实时库存
- * @param map
- * @return
- */
- @Override
- public int updatePortStock(Map<String,Object> map) {
- BigDecimal portId = DataChange.dataToBigDecimal(map.get("portId"));
- 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());
- }
- wmshGridMaterial.setGmTonnage(gmsTonnage);
- return wmshGridMaterialMapper.updateByPrimaryKeySelective(wmshGridMaterial);
- }
- }
|