修改
This commit is contained in:
@@ -49,7 +49,7 @@
|
||||
SELECT
|
||||
sub.product_name AS material_code,
|
||||
sub.product_description AS material_name,
|
||||
sub.container_name AS pcsn,
|
||||
sub.sap_pcsn AS pcsn,
|
||||
sub.sale_order_name AS mfgordername,
|
||||
sub.customer_name AS customername,
|
||||
sub.customer_description AS customerdescription,
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
WHEN '1001' THEN '发货出库'
|
||||
WHEN '1002' THEN '报废出库'
|
||||
WHEN '1003' THEN '改切出库'
|
||||
WHEN '1004' THEN '调拨出库'
|
||||
WHEN '1009' THEN '手工出库'
|
||||
END
|
||||
) AS bill_type_name,
|
||||
|
||||
@@ -274,6 +274,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
map.put("update_time", now);
|
||||
map.put("is_delete", "0");
|
||||
map.put("is_upload", "0");
|
||||
map.put("out_stor_id",map.getString("out_stor_id"));
|
||||
if (ObjectUtil.isNotEmpty(user)) {
|
||||
if (!user.equals("mes") || user.equals("sap")) {
|
||||
Long deptId = SecurityUtils.getDeptId();
|
||||
@@ -1934,6 +1935,88 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
||||
subTab.update(jsonSub);
|
||||
}
|
||||
|
||||
JSONObject out_jo = WQLObject.getWQLObject("ST_IVT_IOStorInv").query("iostorinv_id = '"+iostorinv_id+"'").uniqueResult(0);
|
||||
if (out_jo.getString("bill_type").equals("1004")){
|
||||
//调拨出库自动生成调拨入库单
|
||||
WQLObject dtl_wql = WQLObject.getWQLObject("st_ivt_iostorinvdtl");
|
||||
WQLObject mst_wql = WQLObject.getWQLObject("ST_IVT_IOStorInv");
|
||||
WQLObject dis_wql = WQLObject.getWQLObject("ST_IVT_IOStorInvDis");
|
||||
|
||||
//校验主表状态为生成
|
||||
if (!out_jo.getString("bill_status").equals("99")) {
|
||||
throw new BadRequestException("主表状态必须为完成!");
|
||||
}
|
||||
|
||||
JSONObject mst_row = mst_wql.query("iostorinv_id = '" + iostorinv_id + "'").uniqueResult(0);
|
||||
JSONArray dis_rows = dis_wql.query("iostorinv_id = '" + iostorinv_id + "'").getResultJSONArray(0);
|
||||
|
||||
//生成手工入库单
|
||||
String new_iostorinv_id = IdUtil.getSnowflake(1, 1).nextId() + "";
|
||||
String bill_code = CodeUtil.getNewCode("IO_CODE");
|
||||
jo_mst.put("iostorinv_id", new_iostorinv_id);
|
||||
jo_mst.put("bill_code", bill_code);
|
||||
jo_mst.put("io_type", "0");
|
||||
jo_mst.put("bill_type", "0004");
|
||||
jo_mst.put("buss_type", ((String) jo_mst.get("bill_type")).substring(0, 4));
|
||||
//查询移入仓库的信息
|
||||
JSONObject in_stor = WQLObject.getWQLObject("st_ivt_bsrealstorattr").query("stor_id = '"+out_jo.getString("out_stor_id")+"'").uniqueResult(0);
|
||||
if (ObjectUtil.isEmpty(in_stor)){
|
||||
throw new BadRequestException("未查询到对应的移入仓库信息!");
|
||||
}
|
||||
jo_mst.put("stor_id",in_stor.getString("stor_id"));
|
||||
jo_mst.put("stor_code",in_stor.getString("stor_code"));
|
||||
jo_mst.put("stor_name",in_stor.getString("stor_name"));
|
||||
jo_mst.put("bill_status", "30");
|
||||
jo_mst.put("input_optid", currentUserId + "");
|
||||
jo_mst.put("input_optname", nickName);
|
||||
jo_mst.put("input_time", now);
|
||||
jo_mst.put("update_optid", currentUserId + "");
|
||||
jo_mst.put("update_optname", nickName);
|
||||
jo_mst.put("update_time", now);
|
||||
jo_mst.put("out_stor_id", "");
|
||||
mst_wql.insert(jo_mst);
|
||||
|
||||
for (int i = 0; i < dis_rows.size(); i++) {
|
||||
//插入明细表
|
||||
String iostorinvdtl_id = IdUtil.getSnowflake(1, 1).nextId() + "";
|
||||
JSONObject dis_row = dis_rows.getJSONObject(i);
|
||||
//查询对应的出库单明细
|
||||
JSONObject dtl_row = dtl_wql.query("iostorinvdtl_id = '" + dis_row.getString("iostorinvdtl_id") + "'").uniqueResult(0);
|
||||
dis_row.put("iostorinvdtl_id", iostorinvdtl_id);
|
||||
dis_row.put("iostorinv_id", new_iostorinv_id);
|
||||
dis_row.put("seq_no", i + 1);
|
||||
dis_row.put("bill_status", "30");
|
||||
dis_row.put("real_qty", "0");
|
||||
dis_row.put("source_billdtl_id", dtl_row.getString("iostorinvdtl_id"));
|
||||
dis_row.put("source_bill_type", mst_row.getString("bill_type"));
|
||||
dis_row.put("source_bill_code", mst_row.getString("bill_code"));
|
||||
dis_row.put("source_bill_table", "ST_IVT_IOStorInvDtl");
|
||||
dis_row.put("assign_qty", dis_row.getString("plan_qty"));
|
||||
dis_row.put("unassign_qty", "0");
|
||||
//插入调拨明细表
|
||||
dtl_wql.insert(dis_row);
|
||||
|
||||
dis_row.put("iostorinvdis_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
dis_row.put("seq_no", 1);
|
||||
dis_row.put("sect_id", "");
|
||||
dis_row.put("sect_code", "");
|
||||
dis_row.put("sect_name", "");
|
||||
dis_row.put("struct_id", "");
|
||||
dis_row.put("struct_code", "");
|
||||
dis_row.put("struct_name", "");
|
||||
dis_row.put("work_status", "00");
|
||||
dis_row.put("real_qty", "0");
|
||||
//插入分配表
|
||||
dis_wql.insert(dis_row);
|
||||
|
||||
//将包装关系中对应的记录状态改为包装
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("status", "1");
|
||||
WQLObject.getWQLObject("PDM_BI_SubPackageRelation").update(map, "package_box_SN = '" + dis_row.getString("box_no") + "' AND status = '3'");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* 回传:
|
||||
* 销售出库:sap、mes
|
||||
|
||||
@@ -98,6 +98,25 @@
|
||||
<el-form-item label="业务日期" prop="biz_date">
|
||||
<el-date-picker v-model="form.biz_date" type="date" placeholder="选择日期" style="width: 210px" value-format="yyyy-MM-dd" :disabled="crud.status.view > 0" />
|
||||
</el-form-item>
|
||||
<el-form-item label="移入仓库" prop="out_stor_id" v-if="form.bill_type === '1004'">
|
||||
<label slot="label">移入仓库:</label>
|
||||
<el-select
|
||||
v-model="form.out_stor_id"
|
||||
clearable
|
||||
placeholder="仓库"
|
||||
class="filter-item"
|
||||
style="width: 210px"
|
||||
:disabled="crud.status.view > 0"
|
||||
@change="storChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in inStorList"
|
||||
:key="item.stor_id"
|
||||
:label="item.stor_name"
|
||||
:value="item.stor_id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<label slot="label">备 注:</label>
|
||||
<el-input v-model="form.remark" style="width: 380px;" rows="2" type="textarea" :disabled="crud.status.view > 0" />
|
||||
@@ -255,6 +274,7 @@ const defaultForm = {
|
||||
bill_type: '',
|
||||
remark: '',
|
||||
biz_date: new Date(),
|
||||
out_stor_id: '',
|
||||
create_mode: '',
|
||||
tableData: []
|
||||
}
|
||||
@@ -279,6 +299,7 @@ export default {
|
||||
nowrow: {},
|
||||
nowindex: '',
|
||||
storlist: [],
|
||||
inStorList: [],
|
||||
invtypelist: [],
|
||||
rules: {
|
||||
stor_id: [
|
||||
@@ -305,15 +326,28 @@ export default {
|
||||
crudUserStor.getUserStor().then(res => {
|
||||
this.storlist = res
|
||||
})
|
||||
crudUserStor.queryStor({}).then(res => {
|
||||
this.inStorList = res
|
||||
})
|
||||
},
|
||||
close() {
|
||||
this.$emit('AddChanged')
|
||||
},
|
||||
[CRUD.HOOK.beforeSubmit]() {
|
||||
debugger
|
||||
if (this.form.tableData.length === 0) {
|
||||
this.crud.notify('请至少选择一条明细', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return false
|
||||
}
|
||||
if (this.form.bill_type !== '1004') {
|
||||
this.form.out_stor_id = ''
|
||||
}
|
||||
if (this.form.bill_type === '1004') {
|
||||
if (this.form.out_stor_id === this.form.stor_id) {
|
||||
this.crud.notify('移出仓库和移入仓库不能一致!', CRUD.NOTIFICATION_TYPE.INFO)
|
||||
return false
|
||||
}
|
||||
}
|
||||
},
|
||||
[CRUD.HOOK.afterToEdit]() {
|
||||
checkoutbill.getOutBillDtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
|
||||
|
||||
Reference in New Issue
Block a user