Browse Source

add: 添加定时删除日志文件,优化pc下料逻辑

master
yanps 2 months ago
parent
commit
962338862e
  1. 1
      acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java
  2. 1
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/region/RegionEnum.java
  3. 81
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/fab/controller/FabController.java
  4. 10
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/fab/service/impl/FabServiceImpl.java
  5. 6
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/handheld/controller/HandheldController.java
  6. 1
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java
  7. 78
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCleanFile.java
  8. 4
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java
  9. 6
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/pcoperation/PcOperationSMTTask.java
  10. 2
      lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/pcoperation/ProcessingSMTTask.java
  11. 4
      lms/nladmin-ui/src/views/wms/produceScreen/index.vue
  12. 11
      lms/nladmin-ui/src/views/wms/sch/group/index.vue

1
acs/nladmin-system/nlsso-server/src/main/java/org/nl/acs/task/service/impl/TaskServiceImpl.java

@ -417,6 +417,7 @@ public class TaskServiceImpl extends CommonServiceImpl<TaskMapper, Task> impleme
if (!StrUtil.isEmpty(create_time) && !StrUtil.isEmpty(end_time)) { if (!StrUtil.isEmpty(create_time) && !StrUtil.isEmpty(end_time)) {
wrapper.between(Task::getCreate_time, create_time, end_time); wrapper.between(Task::getCreate_time, create_time, end_time);
} }
wrapper.orderByDesc(Task::getUpdate_time);
IPage<Task> taskPage = taskMapper.selectPage(queryPage, wrapper); IPage<Task> taskPage = taskMapper.selectPage(queryPage, wrapper);
final JSONObject json = (JSONObject) JSON.toJSON(ConvertUtil.convertPage(taskPage, TaskDto.class)); final JSONObject json = (JSONObject) JSON.toJSON(ConvertUtil.convertPage(taskPage, TaskDto.class));
JSONArray array = json.getJSONArray("content"); JSONArray array = json.getJSONArray("content");

1
lms/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/region/RegionEnum.java

