代码更新
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
package org.nl.wms.ext.acs.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
@@ -9,21 +8,16 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.modules.common.exception.BadRequestException;
|
||||
import org.nl.modules.common.utils.SecurityUtils;
|
||||
import org.nl.modules.system.util.CodeUtil;
|
||||
import org.nl.modules.wql.core.bean.WQLObject;
|
||||
import org.nl.modules.wql.util.SpringContextHolder;
|
||||
import org.nl.wms.ext.acs.service.AcsToWmsService;
|
||||
import org.nl.wms.log.LokiLog;
|
||||
import org.nl.wms.log.LokiLogType;
|
||||
import org.nl.wms.pdm.service.DeviceService;
|
||||
import org.nl.wms.pdm.service.dto.DeviceDto;
|
||||
import org.nl.wms.sch.manage.TaskStatusEnum;
|
||||
import org.nl.wms.sch.service.PointService;
|
||||
import org.nl.wms.sch.service.TaskService;
|
||||
import org.nl.wms.sch.tasks.callEmpty.GjxCallEmpVehicleTask;
|
||||
import org.nl.wms.sch.tasks.callMaterial.YqxCallMaterial;
|
||||
import org.nl.wms.sch.tasks.callEmpty.YqxCallEmpVehicleTask;
|
||||
import org.nl.wms.sch.tasks.callMaterial.YqxCallMaterial;
|
||||
import org.nl.wms.sch.tasks.sendEmpty.HtSendEmpVehicleTask;
|
||||
import org.nl.wms.sch.tasks.sendEmpty.YqxSendEmpVehicleTask;
|
||||
import org.nl.wms.sch.tasks.sendMaterial.GjxSendMaterialTask;
|
||||
@@ -183,10 +177,6 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
if (ObjectUtil.isEmpty(type)) throw new BadRequestException("类型不能为空");
|
||||
if (ObjectUtil.isEmpty(point_code)) throw new BadRequestException("点位不能为空");
|
||||
|
||||
WQLObject taskTab = WQLObject.getWQLObject("sch_base_task");// 任务表
|
||||
WQLObject regionTab = WQLObject.getWQLObject("ST_IVT_regionIO"); // 区域出入库表
|
||||
WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); // 点位表
|
||||
|
||||
/*
|
||||
* 根据type判断是什么业务类型:
|
||||
* 1.共挤线申请空盘
|
||||
@@ -289,57 +279,13 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
|
||||
// 8.豪凯自动线下料入库
|
||||
JSONObject param = new JSONObject();
|
||||
param.put("point_code1", point_code);
|
||||
param.put("vehicle_code", vehicle_code);
|
||||
param.put("vehicle_type", vehicle_type);
|
||||
param.put("qty", qty);
|
||||
HkxSendMaterialTask taskBean = SpringContextHolder.getBean(HkxSendMaterialTask.class);
|
||||
String task_id = taskBean.createTask(param);
|
||||
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public JSONObject outCreateRegion(JSONObject json) {
|
||||
String point_code2 = json.getString("point_code2");
|
||||
String io_type = json.getString("io_type");
|
||||
|
||||
WQLObject regionTab = WQLObject.getWQLObject("ST_IVT_regionIO");
|
||||
WQLObject orderTab = WQLObject.getWQLObject("PDM_BD_WorkOrder");
|
||||
WQLObject materTab = WQLObject.getWQLObject("md_me_materialbase");
|
||||
|
||||
JSONObject jsonRegion = new JSONObject();
|
||||
jsonRegion.put("iostorinv_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
jsonRegion.put("bill_code", CodeUtil.getNewCode("OUT_STORE_CODE"));
|
||||
jsonRegion.put("io_type", io_type);
|
||||
jsonRegion.put("bill_status", "20");
|
||||
// 根据起点点位找到起点设备,根据设备找到对应工单, 根据工单找到对应物料及托盘类型
|
||||
String device_code = point_code2.substring(0, point_code2.indexOf("_"));
|
||||
|
||||
DeviceService deviceBean = SpringContextHolder.getBean(DeviceService.class);
|
||||
DeviceDto deviceDto = deviceBean.findByCode(device_code);
|
||||
if (ObjectUtil.isEmpty(deviceDto)) throw new BadRequestException("此设备不存在");
|
||||
JSONObject jsonOrder = orderTab.query("device_id = '" + deviceDto.getDevice_id() + "' and order_status = '02' and is_delete = '0'").uniqueResult(0);
|
||||
if (ObjectUtil.isEmpty(jsonOrder)) throw new BadRequestException("此设备未在生产中或不存在");
|
||||
|
||||
jsonRegion.put("material_id", jsonOrder.getString("material_id"));
|
||||
jsonRegion.put("qty", "100"); // 暂时先按照100
|
||||
JSONObject jsonMater = materTab.query("material_id ='" + jsonOrder.getString("material_id") + "'").uniqueResult(0);
|
||||
jsonRegion.put("qty_unit_id", jsonMater.getString("base_unit_id"));
|
||||
|
||||
jsonRegion.put("end_point_code", point_code2);
|
||||
Long end_region_id = SpringContextHolder.getBean(PointService.class).findByCode(point_code2).getRegion_id();
|
||||
jsonRegion.put("end_region_id", String.valueOf(end_region_id));
|
||||
|
||||
jsonRegion.put("create_mode", "2");
|
||||
jsonRegion.put("create_id", SecurityUtils.getCurrentUserId());
|
||||
jsonRegion.put("create_name", SecurityUtils.getCurrentNickName());
|
||||
jsonRegion.put("create_time", DateUtil.now());
|
||||
regionTab.insert(jsonRegion);
|
||||
|
||||
// 需回显起始点位、起始区域、任务id
|
||||
JSONObject resuft = new JSONObject();
|
||||
resuft.put("iostorinv_id", jsonRegion.getString("iostorinv_id"));
|
||||
resuft.put("vehicle_type", jsonOrder.getString("vehicle_type"));
|
||||
resuft.put("create_mode", jsonRegion.getString("create_mode"));
|
||||
resuft.put("material_id", jsonOrder.getString("material_id"));
|
||||
return resuft;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
输入.jockey_id TYPEAS s_string
|
||||
输入.workorder_id TYPEAS s_string
|
||||
输入.workprocedure_id TYPEAS s_string
|
||||
输入.order_type_scode TYPEAS s_string
|
||||
输入.order_status TYPEAS s_string
|
||||
输入.workorder_procedure TYPEAS s_string
|
||||
输入.shift_type_scode TYPEAS s_string
|
||||
@@ -70,9 +69,6 @@
|
||||
LEFT JOIN md_pb_classstandard classstandard ON classstandard.class_id = material.product_series
|
||||
WHERE
|
||||
ShiftOrder.is_delete = '0'
|
||||
OPTION 输入.order_type_scode <> ""
|
||||
ShiftOrder.order_type_scode = 输入.order_type_scode
|
||||
ENDOPTION
|
||||
OPTION 输入.unFinish <> ""
|
||||
ShiftOrder.order_status <> '5'
|
||||
ENDOPTION
|
||||
|
||||
@@ -126,6 +126,13 @@ public class HkxSendMaterialTask extends AbstractAcsTask {
|
||||
ivtObj.put("standing_time", workorderObj.getString("standing_time"));
|
||||
ivtObj.put("material_id", workorderObj.getString("material_id"));
|
||||
ivtTab.insert(ivtObj);
|
||||
|
||||
// 终点解锁
|
||||
point2Obj.put("lock_type", "1");
|
||||
point2Obj.put("point_status", "3");
|
||||
// 载具类型
|
||||
point2Obj.put("vehicle_type", taskObj.getString("vehicle_type"));
|
||||
pointTab.update(point2Obj);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
lock_type = '1'
|
||||
AND is_used = '1'
|
||||
AND is_delete = '0'
|
||||
AND point_status = '1'
|
||||
OPTION 输入.vehicle_type <> ""
|
||||
p.can_vehicle_type like 输入.vehicle_type
|
||||
ENDOPTION
|
||||
|
||||
@@ -31,23 +31,6 @@
|
||||
class="filter-item"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="工单类型">
|
||||
<el-select
|
||||
v-model="query.order_type_scode"
|
||||
style="width: 200px"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择"
|
||||
@change="crud.toQuery"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in dict.pdm_workorder_type"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label=" 工单状态">
|
||||
<el-select
|
||||
v-model="order_status"
|
||||
@@ -135,16 +118,6 @@
|
||||
width="1200px"
|
||||
>
|
||||
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="mini" label-width="160px">
|
||||
<el-form-item label="工单类型" prop="order_type_scode">
|
||||
<el-select v-model="form.order_type_scode" style="width: 200px" filterable placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in dict.pdm_workorder_type"
|
||||
:key="item.id"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="生产日期" prop="produce_date">
|
||||
<el-date-picker v-model="form.produce_date" type="date" value-format="yyyy-MM-dd" style="width: 200px;" />
|
||||
</el-form-item>
|
||||
@@ -286,11 +259,6 @@
|
||||
{{ dict.label.is_or_not[scope.row.is_needmove] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="order_type_scode" label="工单类型">
|
||||
<template slot-scope="scope">
|
||||
{{ dict.label.pdm_workorder_type[scope.row.order_type_scode] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="create_name" label="创建人" />
|
||||
<el-table-column prop="create_time" label="创建时间" width="150" />
|
||||
<el-table-column prop="update_optname" label="修改人" />
|
||||
@@ -364,7 +332,7 @@ export default {
|
||||
name: 'Produceshiftorder',
|
||||
components: { pagination, crudOperation, rrOperation, udOperation, MaterDtl, ViewDialog, DeviceDialog },
|
||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||
dicts: ['pdm_workorder_status', 'is_used', 'pdm_workorder_type', 'is_or_not', 'vehicle_type', 'workorder_procedure'],
|
||||
dicts: ['pdm_workorder_status', 'is_used', 'is_or_not', 'vehicle_type', 'workorder_procedure'],
|
||||
cruds() {
|
||||
return CRUD({
|
||||
title: '工单', url: 'api/workorder', idField: 'workorder_id', sort: 'workorder_id,desc',
|
||||
|
||||
@@ -122,8 +122,8 @@
|
||||
<el-table-column prop="task_status_name" label="任务状态" width="95px" :formatter="formatTaskStatusName" />
|
||||
<el-table-column prop="vehicle_type" label="载具类型" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column prop="vehicle_code" label="载具编码" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column prop="point_code1" label="点位1" width="85" />
|
||||
<el-table-column prop="point1_region_name" label="区域1" width="85" />
|
||||
<el-table-column prop="point_code1" label="点位1" width="100" />
|
||||
<el-table-column prop="point1_region_name" label="区域1" width="100" />
|
||||
<el-table-column prop="point_code2" label="点位2" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column prop="point2_region_name" label="区域2" min-width="120" show-overflow-tooltip />
|
||||
<!--<el-table-column prop="point_code3" label="点位3" width="85" />
|
||||
|
||||
@@ -194,18 +194,10 @@
|
||||
<el-table-column prop="region_name" label="区域名称" min-width="120" show-overflow-tooltip/>
|
||||
<el-table-column prop="pcsn" label="批次" />
|
||||
<el-table-column prop="ivt_qty" label="库存数" />
|
||||
<el-table-column prop="instorage_time" label="入库时间" />
|
||||
<el-table-column prop="instorage_time" label="入库时间" min-width="150" show-overflow-tooltip/>
|
||||
<el-table-column prop="ext_code" label="外部编码" />
|
||||
<el-table-column prop="point_status" label="点位状态" >
|
||||
<template slot-scope="scope">
|
||||
{{ dict.label.sch_point_status[scope.row.point_status] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="vehicle_type" label="托盘类型" min-width="100">
|
||||
<template slot-scope="scope">
|
||||
{{ dict.label.vehicle_type[scope.row.vehicle_type] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="point_status_name" label="点位状态" />
|
||||
<el-table-column prop="vehicle_type" label="托盘类型" min-width="100"/>
|
||||
<el-table-column prop="remark" label="备注" />
|
||||
<el-table-column prop="is_used" label="是否启用" >
|
||||
<template slot-scope="scope">
|
||||
|
||||
@@ -197,7 +197,7 @@
|
||||
<el-table-column prop="region_name" label="区域名称" min-width="120" show-overflow-tooltip />
|
||||
<el-table-column prop="pcsn" label="批次" />
|
||||
<el-table-column prop="ivt_qty" label="库存数" />
|
||||
<el-table-column prop="instorage_time" label="入库时间" />
|
||||
<el-table-column prop="instorage_time" label="入库时间" min-width="150" show-overflow-tooltip/>
|
||||
<el-table-column prop="point_status_name" label="点位状态" />
|
||||
<el-table-column prop="lock_type" label="锁定类型">
|
||||
<template slot-scope="scope">
|
||||
|
||||
Reference in New Issue
Block a user