fix:同类木箱兼容问题
This commit is contained in:
@@ -1,7 +1,12 @@
|
||||
package org.nl.b_lms.bst.ivt.stockingivt.controller;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.b_lms.pdm.info.dao.PdmBiOrderbominfo;
|
||||
import org.nl.b_lms.storage_manage.database.service.IMdpbSameBoxService;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.MdpbSameBox;
|
||||
import org.nl.common.TableDataInfo;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.modules.logging.annotation.Log;
|
||||
@@ -13,6 +18,8 @@ import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -27,6 +34,8 @@ public class BstIvtStockingivtController {
|
||||
|
||||
@Autowired
|
||||
private IBstIvtStockingivtService bstIvtStockingivtService;
|
||||
@Autowired
|
||||
private IMdpbSameBoxService imdpbSameBoxService;
|
||||
|
||||
@GetMapping
|
||||
@Log("查询备货区点位库存表")
|
||||
@@ -83,7 +92,14 @@ public class BstIvtStockingivtController {
|
||||
@Log("查询bom记录")
|
||||
@GetMapping("/showBom2")
|
||||
public ResponseEntity<Object> showBom2(@RequestParam Map param) {
|
||||
return new ResponseEntity<>(bstIvtStockingivtService.showBom2(param), HttpStatus.OK);
|
||||
PdmBiOrderbominfo pdmBiOrderbominfo = bstIvtStockingivtService.showBom2(param);
|
||||
List<MdpbSameBox> list = imdpbSameBoxService.list(new LambdaQueryWrapper<MdpbSameBox>().eq(MdpbSameBox::getBox_code, pdmBiOrderbominfo.getProductName()));
|
||||
JSONObject json = (JSONObject) JSONObject.toJSON(pdmBiOrderbominfo);
|
||||
ArrayList<String> arrayList = new ArrayList<>();
|
||||
list.stream().map(MdpbSameBox::getSame_box_code).forEach(arrayList::add);
|
||||
json.put("sameBoxCode", arrayList);
|
||||
json.put("sameBoxName", arrayList);
|
||||
return new ResponseEntity<>(json, HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -44,7 +44,9 @@ import org.nl.b_lms.sch.tasks.TwoOutBoxTask;
|
||||
import org.nl.b_lms.sch.tasks.first_floor_area.ZxqTask;
|
||||
import org.nl.b_lms.sch.tasks.first_floor_area.auto.TaskQueue;
|
||||
import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService;
|
||||
import org.nl.b_lms.storage_manage.database.service.IMdpbSameBoxService;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.BstIvtBoxinfo;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.MdpbSameBox;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.mapper.BstIvtBoxinfoMapper;
|
||||
import org.nl.b_lms.storage_manage.ios.enums.IOSEnum;
|
||||
import org.nl.b_lms.storage_manage.ios.service.iostorInv.util.impl.OutBoxManageServiceImpl;
|
||||
@@ -138,6 +140,9 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl<PdmBiSubpack
|
||||
@Autowired
|
||||
private ISysParamService iSysParamService;
|
||||
|
||||
@Autowired
|
||||
private IMdpbSameBoxService mdpbSameBoxService;
|
||||
|
||||
@Resource
|
||||
@Qualifier("threadPoolExecutor")
|
||||
private ThreadPoolExecutor pool;
|
||||
@@ -491,8 +496,11 @@ public class PdmBiSubpackagerelationServiceImpl extends ServiceImpl<PdmBiSubpack
|
||||
if (ObjectUtils.isEmpty(packagerelationList)) {
|
||||
throw new BadRequestException("无选中子卷信息");
|
||||
}
|
||||
if (!packagerelationList.get(0).getBox_type().equals(whereJson.getString("checked"))){
|
||||
throw new BadRequestException("子卷订单bom的木箱规格与所选木箱规格不一致,请重新操作");
|
||||
List<MdpbSameBox> list = mdpbSameBoxService.list(new LambdaQueryWrapper<MdpbSameBox>().eq(MdpbSameBox::getBox_code, packagerelationList.get(0).getBox_type()));
|
||||
List<MdpbSameBox> collect = list.stream().filter(row -> row.getSame_box_code().equals(whereJson.getString("checked"))).collect(Collectors.toList());
|
||||
//改为支持多种木箱进行
|
||||
if (!packagerelationList.get(0).getBox_type().equals(whereJson.getString("checked")) && ObjectUtil.isEmpty(collect)) {
|
||||
throw new BadRequestException("子卷订单bom的木箱规格及同类木箱与所选木箱规格不符合,请重新操作");
|
||||
}
|
||||
//检查是否存在已分配规格的子卷号
|
||||
if (packagerelationList.stream()
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.nl.b_lms.storage_manage.database.service.impl;
|
||||
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
@@ -12,7 +13,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.nl.b_lms.pdm.info.dao.PdmBiOrderbominfo;
|
||||
import org.nl.b_lms.pdm.info.service.IPdmBiOrderbominfoService;
|
||||
import org.nl.b_lms.storage_manage.database.service.IMdpbBoxtypeService;
|
||||
import org.nl.b_lms.storage_manage.database.service.IMdpbSameBoxService;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.MdpbBoxtype;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.MdpbSameBox;
|
||||
import org.nl.b_lms.storage_manage.database.service.dao.mapper.MdpbBoxtypeMapper;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
@@ -20,8 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -36,6 +38,8 @@ public class MdpbBoxtypeServiceImpl extends ServiceImpl<MdpbBoxtypeMapper, MdpbB
|
||||
|
||||
@Autowired
|
||||
private IPdmBiOrderbominfoService pdmBiOrderbominfoService;
|
||||
@Autowired
|
||||
private IMdpbSameBoxService mdpbSameBoxService;
|
||||
@Override
|
||||
public IPage<MdpbBoxtype> queryAll(Map whereJson, PageQuery page) {
|
||||
// 查询条件
|
||||
@@ -99,10 +103,30 @@ public class MdpbBoxtypeServiceImpl extends ServiceImpl<MdpbBoxtypeMapper, MdpbB
|
||||
if (ObjectUtil.isEmpty(boxtype)) {
|
||||
throw new BadRequestException("木箱编码:"+whereJson.getString("productName")+"查询木箱类型失败!");
|
||||
}
|
||||
//更新BOM信息
|
||||
pdmBiOrderbominfoService.update(new UpdateWrapper<PdmBiOrderbominfo>().lambda()
|
||||
.eq(PdmBiOrderbominfo::getMfgOrder,whereJson.getString("mfgOrder"))
|
||||
.set(PdmBiOrderbominfo::getProductName, whereJson.getString("productName"))
|
||||
.set(PdmBiOrderbominfo::getDescription, boxtype.getBox_name())
|
||||
);
|
||||
|
||||
//更新该木箱对应相同木箱类型1、先删除2、再插入
|
||||
//删除
|
||||
mdpbSameBoxService.remove(new QueryWrapper<MdpbSameBox>().lambda().eq(MdpbSameBox::getBox_code,whereJson.getString("productName")));
|
||||
|
||||
ArrayList<String> sameBoxCode = (ArrayList<String>) whereJson.get("sameBoxCode");
|
||||
//插入
|
||||
MdpbSameBox[] array = sameBoxCode.stream().map(a -> {
|
||||
MdpbSameBox mdpbSameBox = new MdpbSameBox();
|
||||
mdpbSameBox.setBox_code(whereJson.getString("productName"));
|
||||
mdpbSameBox.setSame_box_code(a);
|
||||
MdpbBoxtype same_box_name = this.getById(a);
|
||||
if (ObjectUtil.isEmpty(boxtype)) {
|
||||
throw new BadRequestException("木箱编码:"+whereJson.getString("productName")+"查询木箱类型失败!");
|
||||
}
|
||||
mdpbSameBox.setSame_box_name(same_box_name.getBox_name());
|
||||
return mdpbSameBox;
|
||||
}).toArray(MdpbSameBox[]::new);
|
||||
mdpbSameBoxService.saveBatch(Arrays.asList(array));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -500,7 +500,7 @@
|
||||
<el-table-column v-if="false" prop="workorder_id" label="分切计划标识" />
|
||||
<el-table-column prop="status" label="状态" :formatter="formatStatusName" />
|
||||
<el-table-column prop="order_type" label="订单类型" :formatter="formatTypeName" />
|
||||
<el-table-column prop="mfg_order_name" label="订单号" min-width="200">
|
||||
<el-table-column prop="mfg_order_name" label="订单号" min-width="220">
|
||||
<template slot-scope="scope">
|
||||
<el-link type="primary" @click="toView2(scope.$index, scope.row)">{{ scope.row.mfg_order_name }}</el-link>
|
||||
</template>
|
||||
|
||||
@@ -15,11 +15,11 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="工单号" prop="mfgOrder">
|
||||
<label slot="label">工单号:</label>
|
||||
<el-input v-model="form.mfgOrder" disabled clearable style="width: 300px" />
|
||||
<el-input v-model="form.mfgOrder" disabled clearable style="width: 300px" />
|
||||
</el-form-item>
|
||||
<el-form-item label="木箱编码" prop="productName">
|
||||
<label slot="label">木箱编码:</label>
|
||||
<el-input v-model="form.productName" disabled clearable style="width: 300px" />
|
||||
<el-input v-model="form.productName" disabled clearable style="width: 300px" />
|
||||
</el-form-item>
|
||||
<el-form-item label="木箱描述" prop="description">
|
||||
<el-select
|
||||
@@ -45,7 +45,30 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="管芯描述" prop="carrierDescription">
|
||||
<label slot="label">管芯描述:</label>
|
||||
<el-input v-model="form.carrierDescription" disabled clearable style="width: 300px" />
|
||||
<el-input v-model="form.carrierDescription" disabled clearable style="width: 300px" />
|
||||
</el-form-item>
|
||||
<el-form-item label="同类木箱编码" prop="sameBoxCode">
|
||||
<label slot="label">同类木箱编码:</label>
|
||||
<el-input v-model="form.sameBoxCode" disabled clearable style="width: 300px" />
|
||||
</el-form-item>
|
||||
<el-form-item label="同类木箱描述" prop="sameBoxName">
|
||||
<el-select
|
||||
v-model="form.sameBoxName"
|
||||
placeholder="木箱描述"
|
||||
style="width: 400px"
|
||||
multiple
|
||||
class="filter-item"
|
||||
clearable
|
||||
filterable
|
||||
@change="hand2"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in typelist"
|
||||
:key="item.box_type"
|
||||
:label="item.box_name"
|
||||
:value="item.box_type"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
@@ -101,6 +124,9 @@ export default {
|
||||
hand(value) {
|
||||
this.form.productName = value
|
||||
},
|
||||
hand2(value) {
|
||||
this.form.sameBoxCode = value
|
||||
},
|
||||
close() {
|
||||
this.$emit('update:dialogShow', false)
|
||||
this.form = {}
|
||||
|
||||
Reference in New Issue
Block a user