@ -17,6 +17,7 @@ public enum RegionEnum {
NBJG("内部加工区","NBJGZCQ"), NBJG("内部加工区","NBJGZCQ"),
WXJG("外协加工区","WXJGZCQ"), WXJG("外协加工区","WXJGZCQ"),
ZDZWQ("自动折弯区","ZDZWQ"), ZDZWQ("自动折弯区","ZDZWQ"),
NBGD("内部过道加工区","NBGDJGQ"),
; ;
private final String region_name; private final String region_name;
private final String region_code; private final String region_code;

81
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/fab/controller/FabController.java

@ -222,49 +222,52 @@ public class FabController {
public ResponseEntity<TableDataInfo> sendMater(@RequestBody SendMaterVo materInfo) { public ResponseEntity<TableDataInfo> sendMater(@RequestBody SendMaterVo materInfo) {
JSONObject toJSON = (JSONObject) JSON.toJSON(materInfo); JSONObject toJSON = (JSONObject) JSON.toJSON(materInfo);
//TODO:待确定 //TODO:待确定
List<SendVehicleVo> mater = materInfo.getMater(); if("1".equals(materInfo.getPoint_code())){
if (CollUtil.isEmpty(mater)) throw new BadRequestException("物料信息为空,请确认!"); List<SendVehicleVo> mater = materInfo.getMater();
JSONObject json = new JSONObject(); if (CollUtil.isEmpty(mater)) throw new BadRequestException("物料信息为空,请确认!");
JSONArray jsonArray = new JSONArray(); JSONObject json = new JSONObject();
HashMap<String, Object> map = new HashMap<>(); JSONArray jsonArray = new JSONArray();
mater.stream().forEach(material -> { HashMap<String, Object> map = new HashMap<>();
map.put("order_code", material.getOrder_code()); mater.stream().forEach(material -> {
map.put("qty", material.getMaterial_qty()); map.put("order_code", material.getOrder_code());
jsonArray.add(map); map.put("qty", material.getMaterial_qty());
}); jsonArray.add(map);
SchBasePoint schBasePoint = iSchBasePointService.selectByPointCode(materInfo.getDevice_code()); });
json.put("vehicle_code", schBasePoint.getVehicle_code()); SchBasePoint schBasePoint = iSchBasePointService.selectByPointCode(materInfo.getDevice_code());
json.put("region_code", schBasePoint.getRegion_code()); json.put("vehicle_code", schBasePoint.getVehicle_code());
json.put("materials", jsonArray); json.put("region_code", schBasePoint.getRegion_code());
JSONObject jsonObject = wmsToConnectorService.applyRegionAndDueDate(json); json.put("materials", jsonArray);
if (ObjectUtil.isNotEmpty(jsonObject) && jsonObject.getInteger("status") == 200) { JSONObject jsonObject = wmsToConnectorService.applyRegionAndDueDate(json);
JSONArray data = jsonObject.getJSONArray("data"); if (ObjectUtil.isNotEmpty(jsonObject) && jsonObject.getInteger("status") == 200) {
data.stream().forEach(material -> { JSONArray data = jsonObject.getJSONArray("data");
JSONObject jsonObject1 = JSONObject.parseObject(StrUtil.toString(material)); data.stream().forEach(material -> {
mater.stream().forEach(material1 -> { JSONObject jsonObject1 = JSONObject.parseObject(StrUtil.toString(material));
if (material1.getOrder_code().equals(jsonObject1.getString("order_code"))) { mater.stream().forEach(material1 -> {
material1.setDue_date(jsonObject1.getString("due_date")); if (material1.getOrder_code().equals(jsonObject1.getString("order_code"))) {
material1.setRegion_code(jsonObject1.getString("next_region_code")); material1.setDue_date(jsonObject1.getString("due_date"));
} material1.setRegion_code(jsonObject1.getString("next_region_code"));
}
});
}); });
} else if (ObjectUtil.isNotEmpty(jsonObject) && jsonObject.getInteger("status") == 400) {
throw new BadRequestException(jsonObject.getString("msg"));
}
List<String> materiales = new ArrayList<>();
mater.stream().forEach(material -> {
materiales.add(JSONObject.toJSONString(material));
}); });
} else if (ObjectUtil.isNotEmpty(jsonObject) && jsonObject.getInteger("status") == 400) { toJSON.put("material_info", materiales);
throw new BadRequestException(jsonObject.getString("msg")); toJSON.put("vehicle_code", schBasePoint.getVehicle_code());
}
List<String> materiales = new ArrayList<>();
mater.stream().forEach(material -> {
materiales.add(JSONObject.toJSONString(material));
});
toJSON.put("material_info", materiales);
toJSON.put("vehicle_code", schBasePoint.getVehicle_code());
if ("1".equals(materInfo.getPoint_code())) {
toJSON.put("region_code", StrUtil.isNotEmpty(mater.get(0).getRegion_code()) ? mater.get(0).getRegion_code() : schBasePoint.getRegion_code()); toJSON.put("region_code", StrUtil.isNotEmpty(mater.get(0).getRegion_code()) ? mater.get(0).getRegion_code() : schBasePoint.getRegion_code());
} else if ("2".equals(materInfo.getPoint_code())) { }else{
toJSON.put("region_code", RegionEnum.NBJG.getRegion_code()); if ("2".equals(materInfo.getPoint_code())) {
} else if ("3".equals(materInfo.getPoint_code())) { toJSON.put("region_code", RegionEnum.NBJG.getRegion_code());
toJSON.put("region_code", RegionEnum.WXJG.getRegion_code()); } else if ("3".equals(materInfo.getPoint_code())) {
toJSON.put("region_code", RegionEnum.WXJG.getRegion_code());
} else if ("4".equals(materInfo.getPoint_code())) {
toJSON.put("region_code", RegionEnum.NBGD.getRegion_code());
}
} }
fabService.createAgvTask(toJSON, "smt"); fabService.createAgvTask(toJSON, "smt");
return new ResponseEntity(TableDataInfo.build(), HttpStatus.OK); return new ResponseEntity(TableDataInfo.build(), HttpStatus.OK);
} }

10
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/fab/service/impl/FabServiceImpl.java

@ -83,7 +83,7 @@ public class FabServiceImpl {
JSONObject param = new JSONObject(); JSONObject param = new JSONObject();
switch (type) { switch (type) {
case "cmt": case "cmt":
Assert.noNullElements(new Object[]{form.getString("device_code"),form.getString("vehicle_code")}, "参数不能为空!"); Assert.noNullElements(new Object[]{form.getString("device_code"), form.getString("vehicle_code")}, "参数不能为空!");
CallMaterVo callMaterVo = form.toJavaObject(CallMaterVo.class); CallMaterVo callMaterVo = form.toJavaObject(CallMaterVo.class);
param.put("device_code", callMaterVo.getDevice_code()); param.put("device_code", callMaterVo.getDevice_code());
param.put("config_code", "PcOperationCMTask"); param.put("config_code", "PcOperationCMTask");
@ -101,10 +101,10 @@ public class FabServiceImpl {
Assert.noNullElements(new Object[]{form.getString("device_code"), form.getString("vehicle_type")}, "参数不能为空!"); Assert.noNullElements(new Object[]{form.getString("device_code"), form.getString("vehicle_type")}, "参数不能为空!");
CallEmpVo callEmpVo = form.toJavaObject(CallEmpVo.class); CallEmpVo callEmpVo = form.toJavaObject(CallEmpVo.class);
SchBasePoint schBasePoint1 = iSchBasePointService.selectByPointCode(form.getString("device_code")); SchBasePoint schBasePoint1 = iSchBasePointService.selectByPointCode(form.getString("device_code"));
if(ObjectUtil.isEmpty(schBasePoint1)){ if (ObjectUtil.isEmpty(schBasePoint1)) {
throw new BadRequestException("点位不存在"); throw new BadRequestException("点位不存在");
} }
if(!schBasePoint1.getPoint_status().equals(GoodsEnum.OUT_OF_STOCK.getValue()) || schBasePoint1.getIs_lock()){ if (!schBasePoint1.getPoint_status().equals(GoodsEnum.OUT_OF_STOCK.getValue()) || schBasePoint1.getIs_lock()) {
throw new BadRequestException("该点位不是空站点,请确认再呼叫"); throw new BadRequestException("该点位不是空站点,请确认再呼叫");
} }
param.put("device_code", callEmpVo.getDevice_code()); param.put("device_code", callEmpVo.getDevice_code());
@ -122,12 +122,14 @@ public class FabServiceImpl {
Assert.noNullElements(new Object[]{form.getString("device_code"), form.getString("region_code")}, "参数不能为空!"); Assert.noNullElements(new Object[]{form.getString("device_code"), form.getString("region_code")}, "参数不能为空!");
SendMaterVo sendMaterVo = form.toJavaObject(SendMaterVo.class); SendMaterVo sendMaterVo = form.toJavaObject(SendMaterVo.class);
MdBaseVehicle vehicle = iMdBaseVehicleService.getOne(new QueryWrapper<MdBaseVehicle>().eq("vehicle_code", sendMaterVo.getVehicle_code())); MdBaseVehicle vehicle = iMdBaseVehicleService.getOne(new QueryWrapper<MdBaseVehicle>().eq("vehicle_code", sendMaterVo.getVehicle_code()));
if(ObjectUtil.isEmpty(vehicle)) throw new BadRequestException("载具不存在"); if (ObjectUtil.isEmpty(vehicle)) throw new BadRequestException("载具不存在");
param.put("device_code", sendMaterVo.getDevice_code()); param.put("device_code", sendMaterVo.getDevice_code());
param.put("ext_data", sendMaterVo); param.put("ext_data", sendMaterVo);
param.put("region_code", sendMaterVo.getRegion_code()); param.put("region_code", sendMaterVo.getRegion_code());
if (sendMaterVo.getRegion_code().equals(RegionEnum.NBJG.getRegion_code()) || sendMaterVo.getRegion_code().equals(RegionEnum.WXJG.getRegion_code())) { if (sendMaterVo.getRegion_code().equals(RegionEnum.NBJG.getRegion_code()) || sendMaterVo.getRegion_code().equals(RegionEnum.WXJG.getRegion_code())) {
param.put("config_code", "ProcessingSMTTask"); param.put("config_code", "ProcessingSMTTask");
} else if (sendMaterVo.getRegion_code().equals(RegionEnum.NBGD.getRegion_code())) {
param.put("config_code", "ProcessingSMTTask");
} else { } else {
param.put("config_code", "PcOperationSMTTask"); param.put("config_code", "PcOperationSMTTask");
} }

6
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/ext/handheld/controller/HandheldController.java

@ -141,5 +141,11 @@ public class HandheldController {
return new ResponseEntity<>(handheldService.selectPointByRegion(regionCode),HttpStatus.OK); return new ResponseEntity<>(handheldService.selectPointByRegion(regionCode),HttpStatus.OK);
} }
@GetMapping("/createPointInPointTask")
@Log("创建点对点任务")
public ResponseEntity<Object> createPointTask(String regionCode) {
return new ResponseEntity<>(handheldService.selectPointByRegion(regionCode),HttpStatus.OK);
}
} }

1
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task/service/impl/SchBaseTaskServiceImpl.java

@ -78,6 +78,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
} else { } else {
lam.in(SchBaseTask::getTask_status, TaskStatus.APPLY.getCode(), TaskStatus.CREATED.getCode(), TaskStatus.ISSUED.getCode(), TaskStatus.EXECUTING.getCode()); lam.in(SchBaseTask::getTask_status, TaskStatus.APPLY.getCode(), TaskStatus.CREATED.getCode(), TaskStatus.ISSUED.getCode(), TaskStatus.EXECUTING.getCode());
} }
lam.orderByDesc(SchBaseTask::getUpdate_time);
IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize()); IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize());
schBaseTaskMapper.selectPage(pages, lam); schBaseTaskMapper.selectPage(pages, lam);
return pages; return pages;

