opt:优化点位管理增加点位类型,分上料站点跟普通站点

add:增加WMS跟ACS交互接口
This commit is contained in:
zhangzq
2026-06-30 20:00:58 +08:00
parent 5746e0bb74
commit e989e56af8
15 changed files with 154 additions and 125 deletions

View File

@@ -1,11 +1,9 @@
package org.nl.wms.ext_manage.service.impl;
package org.nl.wms.ext_manage.api;
import lombok.extern.slf4j.Slf4j;
import org.nl.wms.ext_manage.enums.EXTConstant;
import org.nl.wms.ext_manage.service.WmsToAcsService;
import org.nl.wms.ext_manage.service.util.AcsResponse;
import org.nl.wms.ext_manage.util.AcsUtil;
import org.nl.wms.sch_manage.service.core.AcsTaskDto;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -20,10 +18,9 @@ import java.util.List;
*/
@Slf4j
@Service
public class WmsToAcsServiceImpl implements WmsToAcsService {
public class AcsApi {
@Override
public AcsResponse renotifyAcs(List<AcsTaskDto> list) {
public <T> ResponseEntity renotifyAcs(List<T> list) {
return AcsUtil.notifyAcs(EXTConstant.SEND_TASK_ACS_API, list);
}
}

View File

@@ -16,7 +16,8 @@ public enum ResultAcsStatus {
/**
* 完成
*/
FINISHED("2", "完成", "完成");
FINISHED("2", "完成", "完成"),
CANCEL("3", "取消", "取消");
ResultAcsStatus(String code, String name, String desc) {

View File

@@ -2,7 +2,6 @@ package org.nl.wms.ext_manage.service;
import org.nl.wms.ext_manage.service.util.AcsResponse;
import org.nl.wms.sch_manage.service.core.AcsTaskDto;
import java.util.List;
@@ -21,5 +20,5 @@ public interface WmsToAcsService {
* @param list 任务集合
* @return AcsResponse
*/
AcsResponse renotifyAcs(List<AcsTaskDto> list);
<T> AcsResponse renotifyAcs(List<T> list);
}

View File

@@ -62,13 +62,9 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
JSONArray errArr = new JSONArray();
for (int i = 0; i < array.size(); i++) {
JSONObject row = array.getJSONObject(i);
String task_id = row.getString("task_id");
RLock lock = redissonClient.getLock(task_id);
boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS);
String task_code = row.getString("task_code");
try {
if (tryLock) {
SchBaseTask taskObj = iSchBaseTaskService.getById(task_id);
// acs反馈的任务类型
SchBaseTask taskObj = iSchBaseTaskService.getByCode(task_code);
String acs_task_status = row.getString("task_status");
TaskStatus status;
if (ResultAcsStatus.EXECUTING.getCode().equals(acs_task_status)) {
@@ -79,20 +75,15 @@ public class AcsToWmsServiceImpl implements AcsToWmsService {
status = TaskStatus.FINISHED;
iSchBaseTaskService.updateById(taskObj);
} else {
// 取消
status = TaskStatus.CANCELED;
}
// 根据配置编码执行相关配置内的方法
AbstractTask task = taskFactory.getTask(taskObj.getConfig_code());
task.updateTaskStatus(taskObj.getTask_code(),status);
} else {
throw new BadRequestException("任务标识为:" + task_id + "的任务正在操作中!");
}
} finally {
if (tryLock) {
lock.unlock();
}
catch (Exception ex){
ex.getMessage();
}
}
JSONObject result = new JSONObject();

View File

@@ -2,16 +2,22 @@ package org.nl.wms.ext_manage.util;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.base.TableDataInfo;
import org.nl.common.exception.BadRequestException;
import org.nl.config.SpringContextHolder;
import org.nl.wms.system_manage.enums.SysParamConstant;
import org.nl.wms.system_manage.service.param.dao.Param;
import org.nl.wms.system_manage.service.param.impl.SysParamServiceImpl;
import org.nl.wms.ext_manage.service.util.AcsResponse;
import org.nl.wms.warehouse_manage.enums.IOSConstant;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
import java.nio.charset.StandardCharsets;
/**
* <p>
* ACS工具类
@@ -30,44 +36,46 @@ public class AcsUtil {
* @param param 下发参数
* @return AcsResponse
*/
public static <T> AcsResponse notifyAcs(String api, T param) {
public static <T> ResponseEntity notifyAcs(String api, T param) {
log.info("下发ACS任务的输入参数为-------------------" + param.toString());
// 返回参数
AcsResponse resultAcs;
// 系统参数类
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
//判断是否连接ACS系统
Param isConnectAcs = sysParamService.findByCode(SysParamConstant.IS_CONNECT_ACS);
if (ObjectUtil.isEmpty(isConnectAcs)) {
return AcsResponse.requestError("系统参数表中:" + SysParamConstant.IS_CONNECT_ACS + "不存在");
throw new BadRequestException("系统参数表中:" + SysParamConstant.IS_CONNECT_ACS + "不存在");
}
if (isConnectAcs.getValue().equals(IOSConstant.IS_DELETE_NO)) {
return AcsResponse.requestOkMessage("下发成功,未连接ACS系统!");
return new ResponseEntity("sucess未连接ACS系统",HttpStatus.OK);
}
//ACS地址
Param acsUrlParam = sysParamService.findByCode(SysParamConstant.ACS_URL);
if (ObjectUtil.isEmpty(acsUrlParam)) {
return AcsResponse.requestError("系统参数表中:" + SysParamConstant.ACS_URL + "不存在");
throw new BadRequestException("系统参数表中:" + SysParamConstant.ACS_URL + "不存在");
}
String url = acsUrlParam.getValue() + api;
try {
String resultMsg = HttpRequest.post(url)
final HttpResponse execute = HttpRequest.post(url)
.body(String.valueOf(param))
.execute().body();
// 格式转换
JSONObject result = JSONObject.parseObject(resultMsg);
resultAcs = JSONObject.toJavaObject(result, AcsResponse.class);
log.info("下发ACS任务的输出参数为-------------------" + resultMsg);
.execute();
if (execute.getStatus() == HttpStatus.OK.value()){
JSONObject result = JSONObject.parseObject(execute.body());
final Integer status = result.getInteger("status");
if (Integer.valueOf(HttpStatus.OK.value()).equals(status)){
return new ResponseEntity(HttpStatus.OK);
}else {
JSONObject errorMap = result.getJSONObject("data");
return new ResponseEntity(errorMap,HttpStatus.BAD_REQUEST);
}
}else {
return new ResponseEntity("接口请求异常",HttpStatus.CONFLICT);
}
} catch (Exception e) {
//网络不通
String msg = e.getMessage();
log.error("连接失败:{}", msg);
return AcsResponse.requestError("网络不通,操作失败!");
return new ResponseEntity("通讯异常,"+e.getMessage(),HttpStatus.GATEWAY_TIMEOUT);
}
return resultAcs;
}
}

View File

@@ -1,7 +1,6 @@
package org.nl.wms.pda_manage.sch_manage.service.impl;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpStatus;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -23,6 +22,8 @@ import org.nl.wms.sch_manage.service.core.tasks.PdaPointTask;
import org.nl.wms.warehouse_manage.enums.IOSConstant;
import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -98,9 +99,9 @@ public class PdaSchTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
);
// 根据任务配置编码获取所属任务类抽象类
AbstractTask task = taskFactory.getTask(taskDao.getConfig_code());
AcsResponse acsResponse = task.sendTaskOne(taskDao.getTask_id());
if (acsResponse.getCode() != HttpStatus.HTTP_OK) {
throw new BadRequestException(acsResponse.getMessage());
ResponseEntity acsResponse = task.sendTaskOne(taskDao.getTask_id());
if (acsResponse.getStatusCode().equals(HttpStatus.OK)) {
throw new BadRequestException(acsResponse.getBody().toString());
}
return PdaResponse.requestOk();
}

View File

@@ -2,13 +2,14 @@ package org.nl.wms.sch_manage.service.core;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpStatus;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.nl.wms.ext_manage.api.AcsApi;
import org.nl.wms.ext_manage.service.WmsToAcsService;
import org.nl.wms.ext_manage.service.util.AcsResponse;
import org.nl.wms.sch_manage.enums.TaskStatus;
@@ -16,10 +17,14 @@ import org.nl.wms.sch_manage.service.ISchBaseTaskService;
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
import org.nl.wms.warehouse_manage.enums.IOSConstant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -41,7 +46,7 @@ public abstract class AbstractTask {
* wms调用acs接口服务
*/
@Autowired
private WmsToAcsService wmsToAcsService;
private AcsApi acsApi;
/**
* 任务创建
@@ -87,10 +92,27 @@ public abstract class AbstractTask {
* 下发当前任务
* @param task_id 任务标识
*/
public AcsResponse sendTaskOne(String task_id) {
public ResponseEntity sendTaskOne(String task_id) {
List<AcsTaskDto> taskDtoList = new ArrayList<>();
taskDtoList.add(this.sendAcsParam(task_id));
return this.renotifyAcs(taskDtoList);
ResponseEntity response = this.renotifyAcs(taskDtoList);
if (response.getStatusCode().equals(HttpStatus.OK)) {
taskService.update(new LambdaUpdateWrapper<SchBaseTask>()
.set(SchBaseTask::getTask_status,TaskStatus.ISSUED.getCode())
.set(SchBaseTask::getUpdate_time,DateUtil.now())
.set(SchBaseTask::getRemark,"")
.in(SchBaseTask::getTask_code,taskDtoList.stream().map(AcsTaskDto::getTask_code).collect(Collectors.toList())));
}else {
JSONObject body = (JSONObject) response.getBody();
for (String code : body.keySet()) {
taskService.update(new LambdaUpdateWrapper<SchBaseTask>()
.set(SchBaseTask::getRemark,body.getString(code))
.set(SchBaseTask::getUpdate_time,DateUtil.now())
.eq(SchBaseTask::getTask_code,code));
}
}
return response;
}
/**
@@ -99,47 +121,53 @@ public abstract class AbstractTask {
* @return AcsResponse
*/
@SneakyThrows
protected AcsResponse renotifyAcs(List<AcsTaskDto> taskDtoList) {
AcsResponse resultForAcs = AcsResponse.requestOk();
try {
// 创建下发对象
resultForAcs = wmsToAcsService.renotifyAcs(taskDtoList);
} catch (Exception e) {
log.error("任务下发异常: {}", e.getMessage());
resultForAcs.setResponseDate(DateUtil.now());
resultForAcs.setCode(HttpStatus.HTTP_BAD_REQUEST);
resultForAcs.setMessage(e.getMessage());
}
protected ResponseEntity renotifyAcs(List<AcsTaskDto> taskDtoList) {
ResponseEntity response = acsApi.renotifyAcs(convertToCreateTaskRequest(taskDtoList));
// 如果下发完毕,就修改状态
if (resultForAcs.getCode() == HttpStatus.HTTP_OK) {
// 查询所有任务
List<SchBaseTask> taskList = taskService.list(
new QueryWrapper<SchBaseTask>().lambda()
.in(SchBaseTask::getTask_code, taskDtoList.stream()
.map(AcsTaskDto::getTask_code)
.collect(Collectors.toList())
)
);
return response;
}
// 解析并备注
JSONArray errArr = resultForAcs.getErrArr();
for (SchBaseTask schBaseTask : taskList) {
schBaseTask.setTask_status(TaskStatus.ISSUED.getCode());
// 判断是否是出错的任务
for (int i = 0; ObjectUtil.isNotEmpty(errArr) && i < errArr.size(); i++) {
JSONObject errObj = errArr.getJSONObject(i);
String taskCode = errObj.getString("task_code");
if (taskCode.equals(schBaseTask.getTask_code())) {
// 出错的任务就设置出错信息为备注,不是出错就设置下发
schBaseTask.setTask_status(TaskStatus.CREATED.getCode());
schBaseTask.setRemark(errObj.getString("message"));
break;
private List<JSONObject> convertToCreateTaskRequest(List<AcsTaskDto> taskDtoList) {
return taskDtoList.stream()
.map(this::convertToCreateTaskRequest)
.collect(Collectors.toList());
}
private JSONObject convertToCreateTaskRequest(AcsTaskDto taskDto) {
JSONObject request = new JSONObject();
request.put("task_code", taskDto.getTask_code());
request.put("start_device_code", taskDto.getStart_device_code());
request.put("next_device_code", taskDto.getNext_device_code());
request.put("priority", ObjectUtil.isNotEmpty(taskDto.getPriority()) ? taskDto.getPriority() : "1");
request.put("vehicle_code", taskDto.getVehicle_code());
request.put("vehicle_type", taskDto.getVehicle_type());
request.put("task_type", taskDto.getTask_type());
request.put("remark", taskDto.getRemark());
Map<String, String> params = new HashMap<>();
if (ObjectUtil.isNotEmpty(taskDto.getParams())) {
params.putAll(taskDto.getParams());
}
putIfNotEmpty(params, "ext_task_uuid", taskDto.getExt_task_uuid());
putIfNotEmpty(params, "start_device_code2", taskDto.getStart_device_code2());
putIfNotEmpty(params, "next_device_code2", taskDto.getNext_device_code2());
putIfNotEmpty(params, "put_device_code", taskDto.getPut_device_code());
putIfNotEmpty(params, "route_plan_code", taskDto.getRoute_plan_code());
putIfNotEmpty(params, "dtl_type", taskDto.getDtl_type());
putIfNotEmpty(params, "agv_system_type", taskDto.getAgv_system_type());
putIfNotEmpty(params, "oven_time", taskDto.getOven_time());
putIfNotEmpty(params, "temperature", taskDto.getTemperature());
putIfNotEmpty(params, "start_height", taskDto.getStart_height());
putIfNotEmpty(params, "next_height", taskDto.getNext_height());
putIfNotEmpty(params, "direction", taskDto.getDirection());
request.put("params", params);
return request;
}
taskService.updateBatchById(taskList);
private void putIfNotEmpty(Map<String, String> params, String key, String value) {
if (ObjectUtil.isNotEmpty(value)) {
params.put(key, value);
}
return resultForAcs;
}
/**

View File

@@ -39,18 +39,8 @@ public class AutoTask {
//定时任务
@SneakyThrows
public void run() {
RLock lock = redissonClient.getLock(this.getClass().getName());
boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS);
try {
if (tryLock) {
sendTask();
}
} catch (Exception e) {
if (tryLock) {
lock.unlock();
}
}
}
/**
* 定时下发任务

View File

@@ -67,6 +67,7 @@
SELECT p.*
FROM sch_base_point p
WHERE p.is_used = 1
AND p.point_type = '1'
<if test="regions != null and regions.size() > 0">
AND p.region_code IN
<foreach collection="regions" item="region" open="(" separator="," close=")">

View File

@@ -104,12 +104,6 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
// 获取region_name
SchBaseRegion baseRegion = regionMapper.selectById(entity.getRegion_code());
entity.setRegion_name(baseRegion.getRegion_name());
String pointStatus = entity.getPoint_status();
// 根据点位状态来判断更新内容
if (ObjectUtil.isNotEmpty(pointStatus) && pointStatus.equals(PointStatusEnum.EMPTY_POINT.getCode())) {
entity.setVehicle_type("");
entity.setVehicle_code("");
}
pointMapper.updateById(entity);
}

View File

@@ -51,9 +51,9 @@ spring:
master:
driver-class-name: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms_nlwq}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true
url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3306}/${DB_NAME:wms_standardv2}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
url: jdbc:mysql://${DB_HOST:127.0.0.1}:${DB_PORT:3307}/${DB_NAME:wms_standardv2}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
username: ${DB_USER:root}
password: ${DB_PWD:5XXX/3GEgdUnRZd4cbVnDL6BA6P9YToc}
password: ${DB_PWD:123456}
# password: ${DB_PWD:123456}
druid:
# 基础连接池配置

View File

@@ -156,6 +156,7 @@
<el-table-column prop="status" label="状态" :formatter="formattStatus" :min-width="flexWidth('status',crud.data,'状态')" />
<el-table-column prop="qty" label="组盘数量" :formatter="crud.formatNum3" :min-width="100" />
<el-table-column prop="remark" label="备注" :min-width="flexWidth('remark',crud.data,'备注')" />
<el-table-column prop="load_port" label="用料位置" :min-width="flexWidth('load_port',crud.data,'用料位置')" />
<el-table-column prop="create_name" label="组盘人" :min-width="flexWidth('create_name',crud.data,'组盘人')" />
<el-table-column prop="create_time" label="组盘时间" :min-width="flexWidth('create_time',crud.data,'组盘时间')" />
<el-table-column

View File

@@ -58,7 +58,7 @@
<el-table-column prop="point_name" label="点位编码" width="180" show-overflow-tooltip />
<el-table-column prop="region_code" label="区域编码" :min-width="flexWidth('region_code',crud.data,'区域编码')" />
<el-table-column prop="region_name" label="区域名称" :min-width="flexWidth('region_name',crud.data,'区域名称')" />
<el-table-column prop="point_type_name" label="点位类型" :min-width="flexWidth('point_type_name',crud.data,'点位类型')"/>
<el-table-column prop="point_type" label="点位类型" :min-width="flexWidth('point_type',crud.data,'点位类型')"/>
<el-table-column prop="point_status_name" label="点位状态" :min-width="flexWidth('point_status_name',crud.data,'点位类型')"/>
<el-table-column prop="remark" label="备注" :min-width="flexWidth('remark',crud.data,'备注')" />
<el-table-column prop="is_used" label="是否启用" :min-width="flexWidth('is_used',crud.data,'是否启用')">

View File

@@ -26,7 +26,7 @@
<el-input v-model="form.point_name" style="width: 200px;"/>
</el-form-item>
<el-form-item label="点位类型">
<el-input v-model="form.point_type_name" style="width: 200px;"/>
<el-input v-model="form.point_type" style="width: 200px;"/>
</el-form-item>
<el-form-item label="点位状态">
<el-input v-model="form.point_status_name" style="width: 200px;"/>

View File

@@ -193,11 +193,24 @@
</el-select>
</el-form-item>
<el-form-item label="点位编码" prop="point_code">
<el-input v-model="form.point_code" style="width: 370px;" />
<el-input v-model="form.point_code" style="width: 370px;" :disabled="crud.status.edit === 1" />
</el-form-item>
<el-form-item label="点位名称" prop="point_name">
<el-input v-model="form.point_name" style="width: 370px;" />
</el-form-item>
<el-form-item label="点位类型" prop="point_type">
<el-select
v-model="form.point_type"
placeholder="请选择"
style="width: 370px;"
>
<el-option
v-for="item in pointTypesList"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item v-if="pointStatusDialogList.length > 0" label="点位状态" prop="point_status">
<el-select
v-model="form.point_status"
@@ -218,7 +231,7 @@
<el-select
v-model="form.point_type"
size="mini"
placeholder="设备点位类型"
placeholder="点位类型"
class="filter-item"
style="width: 370px;"
>
@@ -232,10 +245,10 @@
<el-form-item label="父类编码" prop="vehicle_code">
<el-input v-model="form.parent_point_code" clearable style="width: 370px;" @focus="getParentPoint"/>
</el-form-item>
<el-form-item v-if="form.point_status !== '1'" label="载具编码" prop="vehicle_code">
<el-form-item label="载具编码" prop="vehicle_code">
<el-input v-model="form.vehicle_code" clearable style="width: 370px;" />
</el-form-item>
<el-form-item v-if="form.point_status !== '1'" label="载具类型" prop="vehicle_code">
<el-form-item label="载具类型" prop="vehicle_code">
<el-select v-model="form.vehicle_type" placeholder="请选择" clearable style="width: 370px;">
<el-option
v-for="item in dict.vehicle_type"
@@ -281,10 +294,8 @@
<el-table-column prop="point_name" label="点位名称" :min-width="flexWidth('point_name',crud.data,'点位名称')" />
<el-table-column prop="region_code" label="区域编码" :min-width="flexWidth('region_code',crud.data,'区域编码')" />
<el-table-column prop="region_name" label="区域名称" :min-width="flexWidth('region_name',crud.data,'区域名称')" />
<el-table-column prop="point_type_name" label="点位类型" :min-width="flexWidth('point_type_name',crud.data,'点位类型')"/>
<el-table-column prop="point_type" label="点位类型" :formatter="formatPointType" :min-width="flexWidth('point_type',crud.data,'点位类型')"/>
<el-table-column prop="point_status_name" label="点位状态" :min-width="flexWidth('point_status_name',crud.data,'点位类型')"/>
<!-- <el-table-column prop="point_type" label="点位类型" :min-width="flexWidth('point_type',crud.data,'点位类型')" />-->
<!-- <el-table-column prop="point_status" label="点位状态" :min-width="flexWidth('point_status',crud.data,'点位状态')" />-->
<el-table-column prop="vehicle_type" label="载具类型" :min-width="flexWidth('vehicle_type',crud.data,'载具类型', 30)">
<template slot-scope="scope">
{{ dict.label.vehicle_type[scope.row.vehicle_type] }}
@@ -439,7 +450,20 @@ export default {
{ 'name': '第一车间', 'code': 'A1' }
],
regionList: [],
pointTypesList: [],
pointTypesList: [
{
'value': '1',
'label': '普通站点'
},
{
'value': '2',
'label': '产线站点'
},
{
'value': null,
'label': '其他'
}
],
pointStatusList: [],
pointStatusDialogList: [],
pointTypesDialogList: [],
@@ -474,7 +498,6 @@ export default {
getPointStatusAndTypeList(id, flag) {
if (id) {
this.getPointStatusList(id, flag)
this.getPointTypeList(id, flag)
}
if (flag === 1) {
this.crud.toQuery()
@@ -489,14 +512,9 @@ export default {
}
})
},
getPointTypeList(id, flag) {
crudSchBaseRegion.getPointTypeSelectById(id).then(res => {
if (flag === 1) {
this.pointTypesList = res
} else {
this.pointTypesDialogList = res
}
})
formatPointType(row, column, cellValue) {
const found = this.pointTypesList.find(item => item.value === cellValue);
return found ? found.label : '-';
},
changeUsed(data, flag) { // 更改启用状态
const param = {}