This commit is contained in:
2022-12-01 11:52:25 +08:00
17 changed files with 165 additions and 83 deletions

View File

@@ -153,13 +153,17 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
if (StrUtil.equals(inst1.getInstruction_status(), "0")) {
inst1.setInstruction_status("1");
instructionService.update(inst1);
TaskDto taskDto = taskserver.findByCode(inst1.getTask_code());
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
TaskDto taskDto = taskserver.findByCodeFromCache(inst1.getTask_code());
if (ObjectUtil.isNotEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())){
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
}
}
}
}
@@ -211,12 +215,16 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
e.printStackTrace();
}
TaskDto taskDto = taskserver.findByCode(inst2.getTask_code());
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getTask_id());
map.put("task_status", "2");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
if (ObjectUtil.isNotEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())){
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getTask_id());
map.put("task_status", "2");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
}
String next_device_code = taskDto.getNext_device_code();
String start_device_code = taskDto.getStart_device_code();
Device startDevice = deviceAppService.findDeviceByCode(start_device_code);

View File

@@ -186,13 +186,17 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
if (StrUtil.equals(inst1.getInstruction_status(), "0")) {
inst1.setInstruction_status("1");
instructionService.update(inst1);
TaskDto taskDto = taskserver.findByCode(inst1.getTask_code());
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
TaskDto taskDto = taskserver.findByCodeFromCache(inst1.getTask_code());
if (!ObjectUtil.isEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())) {
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
};
}
}
}
@@ -203,19 +207,22 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
Instruction inst1 = instructionService.findByCodeFromCache(String.valueOf(task1));
if (inst1 != null) {
if (StrUtil.equals(inst1.getInstruction_status(), "1")) {
finish_instruction(inst1);
JSONArray array = new JSONArray();
TaskDto taskDto = taskserver.findByCode(inst1.getTask_code());
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "2");
map.put("finished_type", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
writing("to_command1", "0");
writing("to_onset1", "0");
writing("to_target1", "0");
writing("to_task1", "0");
this.finish_instruction(inst1);
TaskDto taskDto = taskserver.findByCodeFromCache(inst1.getTask_code());
if (!ObjectUtil.isEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())) {
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "2");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
};
this.writing("to_command1", "0");
this.writing("to_onset1", "0");
this.writing("to_target1", "0");
this.writing("to_task1", "0");
}
}
}
@@ -228,13 +235,17 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
if (StrUtil.equals(inst2.getInstruction_status(), "0")) {
inst2.setInstruction_status("1");
instructionService.update(inst2);
TaskDto taskDto = taskserver.findByCode(inst2.getTask_code());
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
TaskDto taskDto = taskserver.findByCodeFromCache(inst2.getTask_code());
if (!ObjectUtil.isEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())){
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "1");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
};
}
}
}
@@ -245,17 +256,21 @@ public class SlitTwoManipulatorDeviceDriver extends AbstractOpcDeviceDriver impl
if (inst2 != null) {
if (StrUtil.equals(inst2.getInstruction_status(), "1")) {
finish_instruction(inst2);
JSONArray array = new JSONArray();
TaskDto taskDto = taskserver.findByCode(inst2.getTask_code());
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "2");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
writing("to_command2", "0");
writing("to_onset2", "0");
writing("to_target2", "0");
writing("to_task2", "0");
TaskDto taskDto = taskserver.findByCodeFromCache(inst2.getTask_code());
if (!ObjectUtil.isEmpty(taskDto)){
if (StrUtil.isNotEmpty(taskDto.getExt_task_id())){
JSONArray array = new JSONArray();
JSONObject map = new JSONObject();
map.put("task_id", taskDto.getExt_task_id());
map.put("task_status", "2");
array.add(map);
acsToWmsService.feedbackTaskStatusToWms(array);
}
};
this.writing("to_command2", "0");
this.writing("to_onset2", "0");
this.writing("to_target2", "0");
this.writing("to_task2", "0");
}
}
}

View File

@@ -59,7 +59,7 @@ public class TaskDto implements Serializable {
/**
* 再次请求
*/
private String request_again;
private String request_again = "0";
private String request_again_success;
/**

View File

@@ -62,8 +62,8 @@ public class UserStorController {
@PostMapping("/getSect")
@Log("获取人员对应下拉框-多级下拉框")
@ApiOperation("获取人员对应下拉框-多级下拉框")
public ResponseEntity<Object> getSect() {
return new ResponseEntity<>(userStorService.getSect(),HttpStatus.OK);
public ResponseEntity<Object> getSect(@RequestBody JSONObject whereJson) {
return new ResponseEntity<>(userStorService.getSect(whereJson),HttpStatus.OK);
}
}

View File

@@ -42,5 +42,5 @@ public interface UserStorService {
/**
* 获取人员对应下拉框 多级下拉框
*/
JSONObject getSect();
JSONObject getSect(JSONObject whereJson);
}

