From 69d16d78ed38603d69077cd3168bc32eeac283ac Mon Sep 17 00:00:00 2001 From: ludj Date: Thu, 18 May 2023 16:26:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sch/task/service/ISchBaseTaskService.java | 4 + .../service/impl/SchBaseTaskServiceImpl.java | 16 +- .../nl/wms/sch/task_manage/AbstractTask.java | 182 ++++++++++++++ .../nl/wms/sch/task_manage/AcsTaskDto.java | 30 +++ .../wms/sch/task_manage/AutoCreateTask.java | 57 +++++ .../org/nl/wms/sch/task_manage/BaseTask.java | 82 ------- .../nl/wms/sch/task_manage/task/AcsUtil.java | 55 +++++ .../wms/sch/task_manage/task/TaskFactory.java | 4 +- .../sch/task_manage/task/tasks/HNMLTask.java | 44 +++- .../src/views/wms/pdm/workerorder/index.vue | 222 ++++++++++++------ 10 files changed, 529 insertions(+), 167 deletions(-) create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AbstractTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java delete mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/BaseTask.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java index 5847345..457c585 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/ISchBaseTaskService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.nl.common.domain.query.PageQuery; import com.baomidou.mybatisplus.extension.service.IService; import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; import java.util.List; import java.util.Map; @@ -66,6 +67,9 @@ public interface ISchBaseTaskService extends IService { */ List findUnFinishTasksByTaskConfig(String config_code, String task_code); + + List findTasksByTaskStatus(String config_code, TaskStatus status); + /** * 任务申请 * diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java index 99b88b6..60fab32 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java @@ -17,7 +17,7 @@ import org.nl.wms.sch.task.service.ISchBaseTaskService; import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskMapper; import org.nl.wms.sch.task.service.dao.SchBaseTask; import org.nl.wms.sch.task.service.dao.mapper.SchBaseTaskconfigMapper; -import org.nl.wms.sch.task_manage.BaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; import org.nl.wms.sch.task_manage.task.TaskFactory; import org.nl.wms.sch.task_manage.task.core.TaskStatus; import org.springframework.beans.factory.annotation.Autowired; @@ -104,6 +104,18 @@ public class SchBaseTaskServiceImpl extends ServiceImpl findTasksByTaskStatus(String config_code, TaskStatus status) { + Assert.notNull(config_code, "任务配置编码不能为空!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getConfig_code, config_code) + .eq(SchBaseTask::getTask_status, status.getCode()) + .ne(SchBaseTask::getIs_delete, true); + + List schBaseTasks = schBaseTaskMapper.selectList(lam); + return schBaseTasks; + } + @Override public void create(SchBaseTask entity) { String currentUserId = SecurityUtils.getCurrentUserId(); @@ -134,7 +146,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl arr = new ArrayList<>(); + for (int i = 0, j = tasks.size(); i < j; i++) { + JSONObject json = tasks.getJSONObject(i); + AcsTaskDto taskDto = new AcsTaskDto(); + taskDto.setExt_task_uuid(json.getString("task_id")); + taskDto.setTask_code(json.getString("task_code")); + taskDto.setTask_type("1"); + //如果起点是码垛机械手的下料位置,终点是货架,type要给2 + JSONObject stratrObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("start_point_code") + "'").uniqueResult(0); + JSONObject nextObj = WQLObject.getWQLObject("sch_base_point").query("point_code='" + json.getString("next_point_code") + "'").uniqueResult(0); + if (StrUtil.equals(stratrObj.getString("area_type"), AreaEnum.YZQY.getCode()) && + StrUtil.equals(nextObj.getString("area_type"), AreaEnum.RYHCHJ.getCode()) + ) { + taskDto.setTask_type("2"); + } + taskDto.setRoute_plan_code("normal"); + taskDto.setStart_device_code(json.getString("start_point_code")); + taskDto.setNext_device_code(json.getString("next_point_code")); + taskDto.setVehicle_code(json.getString("vehicle_code")); + arr.add(taskDto); + } + return arr;*/ + return null; + } + + /** + * @return WCS的任务集合 + * @discription 重新下发给wcs任务 + * @author ldjun + * @created 2020年6月12日 下午5:52:28 + */ + protected JSONObject renotifyAcs(SchBaseTask task) { + Assert.notNull(task); + List taskList = new ArrayList<>(); + taskList.add(task); + return this.renotifyAcs(taskList); + } + + /** + * @return WCS的任务集合 + * @discription 重新下发给wcs任务 + * @author ldjun + * @created 2020年6月12日 下午5:52:28 + */ + protected JSONObject renotifyAcs(List taskList) { + //1、获取任务 + //2、根据任务配置补全任务 + //3、下发 + + List list = new ArrayList<>(); + for (SchBaseTask task : taskList) { + AcsTaskDto taskDto = new AcsTaskDto(); + taskDto.setExt_task_uuid(task.getTask_code()); + taskDto.setTask_code(task.getTask_code()); + + taskDto.setRoute_plan_code("normal"); + taskDto.setStart_device_code(task.getPoint_code1()); + taskDto.setNext_device_code(task.getPoint_code2()); + taskDto.setVehicle_code(task.getVehicle_code()); + + this.setTask(task.getConfig_code(), taskDto); + list.add(taskDto); + } + + return AcsUtil.notifyAcs("api/wms/task", list); + } + + private AcsTaskDto setTask(String config_code, AcsTaskDto taskDto) { + SchBaseTaskconfig taskConfig = SpringContextHolder.getBean(SchBaseTaskconfigServiceImpl.class).getById(config_code); + taskDto.setPriority(taskConfig.getPriority()); + taskDto.setTask_type(taskConfig.getAcs_task_type()); + taskDto.setRoute_plan_code("normal"); + return taskDto; + } + + + /** + * 定时任务 + */ + protected void schedule() { + this.autoCreate(); + this.create(); + } + + + /** + * 自动生成任务 + */ + public void autoCreate() { + + } + + protected abstract void updateStatus(String config_code, TaskStatus status); + + /** + * 寻找合适的点位 + * + * @return + */ + protected abstract List findPoints(); + + + public void apply(JSONObject param) { + String point_code = ""; + String config_code = "HNMLTask"; + //1、校验数据 + SchBaseTaskconfig taskConfig = SpringContextHolder.getBean(SchBaseTaskconfigServiceImpl.class).getById(config_code); + Integer tcmn = taskConfig.getTask_create_max_num(); + SchBaseTaskServiceImpl taskService = SpringContextHolder.getBean(SchBaseTaskServiceImpl.class); + List unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(taskConfig.getConfig_code()); + + Assert.isFalse(unFinishTasksByTaskConfig.size() > tcmn, "该点位{}申请的任务未完成数已超过上限,无法申请任务", point_code); + + + SchBaseTask task = new SchBaseTask(); + task.setAcs_trace_id(""); + task.setConfig_code(config_code); + task.setCreate_id(""); + task.setCreate_mode(""); + task.setPoint_code1(""); + task.setVehicle_code(""); + task.setTask_status(TaskStatus.APPLY.getCode()); + SpringContextHolder.getBean(SchBaseTaskServiceImpl.class).create(task); + //1、如果是送料,检测载具状态 + //2、送空载具 + //3、叫料 + //4、叫空载具 + + //校验 + + } + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java new file mode 100644 index 0000000..4b11d7d --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AcsTaskDto.java @@ -0,0 +1,30 @@ +package org.nl.wms.sch.task_manage; + +import lombok.Data; + +@Data +public class AcsTaskDto { + //任务标识 + private String ext_task_uuid; + //任务编码 + private String task_code; + //任务类型 + private String task_type; + //起点 + private String start_device_code; + //下一点 + private String next_device_code; + //载具号 + private String vehicle_code; + //载具类型 + private String vehicle_type; + //优先级 + private String priority; + //备注 + private String remark; + //扩展参数 + private String params; + //路由类型 + private String route_plan_code; + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java new file mode 100644 index 0000000..27e829c --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java @@ -0,0 +1,57 @@ + +package org.nl.wms.sch.task_manage; + +import cn.hutool.core.util.ObjectUtil; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.reflections.Reflections; +import org.springframework.stereotype.Component; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.List; +import java.util.Set; + + +@Slf4j +@Component +public class AutoCreateTask { + private Set> subTypes = null; + + @SneakyThrows + public void run() { + log.info("定时任务AutoCreateTask开始执行:"); + + if (ObjectUtil.isNull(subTypes) || subTypes.isEmpty()) { + Reflections reflections = new Reflections("org.nl"); + //System.out.println(AbstractAcsTask.class.isAssignableFrom(DumpInvTask.class)); + subTypes = reflections.getSubTypesOf(AbstractTask.class); + } + this.doExecute(); + } + + + /** + * 需要按照任务配置类型并行执行 + */ + private void doExecute() { + subTypes.forEach(clz -> { + // 调用AbstractAcsTask类的每个子类的schedule()方法 + try { + Object obj = clz.newInstance(); + //Method m = obj.getClass().getDeclaredMethod("schedule"); + Method m = obj.getClass().getMethod("schedule"); + List tasks = (List) m.invoke(obj); + } catch (InvocationTargetException e) { + e.printStackTrace(); + log.info("定时器执行失败:{}", e.getTargetException().getMessage()); + } catch (Exception e) { + e.printStackTrace(); + log.info("定时器执行失败:{}", e.getMessage()); + } + + }); + } + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/BaseTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/BaseTask.java deleted file mode 100644 index ac35630..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/BaseTask.java +++ /dev/null @@ -1,82 +0,0 @@ -package org.nl.wms.sch.task_manage; - -import cn.hutool.core.lang.Assert; -import com.alibaba.fastjson.JSONObject; -import org.nl.config.SpringContextHolder; -import org.nl.wms.sch.task.service.ISchBaseTaskService; -import org.nl.wms.sch.task.service.dao.SchBaseTask; -import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; -import org.nl.wms.sch.task.service.impl.SchBaseTaskServiceImpl; -import org.nl.wms.sch.task.service.impl.SchBaseTaskconfigServiceImpl; -import org.nl.wms.sch.task_manage.task.core.TaskStatus; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @author ldjun - * @version 1.0 - * @date 2023年05月16日 16:42 - * @desc desc - */ - -public abstract class BaseTask { - @Autowired - private ISchBaseTaskService taskService; - - /** - * 创建 - */ - protected abstract void create(JSONObject param); - - /** - * 下发 - */ - protected abstract void issue(); - - /** - * 定时任务 - */ - protected abstract void schedule(); - - protected abstract void updateStatus(); - - /** - * 寻找合适的点位 - * - * @return - */ - protected abstract List findPoints(); - - - public void apply(JSONObject param) { - String point_code = ""; - String config_code = "HNMLTask"; - //1、校验数据 - SchBaseTaskconfig taskConfig = SpringContextHolder.getBean(SchBaseTaskconfigServiceImpl.class).getById(config_code); - Integer tcmn = taskConfig.getTask_create_max_num(); - SchBaseTaskServiceImpl taskService = SpringContextHolder.getBean(SchBaseTaskServiceImpl.class); - List unFinishTasksByTaskConfig = taskService.findUnFinishTasksByTaskConfig(taskConfig.getConfig_code()); - - Assert.isFalse(unFinishTasksByTaskConfig.size() > tcmn, "该点位{}申请的任务未完成数已超过上限,无法申请任务", point_code); - - - SchBaseTask task = new SchBaseTask(); - task.setAcs_trace_id(""); - task.setConfig_code(config_code); - task.setCreate_id(""); - task.setCreate_mode(""); - task.setPoint_code1(""); - task.setVehicle_code(""); - task.setTask_status(TaskStatus.APPLY.getCode()); - SpringContextHolder.getBean(SchBaseTaskServiceImpl.class).create(task); - //1、如果是送料,检测载具状态 - //2、送空载具 - //3、叫料 - //4、叫空载具 - - //校验 - - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java new file mode 100644 index 0000000..1c87e13 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/AcsUtil.java @@ -0,0 +1,55 @@ + +package org.nl.wms.sch.task_manage.task; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; +import org.nl.config.SpringContextHolder; +import org.nl.system.service.param.impl.SysParamServiceImpl; +import org.nl.wms.sch.task_manage.AcsTaskDto; +import org.springframework.http.HttpStatus; + +import java.util.List; + +/** + * ACS连接工具类: + */ +@Slf4j +public class AcsUtil { + public static JSONObject notifyAcs(String api, List list) { + //判断是否连接ACS系统 + String isConnect = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("IS_CONNECT_ACS").getValue(); + JSONObject result = new JSONObject(); + if (StrUtil.equals("0", isConnect)) { + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "未连接ACS!"); + result.put("data", new JSONObject()); + return result; + } + //ACS地址:127.0.0.1:8010 + String acsUrl = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("ACS_URL").getValue(); + + String url = acsUrl + api; + log.info("下发acs任务的参数为:{}", list.toString()); + try { + String resultMsg = HttpRequest.post(url) + .body(String.valueOf(list)) + .execute().body(); + result = JSONObject.parseObject(resultMsg); + } catch (Exception e) { + String msg = e.getMessage(); + //ConnectException: Connection refused: connect + //网络不通 + System.out.println(msg); + result.put("status", HttpStatus.BAD_REQUEST); + result.put("message", "网络不通,操作失败!"); + result.put("data", new JSONObject()); + } + //acs抛异常这里 + /* if (result.getString("status").equals(String.valueOf(HttpStatus.BAD_REQUEST.value()))) + throw new BadRequestException(result.getString("message"));*/ + return result; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java index 1172324..a81e91b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/TaskFactory.java @@ -1,6 +1,6 @@ package org.nl.wms.sch.task_manage.task; -import org.nl.wms.sch.task_manage.BaseTask; +import org.nl.wms.sch.task_manage.AbstractTask; import org.nl.wms.sch.task_manage.task.tasks.HNMLTask; /** @@ -11,7 +11,7 @@ import org.nl.wms.sch.task_manage.task.tasks.HNMLTask; */ public class TaskFactory { //使用 getShape 方法获取形状类型的对象 - public BaseTask getTask(String taskType) { + public AbstractTask getTask(String taskType) { if (taskType == null) { return null; } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/HNMLTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/HNMLTask.java index b34777a..d42ae56 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/HNMLTask.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/HNMLTask.java @@ -1,7 +1,18 @@ package org.nl.wms.sch.task_manage.task.tasks; -import com.alibaba.fastjson.JSONObject; -import org.nl.wms.sch.task_manage.BaseTask; +import cn.hutool.core.util.ObjectUtil; +import org.nl.config.SpringContextHolder; +import org.nl.wms.sch.point.service.ISchBasePointService; +import org.nl.wms.sch.point.service.dao.SchBasePoint; +import org.nl.wms.sch.point.service.impl.SchBasePointServiceImpl; +import org.nl.wms.sch.task.service.ISchBaseTaskService; +import org.nl.wms.sch.task.service.dao.SchBaseTask; +import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig; +import org.nl.wms.sch.task.service.impl.SchBaseTaskServiceImpl; +import org.nl.wms.sch.task.service.impl.SchBaseTaskconfigServiceImpl; +import org.nl.wms.sch.task_manage.AbstractTask; +import org.nl.wms.sch.task_manage.task.core.TaskStatus; +import org.springframework.scheduling.support.TaskUtils; import java.util.List; @@ -11,14 +22,37 @@ import java.util.List; * @date 2023年05月16日 16:44 * @desc desc */ -public class HNMLTask extends BaseTask { +public class HNMLTask extends AbstractTask { + private static String TASK_CONFIG_CODE = "HNMLTask"; + @Override - protected void updateStatus() { + protected void updateStatus(String task_code, TaskStatus status) { + ISchBaseTaskService taskService = SpringContextHolder.getBean(SchBaseTaskServiceImpl.class); + taskService.updateById(null); } @Override - protected void create(JSONObject param) { + protected void create() { + ISchBaseTaskService taskService = SpringContextHolder.getBean(SchBaseTaskServiceImpl.class); + ISchBasePointService pointService = SpringContextHolder.getBean(SchBasePointServiceImpl.class); + List tasks = taskService.findTasksByTaskStatus(TASK_CONFIG_CODE, TaskStatus.APPLY); + + SchBaseTaskconfig taskConfig = SpringContextHolder.getBean(SchBaseTaskconfigServiceImpl.class).getById(TASK_CONFIG_CODE); + for (SchBaseTask task : tasks) { + List next_region_strs = taskConfig.getNext_region_strs(); + if (ObjectUtil.isEmpty(next_region_strs)) continue; + + + SchBasePoint point = new SchBasePoint(); + task.setPoint_code2(point.getPoint_code()); + + taskService.update(task); + pointService.update(point); + this.renotifyAcs(task); + //二车间- + + } } diff --git a/nladmin-ui/src/views/wms/pdm/workerorder/index.vue b/nladmin-ui/src/views/wms/pdm/workerorder/index.vue index db0f2f3..e2fc104 100644 --- a/nladmin-ui/src/views/wms/pdm/workerorder/index.vue +++ b/nladmin-ui/src/views/wms/pdm/workerorder/index.vue @@ -5,17 +5,46 @@
- - - + + +
- - - + + + + + + + + + + + + - - - - - - - - - + - + placeholder="选择日期时间" + /> - + placeholder="选择日期时间" + /> - + placeholder="选择日期时间" + /> - + placeholder="选择日期时间" + /> - + - + - + - - + + - - + + @@ -160,36 +202,71 @@ - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + @@ -210,7 +287,7 @@ import crudPdmBdWorkorder from './pdmBdWorkorder' import crudSchBaseRegion from '@/views/wms/sch/region/schBaseRegion' import crudSchBasePoint from '@/views/wms/sch/point/schBasePoint' -import CRUD, {crud, form, header, presenter} from '@crud/crud' +import CRUD, { crud, form, header, presenter } from '@crud/crud' import rrOperation from '@crud/RR.operation' import crudOperation from '@crud/CRUD.operation' import udOperation from '@crud/UD.operation' @@ -257,46 +334,35 @@ export default { crudMethod: { ...crudPdmBdWorkorder } }) }, - created() { - this.getWorkShopList() - this.getRegionList() - }, data() { return { - permission: { - }, + permission: {}, rules: { - workorder_code: [ - { required: true, message: '工单编码不能为空', trigger: 'blur' } + material_code: [ + { required: true, message: '物料不能为空', trigger: 'blur' } ], plan_qty: [ { required: true, message: '计划数量不能为空', trigger: 'blur' } ], - real_qty: [ - { required: true, message: '实际数量不能为空', trigger: 'blur' } - ], planproducestart_date: [ { required: true, message: '计划开始不能为空', trigger: 'change' } ], planproduceend_date: [ { required: true, message: '计划结束不能为空', trigger: 'change' } ], - standing_time: [ - { required: true, message: '静置时间不能为空', trigger: 'change' } - ], point_code: [ - { required: true, message: '点位编码不能为空', trigger: 'change' } + { required: true, message: '设备编码不能为空', trigger: 'change' } ], region_code: [ { required: true, message: '区域编码不能为空', trigger: 'change' } - ], - workorder_type: [ - { required: true, message: '工单类型不能为空', trigger: 'blur' } ] + /* workorder_type: [ + { required: true, message: '工单类型不能为空', trigger: 'blur' } + ]*/ }, queryTypeOptions: [ { key: 'workorder_code', display_name: '工单编号' }, - { key: 'point_code', display_name: '点位编码' } + { key: 'point_code', display_name: '设备编码' } ], workShopList: [], regionList: [], @@ -305,6 +371,10 @@ export default { materialDialog: false } }, + created() { + this.getWorkShopList() + this.getRegionList() + }, methods: { item() { return item