rev:二期立库区分退货入库木箱

This commit is contained in:
2024-09-13 15:25:08 +08:00
parent 7dffc9a530
commit d8735b2184
7 changed files with 63 additions and 12 deletions

View File

@@ -757,6 +757,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
jsonIvt.put("material_id", disDao.getMaterial_id());
jsonIvt.put("pcsn", disDao.getPcsn());
jsonIvt.put("canuse_qty", disDao.getPlan_qty());
jsonIvt.put("quality_scode", disDao.getQuality_scode());
// 判断木箱是否是主存区的,如果是主存区的则不更新库存
if (disDao.getSect_id().toString().equals(RegionTypeEnum.TWO_BZC01.getId())) {
@@ -955,6 +956,7 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl<StIvtIostorinvOutM
jsonIvt.put("material_id", dao.getMaterial_id());
jsonIvt.put("pcsn", dao.getPcsn());
jsonIvt.put("canuse_qty", dao.getPlan_qty());
jsonIvt.put("quality_scode", dao.getQuality_scode());
needUpdateIvtList.add(jsonIvt);
}

View File

@@ -9,6 +9,7 @@ import org.nl.b_lms.storage_manage.ios.enums.IOSEnum;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.IStIvtIostorinvService;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdtlService;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinv;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.dao.mapper.StIvtIostorinvdisMapper;
import org.nl.common.utils.IdUtil;
@@ -54,6 +55,9 @@ public class StIvtIostorinvdisServiceImpl extends ServiceImpl<StIvtIostorinvdisM
.eq(StIvtIostorinvdis::getIostorinv_id, iostorinv_id)
);
// 查询主表
StIvtIostorinv mstDao = iStIvtIostorinvService.getById(iostorinv_id);
// 批量插入分配明细集合
ArrayList<StIvtIostorinvdis> disDaoList = new ArrayList<>();
@@ -101,6 +105,11 @@ public class StIvtIostorinvdisServiceImpl extends ServiceImpl<StIvtIostorinvdisM
disDao.setPoint_id(json.getLongValue("point_id"));
}
// 如果是退货入库则品质类型为 不良品
if (mstDao.getBill_type().equals(IOSEnum.IN_TYPE.code("退货入库"))) {
disDao.setQuality_scode(IOSEnum.QUALITY_SCODE.code("不合格"));
}
disDaoList.add(disDao);
}
}

View File

