Commit f6495699 张少辉

1.料号基础数据 优化

1 个父辈 87984628
package com.neotel.smfcore.custom.lizhen.innerBox.bean;
import com.neotel.smfcore.common.base.BasePo;
import lombok.Data;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
@Data
public class ReelConsumption {
private String req;
public class ReelConsumption extends BasePo implements Serializable {
private String partNumber;
private String replacementPartNumber;
private String warehouseCode;
private Map<String,ReelConsumptionInventory> inventoryMap = new HashMap<>();
}
package com.neotel.smfcore.custom.lizhen.innerBox.bean;
import com.neotel.smfcore.common.base.BasePo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ReelConsumptionInventory {
public class ReelConsumptionInventory extends BasePo implements Serializable {
private int min;
private int max;
......
package com.neotel.smfcore.custom.lizhen.innerBox.bean.dto;
import com.neotel.smfcore.common.base.BasePo;
import lombok.Getter;
import lombok.Setter;
import java.util.HashMap;
import java.util.Map;
@Getter
@Setter
public class ReelConsumptionDto extends BasePo {
private String partNumber;
private Map<String, ReelConsumptionInventoryDto> inventoryMap = new HashMap<>();
}
package com.neotel.smfcore.custom.lizhen.innerBox.bean.dto;
import com.neotel.smfcore.common.base.BasePo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ReelConsumptionInventoryDto extends BasePo implements Serializable {
private int min;
private int max;
}
package com.neotel.smfcore.custom.lizhen.innerBox.service.dao;
import com.neotel.smfcore.common.base.IBaseDao;
public interface IReelConsumptionDao extends IBaseDao {
}
package com.neotel.smfcore.custom.lizhen.innerBox.service.dao.impl;
import com.neotel.smfcore.common.base.AbstractBaseDao;
import com.neotel.smfcore.custom.lizhen.innerBox.bean.ReelConsumption;
import com.neotel.smfcore.custom.lizhen.innerBox.service.dao.IReelConsumptionDao;
import org.springframework.stereotype.Service;
@Service
public class ReelConsumptionDaoImpl extends AbstractBaseDao implements IReelConsumptionDao {
@Override
public Class getEntityClass() {
return ReelConsumption.class;
}
}
package com.neotel.smfcore.custom.lizhen.innerBox.service.manager;
import com.neotel.smfcore.common.base.IBaseManager;
import com.neotel.smfcore.custom.lizhen.innerBox.bean.ReelConsumption;
import java.util.List;
public interface IReelConsumptionManager extends IBaseManager<ReelConsumption> {
void batchSaveAndUpdate(List<ReelConsumption> resultList);
ReelConsumption getByPartNumber(String partNumber);
void deleteById(String id);
}
package com.neotel.smfcore.custom.lizhen.innerBox.service.manager.impl;
import com.neotel.smfcore.common.bean.PageData;
import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.custom.lizhen.innerBox.bean.ReelConsumption;
import com.neotel.smfcore.custom.lizhen.innerBox.bean.ReelConsumptionInventory;
import com.neotel.smfcore.custom.lizhen.innerBox.service.dao.IReelConsumptionDao;
import com.neotel.smfcore.custom.lizhen.innerBox.service.manager.IReelConsumptionManager;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
@Service
public class ReelConsumptionManagerImpl implements IReelConsumptionManager {
@Autowired
private IReelConsumptionDao reelConsumptionDao;
@Override
public ReelConsumption get(String id) {
return reelConsumptionDao.findOneById(id);
}
@Override
public ReelConsumption save(ReelConsumption object) throws ValidateException {
return reelConsumptionDao.save(object);
}
@Override
public void delete(ReelConsumption object) throws ValidateException {
reelConsumptionDao.removeOneById(object.getId());
}
@Override
public PageData<ReelConsumption> findByPage(Query query, Pageable pageable) {
int count = reelConsumptionDao.countByQuery(query);
List list = reelConsumptionDao.findByQuery(query, pageable);
return new PageData<>(list,count);
}
@Override
public List<ReelConsumption> findByQuery(Query query) {
return reelConsumptionDao.findByQuery(query);
}
@Override
public void batchSaveAndUpdate(List<ReelConsumption> resultList) {
for (ReelConsumption reelConsumption : resultList) {
ReelConsumption old = getByPartNumber(reelConsumption.getPartNumber());
if (old != null) {
reelConsumption.setId(old.getId());
Map<String, ReelConsumptionInventory> inventoryMap = reelConsumption.getInventoryMap();
Map<String, ReelConsumptionInventory> oldInventoryMap = old.getInventoryMap();
if (oldInventoryMap != null) {
for (String key : oldInventoryMap.keySet()) {
if (!inventoryMap.containsKey(key)) {
inventoryMap.put(key, oldInventoryMap.get(key));
}
}
}
}
reelConsumptionDao.save(reelConsumption);
}
}
@Override
public ReelConsumption getByPartNumber(String partNumber) {
return reelConsumptionDao.findOne(new Query(Criteria.where("partNumber").is(partNumber)));
}
@Override
public void deleteById(String id) {
reelConsumptionDao.removeOneById(id);
}
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!