|
@@ -30,23 +30,26 @@ public class AmsContractTruckPriceServiceImpl implements IAmsContractTruckPriceS
|
|
@Autowired
|
|
@Autowired
|
|
private AmsContractTruckPriceMapper amsContractTruckPriceMapper;
|
|
private AmsContractTruckPriceMapper amsContractTruckPriceMapper;
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 新增汽运单价
|
|
|
|
+ * @Author zzd
|
|
|
|
+ * @Date 2022/1/20 11:33
|
|
|
|
+ * @param amsContractTransportPrice
|
|
|
|
+ * @return
|
|
|
|
+ **/
|
|
@Override
|
|
@Override
|
|
public int addAmsContractTransportPrice(AmsContractTransportPrice amsContractTransportPrice) {
|
|
public int addAmsContractTransportPrice(AmsContractTransportPrice amsContractTransportPrice) {
|
|
- long id;
|
|
|
|
- if(amsContractTruckPriceMapper.selectMaxId()==null){
|
|
|
|
- id = 1;
|
|
|
|
- }else {
|
|
|
|
- id = amsContractTruckPriceMapper.selectMaxId().longValue()+1;
|
|
|
|
- }
|
|
|
|
//生成主键id
|
|
//生成主键id
|
|
- amsContractTransportPrice.setPriceId(new BigDecimal(id));
|
|
|
|
|
|
+ amsContractTransportPrice.setPriceId(amsContractTruckPriceMapper.selectMaxId());
|
|
//获取路线Id和运价
|
|
//获取路线Id和运价
|
|
BigDecimal lineId = amsContractTransportPrice.getLineId();
|
|
BigDecimal lineId = amsContractTransportPrice.getLineId();
|
|
- BigDecimal priceValue = amsContractTransportPrice.getPriceValue();
|
|
|
|
- //计算并插入吨公里
|
|
|
|
- BigDecimal priceTonKilometer = calculationPriceTonKilometer(lineId, priceValue);
|
|
|
|
|
|
+ if(lineId == null){
|
|
|
|
+ BigDecimal priceValue = amsContractTransportPrice.getPriceValue();
|
|
|
|
+ //计算并插入吨公里
|
|
|
|
+ BigDecimal priceTonKilometer = calculationPriceTonKilometer(lineId, priceValue);
|
|
|
|
+ amsContractTransportPrice.setPriceTonKilometer(priceTonKilometer);
|
|
|
|
+ }
|
|
amsContractTransportPrice.setType(new BigDecimal(1));
|
|
amsContractTransportPrice.setType(new BigDecimal(1));
|
|
- amsContractTransportPrice.setPriceTonKilometer(priceTonKilometer);
|
|
|
|
amsContractTransportPrice.setInsertUsername("admin");
|
|
amsContractTransportPrice.setInsertUsername("admin");
|
|
amsContractTransportPrice.setInsertTime(new Date());
|
|
amsContractTransportPrice.setInsertTime(new Date());
|
|
amsContractTransportPrice.setUpdateUsername("admin");
|
|
amsContractTransportPrice.setUpdateUsername("admin");
|
|
@@ -72,9 +75,10 @@ public class AmsContractTruckPriceServiceImpl implements IAmsContractTruckPriceS
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public int deleteAmsContractTransportPrice(BigDecimal priceId) {
|
|
public int deleteAmsContractTransportPrice(BigDecimal priceId) {
|
|
- AmsContractTransportPrice amsContractTransportPrice = amsContractTruckPriceMapper.selectByPrimaryKey(priceId);
|
|
|
|
|
|
+ AmsContractTransportPrice amsContractTransportPrice = new AmsContractTransportPrice();
|
|
|
|
+ amsContractTransportPrice.setId(priceId);
|
|
amsContractTransportPrice.setDeleted(new BigDecimal(1));
|
|
amsContractTransportPrice.setDeleted(new BigDecimal(1));
|
|
- return amsContractTruckPriceMapper.updateByPrimaryKey(amsContractTransportPrice);
|
|
|
|
|
|
+ return amsContractTruckPriceMapper.updateByPrimaryKeySelective(amsContractTransportPrice);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -104,17 +108,20 @@ public class AmsContractTruckPriceServiceImpl implements IAmsContractTruckPriceS
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public int updateAmsContractTransportPrice(AmsContractTransportPrice amsContractTransportPrice) {
|
|
public int updateAmsContractTransportPrice(AmsContractTransportPrice amsContractTransportPrice) {
|
|
- BigDecimal priceId = amsContractTransportPrice.getPriceId();
|
|
|
|
- //获取未修改前的汽运单价信息
|
|
|
|
- AmsContractTransportPrice amsContractTransportPrice1 = amsContractTruckPriceMapper.selectByPrimaryKey(priceId);
|
|
|
|
//获取路线Id和运价
|
|
//获取路线Id和运价
|
|
BigDecimal lineId = amsContractTransportPrice.getLineId();
|
|
BigDecimal lineId = amsContractTransportPrice.getLineId();
|
|
BigDecimal priceValue = amsContractTransportPrice.getPriceValue();
|
|
BigDecimal priceValue = amsContractTransportPrice.getPriceValue();
|
|
- //若运价修改了
|
|
|
|
- if(amsContractTransportPrice.getPriceValue()!=amsContractTransportPrice1.getPriceValue()){
|
|
|
|
- //计算并插入吨公里
|
|
|
|
- BigDecimal priceTonKilometer = calculationPriceTonKilometer(lineId, priceValue);
|
|
|
|
- amsContractTransportPrice.setPriceTonKilometer(priceTonKilometer);
|
|
|
|
|
|
+ //如果传入路线则修改运价
|
|
|
|
+ if(lineId != null){
|
|
|
|
+ BigDecimal priceId = amsContractTransportPrice.getPriceId();
|
|
|
|
+ //获取未修改前的汽运单价信息
|
|
|
|
+ AmsContractTransportPrice amsContractTransportPrice1 = amsContractTruckPriceMapper.selectByPrimaryKey(priceId);
|
|
|
|
+ //若运价修改了
|
|
|
|
+ if(!amsContractTransportPrice.getPriceValue().equals(amsContractTransportPrice1.getPriceValue())){
|
|
|
|
+ //计算并插入吨公里
|
|
|
|
+ BigDecimal priceTonKilometer = calculationPriceTonKilometer(lineId, priceValue);
|
|
|
|
+ amsContractTransportPrice.setPriceTonKilometer(priceTonKilometer);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
amsContractTransportPrice.setUpdateTime(new Date());
|
|
amsContractTransportPrice.setUpdateTime(new Date());
|
|
return amsContractTruckPriceMapper.updateByPrimaryKeySelective(amsContractTransportPrice);
|
|
return amsContractTruckPriceMapper.updateByPrimaryKeySelective(amsContractTransportPrice);
|