View File

@@ -122,13 +122,14 @@ public class UserStorServiceImpl implements UserStorService {
}
@Override
public JSONObject getSect() {
public JSONObject getSect(JSONObject whereJson) {
/*
* 获取人员对应仓库下拉框公共方法 多级下拉框
*/
JSONArray new_ja = new JSONArray();
HashMap<String, String> stor_map = new HashMap<>();
stor_map.put("flag", "2");
stor_map.put("stor_id", whereJson.getString("stor_id"));
//获取人员对应的仓库
String in_stor_id = this.getInStor();

View File

@@ -23,6 +23,7 @@
输入.is_reversed TYPEAS s_string
输入.blurry TYPEAS s_string
输入.in_stor_id TYPEAS f_string
输入.stor_id TYPEAS s_string
[临时表]
@@ -100,6 +101,9 @@
ENDOPTION
OPTION 输入.in_stor_id <> ""
stor.stor_id in 输入.in_stor_id
ENDOPTION
OPTION 输入.stor_id <> ""
stor.stor_id = 输入.stor_id
ENDOPTION
ENDSELECT
ENDQUERY

View File

@@ -97,6 +97,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
map.put("begin_time", MapUtil.getStr(whereJson, "begin_time"));
map.put("end_time", MapUtil.getStr(whereJson, "end_time"));
map.put("sap_pcsn", MapUtil.getStr(whereJson, "sap_pcsn"));
map.put("stor_id", MapUtil.getStr(whereJson, "stor_id"));
map.put("canuse_qty", "0");
if (StrUtil.isNotEmpty(map.get("material_code"))) {
@@ -744,7 +745,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
jsonMap.put("flag", "1");
jsonMap.put("material_id", dtl.getString("material_id"));
jsonMap.put("sale_order_name", dtl.getString("source_bill_code"));
jsonMap.put("sect_id", "");
jsonMap.put("sect_id", whereJson.getString("sect_id"));
JSONObject jsonOneIvt = WQL.getWO("ST_OUTIVT01").addParamMap(jsonMap).process().uniqueResult(0);
if (ObjectUtil.isEmpty(jsonOneIvt)) throw new BadRequestException("库存不足");
@@ -820,9 +821,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
jsonMap.put("flag", "1");
jsonMap.put("material_id", dtl.getString("material_id"));
jsonMap.put("pcsn", dtl.getString("pcsn"));
jsonMap.put("sect_id", whereJson.getString("sect_id"));
JSONObject jsonIvt = WQL.getWO("ST_OUTIVT01").addParamMap(jsonMap).process().uniqueResult(0);
if (ObjectUtil.isEmpty(jsonIvt)) throw new BadRequestException("此物料批次库存不存在");
if (ObjectUtil.isEmpty(jsonIvt)) throw new BadRequestException("库存不");
double canuse_qty = jsonIvt.getDoubleValue("canuse_qty");
jsonIvt.put("change_qty", canuse_qty + "");
@@ -953,7 +955,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
jsonMap.put("flag", "1");
jsonMap.put("material_id", dtl.getString("material_id"));
jsonMap.put("sale_order_name", dtl.getString("source_bill_code"));
jsonMap.put("sect_id", "");
jsonMap.put("sect_id", whereJson.getString("sect_id"));
JSONObject jsonOneIvt = WQL.getWO("ST_OUTIVT01").addParamMap(jsonMap).process().uniqueResult(0);
if (ObjectUtil.isEmpty(jsonOneIvt)) throw new BadRequestException("库存不足");
@@ -1029,9 +1031,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
jsonMap.put("flag", "1");
jsonMap.put("material_id", dtl.getString("material_id"));
jsonMap.put("pcsn", dtl.getString("pcsn"));
jsonMap.put("sect_id", whereJson.getString("sect_id"));
JSONObject jsonIvt = WQL.getWO("ST_OUTIVT01").addParamMap(jsonMap).process().uniqueResult(0);
if (ObjectUtil.isEmpty(jsonIvt)) throw new BadRequestException("此物料批次库存不存在");
if (ObjectUtil.isEmpty(jsonIvt)) throw new BadRequestException("库存不");
double canuse_qty = jsonIvt.getDoubleValue("canuse_qty");
jsonIvt.put("change_qty", canuse_qty + "");

View File

@@ -479,6 +479,10 @@
mater.material_name like 输入.material_code)
ENDOPTION
OPTION 输入.stor_id <> ""
attr.stor_id = 输入.stor_id
ENDOPTION
OPTION 输入.sap_pcsn <> ""
sub.sap_pcsn like 输入.sap_pcsn
ENDOPTION

View File

@@ -385,7 +385,7 @@ export default {
}
},
created() {
crudUserStor.getSect().then(res => {
crudUserStor.getSect({ 'stor_id': '' }).then(res => {
this.sects = res.content
})
},

View File

@@ -32,10 +32,11 @@ export function getUserStor(data) {
})
}
export function getSect() {
export function getSect(data) {
return request({
url: '/api/userStor/getSect',
method: 'post'
method: 'post',
data
})
}

View File

@@ -115,7 +115,7 @@
<span class="role-span">载具物料明细</span>
<div class="crud-opts-form">
<el-form ref="form" :inline="true" :model="form" size="mini">
<el-form-item label="区" prop="gender5">
<el-form-item label="区" prop="gender5">
<el-cascader
placeholder="请选择"
:options="sects"
@@ -228,6 +228,7 @@ import crudSectattr from '@/views/wms/basedata/st/sect/sectattr'
import StructDiv from '@/views/wms/pub/StructDialog'
import crudRawAssist from '@/views/wms/st/inbill/rawassist'
import crudPoint from '@/views/wms/sch/point/point'
import crudUserStor, { getSect } from '@/views/wms/basedata/st/userStor/userStor'
export default {
name: 'DivDialog',
@@ -251,6 +252,10 @@ export default {
billType: {
type: String,
default: null
},
storId: {
type: String,
default: null
}
},
data() {
@@ -288,10 +293,10 @@ export default {
},
methods: {
open() {
debugger
crudSectattr.getSect({ 'is_virtualstore': '1' }).then(res => {
crudUserStor.getSect({ 'stor_id': this.storId}).then(res => {
this.sects = res.content
})
const area_type = '1585164789083148288'
crudPoint.getPoint({ 'area_type': area_type }).then(res => {

View File

@@ -213,7 +213,7 @@
</div>
<AddDialog @AddChanged="querytable" />
<ViewDialog :dialog-show.sync="viewShow" :rowmst="mstrow" @AddChanged="querytable" />
<DivDialog :dialog-show.sync="divShow" :open-param="openParam" :bill-type="billType" :buss-config="bussConfig" @AddChanged="querytable" />
<DivDialog :dialog-show.sync="divShow" :stor-id="storId" :open-param="openParam" :bill-type="billType" :buss-config="bussConfig" @AddChanged="querytable" />
<TaskDialog :dialog-show.sync="taskShow" :open-param="openParam" :buss-config="bussConfig" @AddChanged="querytable" />
</div>
</template>
@@ -272,7 +272,8 @@ export default {
currentRow: null,
storlist: [],
createtypelist: [],
statuslist: []
statuslist: [],
storId: null
}
},
computed: {
@@ -361,6 +362,7 @@ export default {
divOpen() {
crudRawAssist.getIODtl({ 'bill_code': this.currentRow.bill_code, 'open_flag': '1' }).then(res => {
this.openParam = res
this.storId = this.currentRow.stor_id
this.billType = this.currentRow.bill_type
this.divShow = true
})

View File

@@ -249,7 +249,7 @@
</el-table-column>
</el-table>
<AddDtl :dialog-show.sync="dtlShow" :open-param="materType" @tableChanged="tableChanged5" />
<AddDtl :dialog-show.sync="dtlShow" :stor-id="storId" :open-param="materType" @tableChanged="tableChanged5" />
<MaterDialog :dialog-show.sync="materShow" :mater-opt-code.sync="materType" @setMaterValue="setMaterValue" />
</el-dialog>
</template>
@@ -301,6 +301,7 @@ export default {
storlist: [],
inStorList: [],
invtypelist: [],
storId: null,
rules: {
stor_id: [
{ required: true, message: '仓库不能为空', trigger: 'blur' }
@@ -401,6 +402,11 @@ export default {
this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO)
return
}
if (this.form.stor_id === '') {
this.crud.notify('请选择仓库!', CRUD.NOTIFICATION_TYPE.INFO)
return
}
this.storId = this.form.stor_id
this.dtlShow = true
/* checkoutbill.paramByCodeType({ 'bill_type': this.form.bill_type }).then(res => {
this.materType = res.materType

View File

@@ -83,13 +83,19 @@ export default {
name: 'AddDtl',
components: { rrOperation, pagination, DateRangePicker },
cruds() {
return CRUD({ title: '用户', url: 'api/checkoutbill/addDtl', optShow: {
add: false,
edit: false,
del: false,
reset: true,
download: false
}})
return CRUD({
title: '用户', url: 'api/checkoutbill/addDtl',
optShow: {
add: false,
edit: false,
del: false,
reset: true,
download: false
},
query: {
}
})
},
mixins: [presenter(), header()],
props: {
@@ -99,6 +105,9 @@ export default {
},
openParam: {
type: String
},
storId: {
type: String
}
},
data() {
@@ -124,6 +133,7 @@ export default {
methods: {
[CRUD.HOOK.beforeRefresh]() {
this.crud.query.mater_type = this.opendtlParam
this.crud.query.stor_id = this.storId
if (this.openShow) {
this.openShow = false
return false
@@ -133,9 +143,12 @@ export default {
},
close() {
this.crud.resetQuery(false)
// 清空grid数据
this.crud.data = undefined
this.$emit('update:dialogShow', false)
},
open() {
debugger
this.crud.query.mater_type = this.opendtlParam
// this.crud.toQuery()
},

View File

@@ -6,6 +6,7 @@
:show-close="false"
fullscreen
@close="close"
@open="open"
>
<span slot="title" class="dialog-footer">
@@ -20,7 +21,7 @@
</span>
<div class="crud-opts2">
<span class="role-span">出库明细</span>
<!-- <div class="crud-opts-form">
<div class="crud-opts-form">
<el-form ref="form" :inline="true" :model="form" size="mini">
<el-form-item label="库区" prop="gender2">
<el-cascader
@@ -32,7 +33,7 @@
/>
</el-form-item>
</el-form>
</div>-->
</div>
<span class="crud-opts-right2">
<!--左侧插槽-->
<slot name="left" />
@@ -227,6 +228,7 @@ import StructIvt from '@/views/wms/st/outbill/StructIvt'
import PointDialog from '@/views/wms/pub/PointDialog'
import crudSectattr from '@/views/wms/basedata/st/sect/sectattr'
import crudPoint from '@/views/wms/sch/point/point'
import crudUserStor from '@/views/wms/basedata/st/userStor/userStor'
export default {
name: 'DivDialog',
@@ -244,6 +246,10 @@ export default {
openArray: {
type: Array,
default: () => { return [] }
},
storId: {
type: String,
default: null
}
},
data() {
@@ -298,9 +304,6 @@ export default {
}
},
created() {
crudSectattr.getSect({ is_materialstore: '1' }).then(res => {
this.sects = res.content
})
checkoutbill.getInvTypes().then(res => {
this.invtypelist = res
})
@@ -311,6 +314,12 @@ export default {
})
},
methods: {
open() {
crudUserStor.getSect({ 'stor_id': this.storId }).then(res => {
debugger
this.sects = res.content
})
},
close() {
this.$refs['form2'].resetFields()
this.tabledis = []
@@ -434,12 +443,20 @@ export default {
}
},
allDiv() {
if (!this.mstrow.sect_id) {
this.crud.notify('请先选择库区!', CRUD.NOTIFICATION_TYPE.INFO)
return
}
checkoutbill.allDiv(this.mstrow).then(res => {
this.crud.notify('分配成功!', CRUD.NOTIFICATION_TYPE.INFO)
this.queryTableDtl()
})
},
oneDiv() {
if (!this.mstrow.sect_id) {
this.crud.notify('请先选择库区!', CRUD.NOTIFICATION_TYPE.INFO)
return
}
if (this.currentRow.iostorinvdtl_id !== null) {
this.mstrow.iostorinvdtl_id = this.currentRow.iostorinvdtl_id
checkoutbill.allDivOne(this.mstrow).then(res => {

View File

@@ -216,7 +216,7 @@
</div>
<AddDialog @AddChanged="querytable" />
<ViewDialog :dialog-show.sync="viewShow" :rowmst="mstrow" @AddChanged="querytable" />
<DivDialog :dialog-show.sync="divShow" :open-array="openParam" :rowmst="mstrow" @DivChanged="querytable" />
<DivDialog :dialog-show.sync="divShow" :open-array="openParam" :stor-id="storId" :rowmst="mstrow" @DivChanged="querytable" />
<TaskDialog :dialog-show.sync="taskShow" :open-array="openParam" :rowmst="mstrow" @TaskChanged="querytable" />
<MoneyDialog :dialog-show.sync="openMoneyDialog" :open-param="openParam" />
</div>
@@ -276,7 +276,8 @@ export default {
currentRow: null,
checkrows: [],
storlist: [],
billtypelist: []
billtypelist: [],
storId: null
}
},
mounted: function() {
@@ -358,7 +359,9 @@ export default {
},
divOpen() {
checkoutbill.getOutBillDtl({ 'iostorinv_id': this.currentRow.iostorinv_id }).then(res => {
debugger
this.openParam = res
this.storId = this.currentRow.stor_id
this.divShow = true
this.mstrow = this.currentRow
})