rev:半成品盘点
This commit is contained in:
@@ -40,6 +40,7 @@ import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask;
|
||||
import org.nl.wms.storage_manage.IOSEnum;
|
||||
import org.nl.wms.storage_manage.productmanage.util.DivRuleCpService;
|
||||
import org.nl.wms.storage_manage.productmanage.util.RuleUtil;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.check.IStIvtCheckmstHrBcpService;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvEmpBcpService;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvHrBcpInService;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvHrBcp;
|
||||
@@ -80,6 +81,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{
|
||||
private IStIvtIostorinvHrBcpInService iStIvtIostorinvHrBcpInService;
|
||||
@Autowired
|
||||
private IStIvtStructattrService structattrService; // 仓位服务
|
||||
@Autowired
|
||||
private IStIvtCheckmstHrBcpService iStIvtCheckmstHrBcpService; // 盘点主表服务
|
||||
|
||||
@Override
|
||||
public Map<String, Object> apply(JSONObject param) {
|
||||
@@ -366,61 +369,67 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{
|
||||
public Map<String, Object> anomaly(JSONObject json) {
|
||||
/*
|
||||
* 满入-4:重新分配个货位,有货货位锁定
|
||||
* 盘点异常 - 6: 更新盘点明细为异常
|
||||
*/
|
||||
String task_id = json.getString("task_id");
|
||||
String status = json.getString("status"); // 4-满入
|
||||
String status = json.getString("status");
|
||||
|
||||
HashMap<String, Object> result = new HashMap<>();
|
||||
|
||||
try {
|
||||
|
||||
SchBaseTask taskDao = itaskService.getById(task_id);
|
||||
if (ObjectUtil.isEmpty(taskDao)) throw new BadRequestException("任务不存在!");
|
||||
if (status.equals("4")) {
|
||||
SchBaseTask taskDao = itaskService.getById(task_id);
|
||||
if (ObjectUtil.isEmpty(taskDao)) throw new BadRequestException("任务不存在!");
|
||||
|
||||
// 调用入库分配规则
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
);
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("sect_id", sect.getSect_id());
|
||||
jo.put("stor_id", sect.getStor_id());
|
||||
jo.put("rule_type", RuleUtil.PRODUCTION_IN_1);
|
||||
StIvtStructattr stIvtStructattr = divRuleCpService.divRuleIn(jo);
|
||||
if (ObjectUtil.isEmpty(stIvtStructattr)) throw new BadRequestException("仓位不足!");
|
||||
// 调用入库分配规则
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
);
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("sect_id", sect.getSect_id());
|
||||
jo.put("stor_id", sect.getStor_id());
|
||||
jo.put("rule_type", RuleUtil.PRODUCTION_IN_1);
|
||||
StIvtStructattr stIvtStructattr = divRuleCpService.divRuleIn(jo);
|
||||
if (ObjectUtil.isEmpty(stIvtStructattr)) throw new BadRequestException("仓位不足!");
|
||||
|
||||
// 更新单据入库仓位
|
||||
StIvtIostorinvHrBcp invDao = iStIvtIostorinvHrBcpInService.getOne(
|
||||
new QueryWrapper<StIvtIostorinvHrBcp>().lambda()
|
||||
.eq(StIvtIostorinvHrBcp::getTask_id, task_id)
|
||||
, false
|
||||
);
|
||||
if (ObjectUtil.isEmpty(invDao)) throw new BadRequestException("未找到对应入库单据!");
|
||||
// 更新单据入库仓位
|
||||
StIvtIostorinvHrBcp invDao = iStIvtIostorinvHrBcpInService.getOne(
|
||||
new QueryWrapper<StIvtIostorinvHrBcp>().lambda()
|
||||
.eq(StIvtIostorinvHrBcp::getTask_id, task_id)
|
||||
, false
|
||||
);
|
||||
if (ObjectUtil.isEmpty(invDao)) throw new BadRequestException("未找到对应入库单据!");
|
||||
|
||||
// 锁定原仓位
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.eq(StIvtStructattr::getStruct_id, invDao.getStruct_id())
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("其他锁"))
|
||||
);
|
||||
// 锁定原仓位
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.eq(StIvtStructattr::getStruct_id, invDao.getStruct_id())
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("其他锁"))
|
||||
);
|
||||
|
||||
invDao.setStruct_id(stIvtStructattr.getStruct_id());
|
||||
invDao.setStruct_code(stIvtStructattr.getStruct_code());
|
||||
invDao.setStruct_name(stIvtStructattr.getStruct_name());
|
||||
iStIvtIostorinvHrBcpInService.updateById(invDao);
|
||||
invDao.setStruct_id(stIvtStructattr.getStruct_id());
|
||||
invDao.setStruct_code(stIvtStructattr.getStruct_code());
|
||||
invDao.setStruct_name(stIvtStructattr.getStruct_name());
|
||||
iStIvtIostorinvHrBcpInService.updateById(invDao);
|
||||
|
||||
// 更新任务入库仓位
|
||||
taskDao.setPoint_code3(stIvtStructattr.getStruct_code());
|
||||
itaskService.updateById(taskDao);
|
||||
// 更新任务入库仓位
|
||||
taskDao.setPoint_code3(stIvtStructattr.getStruct_code());
|
||||
itaskService.updateById(taskDao);
|
||||
|
||||
// 锁定新货位
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.eq(StIvtStructattr::getStruct_id, stIvtStructattr.getStruct_id())
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("入库锁"))
|
||||
);
|
||||
// 锁定新货位
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.eq(StIvtStructattr::getStruct_id, stIvtStructattr.getStruct_id())
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("入库锁"))
|
||||
);
|
||||
|
||||
result.put("point_code2", stIvtStructattr.getStruct_code());
|
||||
result.put("point_code2", stIvtStructattr.getStruct_code());
|
||||
|
||||
} else if (status.equals("6")) {
|
||||
iStIvtCheckmstHrBcpService.checkExt(json);
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
result.put("status", HttpStatus.BAD_REQUEST.value());
|
||||
@@ -429,7 +438,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{
|
||||
}
|
||||
|
||||
result.put("status", HttpStatus.OK.value());
|
||||
result.put("message", "操作成功");
|
||||
result.put("message", "成功");
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ public enum CHECKEnum {
|
||||
//单据状态
|
||||
BILL_STATUS(MapOf.of("生成", "10", "盘点中", "30", "完成", "99")),
|
||||
//海柔盘点结果
|
||||
CHECK_RESULT(MapOf.of("正常", "0", "异常", "1")),
|
||||
CHECK_RESULT(MapOf.of("正常", "0", "异常", "1","待确认","2")),
|
||||
//单据状态
|
||||
DTL_STATUS(MapOf.of("生成", "01", "盘点中", "04", "已盘点", "05", "异常处理中", "06", "异常处理完成"
|
||||
, "07", "确认完成", "99")),
|
||||
|
||||
@@ -80,5 +80,13 @@ public class StIvtCheckmstHrBcpController {
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
}
|
||||
|
||||
@PostMapping("/extManage")
|
||||
@Log("异常处理")
|
||||
//("异常处理")
|
||||
public ResponseEntity<Object> extManage(@RequestBody JSONObject whereJson) {
|
||||
checkmstBcpService.extManage(whereJson);
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -71,4 +71,16 @@ public interface IStIvtCheckmstHrBcpService extends IService<StIvtCheckmstHrBcp>
|
||||
* @param whereJson /
|
||||
*/
|
||||
void checkOut(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 盘点异常处理
|
||||
* @param whereJson /
|
||||
*/
|
||||
void checkExt(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 盘点异常处理
|
||||
* @param whereJson /
|
||||
*/
|
||||
void extManage(JSONObject whereJson);
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrServ
|
||||
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr;
|
||||
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
|
||||
import org.nl.wms.storage_manage.CHECKEnum;
|
||||
import org.nl.wms.storage_manage.IOSEnum;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.check.IStIvtCheckdtlHrBcpService;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.check.dao.StIvtCheckdtlHrBcp;
|
||||
import org.nl.wms.storage_manage.semimanagehr.service.check.dao.StIvtCheckmstHrBcp;
|
||||
@@ -73,10 +74,11 @@ public class StIvtCheckdtlHrBcpServiceImpl extends ServiceImpl<StIvtCheckdtlHrBc
|
||||
row.setStruct_name(structDao.getStruct_name());
|
||||
|
||||
row.setStatus(CHECKEnum.DTL_STATUS.code("生成"));
|
||||
row.setCheck_result(CHECKEnum.CHECK_RESULT.code("待确认"));
|
||||
this.save(row);
|
||||
|
||||
//锁定货位
|
||||
structattrService.update(new UpdateWrapper<StIvtStructattr>().set("lock_type", "1").set("inv_code",mst.getCheck_code()).eq("struct_id", row.getStruct_id()));
|
||||
structattrService.update(new UpdateWrapper<StIvtStructattr>().set("lock_type", IOSEnum.LOCK_TYPE.code("盘点锁")).set("inv_code",mst.getCheck_code()).eq("struct_id", row.getStruct_id()));
|
||||
}
|
||||
}
|
||||
return total_qty;
|
||||
|
||||
@@ -198,6 +198,11 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
String task_id = form.getString("task_id");
|
||||
String status = form.getString("status");
|
||||
|
||||
StIvtCheckdtlHrBcp dtlDao = checkdtlBcpService.getOne(
|
||||
new QueryWrapper<StIvtCheckdtlHrBcp>().lambda()
|
||||
.eq(StIvtCheckdtlHrBcp::getTask_id, task_id)
|
||||
);
|
||||
|
||||
if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) {
|
||||
// 完成
|
||||
|
||||
@@ -208,14 +213,14 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
.eq(SchBaseTask::getTask_id,task_id )
|
||||
);
|
||||
|
||||
// 更新明细
|
||||
StIvtCheckdtlHrBcp dtlDao = checkdtlBcpService.getOne(
|
||||
new QueryWrapper<StIvtCheckdtlHrBcp>().lambda()
|
||||
.eq(StIvtCheckdtlHrBcp::getTask_id, task_id)
|
||||
);
|
||||
// 更新明细 - 判断此条任务是否异常
|
||||
if (dtlDao.getCheck_result().equals(CHECKEnum.CHECK_RESULT.code("异常"))) {
|
||||
dtlDao.setStatus(CHECKEnum.DTL_STATUS.code("异常处理中"));
|
||||
} else {
|
||||
dtlDao.setCheck_result(CHECKEnum.CHECK_RESULT.code("正常"));
|
||||
dtlDao.setStatus(CHECKEnum.DTL_STATUS.code("确认完成"));
|
||||
|
||||
dtlDao.setStatus(CHECKEnum.DTL_STATUS.code("确认完成"));
|
||||
dtlDao.setCheck_result(CHECKEnum.CHECK_RESULT.code("正常"));
|
||||
}
|
||||
checkdtlBcpService.updateById(dtlDao);
|
||||
|
||||
// 更新主表
|
||||
@@ -230,11 +235,12 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
.set(SchBaseTask::getTask_status,TaskStatusEnum.EXECUTING.getCode())
|
||||
.eq(SchBaseTask::getTask_id,task_id )
|
||||
);
|
||||
|
||||
// 更新明细
|
||||
StIvtCheckdtlHrBcp dtlDao = checkdtlBcpService.getOne(
|
||||
new QueryWrapper<StIvtCheckdtlHrBcp>().lambda()
|
||||
.eq(StIvtCheckdtlHrBcp::getTask_id, task_id)
|
||||
} else if (status.equals(AcsTaskEnum.STATUS_CANNEL.getCode())) {
|
||||
// 取消任务
|
||||
iSchBaseTaskService.update(
|
||||
new UpdateWrapper<SchBaseTask>().lambda()
|
||||
.set(SchBaseTask::getIs_delete,true)
|
||||
.eq(SchBaseTask::getTask_id,task_id )
|
||||
);
|
||||
|
||||
}
|
||||
@@ -249,10 +255,23 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
.eq(StIvtCheckdtlHrBcp::getCheckdtl_id, whereJson.getString("checkdtl_id"))
|
||||
);
|
||||
|
||||
if (ObjectUtil.isEmpty(dtlDao.getTask_id()))
|
||||
throw new BadRequestException("请先下发任务!");
|
||||
|
||||
if (!dtlDao.getCheck_result().equals(CHECKEnum.CHECK_RESULT.code("异常"))) {
|
||||
throw new BadRequestException("此货位不是异常货位,请正常出库!");
|
||||
}
|
||||
|
||||
if (Integer.parseInt(dtlDao.getStatus()) > Integer.parseInt(CHECKEnum.DTL_STATUS.code("异常处理中"))) {
|
||||
throw new BadRequestException("已成生出库单或已处理异常!");
|
||||
}
|
||||
|
||||
// 更新明细状态为: 异常处理完成
|
||||
dtlDao.setStatus(CHECKEnum.DTL_STATUS.code("异常处理完成"));
|
||||
checkdtlBcpService.updateById(dtlDao);
|
||||
|
||||
updateMst(dtlDao.getCheck_id());
|
||||
|
||||
/*
|
||||
* 组织出库数据
|
||||
*/
|
||||
@@ -310,6 +329,51 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
iStIvtIostorinvHrBcpOutService.create(param);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void checkExt(JSONObject whereJson) {
|
||||
String task_id = whereJson.getString("task_id");
|
||||
|
||||
// 标记明细为异常
|
||||
StIvtCheckdtlHrBcp dtlDao = checkdtlBcpService.getOne(
|
||||
new QueryWrapper<StIvtCheckdtlHrBcp>().lambda()
|
||||
.eq(StIvtCheckdtlHrBcp::getTask_id, task_id)
|
||||
);
|
||||
|
||||
dtlDao.setCheck_result(CHECKEnum.CHECK_RESULT.code("异常"));
|
||||
checkdtlBcpService.updateById(dtlDao);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void extManage(JSONObject whereJson) {
|
||||
// 校验
|
||||
StIvtCheckdtlHrBcp dtlDao = checkdtlBcpService.getOne(
|
||||
new QueryWrapper<StIvtCheckdtlHrBcp>().lambda()
|
||||
.eq(StIvtCheckdtlHrBcp::getCheckdtl_id, whereJson.getString("checkdtl_id"))
|
||||
);
|
||||
|
||||
if (Integer.parseInt(dtlDao.getStatus()) > Integer.parseInt(CHECKEnum.DTL_STATUS.code("异常处理中"))) {
|
||||
throw new BadRequestException("当前状态不允许强制完成!");
|
||||
}
|
||||
|
||||
// 更新明细
|
||||
dtlDao.setStatus(CHECKEnum.DTL_STATUS.code("确认完成"));
|
||||
checkdtlBcpService.updateById(dtlDao);
|
||||
|
||||
// 更新主表
|
||||
updateMst(dtlDao.getCheck_id());
|
||||
|
||||
// 更新任务
|
||||
iSchBaseTaskService.update(
|
||||
new UpdateWrapper<SchBaseTask>().lambda()
|
||||
.eq(SchBaseTask::getTask_id, dtlDao.getTask_id())
|
||||
.ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
||||
.set(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void delete(Long[] ids) {
|
||||
@@ -332,7 +396,7 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
param.add(JSON.parseObject(JSONUtil.toJsonStr(taskDao)));
|
||||
// 1.下发任务
|
||||
WmsToAcsService bean = SpringContextHolder.getBean(WmsToAcsService.class);
|
||||
Map<String, Object> result = bean.issueTaskToAcs3(param);
|
||||
Map<String, Object> result = bean.issueTaskToAcs4(param);
|
||||
|
||||
// 反馈失败报错
|
||||
if (!ObjectUtil.equal(MapUtil.getStr(result, "status"),"200")) {
|
||||
@@ -389,9 +453,11 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
.eq(StIvtCheckdtlHrBcp::getCheck_id, check_id)
|
||||
);
|
||||
|
||||
// 判断是否都为完成
|
||||
// 判断是否都为完成 或为异常处理完成
|
||||
boolean is_status = dtlDaoList.stream()
|
||||
.allMatch(row -> row.getStatus().equals(CHECKEnum.BILL_STATUS.code("完成")));
|
||||
.allMatch(row -> row.getStatus().equals(CHECKEnum.DTL_STATUS.code("确认完成"))
|
||||
|| row.getStatus().equals(CHECKEnum.DTL_STATUS.code("异常处理完成"))
|
||||
);
|
||||
|
||||
if (is_status) {
|
||||
// 完成单据
|
||||
@@ -402,6 +468,7 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
structattrService.update(
|
||||
new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||
.set(StIvtStructattr::getInv_code, "")
|
||||
.eq(StIvtStructattr::getStruct_id, dtlDao.getStruct_id())
|
||||
);
|
||||
}
|
||||
@@ -410,7 +477,9 @@ public class StIvtCheckmstHrBcpServiceImpl extends ServiceImpl<StIvtCheckmstHrBc
|
||||
// 判断是否都为正常
|
||||
boolean is_check = dtlDaoList.stream()
|
||||
.filter(row -> ObjectUtil.isNotEmpty(row.getCheck_result()))
|
||||
.allMatch(row -> row.getCheck_result().equals(CHECKEnum.CHECK_RESULT.code("正常")));
|
||||
.allMatch(row -> row.getCheck_result().equals(CHECKEnum.CHECK_RESULT.code("正常"))
|
||||
|| row.getCheck_result().equals(CHECKEnum.CHECK_RESULT.code("待确认"))
|
||||
);
|
||||
|
||||
mstDao.setIs_nok(!is_check);
|
||||
|
||||
|
||||
@@ -158,14 +158,6 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
mst.setCreate_time(DateUtil.now());
|
||||
this.save(mst);
|
||||
|
||||
// 更新载具扩展属性
|
||||
iMdPbStoragevehicleextService.update(
|
||||
new UpdateWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.set(MdPbStoragevehicleext::getMaterial_id, mst.getMaterial_id())
|
||||
.set(MdPbStoragevehicleext::getWeight, mst.getPlan_qty())
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, mst.getStoragevehicle_code())
|
||||
);
|
||||
|
||||
// 判断是否自动下发
|
||||
if (ObjectUtil.isNotEmpty(form.getString("auto_send"))) {
|
||||
confirmTask(JSONObject.parseObject(JSON.toJSONString(mst)));
|
||||
@@ -194,15 +186,14 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
mst.setStoragevehicle_code(vehicleDao.getStoragevehicle_code());
|
||||
mst.setStoragevehicle_id(vehicleDao.getStoragevehicle_id());
|
||||
|
||||
// 更新载具对应物料关系、数量
|
||||
// 判断此载具是否已经绑定物料
|
||||
MdPbStoragevehicleext vehicleExtDao = iMdPbStoragevehicleextService.getOne(
|
||||
new QueryWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, row.getString("storagevehicle_code"))
|
||||
);
|
||||
if (ObjectUtil.isNotEmpty(vehicleExtDao)) {
|
||||
vehicleExtDao.setWeight(mst.getPlan_qty());
|
||||
vehicleExtDao.setMaterial_id(mst.getMaterial_id());
|
||||
iMdPbStoragevehicleextService.updateById(vehicleExtDao);
|
||||
if (ObjectUtil.isNotEmpty(vehicleExtDao.getMaterial_id()))
|
||||
throw new BadRequestException("此载具已经绑定物料!"+vehicleDao.getStoragevehicle_code());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -297,19 +288,29 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
param.put("bill_type_scode",mst.getBill_type());
|
||||
iStIvtStructivtflowService.insetIvtChange(param);
|
||||
|
||||
//维护载具
|
||||
//更新仓位
|
||||
structattrService.update(new UpdateWrapper<StIvtStructattr>().lambda()
|
||||
.eq(StIvtStructattr::getStruct_code, mst.getStruct_code())
|
||||
.set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||
.set(StIvtStructattr::getInv_code, "")
|
||||
.set(StIvtStructattr::getTask_code, "")
|
||||
.set(StIvtStructattr::getStoragevehicle_code, mst.getStoragevehicle_code()));
|
||||
|
||||
// 更新载具属性对应关系
|
||||
iMdPbStoragevehicleextService.update(
|
||||
new UpdateWrapper<MdPbStoragevehicleext>().lambda()
|
||||
.eq(MdPbStoragevehicleext::getStoragevehicle_code, mst.getStoragevehicle_code())
|
||||
.set(MdPbStoragevehicleext::getMaterial_id, mst.getMaterial_id())
|
||||
.set(MdPbStoragevehicleext::getStorage_qty, mst.getPlan_qty())
|
||||
);
|
||||
|
||||
// 更新任务为完成
|
||||
iSchBaseTaskService.update(
|
||||
new UpdateWrapper<SchBaseTask>().lambda()
|
||||
.set(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode())
|
||||
.eq(SchBaseTask::getTask_id, mst.getTask_id())
|
||||
);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -106,6 +106,17 @@
|
||||
>
|
||||
盘点出库
|
||||
</el-button>
|
||||
<el-button
|
||||
slot="left"
|
||||
class="filter-item"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
:disabled="add_flag"
|
||||
@click="extManage"
|
||||
>
|
||||
强制确认
|
||||
</el-button>
|
||||
</span>
|
||||
|
||||
</div>
|
||||
@@ -406,6 +417,39 @@ export default {
|
||||
}
|
||||
check.checkOut(this.nowrow).then(res => {
|
||||
this.crud.notify('操作成功!', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
check.getCheckDtl({ 'check_id': this.form.check_id }).then(res => {
|
||||
this.tableData = res
|
||||
// 将明细变成不可编辑
|
||||
for (let i = 0; i < this.tableData.length; i++) {
|
||||
const row = this.tableData[i]
|
||||
this.$set(row, 'edit', false)
|
||||
if (row.status > '04') {
|
||||
row.edit = true
|
||||
}
|
||||
this.tableData.splice(i, 1, row)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
extManage() {
|
||||
if (this.nowrow === null) {
|
||||
this.crud.notify('请先选中一条已存在的库存明细!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return false
|
||||
}
|
||||
check.extManage(this.nowrow).then(res => {
|
||||
this.crud.notify('操作成功!', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
check.getCheckDtl({ 'check_id': this.form.check_id }).then(res => {
|
||||
this.tableData = res
|
||||
// 将明细变成不可编辑
|
||||
for (let i = 0; i < this.tableData.length; i++) {
|
||||
const row = this.tableData[i]
|
||||
this.$set(row, 'edit', false)
|
||||
if (row.status > '04') {
|
||||
row.edit = true
|
||||
}
|
||||
this.tableData.splice(i, 1, row)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
saveCheck() {
|
||||
|
||||
@@ -127,6 +127,14 @@ export function checkOut(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function extManage(data) {
|
||||
return request({
|
||||
url: '/api/bcp/checkHr/extManage',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export default {
|
||||
add,
|
||||
edit,
|
||||
@@ -141,5 +149,6 @@ export default {
|
||||
process0,
|
||||
issueTask,
|
||||
getOutBillDis,
|
||||
process1
|
||||
process1,
|
||||
extManage
|
||||
}
|
||||
|
||||
@@ -263,7 +263,7 @@ export default {
|
||||
if (current !== null) {
|
||||
this.currentRow = current
|
||||
this.downdtl_flag = false
|
||||
if (current.status === '10' || current.status === '30' || current.status === '99') {
|
||||
if (current.status === '10' || current.status === '30') {
|
||||
this.check_flag = false
|
||||
} else {
|
||||
this.check_flag = true
|
||||
|
||||
Reference in New Issue
Block a user