78
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCleanFile.java

@ -0,0 +1,78 @@
package org.nl.wms.sch.task_manage;
import cn.hutool.core.util.ObjectUtil;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.nl.config.SpringContextHolder;
import org.nl.system.service.param.dao.Param;
import org.nl.system.service.param.impl.SysParamServiceImpl;
import org.reflections.Reflections;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.config.YamlPropertiesFactoryBean;
import org.springframework.context.annotation.Profile;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
import java.util.concurrent.TimeUnit;
/**
* @author LENOVO
* 定时清理日志文件
*/
@Slf4j
@Component
@Profile("prod")
public class AutoCleanFile {
private static long DAYS_TO_MILLIS = TimeUnit.DAYS.toMillis(14);
@Value("${logging.file.path}")
private String logPath;
@SneakyThrows
public void run() {
log.info("定时清理日志文件AutoCleanFile开始:");
File directory = new File(logPath);
if (directory.exists() && directory.isDirectory()) {
cleanDirectory(directory);
} else {
System.out.println("指定的路径不存在或不是一个目录。");
}
}
// 递归清理文件夹内的过期文件
private static void cleanDirectory(File directory) {
File[] files = directory.listFiles();
if (files != null) {
long currentTime = System.currentTimeMillis();
for (File file : files) {
if (file.isDirectory()) {
// 如果是目录,递归调用
cleanDirectory(file);
} else if (file.isFile()) {
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
Param byCode = sysParamService.findByCode(GeneralDefinition.LOGIN_TIME);
if (ObjectUtil.isNotNull(byCode)) {
DAYS_TO_MILLIS = TimeUnit.DAYS.toMillis(Long.parseLong(byCode.getValue()));
}
if (currentTime - file.lastModified() > DAYS_TO_MILLIS) {
boolean deleted = file.delete();
if (deleted) {
log.info("已删除文件: " + file.getAbsolutePath());
} else {
log.info("无法删除文件: " + file.getAbsolutePath());
}
} else {
log.info("文件未超过七天, 不做任何修改: " + file.getAbsolutePath());
}
}
}
}
}
}

