Commit 3c1afeb1 LN

分組出庫修改

1 个父辈 1f484b4b
......@@ -109,6 +109,11 @@ public class MaterialController {
if (criteria.getStorageId() != null && criteria.getStorageId().equals("0")) {
criteria.setStorageId(null);
}
boolean noLabelSearch=false;
if(criteria.getLabelId()!=null&&criteria.getLabelId().equals("0")){
criteria.setLabelId("");
noLabelSearch=true;
}
Query query = QueryHelp.getQuery(criteria);
Criteria baseCriteria = Criteria.where("used").is(true);
......@@ -140,6 +145,9 @@ public class MaterialController {
query.addCriteria(baseCriteria);
if(noLabelSearch){
query.addCriteria(Criteria.where("labelId").in(new String[]{"",null}));
}
PageData<StoragePos> pages = storagePosManager.findByPage(query, pageable);
List<StoragePosDto> StoragePosDtos = storagePosMapper.toDto(pages.getContent());
for (StoragePosDto dto : StoragePosDtos
......@@ -162,6 +170,8 @@ public class MaterialController {
public ResultBean labelOuput(@RequestBody PosLabelDto params) {
List<String> posIds = params.getPosIds();
String labelId = params.getLabelId();
if (Objects.isNull(labelId)) {
if (posIds == null) {
throw new ValidateException("smfcode.valueCanotNull", "{0}不能为空", new String[]{"PN"});
}
......@@ -177,11 +187,36 @@ public class MaterialController {
}
log.info("出库料仓【" + storage.getName() + "_" + storage.getCid() + "】位置仓位【" + pos.getPosName() + "】");
String outResult = taskService.checkout(storage, pos, true,SecurityUtils.getCurrentUsername());
String outResult = taskService.checkout(storage, pos, true, SecurityUtils.getCurrentUsername());
if (!Strings.isNullOrEmpty(outResult)) {
throw new ValidateException("smfcode.error", outResult);
}
}
} else {
//根据标签ID出库
Query query = new Query();
query.addCriteria(Criteria.where("labelId").is(labelId));
query.addCriteria(Criteria.where("used").is(true));
List<StoragePos> posList = storagePosManager.findByQuery(query);
if (posList.size() <= 0) {
//未找到出库信息
throw new ValidateException("smfcode.label.noReel","未找到可出库的物料");
}
for (StoragePos pos : posList
) {
Storage storage = dataCache.getStorageById(pos.getStorageId());
if (storage == null) {
throw new ValidateException("smfcode.valueNotExist", "{0}[{1}]不存在", new String[]{"storageId", pos.getStorageId()});
}
log.info("出库料仓【" + storage.getName() + "_" + storage.getCid() + "】位置仓位【" + pos.getPosName() + "】");
String outResult = taskService.checkout(storage, pos, true, SecurityUtils.getCurrentUsername());
if (!Strings.isNullOrEmpty(outResult)) {
throw new ValidateException("smfcode.error", outResult);
}
}
}
return ResultBean.newOkResult("ok");
}
......@@ -208,7 +243,7 @@ public class MaterialController {
labelName=label.getLabelName();
}
String[] array = posIds.toArray(new String[posIds.size()]);
storagePosManager.updatePosLabel(array, labelId);
storagePosManager.updatePosLabel(array, labelId,labelName);
return ResultBean.newOkResult("");
}
......
......@@ -50,7 +50,7 @@ public interface IStoragePosManager extends IBaseManager<StoragePos> {
void clearStoragePosLabel(String id);
void updatePosLabel(String[] posIds, String labelId);
void updatePosLabel(String[] posIds, String labelId,String labelName);
void clearLockPos(String lockId);
......
......@@ -396,9 +396,10 @@ public class StoragePosManagerImpl implements IStoragePosManager {
}
@Override
public void updatePosLabel( String[] posIds, String labelId) {
public void updatePosLabel( String[] posIds, String labelId,String labelName) {
Query query = new Query(Criteria.where("id").in(posIds));
storagePosDao.updateMulti(query, Update.update("labelId",labelId));
storagePosDao.updateMulti(query, Update.update("labelName",labelName));
}
@Override
......
......@@ -56,6 +56,10 @@ public class StoragePos extends BasePo implements Serializable {
* 标签ID
*/
private String labelId="";
/**
* 标签名称
*/
private String labelName="";
/**
* 并联的其他库位,合并入主库位的库位
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!