package com.mandi.fendan.service.impl;
|
|
|
import com.mandi.fendan.mapper.SaleBackOrderMapper;
|
import com.mandi.fendan.persist.SaleBackOrder;
|
import com.mandi.fendan.persist.SalesReturn;
|
import com.mandi.fendan.service.SaleBackOrderService;
|
import com.mandi.fendan.service.SaleReturnService;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
@Service
|
public class SaleBackOrderServiceImpl implements SaleBackOrderService {
|
@Resource
|
private SaleBackOrderMapper saleBackOrderMapper;
|
@Resource
|
private SaleReturnService saleReturnService;
|
|
public void saveOrUpdateOrDelete(SaleBackOrder saleBackOrder) {
|
//更新或新增实体
|
if(StringUtils.isNotBlank(saleBackOrder.getNewSalesId())){
|
SaleBackOrder saleBackOrder1 = saleBackOrderMapper.queryById(saleBackOrder.getNewSalesId());
|
//有主键数据 更新
|
if(saleBackOrder1!=null){
|
//有主键数据 并处理状态为删除则删除
|
if("1".equals(saleBackOrder.getOperState())) {
|
saleBackOrderMapper.deleteByNewSalesId(saleBackOrder.getNewSalesId());
|
}else{
|
SaleBackOrder convert = convert(saleBackOrder, saleBackOrder1);
|
saleBackOrderMapper.updateEntity(convert);
|
}
|
}else {
|
//无主键数据 新增
|
saleBackOrderMapper.saveEntity(saleBackOrder);
|
}
|
}
|
//更新或新增子实体
|
if(!saleBackOrder.getItemList().isEmpty() || saleBackOrder.getItemList().size()!=0){
|
List<SalesReturn> salesReturnList = saleBackOrder.getItemList();
|
for(SalesReturn salesReturn:salesReturnList){
|
if(StringUtils.isNotBlank(salesReturn.getItemId())) {
|
SalesReturn salesReturn1=saleReturnService.queryById(salesReturn.getItemId());
|
//有主键数据 更新
|
if(salesReturn1!=null){
|
//有主键数据 并处理状态为删除则删除
|
if("1".equals(salesReturn.getOperState())) {
|
saleReturnService.deleteByItemId(salesReturn.getItemId());
|
}else {
|
SalesReturn convert = convertSalesReturn(salesReturn, salesReturn1);
|
saleReturnService.updateEntity(convert);
|
}
|
}else{
|
//无主键数据 新增
|
saleReturnService.saveEntity(salesReturn);
|
}
|
}
|
}
|
}
|
}
|
|
|
private SalesReturn convertSalesReturn(SalesReturn salesReturn,SalesReturn salesReturn1){
|
if (StringUtils.isNotBlank(salesReturn.getItemId()) &&
|
!salesReturn.getItemId().equals(salesReturn1.getItemId())) {
|
salesReturn1.setItemId(salesReturn.getItemId());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getBatchNum()) &&
|
!salesReturn.getBatchNum().equals(salesReturn1.getBatchNum())) {
|
salesReturn1.setBatchNum(salesReturn.getBatchNum());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getMaterialName()) &&
|
!salesReturn.getMaterialName().equals(salesReturn1.getMaterialName())) {
|
salesReturn1.setMaterialName(salesReturn.getMaterialName());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getSpecsName()) &&
|
!salesReturn.getSpecsName().equals(salesReturn1.getSpecsName())) {
|
salesReturn1.setSpecsName(salesReturn.getSpecsName());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getJzfmName()) &&
|
!salesReturn.getJzfmName().equals(salesReturn1.getJzfmName())) {
|
salesReturn1.setJzfmName(salesReturn.getJzfmName());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getMaterialSize()) &&
|
!salesReturn.getMaterialSize().equals(salesReturn1.getMaterialSize())) {
|
salesReturn1.setMaterialSize(salesReturn.getMaterialSize());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getOuterPackingSize()) &&
|
!salesReturn.getOuterPackingSize().equals(salesReturn1.getOuterPackingSize())) {
|
salesReturn1.setOuterPackingSize(salesReturn.getOuterPackingSize());
|
}
|
|
if (salesReturn.getGrossWeight() != null &&
|
!salesReturn.getGrossWeight().equals(salesReturn1.getGrossWeight())) {
|
salesReturn1.setGrossWeight(salesReturn.getGrossWeight());
|
}
|
|
if (salesReturn.getNetWeight() != null &&
|
!salesReturn.getNetWeight().equals(salesReturn1.getNetWeight())) {
|
salesReturn1.setNetWeight(salesReturn.getNetWeight());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getBackTypeName()) &&
|
!salesReturn.getBackTypeName().equals(salesReturn1.getBackTypeName())) {
|
salesReturn1.setBackTypeName(salesReturn.getBackTypeName());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getBackReason()) &&
|
!salesReturn.getBackReason().equals(salesReturn1.getBackReason())) {
|
salesReturn1.setBackReason(salesReturn.getBackReason());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getAlloyStateName()) &&
|
!salesReturn.getAlloyStateName().equals(salesReturn1.getAlloyStateName())) {
|
salesReturn1.setAlloyStateName(salesReturn.getAlloyStateName());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getItemRemark()) &&
|
!salesReturn.getItemRemark().equals(salesReturn1.getItemRemark())) {
|
salesReturn1.setItemRemark(salesReturn.getItemRemark());
|
}
|
|
if (StringUtils.isNotBlank(salesReturn.getOperState()) &&
|
!salesReturn.getOperState().equals(salesReturn1.getOperState())) {
|
salesReturn1.setOperState(salesReturn.getOperState());
|
}
|
|
return salesReturn1;
|
}
|
private SaleBackOrder convert(SaleBackOrder saleBackOrder,SaleBackOrder saleBackOrder1){
|
if (StringUtils.isNotBlank(saleBackOrder.getNewSalesId()) &&
|
!saleBackOrder.getNewSalesId().equals(saleBackOrder1.getNewSalesId())) {
|
saleBackOrder1.setNewSalesId(saleBackOrder.getNewSalesId());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getDocNum()) &&
|
!saleBackOrder.getDocNum().equals(saleBackOrder1.getDocNum())) {
|
saleBackOrder1.setDocNum(saleBackOrder.getDocNum());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getDocTime()) &&
|
!saleBackOrder.getDocTime().equals(saleBackOrder1.getDocTime())) {
|
saleBackOrder1.setDocTime(saleBackOrder.getDocTime());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getNewAccountNo()) &&
|
!saleBackOrder.getNewAccountNo().equals(saleBackOrder1.getNewAccountNo())) {
|
saleBackOrder1.setNewAccountNo(saleBackOrder.getNewAccountNo());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getCreatedBy()) &&
|
!saleBackOrder.getCreatedBy().equals(saleBackOrder1.getCreatedBy())) {
|
saleBackOrder1.setCreatedBy(saleBackOrder.getCreatedBy());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getNcDepCode()) &&
|
!saleBackOrder.getNcDepCode().equals(saleBackOrder1.getNcDepCode())) {
|
saleBackOrder1.setNcDepCode(saleBackOrder.getNcDepCode());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getUserCode()) &&
|
!saleBackOrder.getUserCode().equals(saleBackOrder1.getUserCode())) {
|
saleBackOrder1.setUserCode(saleBackOrder.getUserCode());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getInvoiceNum()) &&
|
!saleBackOrder.getInvoiceNum().equals(saleBackOrder1.getInvoiceNum())) {
|
saleBackOrder1.setInvoiceNum(saleBackOrder.getInvoiceNum());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getDocRemark()) &&
|
!saleBackOrder.getDocRemark().equals(saleBackOrder1.getDocRemark())) {
|
saleBackOrder1.setDocRemark(saleBackOrder.getDocRemark());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getRcDepCode()) &&
|
!saleBackOrder.getRcDepCode().equals(saleBackOrder1.getRcDepCode())) {
|
saleBackOrder1.setRcDepCode(saleBackOrder.getRcDepCode());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getRcLocCompCode()) &&
|
!saleBackOrder.getRcLocCompCode().equals(saleBackOrder1.getRcLocCompCode())) {
|
saleBackOrder1.setRcLocCompCode(saleBackOrder.getRcLocCompCode());
|
}
|
if (StringUtils.isNotBlank(saleBackOrder.getOperState()) &&
|
!saleBackOrder.getOperState().equals(saleBackOrder1.getOperState())) {
|
saleBackOrder1.setOperState(saleBackOrder.getOperState());
|
}
|
return saleBackOrder1;
|
}
|
}
|