rev:代码优化
This commit is contained in:
@@ -78,6 +78,14 @@ public class OrderController {
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("强制完成")
|
||||
|
||||
@PostMapping("/updateOrder")
|
||||
public ResponseEntity<Object> updateOrder(@RequestBody JSONObject whereJson) {
|
||||
orderService.updateOrder(whereJson);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("开始")
|
||||
|
||||
@PostMapping("/start")
|
||||
|
||||
@@ -76,6 +76,13 @@ public interface OrderService extends CommonService<OrderDto> {
|
||||
*/
|
||||
void forceFinish(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 起点终点确认
|
||||
*
|
||||
* @param whereJson /
|
||||
*/
|
||||
void updateOrder(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 称重
|
||||
*
|
||||
|
||||
@@ -112,10 +112,16 @@ public class OrderDto extends CommonModel<OrderDto> implements Serializable {
|
||||
private String is_delete;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 点位编码
|
||||
* 起点编码
|
||||
*/
|
||||
private String point_code;
|
||||
private String start_device_code;
|
||||
|
||||
/**
|
||||
* 终点编码
|
||||
*/
|
||||
private String next_device_code;
|
||||
|
||||
/**
|
||||
* 明细数量
|
||||
|
||||
@@ -217,6 +217,32 @@ public class OrderServiceImpl extends CommonServiceImpl<OrderMapper, OrderDto> i
|
||||
orderMapper.updateById(orderDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateOrder(JSONObject whereJson) {
|
||||
String workorder_id = whereJson.getString("workorder_id");
|
||||
String start_device_code = whereJson.getString("start_device_code");
|
||||
String next_device_code = whereJson.getString("next_device_code");
|
||||
if (StrUtil.isEmpty(workorder_id)){
|
||||
throw new BadRequestException("工单号为空!");
|
||||
}
|
||||
if (StrUtil.isEmpty(start_device_code)){
|
||||
throw new BadRequestException("起点编码不能为空");
|
||||
}
|
||||
if (StrUtil.isEmpty(next_device_code)){
|
||||
throw new BadRequestException("终点编码不能为空");
|
||||
}
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
String currentUsername = SecurityUtils.getCurrentUsername();
|
||||
OrderDto orderDto = orderMapper.selectById(workorder_id);
|
||||
|
||||
orderDto.setStart_device_code(start_device_code);
|
||||
orderDto.setNext_device_code(next_device_code);
|
||||
orderDto.setUpdate_optid(currentUserId);
|
||||
orderDto.setUpdate_optname(currentUsername);
|
||||
orderDto.setUpdate_time(DateUtil.now());
|
||||
orderMapper.updateById(orderDto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void start(JSONObject whereJson) {
|
||||
String workorder_id = whereJson.getString("workorder_id");
|
||||
|
||||
@@ -80,4 +80,7 @@ public class Work implements Serializable {
|
||||
* 修改时间
|
||||
*/
|
||||
private String update_time;
|
||||
|
||||
|
||||
private String next_device_code;
|
||||
}
|
||||
|
||||
@@ -66,4 +66,6 @@ public class WorkDto implements Serializable {
|
||||
* 修改时间
|
||||
*/
|
||||
private String update_time;
|
||||
|
||||
private String next_device_code;
|
||||
}
|
||||
|
||||
@@ -109,6 +109,9 @@ public class WorkServiceImpl extends ServiceImpl<WorkMapper, Work> implements Wo
|
||||
if (ObjectUtil.isEmpty(work)) {
|
||||
throw new BadRequestException("不存在该配料任务");
|
||||
}
|
||||
if (CommonFinalParam.ONE.equals(work.getStatus())) {
|
||||
throw new BadRequestException("该配料任务已下发,请勿重复下发!");
|
||||
}
|
||||
String mfg_order_name = work.getMfg_order_name();
|
||||
List<Work> works = workMapper.selectList(Wrappers.lambdaQuery(Work.class).eq(Work::getMfg_order_name, mfg_order_name).eq(Work::getStatus, TaskStatus.EXECUTING.getCode()));
|
||||
if (works.size() != 0) {
|
||||
@@ -157,20 +160,33 @@ public class WorkServiceImpl extends ServiceImpl<WorkMapper, Work> implements Wo
|
||||
if (StrUtil.equals(CommonFinalParam.FINISHED, work.getStatus())) {
|
||||
throw new BadRequestException("该配料任务已完成!");
|
||||
}
|
||||
String resource_name = work.getResource_name();
|
||||
String mfg_order_name = work.getMfg_order_name();
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
if (ObjectUtil.isEmpty(dto)){
|
||||
throw new BadRequestException("工单不存在");
|
||||
}
|
||||
TaskDto taskDto = new TaskDto();
|
||||
taskDto.setStart_device_code("T1");
|
||||
taskDto.setNext_device_code(resource_name);
|
||||
taskDto.setTask_type(CommonFinalParam.TYPE_THREE);
|
||||
String next_device_code = work.getNext_device_code();
|
||||
String next_device_code1 = dto.getNext_device_code();
|
||||
if (StrUtil.isNotEmpty(next_device_code)) {
|
||||
taskDto.setNext_device_code(next_device_code);
|
||||
}else if (StrUtil.isNotEmpty(next_device_code1)) {
|
||||
taskDto.setNext_device_code(next_device_code1);
|
||||
}else {
|
||||
throw new BadRequestException("工单起点和终点未确认!");
|
||||
}
|
||||
|
||||
taskDto.setStart_device_code("QZJYTW2");
|
||||
taskDto.setTask_type(CommonFinalParam.ONE);
|
||||
taskDto.setAgv_system_type(CommonFinalParam.TWO);
|
||||
taskDto.setWork_id(id);
|
||||
AcsPoint point = acsPointService.findByCode("T1");
|
||||
if (ObjectUtil.isEmpty(point)) {
|
||||
throw new BadRequestException("不存在T1点位");
|
||||
}
|
||||
if (!point.getIs_used().booleanValue() || point.getPoint_status().equals(CommonFinalParam.ONE)) {
|
||||
throw new BadRequestException("T1点位被占用");
|
||||
}
|
||||
// AcsPoint point = acsPointService.findByCode("T1");
|
||||
// if (ObjectUtil.isEmpty(point)) {
|
||||
// throw new BadRequestException("不存在T1点位");
|
||||
// }
|
||||
// if (!point.getIs_used().booleanValue() || point.getPoint_status().equals(CommonFinalParam.ONE)) {
|
||||
// throw new BadRequestException("T1点位被占用");
|
||||
// }
|
||||
try {
|
||||
taskService.create(taskDto);
|
||||
} catch (Exception e) {
|
||||
@@ -182,8 +198,6 @@ public class WorkServiceImpl extends ServiceImpl<WorkMapper, Work> implements Wo
|
||||
work.setStatus(TaskStatus.FINISHED.getCode());
|
||||
}
|
||||
workMapper.updateById(work);
|
||||
String mfg_order_name = work.getMfg_order_name();
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
List<Work> works = workMapper.selectList(Wrappers.lambdaQuery(Work.class).eq(Work::getMfg_order_name, mfg_order_name).eq(Work::getStatus, TaskStatus.FINISHED.getCode()));
|
||||
// 工单所有配料任务都完成,则工单状态改为已完成
|
||||
if (works.size() == dto.getDetail_count()) {
|
||||
|
||||
@@ -587,8 +587,8 @@ public class TaskServiceImpl extends CommonServiceImpl<TaskMapper, Task> impleme
|
||||
task_code = CodeUtil.getNewCode("TASK_NO");
|
||||
task_code = CommonFinalParam.HYPHEN_ + task_code;
|
||||
}
|
||||
String start_device_code = dto.getStart_point_code();
|
||||
String next_device_code = dto.getNext_point_code();
|
||||
String start_device_code = dto.getStart_device_code();
|
||||
String next_device_code = dto.getNext_device_code();
|
||||
String route_plan_code = dto.getRoute_plan_code();
|
||||
dto.setCreate_by(StrUtil.isNotEmpty(currentUsername) ? currentUsername : "LMS");
|
||||
dto.setUpdate_by(currentUsername);
|
||||
|
||||
@@ -34,9 +34,21 @@ public class HandController {
|
||||
return new ResponseEntity<>(handService.query(), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/queryZDDevice")
|
||||
@Log("查询终点设备")
|
||||
public ResponseEntity<Object> queryZDDevice(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(handService.queryZDDevice(whereJson), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("确认配料作业")
|
||||
@PostMapping(value = "/confirm")
|
||||
public ResponseEntity<Object> confirm(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(handService.confirm(whereJson),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("确认配料作业")
|
||||
@PostMapping(value = "/confirmZZDevice")
|
||||
public ResponseEntity<Object> confirmZZDevice(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(handService.confirmZZDevice(whereJson),HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,6 +28,8 @@ public class PdaController {
|
||||
@Autowired
|
||||
private PdaService pdaService;
|
||||
|
||||
|
||||
|
||||
@PostMapping("/queryOrders")
|
||||
@Log("工单查询")
|
||||
public ResponseEntity<Object> queryOrders() {
|
||||
@@ -65,6 +67,15 @@ public class PdaController {
|
||||
return new ResponseEntity<>(pdaService.forceFinish(whereJson),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改工单")
|
||||
|
||||
@PostMapping("/updateOrder")
|
||||
public ResponseEntity<Object> updateOrder(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(pdaService.updateOrder(whereJson),HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Log("下发配料作业")
|
||||
@PostMapping(value = "/sendWork")
|
||||
public ResponseEntity<Object> sendWork(@RequestBody JSONObject whereJson) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package org.nl.hand.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.nl.hand.service.dao.vo.PdaResponseVo;
|
||||
import org.nl.hand.service.vo.WorkVo;
|
||||
@@ -10,4 +11,8 @@ public interface HandService {
|
||||
List<WorkVo> query();
|
||||
|
||||
PdaResponseVo confirm(JSONObject whereJson);
|
||||
|
||||
PdaResponseVo confirmZZDevice(JSONObject whereJson);
|
||||
|
||||
JSONArray queryZDDevice(JSONObject whereJson);
|
||||
}
|
||||
|
||||
@@ -23,6 +23,8 @@ public interface PdaService {
|
||||
|
||||
PdaResponseVo forceFinish(JSONObject whereJson);
|
||||
|
||||
PdaResponseVo updateOrder(JSONObject whereJson);
|
||||
|
||||
List<WorkVo> queryWorks(JSONObject whereJson);
|
||||
|
||||
List<WorkVo> getExcWorks();
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
product_name,
|
||||
description,
|
||||
resource_name,
|
||||
point_code,
|
||||
start_device_code,
|
||||
next_device_code,
|
||||
total_qty,
|
||||
Case status
|
||||
WHEN '0' THEN '就绪'
|
||||
@@ -26,7 +27,7 @@
|
||||
material_code,
|
||||
material_name,
|
||||
qty,
|
||||
resource_name,
|
||||
next_device_code,
|
||||
require_num,
|
||||
remain_num,
|
||||
Case status
|
||||
@@ -51,7 +52,7 @@
|
||||
material_code,
|
||||
material_name,
|
||||
qty,
|
||||
resource_name,
|
||||
next_device_code,
|
||||
require_num,
|
||||
remain_num,
|
||||
Case status
|
||||
@@ -61,6 +62,6 @@
|
||||
ELSE ''
|
||||
END AS status
|
||||
FROM work
|
||||
where status != '2' ORDER BY work.mfg_order_name asc ,work.seq_no asc
|
||||
where status = '1' ORDER BY work.mfg_order_name asc ,work.seq_no asc
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@@ -1,9 +1,19 @@
|
||||
package org.nl.hand.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.acs.device.domain.Device;
|
||||
import org.nl.acs.device.service.DeviceService;
|
||||
import org.nl.acs.order.service.OrderService;
|
||||
import org.nl.acs.order.service.dto.OrderDto;
|
||||
import org.nl.acs.sch.task.service.WorkService;
|
||||
import org.nl.acs.sch.task.service.dao.Work;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.config.language.LangProcess;
|
||||
import org.nl.hand.service.HandService;
|
||||
import org.nl.hand.service.PdaService;
|
||||
import org.nl.hand.service.dao.vo.PdaResponseVo;
|
||||
@@ -20,6 +30,10 @@ public class HandServiceImpl implements HandService {
|
||||
private PdaService pdaService;
|
||||
@Autowired
|
||||
private WorkService workService;
|
||||
@Autowired
|
||||
private DeviceService deviceService;
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -36,4 +50,52 @@ public class HandServiceImpl implements HandService {
|
||||
workService.confirm(work.getWork_id());
|
||||
return PdaResponseVo.pdaResultOk("配料作业确认成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
public PdaResponseVo confirmZZDevice(JSONObject whereJson) {
|
||||
if (StrUtil.isEmpty(whereJson.getString("work_code"))){
|
||||
throw new BadRequestException("配料作业编码不能为空");
|
||||
}
|
||||
if (StrUtil.isEmpty(whereJson.getString("next_device_code"))){
|
||||
throw new BadRequestException("终点设备编码不能为空");
|
||||
}
|
||||
Work work = workService.findByCode(whereJson.getString("work_code"));
|
||||
if (work == null){
|
||||
return PdaResponseVo.pdaResultOk("配料作业不存在");
|
||||
}
|
||||
work.setNext_device_code(whereJson.getString("next_device_code"));
|
||||
workService.update(work);
|
||||
return PdaResponseVo.pdaResultOk("终点确认完成");
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONArray queryZDDevice(JSONObject whereJson) {
|
||||
String mfg_order_name = whereJson.getString("mfg_order_name");
|
||||
if (StrUtil.isEmpty(mfg_order_name)){
|
||||
throw new BadRequestException("工单号不能为空");
|
||||
}
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
String resource_name = dto.getResource_name();
|
||||
if (StrUtil.isEmpty(resource_name)){
|
||||
throw new BadRequestException("工单号为:"+mfg_order_name+"的产线ID为空");
|
||||
}
|
||||
|
||||
//查询所有设备
|
||||
List<Device> list = deviceService.lambdaQuery()
|
||||
.eq(Device::getRegion,resource_name)
|
||||
.list();
|
||||
if (CollectionUtil.isEmpty(list)) {
|
||||
throw new BadRequestException(LangProcess.msg("error_no_regional"));
|
||||
}
|
||||
JSONArray arr = JSONArray.parseArray(JSON.toJSONString(list));
|
||||
JSONArray result = new JSONArray();
|
||||
for (int i = 0; i < arr.size(); i++) {
|
||||
JSONObject obj = arr.getJSONObject(i);
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("device_code", obj.getString("device_code"));
|
||||
json.put("device_name", obj.getString("device_name"));
|
||||
result.add(json);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,7 +54,13 @@ public class PdaServiceImpl implements PdaService {
|
||||
@Override
|
||||
public PdaResponseVo startOrder(JSONObject whereJson) {
|
||||
String mfg_order_name = whereJson.getString("mfg_order_name");
|
||||
if (StrUtil.isEmpty(mfg_order_name)){
|
||||
return PdaResponseVo.pdaResultOk("工单号为空!");
|
||||
}
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
if (ObjectUtil.isNull(dto)){
|
||||
return PdaResponseVo.pdaResultOk("工单不存在");
|
||||
}
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
String currentUsername = SecurityUtils.getCurrentUsername();
|
||||
dto.setStatus("1");
|
||||
@@ -69,7 +75,13 @@ public class PdaServiceImpl implements PdaService {
|
||||
@Override
|
||||
public PdaResponseVo forceFinish(JSONObject whereJson) {
|
||||
String mfg_order_name = whereJson.getString("mfg_order_name");
|
||||
if (StrUtil.isEmpty(mfg_order_name)){
|
||||
return PdaResponseVo.pdaResultOk("工单号为空!");
|
||||
}
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
if (ObjectUtil.isNull(dto)){
|
||||
return PdaResponseVo.pdaResultOk("工单不存在");
|
||||
}
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
String currentUsername = SecurityUtils.getCurrentUsername();
|
||||
dto.setStatus("2");
|
||||
@@ -81,6 +93,37 @@ public class PdaServiceImpl implements PdaService {
|
||||
return PdaResponseVo.pdaResultOk("工单:[" + dto.getMfg_order_name() + "]已强制完成");
|
||||
}
|
||||
|
||||
@Override
|
||||
public PdaResponseVo updateOrder(JSONObject whereJson) {
|
||||
String mfg_order_name = whereJson.getString("mfg_order_name");
|
||||
String start_device_code = whereJson.getString("start_device_code");
|
||||
String next_device_code = whereJson.getString("next_device_code");
|
||||
if (StrUtil.isEmpty(mfg_order_name)){
|
||||
return PdaResponseVo.pdaResultOk("工单号为空!");
|
||||
}
|
||||
OrderDto dto = orderService.findByCode(mfg_order_name);
|
||||
if (ObjectUtil.isNull(dto)){
|
||||
return PdaResponseVo.pdaResultOk("工单不存在");
|
||||
}
|
||||
|
||||
if (StrUtil.isEmpty(start_device_code)){
|
||||
return PdaResponseVo.pdaResultOk("起点编码不能为空");
|
||||
}
|
||||
if (StrUtil.isEmpty(next_device_code)){
|
||||
return PdaResponseVo.pdaResultOk("终点编码不能为空");
|
||||
}
|
||||
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
String currentUsername = SecurityUtils.getCurrentUsername();
|
||||
dto.setStart_device_code(start_device_code);
|
||||
dto.setNext_device_code(next_device_code);
|
||||
dto.setUpdate_optid(currentUserId);
|
||||
dto.setUpdate_optname(currentUsername);
|
||||
dto.setUpdate_time(DateUtil.now());
|
||||
orderService.updateById(dto);
|
||||
return PdaResponseVo.pdaResultOk("工单:[" + dto.getMfg_order_name() + "]起点、终点已分配!");
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<WorkVo> queryWorks(JSONObject whereJson) {
|
||||
if (StrUtil.isEmpty(whereJson.getString("mfg_order_name"))){
|
||||
|
||||
@@ -18,4 +18,6 @@ public class OrderVo {
|
||||
private String status;
|
||||
private String create_time;
|
||||
private String realstart_time;
|
||||
private String start_device_code;
|
||||
private String next_device_code;
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ public class WorkVo {
|
||||
private String material_code;
|
||||
private String material_name;
|
||||
private float qty;
|
||||
private String resource_name;
|
||||
private String next_device_code;
|
||||
private int require_num;
|
||||
private int remain_num;
|
||||
private String status;
|
||||
|
||||
@@ -12,12 +12,12 @@
|
||||
label-suffix=":"
|
||||
>
|
||||
|
||||
<el-form-item label="机台编码">
|
||||
<el-form-item label="产线">
|
||||
<el-input
|
||||
v-model="query.resource_name"
|
||||
clearable
|
||||
size="mini"
|
||||
placeholder="机台编码"
|
||||
placeholder="产线"
|
||||
@keyup.enter.native="crud.toQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
@@ -108,7 +108,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="机台编码" prop="resource_name">
|
||||
<el-form-item label="产线" prop="resource_name">
|
||||
<el-input v-model="form.resource_name" style="width: 250px;" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -171,17 +171,82 @@
|
||||
<el-link type="warning" @click="crud.toView(scope.row)">{{ scope.row.mfg_order_name }}</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="status" label="工单状态" :min-width="flexWidth('status',crud.data,'工单状态')" :formatter="formatStatusName" />
|
||||
<el-table-column prop="resource_name" label="机台编码" :min-width="flexWidth('resource_name',crud.data,'机台编码')" />
|
||||
<el-table-column
|
||||
prop="status"
|
||||
label="工单状态"
|
||||
:min-width="flexWidth('status',crud.data,'工单状态')"
|
||||
:formatter="formatStatusName"
|
||||
/>
|
||||
<el-table-column prop="resource_name" label="产线" :min-width="flexWidth('resource_name',crud.data,'产线')" />
|
||||
<el-table-column
|
||||
prop="start_device_code"
|
||||
label="起点编码"
|
||||
:min-width="flexWidth('start_device_code',crud.data,'起点编码')"
|
||||
/>
|
||||
<el-table-column
|
||||
prop="next_device_code"
|
||||
label="终点编码"
|
||||
:min-width="flexWidth('next_device_code',crud.data,'终点编码')"
|
||||
/>
|
||||
<el-table-column prop="product_name" label="产品编码" :min-width="flexWidth('product_name',crud.data,'产品编码')" />
|
||||
<el-table-column prop="description" label="产品名称" :min-width="flexWidth('description',crud.data,'产品名称')" />
|
||||
<el-table-column prop="total_qty" label="计划重量" :min-width="flexWidth('total_qty',crud.data,'计划重量')" :formatter="crud.formatNum3" />
|
||||
<el-table-column
|
||||
prop="total_qty"
|
||||
label="计划重量"
|
||||
:min-width="flexWidth('total_qty',crud.data,'计划重量')"
|
||||
:formatter="crud.formatNum3"
|
||||
/>
|
||||
<el-table-column prop="create_time" label="创建时间" :min-width="flexWidth('create_time',crud.data,'创建时间')" />
|
||||
<el-table-column prop="realstart_time" label="开始时间" :min-width="flexWidth('realstart_time',crud.data,'实际开始时间')" />
|
||||
<el-table-column
|
||||
prop="realstart_time"
|
||||
label="开始时间"
|
||||
:min-width="flexWidth('realstart_time',crud.data,'实际开始时间')"
|
||||
/>
|
||||
<el-table-column prop="realend_time" label="结束时间" :min-width="flexWidth('realend_time',crud.data,'结束时间')" />
|
||||
<el-table-column prop="update_time" label="更新时间" :min-width="flexWidth('update_time',crud.data,'更新时间')" />
|
||||
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="openEditModal(scope.row)">起点终点确认</el-button>
|
||||
<el-dialog title="更新信息" :visible.sync="dialogVisible" width="40%" append-to-body>
|
||||
<el-form ref="form" :model="form" label-width="100px">
|
||||
<el-form-item label="起点" prop="start_device_code">
|
||||
<el-select
|
||||
v-model="form.start_point_code"
|
||||
style="width: 370px;"
|
||||
filterable
|
||||
placeholder="请选择"
|
||||
@change="showStartStorage"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in deviceList"
|
||||
:key="item.device_code"
|
||||
:label="item.device_code"
|
||||
:value="item.device_code"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="终点" prop="start_device_code">
|
||||
<el-select
|
||||
v-model="form.next_point_code"
|
||||
style="width: 370px;"
|
||||
filterable
|
||||
placeholder="请选择"
|
||||
@change="showEndStorage"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in deviceList"
|
||||
:key="item.device_code"
|
||||
:label="item.device_code"
|
||||
:value="item.device_code"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="updateInfo">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
<udOperation
|
||||
:data="scope.row"
|
||||
:permission="permission"
|
||||
@@ -205,11 +270,14 @@ import crudOperation from '@crud/CRUD.operation'
|
||||
import udOperation from '@crud/UD.operation'
|
||||
import pagination from '@crud/Pagination'
|
||||
import AddDialog from '@/views/acs/order/AddDialog'
|
||||
import deviceCrud from '@/api/acs/device/device'
|
||||
|
||||
const defaultForm = {
|
||||
workorder_id: null,
|
||||
container_name: null,
|
||||
resource_name: null,
|
||||
start_device_code: null,
|
||||
next_device_code: null,
|
||||
mfg_order_name: null,
|
||||
product_name: null,
|
||||
description: null,
|
||||
@@ -257,12 +325,19 @@ export default {
|
||||
dialogShow: false,
|
||||
openParam: null,
|
||||
permission: {},
|
||||
dialogVisible: false,
|
||||
deviceList: [],
|
||||
orderDatas: [],
|
||||
form: {
|
||||
start_device_code: '',
|
||||
next_device_code: ''
|
||||
},
|
||||
rules: {
|
||||
mfg_order_name: [
|
||||
{ required: true, message: '工单号不能为空', trigger: 'blur' }
|
||||
],
|
||||
resource_name: [
|
||||
{ required: true, message: '机台编码不能为空', trigger: 'blur' }
|
||||
{ required: true, message: '产线不能为空', trigger: 'blur' }
|
||||
],
|
||||
total_qty: [
|
||||
{ required: true, message: '计划重量不能为空', trigger: 'blur' }
|
||||
@@ -276,6 +351,11 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
deviceCrud.selectDeviceList().then(data => {
|
||||
this.deviceList = data
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
// 钩子:在获取表格数据之前执行,false 则代表不获取数据
|
||||
[CRUD.HOOK.beforeRefresh]() {
|
||||
@@ -293,6 +373,37 @@ export default {
|
||||
formatStorIsOrNot(row) {
|
||||
return this.dict.label.IS_OR_NOT[row.is_instor]
|
||||
},
|
||||
openEditModal(row) {
|
||||
this.dialogVisible = true
|
||||
this.orderDatas = row
|
||||
// 可以在这里初始化表单数据,比如从服务器获取
|
||||
},
|
||||
updateInfo() {
|
||||
const order = {
|
||||
workorder_id: this.orderDatas.workorder_id,
|
||||
start_device_code: this.form.start_point_code,
|
||||
next_device_code: this.form.next_point_code
|
||||
}
|
||||
crudRawfoilworkorder.updateOrder(order).then(res => {
|
||||
this.crud.toQuery()
|
||||
this.crud.notify('修改成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
}).catch(err => {
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
this.dialogVisible = false
|
||||
},
|
||||
update(from, row) {
|
||||
debugger
|
||||
row.start_device_code = form.start_device_code
|
||||
row.next_device_code = form.next_device_code
|
||||
crudRawfoilworkorder.updateOrder(row).then(res => {
|
||||
this.crud.toQuery()
|
||||
this.crud.notify('修改成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
}).catch(err => {
|
||||
console.log(err.response.data.message)
|
||||
})
|
||||
this.dialogVisible = false
|
||||
},
|
||||
start() {
|
||||
const _selectData = this.$refs.table.selection
|
||||
const data = _selectData[0]
|
||||
@@ -318,6 +429,102 @@ export default {
|
||||
this.onSelectAll()
|
||||
this.crud.toQuery()
|
||||
this.handleCurrentChange(null)
|
||||
},
|
||||
showStartStorage(val) {
|
||||
let obj = {}
|
||||
obj = this.deviceList.find((item) => {
|
||||
return item.device_code === val
|
||||
})
|
||||
if (obj.device_type === 'storage') {
|
||||
this.start_flag = true
|
||||
let storage_obj = {}
|
||||
deviceCrud.queryStorageExtra(obj.device_code).then(data => {
|
||||
storage_obj = data
|
||||
const n1 = storage_obj.minY
|
||||
const n2 = storage_obj.maxY
|
||||
const m1 = storage_obj.minZ
|
||||
const m2 = storage_obj.maxZ
|
||||
const from_y = []
|
||||
const from_z = []
|
||||
for (let i = n1; i <= n2; i++) {
|
||||
const y = {}
|
||||
if (i < 10) {
|
||||
y.id = '0' + i
|
||||
} else {
|
||||
y.id = i
|
||||
}
|
||||
y.value = i + '列'
|
||||
from_y.push(y)
|
||||
}
|
||||
for (let i = m1; i <= m2; i++) {
|
||||
const z = {}
|
||||
if (i < 10) {
|
||||
z.id = '0' + i
|
||||
} else {
|
||||
z.id = i
|
||||
}
|
||||
z.value = i + '层'
|
||||
from_z.push(z)
|
||||
}
|
||||
this.fromYList = from_y
|
||||
this.fromZList = from_z
|
||||
this.form.from_x = storage_obj.tunnel
|
||||
})
|
||||
} else {
|
||||
this.start_flag = false
|
||||
this.form.from_x = ''
|
||||
this.form.from_y = ''
|
||||
this.form.from_z = ''
|
||||
}
|
||||
this.isDisabled = false
|
||||
},
|
||||
showEndStorage(val) {
|
||||
let obj = {}
|
||||
obj = this.deviceList.find((item) => {
|
||||
return item.device_code === val
|
||||
})
|
||||
if (obj.device_type === 'storage') {
|
||||
this.end_flag = true
|
||||
let storage_obj = {}
|
||||
deviceCrud.queryStorageExtra(obj.device_code).then(data => {
|
||||
storage_obj = data
|
||||
const n1 = storage_obj.minY
|
||||
const n2 = storage_obj.maxY
|
||||
const m1 = storage_obj.minZ
|
||||
const m2 = storage_obj.maxZ
|
||||
const to_y = []
|
||||
const to_z = []
|
||||
for (let i = n1; i <= n2; i++) {
|
||||
const y = {}
|
||||
if (i < 10) {
|
||||
y.id = '0' + i
|
||||
} else {
|
||||
y.id = i
|
||||
}
|
||||
y.value = i + '列'
|
||||
to_y.push(y)
|
||||
}
|
||||
for (let i = m1; i <= m2; i++) {
|
||||
const z = {}
|
||||
if (i < 10) {
|
||||
z.id = '0' + i
|
||||
} else {
|
||||
z.id = i
|
||||
}
|
||||
z.value = i + '层'
|
||||
to_z.push(z)
|
||||
}
|
||||
this.toYList = to_y
|
||||
this.toZList = to_z
|
||||
this.form.to_x = storage_obj.tunnel
|
||||
})
|
||||
} else {
|
||||
this.end_flag = false
|
||||
this.form.to_x = ''
|
||||
this.form.to_y = ''
|
||||
this.form.to_z = ''
|
||||
}
|
||||
this.isDisabled = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,6 +40,14 @@ export function forceFinish(data) {
|
||||
})
|
||||
}
|
||||
|
||||
export function updateOrder(data) {
|
||||
return request({
|
||||
url: 'api/order/updateOrder',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getOutBillDtl(params) {
|
||||
return request({
|
||||
url: '/api/order/getOutBillDtl',
|
||||
@@ -48,4 +56,4 @@ export function getOutBillDtl(params) {
|
||||
})
|
||||
}
|
||||
|
||||
export default { add, edit, del, start, forceFinish, getOutBillDtl }
|
||||
export default { add, edit, del, start, forceFinish, getOutBillDtl, updateOrder }
|
||||
|
||||
@@ -54,8 +54,8 @@
|
||||
<el-form-item label="物料名称" prop="material_name">
|
||||
<el-input v-model="form.material_name" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="站点编号" prop="resource_name">
|
||||
<el-input v-model="form.resource_name" style="width: 370px;" />
|
||||
<el-form-item label="终点编码" prop="next_device_code">
|
||||
<el-input v-model="form.next_device_code" style="width: 370px;" />
|
||||
</el-form-item>
|
||||
<el-form-item label="顺序号" prop="seq_no">
|
||||
<el-input v-model="form.seq_no" style="width: 370px;" />
|
||||
@@ -85,7 +85,7 @@
|
||||
<el-table-column prop="seq_no" label="序号" :min-width="flexWidth('seq_no',crud.data,'序号')" />
|
||||
<el-table-column prop="material_code" label="物料编码" :min-width="flexWidth('material_code',crud.data,'物料编码')" />
|
||||
<el-table-column prop="material_name" label="物料名称" :min-width="flexWidth('material_name',crud.data,'物料名称')" />
|
||||
<el-table-column prop="resource_name" label="站点编号" :min-width="flexWidth('resource_name',crud.data,'站点编号')" />
|
||||
<el-table-column prop="next_device_code" label="站点编号" :min-width="flexWidth('next_device_code',crud.data,'终点编号')" />
|
||||
<el-table-column prop="require_num" label="配料桶数" :min-width="flexWidth('require_num',crud.data,'配料桶数')" />
|
||||
<el-table-column prop="remain_num" label="剩余桶数" :min-width="flexWidth('remain_num',crud.data,'剩余桶数')" />
|
||||
<el-table-column prop="qty" label="物料重量" :min-width="flexWidth('qty',crud.data,'物料重量')" />
|
||||
@@ -157,7 +157,7 @@ import HandleCommandDialog from '@/views/acs/work/HandleCommandDialog'
|
||||
const defaultForm = {
|
||||
material_code: null,
|
||||
material_name: null,
|
||||
resource_name: null,
|
||||
next_device_code: null,
|
||||
seq_no: 0,
|
||||
qty: 0,
|
||||
remain_num: null,
|
||||
|
||||
Reference in New Issue
Block a user