手持
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
|
||||
package org.nl.hand.rest;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.annotation.Log;
|
||||
import org.nl.hand.service.HandService;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
@Api(tags = "海量子管包装手持接口")
|
||||
@RequestMapping("/api/hand")
|
||||
public class HandController {
|
||||
|
||||
private final HandService handService;
|
||||
|
||||
/**
|
||||
* 手持登陆
|
||||
*
|
||||
* @param param String user 用户名
|
||||
* String password 密码
|
||||
* @return 登陆成功将携带用户id返回
|
||||
*/
|
||||
@PostMapping("/handlogin")
|
||||
@Log("手持登陆")
|
||||
@ApiOperation("手持登陆")
|
||||
public ResponseEntity<JSONObject> handlogin(@RequestBody Map<String, String> param) {
|
||||
return new ResponseEntity<>(handService.handlogin(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询工单及明细
|
||||
*
|
||||
* @return 工单及明细
|
||||
*/
|
||||
@PostMapping("/order")
|
||||
@Log("查询工单及明细")
|
||||
@ApiOperation("查询工单及明细")
|
||||
public ResponseEntity<JSONObject> order() {
|
||||
return new ResponseEntity<>(handService.order(), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 工单操作
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* String order_uuid 工单uuid
|
||||
* String orderDetail_uuid 工单明细uuid(only type IN ("3", "4"))
|
||||
* @return 提示
|
||||
*/
|
||||
@PostMapping("/orderOperation")
|
||||
@Log("工单操作")
|
||||
@ApiOperation("工单操作")
|
||||
public ResponseEntity<JSONObject> orderOperation(@RequestBody Map<String, String> param) {
|
||||
return new ResponseEntity<>(handService.orderOperation(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询分拣工单及明细
|
||||
*
|
||||
* @return 分拣工单及明细
|
||||
*/
|
||||
@PostMapping("/sortingOrder")
|
||||
@Log("查询分拣工单及明细")
|
||||
@ApiOperation("查询分拣工单及明细")
|
||||
public ResponseEntity<JSONObject> sortingOrder() {
|
||||
return new ResponseEntity<>(handService.sortingOrder(), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 下发刻字、贴标
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* String order_uuid 工单uuid
|
||||
* String orderDetail_uuid 工单明细uuid
|
||||
* @return 提示
|
||||
*/
|
||||
@PostMapping("/sendMessage")
|
||||
@Log("下发刻字、贴标")
|
||||
@ApiOperation("下发刻字、贴标")
|
||||
public ResponseEntity<JSONObject> sendMessage(@RequestBody Map<String, String> param) {
|
||||
return new ResponseEntity<>(handService.sendMessage(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 下发设备信号
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* @return 提示
|
||||
*/
|
||||
@PostMapping("/deviceOperation")
|
||||
@Log("下发设备信号")
|
||||
@ApiOperation("下发设备信号")
|
||||
public ResponseEntity<JSONObject> deviceOperation(@RequestBody Map<String, String> param) {
|
||||
return new ResponseEntity<>(handService.deviceOperation(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
/**
|
||||
* 下发设备信号(确认按钮)
|
||||
*
|
||||
* @param param String outer_diameter 管径(mm)
|
||||
* String length 管长(mm)
|
||||
* String color 颜色
|
||||
* String jackup_num 合格提升每次提升根数
|
||||
* String strap_number 每捆根数
|
||||
* @return 提示
|
||||
*/
|
||||
@PostMapping("/putPoint")
|
||||
@Log("下发设备信号(确认按钮)")
|
||||
@ApiOperation("下发设备信号(确认按钮)")
|
||||
public ResponseEntity<JSONObject> putPoint(@RequestBody Map<String, String> param) {
|
||||
return new ResponseEntity<>(handService.putPoint(param), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package org.nl.hand.service;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
public interface HandService {
|
||||
|
||||
/**
|
||||
* 手持登陆
|
||||
*
|
||||
* @param param String user 用户名
|
||||
* String password 密码
|
||||
* @return 如果登陆成功携带用户id返回
|
||||
*/
|
||||
JSONObject handlogin(Map<String, String> param);
|
||||
|
||||
/**
|
||||
* 查询工单及明细
|
||||
*
|
||||
* @return 工单及明细
|
||||
*/
|
||||
JSONObject order();
|
||||
|
||||
/**
|
||||
* 工单操作
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* String order_uuid 工单uuid
|
||||
* String orderDetail_uuid 工单明细uuid(只有 type IN ("3", "4") 才有)
|
||||
* @return 提示
|
||||
*/
|
||||
JSONObject orderOperation(Map<String, String> param);
|
||||
|
||||
/**
|
||||
* 查询分拣工单及明细
|
||||
*
|
||||
* @return 分拣工单及明细
|
||||
*/
|
||||
JSONObject sortingOrder();
|
||||
|
||||
/**
|
||||
* 下发刻字、贴标
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* String order_uuid 工单uuid
|
||||
* String orderDetail_uuid 工单明细uuid
|
||||
* @return 提示
|
||||
*/
|
||||
JSONObject sendMessage(Map<String, String> param);
|
||||
|
||||
/**
|
||||
* 下发设备信号
|
||||
*
|
||||
* @param param String type 操作类型
|
||||
* @return 提示
|
||||
*/
|
||||
JSONObject deviceOperation(Map<String, String> param);
|
||||
|
||||
/**
|
||||
* 下发设备信号(确认按钮)
|
||||
*
|
||||
* @param param String outer_diameter 管径(mm)
|
||||
* String length 管长(mm)
|
||||
* String color 颜色
|
||||
* String jackup_num 合格提升每次提升根数
|
||||
* String strap_number 每捆根数
|
||||
* @return 提示
|
||||
*/
|
||||
JSONObject putPoint(Map<String, String> param);
|
||||
}
|
||||
@@ -0,0 +1,457 @@
|
||||
package org.nl.hand.service.impl;
|
||||
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.acs.device_driver.hailiang.hailiang_feeding_trunk.HaiLiangFeedingTrunkDeviceDriver;
|
||||
import org.nl.acs.opc.DeviceAppService;
|
||||
import org.nl.acs.order.service.ProduceshiftorderService;
|
||||
import org.nl.acs.order.service.ProduceshiftorderdetailService;
|
||||
import org.nl.acs.order.service.dto.ProduceshiftorderDto;
|
||||
import org.nl.acs.order.service.dto.ProduceshiftorderdetailDto;
|
||||
import org.nl.config.RsaProperties;
|
||||
import org.nl.hand.service.HandService;
|
||||
import org.nl.modules.system.service.UserService;
|
||||
import org.nl.modules.system.service.dto.UserDto;
|
||||
import org.nl.utils.RsaUtils;
|
||||
import org.nl.wql.WQL;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class HandServiceImpl implements HandService {
|
||||
|
||||
private final UserService userService;
|
||||
|
||||
private final PasswordEncoder passwordEncoder;
|
||||
|
||||
private final ProduceshiftorderService produceshiftorderService;
|
||||
|
||||
private final ProduceshiftorderdetailService produceshiftorderdetailService;
|
||||
|
||||
private final DeviceAppService deviceAppService;
|
||||
|
||||
@Override
|
||||
public JSONObject handlogin(Map<String, String> param) {
|
||||
// 返回值
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
|
||||
// 参数校验
|
||||
String user = param.get("user");
|
||||
if (StrUtil.isEmpty(user)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "用户名不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String password = param.get("password");
|
||||
if (StrUtil.isEmpty(password)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "密码不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 根据用户名查询用户
|
||||
UserDto userDto;
|
||||
try {
|
||||
userDto = userService.findByName(user);
|
||||
} catch (Exception e) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "用户名或密码错误");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
String pwd;
|
||||
try {
|
||||
// 解密前端传入的加密密码
|
||||
pwd = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey, password);
|
||||
} catch (Exception e) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "用户名或密码错误");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 用户输入的密码与数据库中的密码比对
|
||||
if (!passwordEncoder.matches(pwd, userDto.getPassword())) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "用户名或密码错误");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 登陆成功
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", "登陆成功");
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("accountId", userDto.getId().toString());
|
||||
resultJSON.put("result", result);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject order() {
|
||||
// 查询工单
|
||||
JSONArray result = WQL.getWO("HAND").addParam("flag", "1").process().getResultJSONArray(0);
|
||||
|
||||
// 遍历工单集合,补全信息
|
||||
for (Object o : result) {
|
||||
JSONObject order = (JSONObject) o;
|
||||
order.put("type", "order");
|
||||
order.put("is_flag", "1");
|
||||
|
||||
JSONArray children = WQL
|
||||
.getWO("HAND")
|
||||
.addParam("flag", "2")
|
||||
.addParam("order_id", order.get("order_id"))
|
||||
.process()
|
||||
.getResultJSONArray(0);
|
||||
|
||||
// 遍历工单明细数组补全信息
|
||||
for (Object d : children) {
|
||||
JSONObject detail = (JSONObject) d;
|
||||
detail.put("type", "orderDetail");
|
||||
detail.put("is_flag", "0");
|
||||
}
|
||||
|
||||
// 添加进order
|
||||
order.put("children", children);
|
||||
}
|
||||
|
||||
// 返回
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", "查询成功");
|
||||
resultJSON.put("result", result);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject orderOperation(Map<String, String> param) {
|
||||
// 返回值
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
|
||||
// 参数校验
|
||||
String type = param.get("type");
|
||||
if (StrUtil.isEmpty(type)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String orderId = param.get("order_uuid");
|
||||
if (StrUtil.isEmpty(orderId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String detailId = param.get("orderDetail_uuid");
|
||||
if ((StrUtil.equals(type, "3") || StrUtil.equals(type, "4")) && StrUtil.isEmpty(detailId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单明细不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 查询工单
|
||||
ProduceshiftorderDto order = produceshiftorderService.findById(orderId);
|
||||
if (ObjectUtil.isEmpty(order)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单不存在");
|
||||
return resultJSON;
|
||||
}
|
||||
String orderCode = order.getOrder_code();
|
||||
|
||||
// 如果有,查询工单明细
|
||||
String detailCode = null;
|
||||
if (StrUtil.isNotEmpty(detailId)) {
|
||||
ProduceshiftorderdetailDto detail = produceshiftorderdetailService.findById(detailId);
|
||||
if (ObjectUtil.isEmpty(detail)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单明细不存在");
|
||||
return resultJSON;
|
||||
}
|
||||
if (!StrUtil.equals(detail.getOrder_id(), orderId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "非当前工单的明细");
|
||||
return resultJSON;
|
||||
}
|
||||
detailCode = detail.getOrder_detail_code();
|
||||
}
|
||||
|
||||
// 根据操作类型做不同的操作
|
||||
String desc;
|
||||
try {
|
||||
JSONObject whereJSON = new JSONObject();
|
||||
switch (type) {
|
||||
case "1":
|
||||
// 工单开始分拣
|
||||
produceshiftorderService.send(orderId);
|
||||
desc = "工单已开始分拣";
|
||||
break;
|
||||
case "2":
|
||||
// 强制完成工单
|
||||
whereJSON.put("order_code", orderCode);
|
||||
produceshiftorderService.order_force_complete(whereJSON);
|
||||
desc = "工单已强制完成";
|
||||
break;
|
||||
case "3":
|
||||
// 手动完成明细
|
||||
whereJSON.put("parent_order_code", orderCode);
|
||||
whereJSON.put("order_code", detailCode);
|
||||
produceshiftorderService.manual_finish(whereJSON);
|
||||
desc = "明细已手动完成";
|
||||
break;
|
||||
case "4":
|
||||
// 强制完成明细
|
||||
whereJSON.put("parent_order_code", orderCode);
|
||||
whereJSON.put("order_code", detailCode);
|
||||
produceshiftorderService.detail_force_complete(whereJSON);
|
||||
desc = "明细已强制完成";
|
||||
break;
|
||||
default:
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型错误");
|
||||
return resultJSON;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", e.getMessage());
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 返回
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", desc);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject sortingOrder() {
|
||||
// 查询工单
|
||||
JSONArray result = WQL.getWO("HAND").addParam("flag", "3").process().getResultJSONArray(0);
|
||||
|
||||
// 遍历工单集合,补全信息
|
||||
for (Object o : result) {
|
||||
JSONObject order = (JSONObject) o;
|
||||
order.put("type", "order");
|
||||
order.put("is_flag", "1");
|
||||
|
||||
JSONArray children = WQL
|
||||
.getWO("HAND")
|
||||
.addParam("flag", "4")
|
||||
.addParam("order_id", order.get("order_id"))
|
||||
.process()
|
||||
.getResultJSONArray(0);
|
||||
|
||||
// 遍历工单明细数组补全信息
|
||||
for (Object d : children) {
|
||||
JSONObject detail = (JSONObject) d;
|
||||
detail.put("type", "orderDetail");
|
||||
detail.put("is_flag", "0");
|
||||
}
|
||||
|
||||
// 添加进order
|
||||
order.put("children", children);
|
||||
}
|
||||
|
||||
// 返回
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", "查询成功");
|
||||
resultJSON.put("result", result);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject sendMessage(Map<String, String> param) {
|
||||
// 返回值
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
|
||||
// 参数校验
|
||||
String type = param.get("type");
|
||||
if (StrUtil.isEmpty(type)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String orderId = param.get("order_uuid");
|
||||
if (StrUtil.isEmpty(orderId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String detailId = param.get("orderDetail_uuid");
|
||||
if (StrUtil.isEmpty(detailId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单明细不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 查询工单
|
||||
ProduceshiftorderDto order = produceshiftorderService.findById(orderId);
|
||||
if (ObjectUtil.isEmpty(order)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单不存在");
|
||||
return resultJSON;
|
||||
}
|
||||
String orderCode = order.getOrder_code();
|
||||
|
||||
// 查询工单明细
|
||||
ProduceshiftorderdetailDto detail = produceshiftorderdetailService.findById(detailId);
|
||||
if (ObjectUtil.isEmpty(detail)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "工单明细不存在");
|
||||
return resultJSON;
|
||||
}
|
||||
if (!StrUtil.equals(detail.getOrder_id(), orderId)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "非当前工单的明细");
|
||||
return resultJSON;
|
||||
}
|
||||
String detailCode = detail.getOrder_detail_code();
|
||||
|
||||
// 根据操作类型选择
|
||||
String desc;
|
||||
try {
|
||||
JSONObject whereJSON = new JSONObject();
|
||||
switch (type) {
|
||||
case "1":
|
||||
// 手动下发刻字信息
|
||||
whereJSON.put("parent_order_code", orderCode);
|
||||
whereJSON.put("order_code", detailCode);
|
||||
produceshiftorderService.send_letteringMess(whereJSON);
|
||||
desc = "已下发刻字信息";
|
||||
break;
|
||||
case "2":
|
||||
// 手动下发贴标信息
|
||||
whereJSON.put("parent_order_code", orderCode);
|
||||
whereJSON.put("order_code", detailCode);
|
||||
produceshiftorderService.send_labelingMess(whereJSON);
|
||||
desc = "已下发贴标信息";
|
||||
break;
|
||||
default:
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型错误");
|
||||
return resultJSON;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", e.getMessage());
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 返回
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", desc);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject deviceOperation(Map<String, String> param) {
|
||||
// 返回值
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
|
||||
// 参数校验
|
||||
String type = param.get("type");
|
||||
if (StrUtil.isEmpty(type)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 获取设备驱动
|
||||
HaiLiangFeedingTrunkDeviceDriver driver = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class).get(0);
|
||||
|
||||
// 根据操作类型下发信号
|
||||
String desc;
|
||||
switch (type) {
|
||||
case "1":
|
||||
// 设备暂停
|
||||
driver.writing("to_pause", "1");
|
||||
desc = "设备已暂停";
|
||||
break;
|
||||
case "2":
|
||||
// 设备恢复
|
||||
driver.writing("to_pause", "0");
|
||||
desc = "设备已恢复";
|
||||
break;
|
||||
case "3":
|
||||
// 急停
|
||||
driver.writing("to_stop", "1");
|
||||
desc = "设备已急停";
|
||||
break;
|
||||
case "4":
|
||||
// 清料
|
||||
driver.writing("to_clear", "1");
|
||||
desc = "设备开始清料";
|
||||
break;
|
||||
default:
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "操作类型错误");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 返回
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", desc);
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject putPoint(Map<String, String> param) {
|
||||
// 返回值
|
||||
JSONObject resultJSON = new JSONObject();
|
||||
|
||||
// 参数校验
|
||||
String outerDiameter = param.get("outer_diameter");
|
||||
if (StrUtil.isEmpty(outerDiameter)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "管径不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String length = param.get("length");
|
||||
if (StrUtil.isEmpty(length)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "管长不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String color = param.get("color");
|
||||
if (StrUtil.isEmpty(color)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "颜色不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String jackupNum = param.get("jackup_num");
|
||||
if (StrUtil.isEmpty(jackupNum)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "合格提升每次提升根数不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
String strapNumber = param.get("strap_number");
|
||||
if (StrUtil.isEmpty(strapNumber)) {
|
||||
resultJSON.put("code", "0");
|
||||
resultJSON.put("desc", "每捆根数不能为空");
|
||||
return resultJSON;
|
||||
}
|
||||
|
||||
// 获取设备驱动
|
||||
HaiLiangFeedingTrunkDeviceDriver driver = deviceAppService.findDeviceDriver(HaiLiangFeedingTrunkDeviceDriver.class).get(0);
|
||||
|
||||
// 写信号
|
||||
driver.writing("to_outer_diameter", outerDiameter);
|
||||
driver.writing("to_length", length);
|
||||
driver.writing("to_color", color);
|
||||
driver.writing("to_jackup_num", jackupNum);
|
||||
driver.writing("to_one_strapping_qty", strapNumber);
|
||||
|
||||
// 返回
|
||||
resultJSON.put("code", "1");
|
||||
resultJSON.put("desc", "下发成功");
|
||||
return resultJSON;
|
||||
}
|
||||
}
|
||||
167
nladmin-system/src/main/java/org/nl/hand/wql/HAND.wql
Normal file
167
nladmin-system/src/main/java/org/nl/hand/wql/HAND.wql
Normal file
@@ -0,0 +1,167 @@
|
||||
[交易说明]
|
||||
交易名: 包装工单查询
|
||||
所属模块:
|
||||
功能简述:
|
||||
版权所有:
|
||||
表引用:
|
||||
版本经历:
|
||||
|
||||
[数据库]
|
||||
--指定数据库,为空采用默认值,默认为db.properties中列出的第一个库
|
||||
|
||||
[IO定义]
|
||||
#################################################
|
||||
## 表字段对应输入参数
|
||||
#################################################
|
||||
输入.flag TYPEAS s_string
|
||||
输入.order_id TYPEAS s_string
|
||||
|
||||
[临时表]
|
||||
--这边列出来的临时表就会在运行期动态创建
|
||||
|
||||
[临时变量]
|
||||
--所有中间过程变量均可在此处定义
|
||||
|
||||
[业务过程]
|
||||
|
||||
##########################################
|
||||
# 1、输入输出检查 #
|
||||
##########################################
|
||||
|
||||
|
||||
##########################################
|
||||
# 2、主过程前处理 #
|
||||
##########################################
|
||||
|
||||
|
||||
##########################################
|
||||
# 3、业务主过程 #
|
||||
##########################################
|
||||
|
||||
IF 输入.flag = "1"
|
||||
QUERY
|
||||
SELECT
|
||||
order_id,
|
||||
order_code,
|
||||
alloy,
|
||||
is_labeling,
|
||||
order_status,
|
||||
material_uuid,
|
||||
material_spec,
|
||||
material_name,
|
||||
wall_thickness,
|
||||
is_coating,
|
||||
jackup_num,
|
||||
length,
|
||||
end_time,
|
||||
outer_diameter,
|
||||
start_time,
|
||||
temper,
|
||||
feeding_mouth,
|
||||
is_strapping,
|
||||
qty,
|
||||
is_risking,
|
||||
is_lettering,
|
||||
material_code
|
||||
FROM
|
||||
acs_produceshiftorder
|
||||
WHERE
|
||||
is_deleted = '0'
|
||||
AND order_status NOT IN ('07', '08', '09')
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "2"
|
||||
QUERY
|
||||
SELECT
|
||||
labeling_template,
|
||||
color_type,
|
||||
lettering_message,
|
||||
order_detail_code AS order_code,
|
||||
order_detail_status AS order_status,
|
||||
cust_code,
|
||||
lettering_icon,
|
||||
strap_number,
|
||||
order_code AS parent_order_code,
|
||||
order_qty AS qty,
|
||||
lettering_message2,
|
||||
cust_name,
|
||||
order_id AS parent_order_id,
|
||||
order_detail_id AS order_id,
|
||||
cust_id
|
||||
FROM
|
||||
acs_produceshiftorderdetail
|
||||
WHERE
|
||||
is_deleted = '0'
|
||||
OPTION 输入.order_id <> ""
|
||||
order_id = 输入.order_id
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "3"
|
||||
QUERY
|
||||
SELECT
|
||||
order_id,
|
||||
order_code,
|
||||
alloy,
|
||||
order_status,
|
||||
material_uuid,
|
||||
material_spec,
|
||||
material_name,
|
||||
wall_thickness,
|
||||
length,
|
||||
outer_diameter,
|
||||
qty,
|
||||
material_code
|
||||
FROM
|
||||
acs_produceshiftorder
|
||||
WHERE
|
||||
is_deleted = '0'
|
||||
AND order_status NOT IN ('07', '08', '09')
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "4"
|
||||
QUERY
|
||||
SELECT
|
||||
labeling_finished,
|
||||
feeding_finished,
|
||||
qualified_sleeveing_number,
|
||||
lettering_finished,
|
||||
create_by,
|
||||
order_detail_status AS order_status,
|
||||
qualified_lettering_number,
|
||||
strap_finished,
|
||||
present_strap_number,
|
||||
cust_name,
|
||||
present_strap_pack_number,
|
||||
order_id AS parent_order_id,
|
||||
present_feeding_number,
|
||||
present_wraping_number,
|
||||
qualified_wraping_number,
|
||||
order_detail_code AS order_code,
|
||||
present_lettering_number,
|
||||
cust_code,
|
||||
present_sleeveing_number,
|
||||
wraping_finished,
|
||||
order_code AS parent_order_code,
|
||||
order_qty AS qty,
|
||||
order_detail_id AS order_id,
|
||||
cust_id,
|
||||
present_labeling_number,
|
||||
feeding_qualified_number,
|
||||
sleeveing_finished
|
||||
FROM
|
||||
acs_produceshiftorderdetail
|
||||
WHERE
|
||||
is_deleted = '0'
|
||||
OPTION 输入.order_id <> ""
|
||||
order_id = 输入.order_id
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
Reference in New Issue
Block a user