@@ -302,7 +302,7 @@ public class OutBussManageServiceImpl implements OutBussManageService {
.struct_name(jsonIvt.getString("struct_name"))
.material_id(jsonIvt.getLongValue("material_id"))
.pcsn(jsonIvt.getString("pcsn"))
.quality_scode("01")
.quality_scode(jsonIvt.getString("quality_scode"))
.storagevehicle_id(jsonIvt.getLongValue("storagevehicle_id"))
.storagevehicle_code(jsonIvt.getString("storagevehicle_code"))
.is_issued(IOSEnum.IS_NOTANDYES.code(""))
@@ -316,6 +316,10 @@ public class OutBussManageServiceImpl implements OutBussManageService {
.box_no(jsonSub.getString("package_box_sn"))
.build();
if (ObjectUtil.isEmpty(disDao.getQuality_scode())) {
disDao.setQuality_scode(IOSEnum.QUALITY_SCODE.code("合格品"));
}
resultDisList.add(disDao);
}
@@ -334,7 +338,7 @@ public class OutBussManageServiceImpl implements OutBussManageService {
jsonParam.put("pcsn", json.getString("pcsn"));
jsonParam.put("change_qty", json.getString("canuse_qty"));
jsonParam.put("bill_type_scode", mstDao.getBill_type());
jsonParam.put("quality_scode", IOSEnum.QUALITY_SCODE.code("合格品"));
jsonParam.put("quality_scode", json.getString("quality_scode"));
jsonParam.put("inv_id", mstDao.getIostorinv_id());
jsonParam.put("bill_code", mstDao.getBill_code());
jsonParam.put("bill_table", "ST_IVT_IOStorInv");
@@ -817,7 +821,7 @@ public class OutBussManageServiceImpl implements OutBussManageService {
jsonParam.put("change_qty", jsonMoveDtl.getString("qty"));
jsonParam.put("inv_id", jsonMoveMst.getString("moveinv_id"));
jsonParam.put("bill_code", jsonMoveMst.getString("bill_code"));
jsonParam.put("quality_scode", IOSEnum.QUALITY_SCODE.code("合格品"));
jsonParam.put("quality_scode", jsonMoveDtl.getString("quality_scode"));
storPublicService.IOStor(jsonParam, IOSEnum.IVT_CHANGE.code("减待入"));
jsonAttr.put("lock_type", IOSEnum.LOCK_TYPE.code("货位异常锁"));
@@ -874,7 +878,7 @@ public class OutBussManageServiceImpl implements OutBussManageService {
jsonParam2.put("material_id", jsonMater.getString("material_id"));
jsonParam2.put("pcsn", jsonMoveDtl.getString("pcsn"));
jsonParam2.put("change_qty", jsonMoveDtl.getString("qty"));
jsonParam2.put("quality_scode", IOSEnum.QUALITY_SCODE.code("合格品"));
jsonParam2.put("quality_scode", jsonMoveDtl.getString("quality_scode"));
jsonParam2.put("inv_id", jsonMoveMst.getString("moveinv_id"));
jsonParam2.put("bill_code", jsonMoveMst.getString("bill_code"));
jsonParam2.put("bill_type_scode", jsonMoveMst.getString("bill_code"));

View File

@@ -71,8 +71,7 @@
LEFT JOIN ST_IVT_StructAttr attr ON attr.struct_id = ivt.struct_id
LEFT JOIN PDM_BI_SubPackageRelation sub ON attr.storagevehicle_code = sub.package_box_SN AND sub.container_name = ivt.pcsn
WHERE
ivt.quality_scode = '01'
AND attr.lock_type = '1'
attr.lock_type = '1'
AND ivt.canuse_qty <> '0'
OPTION 输入.sect_id <> ""

View File

@@ -58,6 +58,7 @@ public class StructivtServiceImpl implements StructivtService {
String ivt_status = MapUtil.getStr(whereJson, "ivt_status");
String is_virtual = MapUtil.getStr(whereJson, "is_virtual");
String sub_type = MapUtil.getStr(whereJson, "sub_type");
String quality_scode = MapUtil.getStr(whereJson, "quality_scode");
JSONObject map = new JSONObject();
map.put("flag", "1");
map.put("stor_id", stor_id);
@@ -65,6 +66,7 @@ public class StructivtServiceImpl implements StructivtService {
map.put("ivt_status", ivt_status);
map.put("is_virtual", is_virtual);
map.put("sub_type", sub_type);
map.put("quality_scode", quality_scode);
if (StrUtil.isNotEmpty(material)) {
map.put("material", "%" + material + "%");
}
@@ -222,12 +224,14 @@ public class StructivtServiceImpl implements StructivtService {
String rein_flag = MapUtil.getStr(whereJson, "rein_flag");
String ivt_status = MapUtil.getStr(whereJson, "ivt_status");
String sub_type = MapUtil.getStr(whereJson, "sub_type");
String quality_scode = MapUtil.getStr(whereJson, "quality_scode");
JSONObject map = new JSONObject();
map.put("flag", "2");
map.put("stor_id", stor_id);
map.put("is_virtual", is_virtual);
map.put("ivt_status", ivt_status);
map.put("sub_type", sub_type);
map.put("quality_scode", quality_scode);
if (StrUtil.isNotEmpty(material)) {
map.put("material", "%" + material + "%");
}

View File

@@ -28,6 +28,7 @@
输入.rein_flag TYPEAS f_string
输入.in_stor_id TYPEAS f_string
输入.sub_type TYPEAS s_string
输入.quality_scode TYPEAS s_string
[临时表]
--这边列出来的临时表就会在运行期动态创建
@@ -159,9 +160,15 @@
OPTION 输入.pcsn <> ""
ivt.pcsn like 输入.pcsn
ENDOPTION
OPTION 输入.quality_scode <> ""
ivt.quality_scode = 输入.quality_scode
ENDOPTION
OPTION 输入.is_virtual = "0"
sect.sect_type_attr <> '09'
ENDOPTION
OPTION 输入.is_virtual = "1"
sect.sect_type_attr = '09'
ENDOPTION
@@ -331,6 +338,10 @@
ivt.pcsn like 输入.pcsn
ENDOPTION
OPTION 输入.quality_scode <> ""
ivt.quality_scode = 输入.quality_scode
ENDOPTION
OPTION 输入.sap_pcsn <> ""
sub.sap_pcsn like 输入.sap_pcsn
ENDOPTION

View File

@@ -174,6 +174,24 @@
/>
</el-select>
</el-form-item>
<el-form-item label="是否退货">
<el-select
v-model="query.quality_scode"
clearable
size="mini"
style="width: 200px;"
placeholder="请选择"
class="filter-item"
@change="crud.toQuery"
>
<el-option
v-for="item in ivtQualityList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<rrOperation :crud="crud" />
</el-form>
</div>
@@ -233,11 +251,6 @@
:min-width="flexWidth('material_name',crud.data,'物料名称')"
/>
<!-- <el-table-column prop="region_name" label="下料区域" min-width="120" show-overflow-tooltip />-->
<!-- <el-table-column prop="quality_scode" label="品质类型" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ dict.label.ST_QUALITY_SCODE[scope.row.quality_scode] }}
</template>
</el-table-column>-->
<el-table-column
prop="package_box_sn"
label="木箱码"
@@ -261,7 +274,12 @@
<el-table-column prop="joint_type" label="接头数" min-width="150" />
<el-table-column prop="sub_type" label="子卷状态" min-width="150" :formatter="formatSubType" />
<el-table-column prop="produce_age" label="生产时长(天)" min-width="120" />
<el-table-column prop="paper_type" label="管件类型" min-width="150" />
<!-- <el-table-column prop="quality_scode" label="品质类型" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
{{ dict.label.ST_QUALITY_SCODE[scope.row.quality_scode] }}
</template>
</el-table-column>-->
<el-table-column prop="paper_type" label="品质类型" min-width="150" />
<el-table-column prop="paper_code" label="管件编码" min-width="150" />
<el-table-column prop="paper_name" label="管件描述" min-width="250" />
<el-table-column prop="remark" label="超期原因" min-width="250">
@@ -366,6 +384,10 @@ export default {
{ 'value': '2', 'label': '改切' },
{ 'value': '1', 'label': '返检' }
],
ivtQualityList: [
{ 'value': '01', 'label': '否' },
{ 'value': '02', 'label': '是' }
],
remarkList: [
{ 'value': '1', 'label': '客户原因' },
{ 'value': '2', 'label': '生产质量原因' },