rev:修改
This commit is contained in:
@@ -48,7 +48,7 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl<MdPbStorageve
|
|||||||
queryWrapper.eq(MdPbStoragevehicleinfo::getStoragevehicle_type, storagevehicle_type);
|
queryWrapper.eq(MdPbStoragevehicleinfo::getStoragevehicle_type, storagevehicle_type);
|
||||||
}
|
}
|
||||||
queryWrapper.eq(MdPbStoragevehicleinfo::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否"));
|
queryWrapper.eq(MdPbStoragevehicleinfo::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否"));
|
||||||
queryWrapper.orderByDesc(MdPbStoragevehicleinfo::getUpdate_time);
|
queryWrapper.orderByAsc(MdPbStoragevehicleinfo::getStoragevehicle_code);
|
||||||
|
|
||||||
return this.baseMapper.selectPage(new Page<>(page.getPage() + 1, page.getSize()),
|
return this.baseMapper.selectPage(new Page<>(page.getPage() + 1, page.getSize()),
|
||||||
queryWrapper
|
queryWrapper
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ public class NotCarToWmsServiceImpl implements NotCarToWmsService {
|
|||||||
.eq(SchBasePoint::getRegion_code, "CPQ01")
|
.eq(SchBasePoint::getRegion_code, "CPQ01")
|
||||||
.eq(SchBasePoint::getIs_used, IOSConstant.ONE)
|
.eq(SchBasePoint::getIs_used, IOSConstant.ONE)
|
||||||
.eq(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
.eq(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
|
||||||
.orderByDesc(SchBasePoint::getOut_order_seq)
|
.orderByAsc(SchBasePoint::getOut_order_seq)
|
||||||
.last("LIMIT 3")
|
.last("LIMIT 3")
|
||||||
);
|
);
|
||||||
// 查询无人车点位
|
// 查询无人车点位
|
||||||
|
|||||||
@@ -2,7 +2,12 @@ package org.nl.wms.pda.authorization.controller;
|
|||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaIgnore;
|
import cn.dev33.satoken.annotation.SaIgnore;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.common.exception.BadRequestException;
|
||||||
|
import org.nl.common.logging.annotation.Log;
|
||||||
|
import org.nl.config.MapOf;
|
||||||
import org.nl.system.service.menu.ISysMenuService;
|
import org.nl.system.service.menu.ISysMenuService;
|
||||||
|
import org.nl.system.service.param.ISysParamService;
|
||||||
|
import org.nl.system.service.param.dao.Param;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
@@ -11,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestBody;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.*;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -28,9 +35,95 @@ public class AuthorizationsController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ISysMenuService menuService;
|
private ISysMenuService menuService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysParamService iSysParamService;
|
||||||
|
|
||||||
@PostMapping(value = "/authority")
|
@PostMapping(value = "/authority")
|
||||||
@SaIgnore
|
@SaIgnore
|
||||||
public ResponseEntity<Object> queryAuthority(@RequestBody Map<String, String> param) {
|
public ResponseEntity<Object> queryAuthority(@RequestBody Map<String, String> param) {
|
||||||
return new ResponseEntity<>(menuService.queryAuthority(param), HttpStatus.OK);
|
return new ResponseEntity<>(menuService.queryAuthority(param), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@PostMapping("/update")
|
||||||
|
@Log("获取升级地址")
|
||||||
|
@SaIgnore
|
||||||
|
public ResponseEntity<Map> apkUrl() {
|
||||||
|
Map of = MapOf.of("versionName", "1.0.1", "url", "http://192.168.22.11:8011/api/pda/download/app-release");
|
||||||
|
// Map of = MapOf.of("versionName", "1.0.1", "url", "http://127.0.0.1:8011/api/pda/download/app-release");
|
||||||
|
return new ResponseEntity<>(of, HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequestMapping("/download/app-release")
|
||||||
|
@SaIgnore
|
||||||
|
public void setPrint(HttpServletResponse response) {
|
||||||
|
Param byCode = iSysParamService.findByCode("APP_URL");
|
||||||
|
if (byCode == null) {
|
||||||
|
throw new BadRequestException("更新失败:未配置apk下载地址");
|
||||||
|
}
|
||||||
|
System.out.println(byCode.getValue());
|
||||||
|
try {
|
||||||
|
downloadFile(response, byCode.getValue(), "release");
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 附件下载
|
||||||
|
*
|
||||||
|
* @param response
|
||||||
|
* @param fileName
|
||||||
|
* @param path
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
public void downloadFile(HttpServletResponse response, String path, String fileName) throws Exception {
|
||||||
|
if (fileName != null) {
|
||||||
|
//设置文件路径
|
||||||
|
File file = new File(path);
|
||||||
|
if (file.exists()) {
|
||||||
|
response.setHeader("content-type", "application/octet-stream");
|
||||||
|
response.setContentType("application/octet-stream");
|
||||||
|
try {
|
||||||
|
response.setHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("utf-8"), "ISO-8859-1") + ".apk");
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
byte[] buffer = new byte[1024];
|
||||||
|
FileInputStream fis = null;
|
||||||
|
BufferedInputStream bis = null;
|
||||||
|
try {
|
||||||
|
fis = new FileInputStream(file);
|
||||||
|
bis = new BufferedInputStream(fis);
|
||||||
|
OutputStream os = response.getOutputStream();
|
||||||
|
int i = bis.read(buffer);
|
||||||
|
while (i != -1) {
|
||||||
|
os.write(buffer, 0, i);
|
||||||
|
i = bis.read(buffer);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
if (bis != null) {
|
||||||
|
try {
|
||||||
|
bis.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (fis != null) {
|
||||||
|
try {
|
||||||
|
fis.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -58,6 +58,12 @@ public class PdaProductionController {
|
|||||||
public ResponseEntity<Object> takePalletMaterial(@RequestBody JSONObject whereJson) {
|
public ResponseEntity<Object> takePalletMaterial(@RequestBody JSONObject whereJson) {
|
||||||
return new ResponseEntity<>(pdaProductionService.takePalletMaterial(whereJson), HttpStatus.OK);
|
return new ResponseEntity<>(pdaProductionService.takePalletMaterial(whereJson), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/clickMaterial")
|
||||||
|
@Log("点位取货-一键取料")
|
||||||
|
@SaIgnore
|
||||||
|
public ResponseEntity<Object> clickMaterial(@RequestBody JSONObject whereJson) {
|
||||||
|
return new ResponseEntity<>(pdaProductionService.clickMaterial(whereJson), HttpStatus.OK);
|
||||||
|
}
|
||||||
@PostMapping("/takeTheVehicle")
|
@PostMapping("/takeTheVehicle")
|
||||||
@Log("点位取货-取载具")
|
@Log("点位取货-取载具")
|
||||||
@SaIgnore
|
@SaIgnore
|
||||||
|
|||||||
@@ -43,6 +43,15 @@ public interface PdaProductionService {
|
|||||||
*/
|
*/
|
||||||
PdaResponse takePalletMaterial(JSONObject param);
|
PdaResponse takePalletMaterial(JSONObject param);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 点位取货-一键取料
|
||||||
|
* @param whereJson {
|
||||||
|
* search: 载具编码
|
||||||
|
* }
|
||||||
|
* @return PdaResponse
|
||||||
|
*/
|
||||||
|
PdaResponse clickMaterial(JSONObject whereJson);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 取托盘
|
* 取托盘
|
||||||
* @param param
|
* @param param
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ public class AssemblyBagParam {
|
|||||||
private String username;
|
private String username;
|
||||||
@NotBlank(message = "复核人名称不能为空")
|
@NotBlank(message = "复核人名称不能为空")
|
||||||
private String password;
|
private String password;
|
||||||
|
private BigDecimal total_qty;
|
||||||
|
|
||||||
public static GroupPlate buildGroupObj(AssemblyBagParam param) {
|
public static GroupPlate buildGroupObj(AssemblyBagParam param) {
|
||||||
GroupPlate groupPlate = new GroupPlate();
|
GroupPlate groupPlate = new GroupPlate();
|
||||||
@@ -45,6 +46,7 @@ public class AssemblyBagParam {
|
|||||||
groupPlate.setValidity_period(param.validity_period);
|
groupPlate.setValidity_period(param.validity_period);
|
||||||
groupPlate.setQty_unit_id("1585604695483879424");
|
groupPlate.setQty_unit_id("1585604695483879424");
|
||||||
groupPlate.setQty_unit_name("千克");
|
groupPlate.setQty_unit_name("千克");
|
||||||
|
groupPlate.setTotal_qty(param.getTotal_qty());
|
||||||
groupPlate.setCreate_id(SecurityUtils.getCurrentUserId());
|
groupPlate.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||||
groupPlate.setCreate_name(SecurityUtils.getCurrentNickName());
|
groupPlate.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||||
groupPlate.setCreate_time(DateUtil.now());
|
groupPlate.setCreate_time(DateUtil.now());
|
||||||
|
|||||||
@@ -97,7 +97,6 @@ public class PdaNotCarServiceImpl implements PdaNotCarService {
|
|||||||
@Transactional
|
@Transactional
|
||||||
public PdaResponse unload(JSONObject whereJson) {
|
public PdaResponse unload(JSONObject whereJson) {
|
||||||
List<JSONObject> rows = whereJson.getJSONArray("rows").toJavaList(JSONObject.class);
|
List<JSONObject> rows = whereJson.getJSONArray("rows").toJavaList(JSONObject.class);
|
||||||
|
|
||||||
String task_group_id = IdUtil.getStringId();
|
String task_group_id = IdUtil.getStringId();
|
||||||
for (int i = 0; i < rows.size(); i++) {
|
for (int i = 0; i < rows.size(); i++) {
|
||||||
JSONObject json = rows.get(i);
|
JSONObject json = rows.get(i);
|
||||||
|
|||||||
@@ -62,10 +62,16 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
Socket socket=null;
|
Socket socket=null;
|
||||||
try {
|
try {
|
||||||
// 打印机地址
|
// 打印机地址
|
||||||
String print_id = whereJson.getString("print_id");
|
if (ObjectUtil.isEmpty(whereJson.getString("print_id"))) {
|
||||||
if (ObjectUtil.isEmpty(print_id)) {
|
|
||||||
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
||||||
}
|
}
|
||||||
|
Dict dict = iSysDictService.getOne(
|
||||||
|
new QueryWrapper<Dict>().lambda()
|
||||||
|
.eq(Dict::getCode, "PDA_CONFIG_PRINT")
|
||||||
|
.eq(Dict::getValue, whereJson.getString("print_id"))
|
||||||
|
);
|
||||||
|
String print_id = dict.getPara2();
|
||||||
|
|
||||||
JSONObject row = whereJson.getJSONObject("row");
|
JSONObject row = whereJson.getJSONObject("row");
|
||||||
|
|
||||||
MdMeMaterialbase materDao = iMdMeMaterialbaseService.getByCode(row.getString("material_code"));
|
MdMeMaterialbase materDao = iMdMeMaterialbaseService.getByCode(row.getString("material_code"));
|
||||||
@@ -74,18 +80,37 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
// 记录编号
|
// 记录编号
|
||||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||||
String record_no = sysParamService.findByCode("RECORD_NO").getValue();
|
String record_no = sysParamService.findByCode("RECORD_NO").getValue();
|
||||||
|
String record_no1 = sysParamService.findByCode("RECORD_NO1").getValue();
|
||||||
// 物料名称
|
// 物料名称
|
||||||
String material_name = row.getString("material_name");
|
String material_name = row.getString("material_name") + "-"+row.getString("material_code");
|
||||||
// 物料批号+批次
|
// 批次
|
||||||
String pcsn = row.getString("material_code")+"-"+row.getString("pcsn");
|
String pcsn = row.getString("pcsn");
|
||||||
|
// 质量代码
|
||||||
|
String quality_code = row.getString("quality_code");
|
||||||
|
if (ObjectUtil.isNotEmpty(quality_code)) {
|
||||||
|
pcsn = pcsn + "-" + quality_code;
|
||||||
|
}
|
||||||
// 经销商
|
// 经销商
|
||||||
String supp_name = row.getString("supp_name");
|
String supp_name = row.getString("supp_name");
|
||||||
// 生产商
|
// 生产商
|
||||||
String produce_name = materDao.getProduce_name();
|
String produce_name = materDao.getProduce_name();
|
||||||
// 日期
|
// 日期
|
||||||
String data = DateUtil.today();
|
String data = DateUtil.today();
|
||||||
// 数量
|
// 净重
|
||||||
String qty = NumberUtil.round(row.getString("qty"), 2).toString();
|
String qty = NumberUtil.round(row.getString("qty"), 3).toString();
|
||||||
|
// 皮重
|
||||||
|
String qty_1 = "";
|
||||||
|
|
||||||
|
// 总重
|
||||||
|
String total_qyt = row.getString("total_qty");
|
||||||
|
if (ObjectUtil.isNotEmpty(total_qyt)) {
|
||||||
|
total_qyt = NumberUtil.round(total_qyt, 3).toString();
|
||||||
|
// 皮重
|
||||||
|
qty_1 = NumberUtil.round(NumberUtil.sub(total_qyt, qty), 3).toString();
|
||||||
|
} else {
|
||||||
|
total_qyt = "";
|
||||||
|
}
|
||||||
|
|
||||||
// 袋码
|
// 袋码
|
||||||
String bag_code = row.getString("bag_code");
|
String bag_code = row.getString("bag_code");
|
||||||
// 有效期
|
// 有效期
|
||||||
@@ -269,7 +294,7 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
"^FH\\^FD>:"+bag_code+"^FS\n" +
|
"^FH\\^FD>:"+bag_code+"^FS\n" +
|
||||||
"^FT378,755^A1I,23,25^FH\\^CI28^FD"+pcsn+"^FS^CI27\n" +
|
"^FT378,755^A1I,23,25^FH\\^CI28^FD"+pcsn+"^FS^CI27\n" +
|
||||||
"^FT773,820^A1I,23,25^FH\\^CI28^FD"+material_name+"^FS^CI27\n" +
|
"^FT773,820^A1I,23,25^FH\\^CI28^FD"+material_name+"^FS^CI27\n" +
|
||||||
"^FT505,914^A1I,23,25^FH\\^CI28^FD"+record_no+"^FS^CI27\n" +
|
"^FT505,914^A1I,23,25^FH\\^CI28^FD"+record_no1+"^FS^CI27\n" +
|
||||||
"^FO111,1057^GFA,645,1100,44,:Z64:eJyN1LGK3DAQBuARKtQEqU0hojxCSoU19isJUqwDm1hwxXX7TDJbuLxHOJkt0irVqTBWZmzvLmzujptqMB9j8Y9lm+D8GNkMoN0kWehYHLPkPoJgE2gw3gkYhwgOYDfB+JxF8aB3RbK+9Gk/SxHQioK2i2SfEtlmhrFkVQLoBu2pjLnbrCq+hpLIPmeytYExV4ZHtOLITn2yv9VmRahZymTzgWyFXdQ1JNAVP7IBnG2FlBGtZmHPgiUbq9V6tNQuNkB7tcDinodqsZqs5X4M2oIFbRdrcdBmAa3XZMPNHtxi1WaN/JRWe364t0/5G9nvmMNQsv0xS+3QmvKKLQk3gTnMq+2mix370382rDZvNr1jcSzZGtDieQ8graXM4M5SZmG1drPuas/+jJmpm2XULZYf+ck7yoyswo3jHNsqttlGcdoK2UocBe24VdLpCEaJAf6mfGj4xc4mlrxYU2TTl3HGPMgWUR7BldQUs9ndVEfKrEI7y1+h9HMzkWUvvAhwXTQv9SWHVMUmfqZdiEn+DA2bVZZRRvYHJgnWeDVUFwtUFVlYC5+Qhbu6Wg3th+0X+n5vVgXxtlUP8cNW0H3Dd79tOwxrtZzu8Wa/ovXvWKD/w2bpSJ6/Zv8BlO8+jQ==:5596\n" +
|
"^FO111,1057^GFA,645,1100,44,:Z64:eJyN1LGK3DAQBuARKtQEqU0hojxCSoU19isJUqwDm1hwxXX7TDJbuLxHOJkt0irVqTBWZmzvLmzujptqMB9j8Y9lm+D8GNkMoN0kWehYHLPkPoJgE2gw3gkYhwgOYDfB+JxF8aB3RbK+9Gk/SxHQioK2i2SfEtlmhrFkVQLoBu2pjLnbrCq+hpLIPmeytYExV4ZHtOLITn2yv9VmRahZymTzgWyFXdQ1JNAVP7IBnG2FlBGtZmHPgiUbq9V6tNQuNkB7tcDinodqsZqs5X4M2oIFbRdrcdBmAa3XZMPNHtxi1WaN/JRWe364t0/5G9nvmMNQsv0xS+3QmvKKLQk3gTnMq+2mix370382rDZvNr1jcSzZGtDieQ8graXM4M5SZmG1drPuas/+jJmpm2XULZYf+ck7yoyswo3jHNsqttlGcdoK2UocBe24VdLpCEaJAf6mfGj4xc4mlrxYU2TTl3HGPMgWUR7BldQUs9ndVEfKrEI7y1+h9HMzkWUvvAhwXTQv9SWHVMUmfqZdiEn+DA2bVZZRRvYHJgnWeDVUFwtUFVlYC5+Qhbu6Wg3th+0X+n5vVgXxtlUP8cNW0H3Dd79tOwxrtZzu8Wa/ovXvWKD/w2bpSJ6/Zv8BlO8+jQ==:5596\n" +
|
||||||
"^FO715,691^GFA,217,216,8,:Z64:eJw9zjEKwkAQheE/BNxGrK3MFbTbQvQqOcKWgmBi5ZUEmxXBKgdIIbKwhW3sBIt1ZgNO8zEDM/OYMdYCajxUMKgWvvOQjX9lvlSvLU69MXrPpr6TZUeyD2gC0faw9sQ0QOFJF7E8+WjlXplC3AW2qeXln1Ry+lB80BTGSGMC5ihuaiaF5qmZZh12pTkc+7foBtkTm3P+oTnVHziUP3g=:1C17\n" +
|
"^FO715,691^GFA,217,216,8,:Z64:eJw9zjEKwkAQheE/BNxGrK3MFbTbQvQqOcKWgmBi5ZUEmxXBKgdIIbKwhW3sBIt1ZgNO8zEDM/OYMdYCajxUMKgWvvOQjX9lvlSvLU69MXrPpr6TZUeyD2gC0faw9sQ0QOFJF7E8+WjlXplC3AW2qeXln1Ry+lB80BTGSGMC5ihuaiaF5qmZZh12pTkc+7foBtkTm3P+oTnVHziUP3g=:1C17\n" +
|
||||||
"^FO581,694^GFA,229,304,16,:Z64:eJyFzzEOwjAMBVBH7JzFY7dcJagDa6ReIFWlsiBmjtEj/KgS18C5QUYmipMWGBjw9iT72268NYGJLTm+hwWN73qo2+D4EQGiFIsBxzKTGlE2o12d1VR8q05Tsfv4cFUv4ngev4b6uVvnzzVPPHah+vJ2lLp/VKcoOcKioa4/qbsh5TaI2pqh3L8/sn6i/WT6SfeXqvm/DvmP/WaD1byZFrwAXqNleg==:1BD3\n" +
|
"^FO581,694^GFA,229,304,16,:Z64:eJyFzzEOwjAMBVBH7JzFY7dcJagDa6ReIFWlsiBmjtEj/KgS18C5QUYmipMWGBjw9iT72268NYGJLTm+hwWN73qo2+D4EQGiFIsBxzKTGlE2o12d1VR8q05Tsfv4cFUv4ngev4b6uVvnzzVPPHah+vJ2lLp/VKcoOcKioa4/qbsh5TaI2pqh3L8/sn6i/WT6SfeXqvm/DvmP/WaD1byZFrwAXqNleg==:1BD3\n" +
|
||||||
@@ -277,7 +302,7 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
"^FT576,697^A1I,23,25^FH\\^CI28^FD"+bag_code+"^FS^CI27\n" +
|
"^FT576,697^A1I,23,25^FH\\^CI28^FD"+bag_code+"^FS^CI27\n" +
|
||||||
"^FO317,690^GFA,205,189,7,:Z64:eJwljjEKwkAURN/ywW1E2y3EvULKgIFcZSEXSGmnx/A4AcFTpIgEUglumWrXv7H4vGLmzwxAo0c2ybxsnvB2L0+wo0PArDUyQaxoB+grLmq+9kXjE5AIS+BWwxzoHLynApMC31HfA/MJXDBz2pApoANRiB0OPmIT57VqVfMPjhq906DSoLGlXdHeNzT/va5M5gfuwyjr:BA73\n" +
|
"^FO317,690^GFA,205,189,7,:Z64:eJwljjEKwkAURN/ywW1E2y3EvULKgIFcZSEXSGmnx/A4AcFTpIgEUglumWrXv7H4vGLmzwxAo0c2ybxsnvB2L0+wo0PArDUyQaxoB+grLmq+9kXjE5AIS+BWwxzoHLynApMC31HfA/MJXDBz2pApoANRiB0OPmIT57VqVfMPjhq906DSoLGlXdHeNzT/va5M5gfuwyjr:BA73\n" +
|
||||||
"^FO153,690^GFA,317,460,20,:Z64:eJyN0LFKA0EQBuAfArPNcNtucImv8NvoFcF7FSEvcGBjYaEIqfJQK4I2eYCUFwLW9wBCnN27mJA0TrcfuzOzP2Dle1xUrC+N+g+bi1DZIBGu07uOZiISay5eUwtt9Z6juZ7pvXtCCFqbzbIh/BnD0ZANZnZPs016YvGwAbRY6VeR+x03uP5RHuaq9dtxjRC1eTmxj2whEoNV2b5uVsXGfjOz7ed0ZVnM2RZztzbjcTldomqfQ5nRvH37jo2Yue3ap7IfJMcnVzKGlP+BclB/bpaJdwfD0SZnZm+rE8NgUQbz+/QLNlA+rg==:F877\n" +
|
"^FO153,690^GFA,317,460,20,:Z64:eJyN0LFKA0EQBuAfArPNcNtucImv8NvoFcF7FSEvcGBjYaEIqfJQK4I2eYCUFwLW9wBCnN27mJA0TrcfuzOzP2Dle1xUrC+N+g+bi1DZIBGu07uOZiISay5eUwtt9Z6juZ7pvXtCCFqbzbIh/BnD0ZANZnZPs016YvGwAbRY6VeR+x03uP5RHuaq9dtxjRC1eTmxj2whEoNV2b5uVsXGfjOz7ed0ZVnM2RZztzbjcTldomqfQ5nRvH37jo2Yue3ap7IfJMcnVzKGlP+BclB/bpaJdwfD0SZnZm+rE8NgUQbz+/QLNlA+rg==:F877\n" +
|
||||||
"^FT150,697^A1I,23,25^FH\\^CI28^FD"+qty+"^FS^CI27\n" +
|
"^FT150,697^A1I,23,25^FH\\^CI28^FD"+qty_1+"^FS^CI27\n" +
|
||||||
"^FO715,634^GFA,193,182,7,:Z64:eJwdjTEOwjAMRV/kIRtdO+QWLJGolMP0EmyYhRGuFNQVcQKGSD0AHTugBqdenqVv/weV7oevhVSRCQ7+hoB3d6Tg9E3KFF6cYImhZefYIwtDgEvEbhh7kB1Sle8Hd83MocHNG2KoNDBa9SMjPstq69a+zQxHOqtm1GZg0maXZyYpXmHYBZjH5g++sSu6:E28C\n" +
|
"^FO715,634^GFA,193,182,7,:Z64:eJwdjTEOwjAMRV/kIRtdO+QWLJGolMP0EmyYhRGuFNQVcQKGSD0AHTugBqdenqVv/weV7oevhVSRCQ7+hoB3d6Tg9E3KFF6cYImhZefYIwtDgEvEbhh7kB1Sle8Hd83MocHNG2KoNDBa9SMjPstq69a+zQxHOqtm1GZg0maXZyYpXmHYBZjH5g++sSu6:E28C\n" +
|
||||||
"^FO545,631^GFA,309,460,20,:Z64:eJyN0L9KA0EQBvAPAnPNcNte8MgzfDZ6RfBeZSEvEEhjGRFS+VAbAtr4ACk3HFhfaRdnXEM0aZxtlh/MX8AijLiKtrs26j9sLkJlj0To/ZDsA4hI23HxlJbQB8bVulg1Mm3zI7RjPKQ0c0PzY2xiOhuK0U3dJiOxiPtiudSryeNAtxxTLKZWb+A7tF//sZ0b4fXcare325dTD7eZ2eF16rb0+cyqO+ux2kw30CaXPfrnj5DZi1vYfdq+Nh/Ezyc3AjtPBHwPexYaLs1uEqqT4WyTC7Pc+pehWCvfZnMcvwC491j6:81B6\n" +
|
"^FO545,631^GFA,309,460,20,:Z64:eJyN0L9KA0EQBvAPAnPNcNte8MgzfDZ6RfBeZSEvEEhjGRFS+VAbAtr4ACk3HFhfaRdnXEM0aZxtlh/MX8AijLiKtrs26j9sLkJlj0To/ZDsA4hI23HxlJbQB8bVulg1Mm3zI7RjPKQ0c0PzY2xiOhuK0U3dJiOxiPtiudSryeNAtxxTLKZWb+A7tF//sZ0b4fXcare325dTD7eZ2eF16rb0+cyqO+ux2kw30CaXPfrnj5DZi1vYfdq+Nh/Ezyc3AjtPBHwPexYaLs1uEqqT4WyTC7Pc+pehWCvfZnMcvwC491j6:81B6\n" +
|
||||||
"^FO317,632^GFA,217,196,7,:Z64:eJwtjjEKwkAURN/ywW3Cpk0R9AopAwq5SiAXSGllPIAH8BgeYUHwFCILaQVTbiGJP4sDw3z+wMyAoiKhVy4QsUuAN3LXh17yF2XIaDx4x54kq/faIhMSS4Ya52u6gs1YreKWG58nQ2gZS/MNrRlnsuCN9pQn6GCneWK9e7TYGXPpG/Xkesw12mqmSh5Tu+jO5px2HrR2giKt/gHlVS7b:0BB4\n" +
|
"^FO317,632^GFA,217,196,7,:Z64:eJwtjjEKwkAURN/ywW3Cpk0R9AopAwq5SiAXSGllPIAH8BgeYUHwFCILaQVTbiGJP4sDw3z+wMyAoiKhVy4QsUuAN3LXh17yF2XIaDx4x54kq/faIhMSS4Ya52u6gs1YreKWG58nQ2gZS/MNrRlnsuCN9pQn6GCneWK9e7TYGXPpG/Xkesw12mqmSh5Tu+jO5px2HrR2giKt/gHlVS7b:0BB4\n" +
|
||||||
@@ -297,6 +322,8 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
"^FO582,213^GFA,237,285,15,:Z64:eJx9zjEOgkAQBdAxmyzNZG2/CZErUG7lWXZvwAkMhsJDeBiHUNh5hqWxho6CwkG0sGG6l5+ZP0RmEIl3Y22WEoicTxLHxlqugpI5SGyVQIUjMZUS625h+eNFU4IHk6PDlwzdNVJIvOrlYs6VVDmJsxI5LwRLXy/ESkivuw7YT9qLsu2bxrnce00tQpce5nZyn6/MkJ7hvBtfWQraqyO0TtCvtkgb9P8spjeReTug:A02F\n" +
|
"^FO582,213^GFA,237,285,15,:Z64:eJx9zjEOgkAQBdAxmyzNZG2/CZErUG7lWXZvwAkMhsJDeBiHUNh5hqWxho6CwkG0sGG6l5+ZP0RmEIl3Y22WEoicTxLHxlqugpI5SGyVQIUjMZUS625h+eNFU4IHk6PDlwzdNVJIvOrlYs6VVDmJsxI5LwRLXy/ESkivuw7YT9qLsu2bxrnce00tQpce5nZyn6/MkJ7hvBtfWQraqyO0TtCvtkgb9P8spjeReTug:A02F\n" +
|
||||||
"^FO145,453^GFA,565,726,33,:Z64:eJx10jFLAzEUAOAXAi9L2qwRT/0LAZcWxPsrEaGTQ0cne+DaH1An/8KBIA4OJ8K5BOduRg6cHOoiFcrFl7ur2oK5G0Luy3svlwfQDAug25mBrSHpIYBwDAiIaFgoAOj1zYe4ESOQYKTKEgI8ezo/qY74ZQcM8Ag0AUKiNsPsOa0+FSKBNAQYTy4zAqYBliIMM7dbleI65o51+YQVP6AgsDebq9OS3cy6FGuABB4yxEPU896bg+quA0USS7ZWhGkDPiEp+iMHrznImIER8BGgUfLxTYXbeNqRY68e/4KJjyke3/fFEYKOYOFFWG5G0LI8S3v3tI6jFcs3I4BNw1KWA/G1xGJOEbjZBvtmLEsN/hyrmSAwWGwBNAvpDHzc4YXmBIazFrTHTAOVlMuXBbvKsU9ghTvTtsj2R2kq8sRLZ/lujRgj4E7WRbAJi3dh4VTLwnKV08YfoMJqfVkWyqRXeFUbdE2Egwjw97otr6VMa5SG1vmFU6HuUnQN49m0WZCGUohy1Reg2iLblqOTJs0kGdOv7oOjKa7btGvaf8Y3AFWrhg==:9532\n" +
|
"^FO145,453^GFA,565,726,33,:Z64:eJx10jFLAzEUAOAXAi9L2qwRT/0LAZcWxPsrEaGTQ0cne+DaH1An/8KBIA4OJ8K5BOduRg6cHOoiFcrFl7ur2oK5G0Luy3svlwfQDAug25mBrSHpIYBwDAiIaFgoAOj1zYe4ESOQYKTKEgI8ezo/qY74ZQcM8Ag0AUKiNsPsOa0+FSKBNAQYTy4zAqYBliIMM7dbleI65o51+YQVP6AgsDebq9OS3cy6FGuABB4yxEPU896bg+quA0USS7ZWhGkDPiEp+iMHrznImIER8BGgUfLxTYXbeNqRY68e/4KJjyke3/fFEYKOYOFFWG5G0LI8S3v3tI6jFcs3I4BNw1KWA/G1xGJOEbjZBvtmLEsN/hyrmSAwWGwBNAvpDHzc4YXmBIazFrTHTAOVlMuXBbvKsU9ghTvTtsj2R2kq8sRLZ/lujRgj4E7WRbAJi3dh4VTLwnKV08YfoMJqfVkWyqRXeFUbdE2Egwjw97otr6VMa5SG1vmFU6HuUnQN49m0WZCGUohy1Reg2iLblqOTJs0kGdOv7oOjKa7btGvaf8Y3AFWrhg==:9532\n" +
|
||||||
"^FO259,388^GFA,269,330,15,:Z64:eJyTb2AAgToGCCh4ACIZD0NEGRISwNxGKPcAmCvNCJM9ACIlm6F67cHCEv+gXMbD/Tb2DQbsfDYf/vAf+Md4mE0iEcjlkUg4w3OwjZ+ZTeIAQ4INj0Rim0Qy0BAwNw3KNTgM5h7mkUhutyiGcg8gcx/AuQ0/Ds+3KWZsfsxX87ndovAMf+P3H/aMDXbs9x+3WxT8ATmFmRlMArk8OLmMbRIJEC4bmHtO5gGYWw/mMgDdDDaKASzIUMEODQMeBhgAAMOSRSk=:5649\n" +
|
"^FO259,388^GFA,269,330,15,:Z64:eJyTb2AAgToGCCh4ACIZD0NEGRISwNxGKPcAmCvNCJM9ACIlm6F67cHCEv+gXMbD/Tb2DQbsfDYf/vAf+Md4mE0iEcjlkUg4w3OwjZ+ZTeIAQ4INj0Rim0Qy0BAwNw3KNTgM5h7mkUhutyiGcg8gcx/AuQ0/Ds+3KWZsfsxX87ndovAMf+P3H/aMDXbs9x+3WxT8ATmFmRlMArk8OLmMbRIJEC4bmHtO5gGYWw/mMgDdDDaKASzIUMEODQMeBhgAAMOSRSk=:5649\n" +
|
||||||
|
"^FT544,640^A1I,23,25^FH\\^CI28^FD"+total_qyt+"^FS^CI27\n" +
|
||||||
|
"^FT152,640^A1I,23,25^FH\\^CI28^FD"+qty+"^FS^CI27\n" +
|
||||||
"^PQ1,0,1,Y\n" +
|
"^PQ1,0,1,Y\n" +
|
||||||
"^XZ\n";
|
"^XZ\n";
|
||||||
}
|
}
|
||||||
@@ -323,20 +350,30 @@ public class PdaPrintServiceImpl implements PdaPrintService {
|
|||||||
Socket socket=null;
|
Socket socket=null;
|
||||||
try {
|
try {
|
||||||
// 打印机地址
|
// 打印机地址
|
||||||
String print_id = whereJson.getString("print_id");
|
if (ObjectUtil.isEmpty(whereJson.getString("print_id"))) {
|
||||||
if (ObjectUtil.isEmpty(print_id)) {
|
|
||||||
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
throw new BadRequestException("打印机IP为空,请选择打印机!");
|
||||||
}
|
}
|
||||||
|
Dict dict = iSysDictService.getOne(
|
||||||
|
new QueryWrapper<Dict>().lambda()
|
||||||
|
.eq(Dict::getCode, "PDA_CONFIG_PRINT")
|
||||||
|
.eq(Dict::getValue, whereJson.getString("print_id"))
|
||||||
|
);
|
||||||
|
String print_id = dict.getPara2();
|
||||||
JSONObject row = whereJson.getJSONObject("row");
|
JSONObject row = whereJson.getJSONObject("row");
|
||||||
// 记录编号
|
// 记录编号
|
||||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||||
String record_no = sysParamService.findByCode("RECORD_NO").getValue();
|
String record_no = sysParamService.findByCode("RECORD_NO1").getValue();
|
||||||
// 物料名称
|
// 物料名称
|
||||||
String material_name = row.getString("material_name");
|
String material_name = row.getString("material_name")+ "-"+row.getString("material_code");
|
||||||
// 物料批号+批次
|
// 批次
|
||||||
String pcsn = row.getString("material_code")+"-"+row.getString("pcsn");
|
String pcsn = row.getString("pcsn");
|
||||||
|
// 质量代码
|
||||||
|
String quality_code = row.getString("quality_code");
|
||||||
|
if (ObjectUtil.isNotEmpty(quality_code)) {
|
||||||
|
pcsn = pcsn + "-" + quality_code;
|
||||||
|
}
|
||||||
// 数量
|
// 数量
|
||||||
String bucket_weight = NumberUtil.round(row.getString("bucket_weight"), 2).toString();
|
String bucket_weight = NumberUtil.round(row.getString("bucket_weight"), 3).toString();
|
||||||
// 桶号
|
// 桶号
|
||||||
String bucket_code = row.getString("bucket_code");
|
String bucket_code = row.getString("bucket_code");
|
||||||
// 插入打印记录
|
// 插入打印记录
|
||||||
|
|||||||
@@ -280,6 +280,30 @@ public class PdaProductionServiceImpl implements PdaProductionService {
|
|||||||
return PdaResponse.requestOk("取料成功!");
|
return PdaResponse.requestOk("取料成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional
|
||||||
|
public PdaResponse clickMaterial(JSONObject whereJson) {
|
||||||
|
String vehicle_code = whereJson.getString("search");
|
||||||
|
storagevehicleinfoService.getByCode(vehicle_code);
|
||||||
|
// 查询
|
||||||
|
List<GroupPlate> list = groupplateService.list(
|
||||||
|
new QueryWrapper<GroupPlate>().lambda()
|
||||||
|
.eq(GroupPlate::getVehicle_code, vehicle_code)
|
||||||
|
.eq(GroupPlate::getStatus, IOSEnum.GROUP_PLATE_STATUS.code("待取货"))
|
||||||
|
);
|
||||||
|
if (ObjectUtil.isEmpty(list)) {
|
||||||
|
throw new BadRequestException("此载具【"+vehicle_code+"】没有待取货的袋信息!");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除此托盘上的袋信息(待取货状态)
|
||||||
|
groupplateService.remove(
|
||||||
|
new QueryWrapper<GroupPlate>().lambda()
|
||||||
|
.eq(GroupPlate::getVehicle_code, vehicle_code)
|
||||||
|
.eq(GroupPlate::getStatus, IOSEnum.GROUP_PLATE_STATUS.code("待取货"))
|
||||||
|
);
|
||||||
|
return PdaResponse.requestOk();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PdaResponse takeTheVehicle(JSONObject param) {
|
public PdaResponse takeTheVehicle(JSONObject param) {
|
||||||
// search
|
// search
|
||||||
|
|||||||
@@ -131,6 +131,16 @@ public class EmpVehicleInTask extends AbstractTask {
|
|||||||
taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
|
taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
|
||||||
taskObj.setRemark("执行中");
|
taskObj.setRemark("执行中");
|
||||||
taskService.updateById(taskObj);
|
taskService.updateById(taskObj);
|
||||||
|
// 更新点位状态
|
||||||
|
iSchBasePointService.update(
|
||||||
|
new UpdateWrapper<SchBasePoint>().lambda()
|
||||||
|
.set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空位"))
|
||||||
|
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code1())
|
||||||
|
.set(SchBasePoint::getIng_task_code, "")
|
||||||
|
.set(SchBasePoint::getMaterial_pcsn, "")
|
||||||
|
.set(SchBasePoint::getMaterial_qty, "")
|
||||||
|
.set(SchBasePoint::getMaterial_id, "")
|
||||||
|
);
|
||||||
}
|
}
|
||||||
if (status.equals(TaskStatus.FINISHED)) {
|
if (status.equals(TaskStatus.FINISHED)) {
|
||||||
this.finishTask(taskObj);
|
this.finishTask(taskObj);
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ public enum IOSEnum {
|
|||||||
INBILL_DIS_STATUS(MapOf.of("未生成", "00", "生成", "01", "执行中", "02", "完成", "99")),
|
INBILL_DIS_STATUS(MapOf.of("未生成", "00", "生成", "01", "执行中", "02", "完成", "99")),
|
||||||
|
|
||||||
//组盘记录状态
|
//组盘记录状态
|
||||||
GROUP_PLATE_STATUS(MapOf.of( "生成", "0","组盘", "1", "入库", "2", "出库", "3")),
|
GROUP_PLATE_STATUS(MapOf.of( "生成", "0","组盘", "1", "入库", "2", "出库", "3", "待取货", "4")),
|
||||||
|
|
||||||
// 锁类型
|
// 锁类型
|
||||||
LOCK_TYPE(MapOf.of("未锁定", "0", "入库锁", "1", "出库锁", "2"
|
LOCK_TYPE(MapOf.of("未锁定", "0", "入库锁", "1", "出库锁", "2"
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class GroupPlate implements Serializable {
|
|||||||
private String qty_unit_name;
|
private String qty_unit_name;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 组盘数量
|
* 净重
|
||||||
*/
|
*/
|
||||||
private BigDecimal qty;
|
private BigDecimal qty;
|
||||||
|
|
||||||
@@ -95,6 +95,11 @@ public class GroupPlate implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private String create_time;
|
private String create_time;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总重
|
||||||
|
*/
|
||||||
|
private BigDecimal total_qty;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 袋明细
|
* 袋明细
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -141,7 +141,7 @@
|
|||||||
|
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="物料重量" prop="qty">
|
<el-form-item label="物料重量" prop="qty">
|
||||||
<el-input-number v-model="form.qty" :precision="2" :controls="false" :min="1" style="width: 200px" />
|
<el-input-number v-model="form.qty" :precision="3" :controls="false" :min="1" style="width: 200px" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -289,9 +289,6 @@ export default {
|
|||||||
],
|
],
|
||||||
pcsn: [
|
pcsn: [
|
||||||
{ required: true, message: '批次不能为空', trigger: 'blur' }
|
{ required: true, message: '批次不能为空', trigger: 'blur' }
|
||||||
],
|
|
||||||
supp_code: [
|
|
||||||
{ required: true, message: '供应商不能为空', trigger: 'blur' }
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,7 +86,11 @@
|
|||||||
<el-table-column prop="material_name" label="物料名称" :min-width="flexWidth('material_name',crud.data,'物料名称')" />
|
<el-table-column prop="material_name" label="物料名称" :min-width="flexWidth('material_name',crud.data,'物料名称')" />
|
||||||
<el-table-column prop="class_name" label="物料类别" :min-width="flexWidth('class_name',crud.data,'物料类别')" />
|
<el-table-column prop="class_name" label="物料类别" :min-width="flexWidth('class_name',crud.data,'物料类别')" />
|
||||||
<el-table-column prop="pcsn" label="批次号" :min-width="flexWidth('pcsn',crud.data,'批次号')" />
|
<el-table-column prop="pcsn" label="批次号" :min-width="flexWidth('pcsn',crud.data,'批次号')" />
|
||||||
<el-table-column prop="storagevehicle_code" label="载具号" :min-width="flexWidth('storagevehicle_code',crud.data,'载具号')" />
|
<el-table-column prop="storagevehicle_code" label="载具号">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-link type="warning" @click="openBucket(scope.row)">{{ scope.row.storagevehicle_code }}</el-link>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="canuse_qty" label="可用数" :formatter="crud.formatNum3" :min-width="100" />
|
<el-table-column prop="canuse_qty" label="可用数" :formatter="crud.formatNum3" :min-width="100" />
|
||||||
<el-table-column prop="frozen_qty" label="冻结数" :formatter="crud.formatNum3" :min-width="100" />
|
<el-table-column prop="frozen_qty" label="冻结数" :formatter="crud.formatNum3" :min-width="100" />
|
||||||
<el-table-column prop="qty_unit_name" label="计量单位" :min-width="flexWidth('qty_unit_name',crud.data,'计量单位')" />
|
<el-table-column prop="qty_unit_name" label="计量单位" :min-width="flexWidth('qty_unit_name',crud.data,'计量单位')" />
|
||||||
|
|||||||
Reference in New Issue
Block a user