4
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/GeneralDefinition.java

@ -67,6 +67,10 @@ public class GeneralDefinition {
* 是否调用connector小插件 * 是否调用connector小插件
*/ */
public static final String IS_INVOKE_CONNECTOR = "is_invoke_connector"; public static final String IS_INVOKE_CONNECTOR = "is_invoke_connector";
/**
* 删除多少天之外的日志文件
*/
public static final String LOGIN_TIME = "log_time";
/** /**
* 手持登录时间 * 手持登录时间
*/ */

6
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/pcoperation/PcOperationSMTTask.java

@ -69,11 +69,11 @@ public class PcOperationSMTTask extends AbstractTask {
for (SchBaseTask task : tasks) { for (SchBaseTask task : tasks) {
SendMaterVo sendMaterVo = JSONObject.parseObject(task.getRequest_param(), SendMaterVo.class); SendMaterVo sendMaterVo = JSONObject.parseObject(task.getRequest_param(), SendMaterVo.class);
//判断是否指定到外协区 //判断是否指定到外协区
String targetRegionCode = sendMaterVo.getTarget_region_code(); String targetRegionCode = sendMaterVo.getRegion_code();
//TODO: 分配逻辑 //TODO: 分配逻辑
SchBasePoint schBasePoint = null; SchBasePoint schBasePoint = null;
if (!StringUtils.isEmpty(targetRegionCode)) { if (!StringUtils.isEmpty(targetRegionCode)) {
schBasePoint = schBasePointService.selectByRegionCode(targetRegionCode, task.getVehicle_code(), "1");
} else { } else {
// 根据对接位查找对应的载具类型 // 根据对接位查找对应的载具类型
schBasePoint = schBasePointService.selectByRegionCode(task.getRegion_code(), task.getVehicle_code(), "1"); schBasePoint = schBasePointService.selectByRegionCode(task.getRegion_code(), task.getVehicle_code(), "1");
@ -100,7 +100,7 @@ public class PcOperationSMTTask extends AbstractTask {
} }
//删除组盘记录生成新的 //删除组盘记录生成新的
schBaseVehiclematerialgroupService.remove(new QueryWrapper<SchBaseVehiclematerialgroup>().eq("vehicle_code", sendMaterVo.getVehicle_code())); schBaseVehiclematerialgroupService.remove(new QueryWrapper<SchBaseVehiclematerialgroup>().eq("vehicle_code", sendMaterVo.getVehicle_code()));
if(CollUtil.isNotEmpty(sendMaterVos)){ if (CollUtil.isNotEmpty(sendMaterVos)) {
SchBasePoint finalSchBasePoint = schBasePoint; SchBasePoint finalSchBasePoint = schBasePoint;
sendMaterVos.stream().forEach(smv -> { sendMaterVos.stream().forEach(smv -> {
SchBaseVehiclematerialgroup schBaseVehiclematerialgroup = new SchBaseVehiclematerialgroup(); SchBaseVehiclematerialgroup schBaseVehiclematerialgroup = new SchBaseVehiclematerialgroup();

2
lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/task/tasks/pcoperation/ProcessingSMTTask.java

@ -62,7 +62,7 @@ public class ProcessingSMTTask extends AbstractTask {
SendMaterVo sendMaterVo = JSONObject.parseObject(task.getRequest_param(), SendMaterVo.class); SendMaterVo sendMaterVo = JSONObject.parseObject(task.getRequest_param(), SendMaterVo.class);
//判断是否指定到外协区 //判断是否指定到外协区
String targetRegionCode = sendMaterVo.getTarget_region_code(); String targetRegionCode = sendMaterVo.getRegion_code();
if (StringUtils.isBlank(targetRegionCode)) { if (StringUtils.isBlank(targetRegionCode)) {
task.setRemark("未指定区域!"); task.setRemark("未指定区域!");
taskService.updateById(task); taskService.updateById(task);

4
lms/nladmin-ui/src/views/wms/produceScreen/index.vue

@ -224,9 +224,9 @@ export default {
popSecList: [], popSecList: [],
currentRow: null, currentRow: null,
value: '', value: '',
options: [{ value: 'G01', label: 'G01' }, { value: 'R01', label: 'R01' }, { value: 'R02', label: 'R02' }, { value: 'S04', label: 'S04' }, { value: 'S06', label: 'S06' }], options: [{ value: 'G01', label: 'G01' }, { value: 'R01', label: 'R01' }, { value: 'R02', label: 'R02' }, { value: 'R03', label: 'R03' }, { value: 'S04', label: 'S04' }, { value: 'S06', label: 'S06' }],
value1: '', value1: '',
options1: [{ value: '1', label: '货架' }, { value: '2', label: '内部' }, { value: '3', label: '外协' }], options1: [{ value: '1', label: '货架' }, { value: '2', label: '内部' }, { value: '3', label: '外协' }, { value: '4', label: '内部过道' }],
value2: '', value2: '',
options2: [], options2: [],
vcode: '', vcode: '',

11
lms/nladmin-ui/src/views/wms/sch/group/index.vue

@ -292,13 +292,13 @@
<el-table-column v-if="false" prop="update_name" label="修改人" :min-width="flexWidth('update_name',crud.data,'修改人')" /> <el-table-column v-if="false" prop="update_name" label="修改人" :min-width="flexWidth('update_name',crud.data,'修改人')" />
<el-table-column v-if="false" prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" /> <el-table-column v-if="false" prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" />
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right"> <el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
<!-- <template slot-scope="scope"> <template slot-scope="scope">
<udOperation <udOperation
:data="scope.row" :data="scope.row"
:permission="permission" :permission="permission"
/> />
</template> --> </template>
<template slot-scope="scope"> <!-- <template slot-scope="scope">
<el-button <el-button
v-if="!!scope.row.has_work && scope.row.theLocation != null" v-if="!!scope.row.has_work && scope.row.theLocation != null"
type="text" type="text"
@ -307,7 +307,7 @@
> >
创建任务 创建任务
</el-button> </el-button>
</template> </template> -->
</el-table-column> </el-table-column>
</el-table> </el-table>
<!--分页组件--> <!--分页组件-->
@ -323,6 +323,7 @@ import crudSchBaseVehiclematerialgroup from './schBaseVehiclematerialgroup'
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 rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation' import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination' import pagination from '@crud/Pagination'
import crudMdBaseWorkShop from '@/views/wms/basedata/workshop/mdBaseWorkshop' import crudMdBaseWorkShop from '@/views/wms/basedata/workshop/mdBaseWorkshop'
import MaterialDialog from '@/views/wms/sch/group/MaterialDialog.vue' import MaterialDialog from '@/views/wms/sch/group/MaterialDialog.vue'
@ -365,7 +366,7 @@ const defaultForm = {
export default { export default {
name: 'VehicleMaterialGroup', name: 'VehicleMaterialGroup',
dicts: ['group_status', 'group_bind_material_status'], dicts: ['group_status', 'group_bind_material_status'],
components: { WorkOrderDialog, MaterialDialog, pagination, crudOperation, rrOperation }, components: { WorkOrderDialog, MaterialDialog, pagination, crudOperation, rrOperation, udOperation },
mixins: [presenter(), header(), form(defaultForm), crud()], mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() { cruds() {
return CRUD({ return CRUD({

Loading…
Cancel
Save