add 宜宾东磁的导出
This commit is contained in:
@@ -45,6 +45,8 @@ import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalTime;
|
||||
import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* 纸箱贴标机
|
||||
@@ -191,14 +193,17 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
//客户
|
||||
String customer = tickets.getCustomer();
|
||||
//晶科送货单
|
||||
String shdnumber=tickets.getShdnumber();
|
||||
String shdnumber = tickets.getShdnumber();
|
||||
//纸箱装瓶数量
|
||||
String carton_qty = tickets.getCarton_qty();
|
||||
//计划数量
|
||||
String planned_quantity = tickets.getPlanned_quantity();
|
||||
//纸箱模板名称
|
||||
String carton_board=tickets.getCarton_board();
|
||||
//晶科每罐重量
|
||||
String bottle_weight = null;
|
||||
String bottle_weight = tickets.getBottle_weight();
|
||||
Integer bottle_weight1 = 0;
|
||||
Integer bottle_weight2 = Integer.parseInt(bottle_weight);
|
||||
//当前纸箱完成数量
|
||||
String fcarton_number = tickets.getFcarton_number();
|
||||
Integer fcarton_number1 = Integer.parseInt(fcarton_number);
|
||||
@@ -207,6 +212,50 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
// Float carton_qty1 = Float.parseFloat(carton_qty);
|
||||
//总纸箱数
|
||||
Integer sum_carton1 = (planned_quantity1 + carton_qty1 - 1) / carton_qty1;
|
||||
//罐数
|
||||
Integer cartonnumber = 0;
|
||||
//净重
|
||||
Integer standardweight = 0;
|
||||
if (fcarton_number1 == 0) {
|
||||
cartonnumber = carton_qty1 - (sum_carton1 * carton_qty1 - planned_quantity1);
|
||||
} else {
|
||||
cartonnumber = carton_qty1;
|
||||
}
|
||||
standardweight = cartonnumber * bottle_weight2;
|
||||
//批次号
|
||||
String batch_number = tickets.getBatch_number();
|
||||
String pcn="";
|
||||
String pcy="";
|
||||
String pcr="";
|
||||
Integer yxy=0;
|
||||
Integer yxn=0;
|
||||
if(!customer.contains("马来韩华")&&!customer.contains("韩国韩华")) {
|
||||
pcn = "20" + batch_number.substring(2, 4);
|
||||
pcy = batch_number.substring(4, 6);
|
||||
pcr = batch_number.substring(6, 8);
|
||||
yxy = Integer.parseInt(pcy) + 6;
|
||||
yxn = Integer.parseInt(pcn);
|
||||
if (yxy > 12) {
|
||||
yxn = yxn + 1;
|
||||
yxy = yxy - 12;
|
||||
}
|
||||
}
|
||||
//通威重量
|
||||
double roundedValue = 0.0;
|
||||
if (!tickets.getIs_ice()) {
|
||||
double lowerBound = 2.181;
|
||||
double upperBound = 2.221;
|
||||
// 生成随机值并映射到区间 [2.181, 2.221]
|
||||
double randomValue = lowerBound + (upperBound - lowerBound) * Math.random();
|
||||
// 将结果四舍五入到三位小数
|
||||
roundedValue =Math.round(randomValue * 1000.0)*cartonnumber / 1000.0;
|
||||
}else{
|
||||
double lowerBound = 2.921;
|
||||
double upperBound = 3.021;
|
||||
double randomValue = lowerBound + (upperBound - lowerBound) * Math.random();
|
||||
// 将结果四舍五入到三位小数
|
||||
roundedValue =Math.round(randomValue * 1000.0)*cartonnumber / 1000.0;
|
||||
}
|
||||
//总纸箱数(Integer)
|
||||
//纸箱号
|
||||
String carton_number = tickets.getCarton_number();
|
||||
@@ -249,6 +298,28 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
}
|
||||
last_number = last_number5;
|
||||
}
|
||||
//眉山通威
|
||||
String real_zxdigits1=null;
|
||||
String twcarton_number=null;
|
||||
if (customer.contains("眉山通威")||customer.contains("宜宾东磁")) {
|
||||
String zxletters = carton_number.replaceAll("\\d+$", ""); // 匹配并去掉末尾的数字
|
||||
String zxdigits = extractNumberAfterLastLetter(carton_number); // 匹配并取出末尾的数字部分
|
||||
Integer zxdigits1=Integer.parseInt(zxdigits)-real_carton;
|
||||
if(zxdigits1<=9){
|
||||
real_zxdigits1="0"+String.valueOf(zxdigits1);
|
||||
}else{
|
||||
real_zxdigits1=String.valueOf(zxdigits1);
|
||||
}
|
||||
twcarton_number=zxletters+real_zxdigits1;
|
||||
}
|
||||
//zx通威系统标准
|
||||
String real_zxdigits2=null;
|
||||
if (carton_board.contains("通威系统标准")) {
|
||||
String zxletters = carton_number.substring(0, 14);
|
||||
String zxdigits = carton_number.substring(14, 18);
|
||||
Integer zxdigits1=Integer.parseInt(zxdigits)-real_carton;
|
||||
real_zxdigits2=zxletters+zxdigits1;
|
||||
}
|
||||
//晶澳纸箱数据
|
||||
String janumber = "";
|
||||
if (customer.contains("晶澳")) {
|
||||
@@ -282,7 +353,7 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
} else {
|
||||
for (Integer i = 0; i < carton_qty1; i++) {
|
||||
Integer last_number2 = Integer.parseInt(last_number);
|
||||
last_number2 = (sum_carton1 - real_carton - 1) * 10 + i + 1;
|
||||
last_number2 = (sum_carton1 - real_carton - 1) * carton_qty1 + i + 1;
|
||||
String last_number3 = String.valueOf(last_number2);
|
||||
if (last_number2 > 100) {
|
||||
last_number3 = String.valueOf(last_number2) + ",2;";
|
||||
@@ -321,6 +392,11 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
options.put("title", "日期: " + currentDate);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("jkdate")) {
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
options.put("title", "发货日期: " + currentDate);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("weight")) {
|
||||
options.put("title", "重量: " + weight1 + "kg");
|
||||
printElement.put("options", options);
|
||||
@@ -330,6 +406,67 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
options.put("title", "箱号: " + sum_carton1 + "——" + real_carton);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("batchnumber")) {
|
||||
options.put("title", "批号: " +tickets.getSmall_model()+"-"+tickets.getBatch_number());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
//爱旭批次号
|
||||
if (options.get("testData").equals("axbatchnumber")) {
|
||||
options.put("title", "批次号: " +tickets.getBatch_number());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("model")) {
|
||||
options.put("title", "型号: " +tickets.getModel());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
//爱旭尺寸/规格
|
||||
if (options.get("testData").equals("ccgg")) {
|
||||
options.put("title", "尺寸/规格: " +bottle_weight2+"*"+cartonnumber+"罐");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
//爱旭数量
|
||||
if (options.get("testData").equals("axstandardweight")) {
|
||||
options.put("title", "数量: " +standardweight+"KG");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
//通威批号
|
||||
if (options.get("testData").equals("twbatchnumber")) {
|
||||
options.put("title", "批号: " +tickets.getBatch());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
//通威重量
|
||||
if (options.get("testData").equals("twweight")) {
|
||||
options.put("title", "重量: " + roundedValue + "kg");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("materialcode")) {
|
||||
options.put("title", "物料编码: " +tickets.getMaterial_code());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("materialname")) {
|
||||
options.put("title", "物料名称: " +tickets.getMaterial_number());
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("cartonnumber")) {
|
||||
options.put("title", "罐数: " +cartonnumber+"罐");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("weightnumber")) {
|
||||
options.put("title", "重量: " +cartonnumber+"罐"+"/"+standardweight+"KG");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("standardweight")) {
|
||||
options.put("title", "净重: " +standardweight+"KG");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("productdate")) {
|
||||
options.put("title", "生产日期: " +pcn+"."+pcy+"."+pcr);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("effective")) {
|
||||
options.put("title", "生产日期: " +yxn+"."+yxy+"."+pcr);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("纸箱号")) {
|
||||
log.info("纸箱号{}{}", first_number, last_number);
|
||||
String number = "";
|
||||
@@ -346,6 +483,16 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
options.put("testData", number);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("眉山通威纸箱号")) {
|
||||
options.put("title", twcarton_number);
|
||||
options.put("testData", twcarton_number);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("宜宾东磁纸箱号")) {
|
||||
options.put("title", "纸箱号:"+twcarton_number);
|
||||
options.put("testData", twcarton_number);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
if (options.get("testData").equals("晶澳纸箱号")) {
|
||||
log.info("晶澳纸箱号{}{}", janumber);
|
||||
String number = janumber;
|
||||
@@ -424,7 +571,7 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
psletters = bottle_number.substring(0, 20);
|
||||
psdigits = bottle_number.substring(20, 23);
|
||||
psdigits1 = Integer.parseInt(psdigits) - fbottle_number1;
|
||||
if(psdigits1>100){
|
||||
if(psdigits1>=100){
|
||||
psdigits=String.valueOf(psdigits1);
|
||||
}else if(psdigits1>=10){
|
||||
psdigits="0"+ psdigits1;
|
||||
@@ -446,6 +593,15 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
psdigits = "00" + String.valueOf(psdigits1);
|
||||
}
|
||||
}
|
||||
//通威瓶盖
|
||||
long real_psdigits1 = 0; // 赋初值为0
|
||||
String twpg=null;
|
||||
if (customer.contains("眉山通威")) {
|
||||
psletters = bottle_number.substring(0,4);
|
||||
psdigits = bottle_number.substring(4,15);
|
||||
real_psdigits1=Long.valueOf(psdigits)-fbottle_number1;
|
||||
twpg=psletters+real_psdigits1;
|
||||
}
|
||||
String jsonString = template.toString();
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
// 解析外部 JSON 字符串,获取 "template" 字段的值
|
||||
@@ -478,6 +634,10 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
options.put("testData", number1 + ",2");
|
||||
printElement.put("options", options);
|
||||
}
|
||||
else if (options.get("testData").equals("通威瓶号")) {
|
||||
options.put("testData", twpg);
|
||||
printElement.put("options", options);
|
||||
}
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
@@ -493,7 +653,6 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
ticketsMapper.updateById(tickets);
|
||||
Map map = new HashMap();
|
||||
map.put("to_command", 200);
|
||||
map.put("to_message", "");
|
||||
this.writing(map);
|
||||
} else {
|
||||
message = "无请求";
|
||||
@@ -575,7 +734,17 @@ public class CartonLabelingMachineDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
public String toString() {
|
||||
return "";
|
||||
}
|
||||
public static String extractNumberAfterLastLetter(String input) {
|
||||
// 正则表达式:匹配最后一个字母后面的数字
|
||||
Pattern pattern = Pattern.compile("[a-zA-Z]([0-9]+)$");
|
||||
Matcher matcher = pattern.matcher(input);
|
||||
|
||||
if (matcher.find()) {
|
||||
return matcher.group(1); // 返回匹配的数字部分
|
||||
}
|
||||
|
||||
return ""; // 如果没有匹配到数字,返回空字符串
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSONObject getDeviceStatusName() throws Exception {
|
||||
|
||||
@@ -161,7 +161,7 @@ public class PrimaryDeviceConveyorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
int flag;
|
||||
|
||||
String device_code;
|
||||
|
||||
int to_labeling = 0;
|
||||
String vehicle_code;
|
||||
String last_vehicle_code;
|
||||
|
||||
@@ -176,7 +176,7 @@ public class PrimaryDeviceConveyorDeviceDriver extends AbstractOpcDeviceDriver i
|
||||
try {
|
||||
|
||||
mode = this.itemProtocol.getMode();
|
||||
|
||||
to_labeling=itemProtocol.getTo_labeling();
|
||||
if (mode != last_mode) {
|
||||
requireSucess = false;
|
||||
}
|
||||
|
||||
@@ -168,7 +168,7 @@ public class ItemProtocol {
|
||||
list.add(new ItemDto(item_to_command, "下发命令", "DB2.W0"));
|
||||
list.add(new ItemDto(item_to_target, "下发目标站", "DB2.W4"));
|
||||
list.add(new ItemDto(item_to_task, "下发任务号", "DB2.D6"));
|
||||
list.add(new ItemDto(item_to_onset, "下发起始站", "DB2.W2"));
|
||||
list.add(new ItemDto(item_to_onset, "下发起始站", "DB2.W2"));
|
||||
list.add(new ItemDto(item_to_container_type, "下发托盘类型", "DB102.B8"));
|
||||
list.add(new ItemDto(item_to_length, "木箱长度", "DB601.W10"));
|
||||
list.add(new ItemDto(item_to_weight, "木箱宽度", "DB601.W12"));
|
||||
|
||||
@@ -79,4 +79,9 @@ public class MaterialController {
|
||||
public void doExport1(HttpServletResponse response) throws IOException {
|
||||
materialService.doExport1(response);
|
||||
}
|
||||
@Log("导出东磁报表")
|
||||
@GetMapping(value = "/doExport2")
|
||||
public void doExport2(HttpServletResponse response) throws IOException {
|
||||
materialService.doExport2(response);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,4 +54,6 @@ public interface MdBaseMaterialService extends IService<MdBaseMaterial> {
|
||||
void doExport(HttpServletResponse response) throws IOException;
|
||||
|
||||
void doExport1(HttpServletResponse response) throws IOException;
|
||||
|
||||
void doExport2(HttpServletResponse response) throws IOException;
|
||||
}
|
||||
|
||||
@@ -68,6 +68,26 @@ public class MdBaseMaterial {
|
||||
*
|
||||
*/
|
||||
private String carton_number;
|
||||
/**
|
||||
*型号
|
||||
*
|
||||
*/
|
||||
private String model;
|
||||
/**
|
||||
*批号
|
||||
*
|
||||
*/
|
||||
private String batch;
|
||||
/**
|
||||
*物料编码
|
||||
*
|
||||
*/
|
||||
private String material_code;
|
||||
/**
|
||||
*物料名称
|
||||
*
|
||||
*/
|
||||
private String material_number;
|
||||
/**
|
||||
* 纸箱装瓶数量
|
||||
*
|
||||
|
||||
@@ -12,4 +12,6 @@ public interface MdBaseMaterialMapper extends BaseMapper<MdBaseMaterial> {
|
||||
List<MdBaseMaterial> mstwmaterials();
|
||||
//晶科物料信息
|
||||
List<MdBaseMaterial> jkmaterials();
|
||||
//东磁物料信息
|
||||
List<MdBaseMaterial> dcmaterials();
|
||||
}
|
||||
|
||||
@@ -17,4 +17,9 @@
|
||||
FROM `md_base_material`
|
||||
WHERE customer LIKE ('%晶科%')
|
||||
</select>
|
||||
<select id="dcmaterials" resultType="org.nl.system.service.material.dto.MdBaseMaterial">
|
||||
SELECT *
|
||||
FROM `md_base_material`
|
||||
WHERE customer LIKE ('%东磁%')
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -45,6 +45,7 @@ import java.util.regex.Pattern;
|
||||
public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper, MdBaseMaterial> implements MdBaseMaterialService {
|
||||
@Autowired
|
||||
private MdBaseMaterialMapper mdBaseMaterialMapper;
|
||||
|
||||
@Override
|
||||
public IPage<MdBaseMaterial> queryAll(Map whereJson, PageQuery page) {
|
||||
Boolean is_used = ObjectUtil.isNotEmpty(whereJson.get("is_used"))
|
||||
@@ -57,10 +58,10 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
? whereJson.get("actual_batch").toString() : null;
|
||||
String large_model = ObjectUtil.isNotEmpty(whereJson.get("large_model"))
|
||||
? whereJson.get("large_model").toString() : null;
|
||||
String small_model=ObjectUtil.isNotEmpty(whereJson.get("small_model"))
|
||||
? whereJson.get("small_model").toString() :null;
|
||||
String batch_number=ObjectUtil.isNotEmpty(whereJson.get("batch_number"))
|
||||
? whereJson.get("batch_number").toString() :null;
|
||||
String small_model = ObjectUtil.isNotEmpty(whereJson.get("small_model"))
|
||||
? whereJson.get("small_model").toString() : null;
|
||||
String batch_number = ObjectUtil.isNotEmpty(whereJson.get("batch_number"))
|
||||
? whereJson.get("batch_number").toString() : null;
|
||||
LambdaQueryWrapper<MdBaseMaterial> lam = new LambdaQueryWrapper<>();
|
||||
lam.like(ObjectUtil.isNotEmpty(customer), MdBaseMaterial::getCustomer, customer)
|
||||
.eq(ObjectUtil.isNotEmpty(large_model), MdBaseMaterial::getLarge_model, large_model)
|
||||
@@ -73,6 +74,7 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
mdBaseMaterialMapper.selectPage(pages, lam);
|
||||
return pages;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void create(MdBaseMaterial entity) {
|
||||
String nickName = SecurityUtils.getCurrentNickName();
|
||||
@@ -84,6 +86,7 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
entity.setUpdate_time(now);
|
||||
mdBaseMaterialMapper.insert(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(MdBaseMaterial entity) {
|
||||
MdBaseMaterial dto = mdBaseMaterialMapper.selectById(entity.getMaterial_id());
|
||||
@@ -96,11 +99,13 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
entity.setUpdate_time(now);
|
||||
mdBaseMaterialMapper.updateById(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteAll(Set<String> ids) {
|
||||
// 真删除
|
||||
mdBaseMaterialMapper.deleteBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void excelImport(MultipartFile file, HttpServletRequest request) {
|
||||
@@ -129,119 +134,207 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
List list = read.get(i);
|
||||
JSONObject param = new JSONObject();
|
||||
String customer = list.get(1).toString();
|
||||
if(StrUtil.isBlank(customer)){
|
||||
String production_materials = null;
|
||||
String actual_batch = null;
|
||||
String inventory_qty = null;
|
||||
String large_model = null;
|
||||
String small_model = null;
|
||||
String product_qty = null;
|
||||
String batch_number = null;
|
||||
String weight = null;
|
||||
String remark = null;
|
||||
String material_code = null;
|
||||
String material_number = null;
|
||||
if (StrUtil.isBlank(customer)) {
|
||||
continue;
|
||||
}
|
||||
String production_materials = list.get(2).toString();
|
||||
String actual_batch = list.get(3).toString();
|
||||
String inventory_qty=list.get(4).toString();
|
||||
String product_qty=list.get(5).toString();
|
||||
String large_model = list.get(9).toString();
|
||||
String small_model = list.get(10).toString();
|
||||
String batch_number = list.get(11).toString();
|
||||
String weight = list.get(12).toString();
|
||||
String remark = list.get(14).toString();
|
||||
String bottle_number=null;
|
||||
String carton_number=null;
|
||||
String shdnumber=list.get(17).toString();;
|
||||
try {
|
||||
bottle_number = list.get(18).toString();
|
||||
}catch (Exception var17){
|
||||
throw new BadRequestException("当前客户"+list.get(1).toString()+"所在行瓶盖号为空");
|
||||
production_materials = list.get(2).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行实发型号为空");
|
||||
}
|
||||
try {
|
||||
carton_number = list.get(19).toString();
|
||||
}catch (Exception var17){
|
||||
throw new BadRequestException("当前客户"+list.get(1).toString()+"所在行纸箱号为空");
|
||||
actual_batch = list.get(3).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行实发批次为空");
|
||||
}
|
||||
String carton_qty=list.get(21).toString();
|
||||
String sum_qty=list.get(20).toString();
|
||||
MdBaseMaterial mdBaseMaterial=new MdBaseMaterial();
|
||||
try {
|
||||
inventory_qty = list.get(4).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行库存数量为空");
|
||||
}
|
||||
try {
|
||||
product_qty = list.get(5).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行当天生产为空");
|
||||
}
|
||||
try {
|
||||
large_model = list.get(9).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行大型号为空");
|
||||
}
|
||||
try {
|
||||
small_model = list.get(10).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行小型号为空");
|
||||
}
|
||||
try {
|
||||
batch_number = list.get(11).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行标签批次号为空");
|
||||
}
|
||||
try {
|
||||
weight = list.get(12).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行重量/KG为空");
|
||||
}
|
||||
try {
|
||||
remark = list.get(14).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行备注为空");
|
||||
}
|
||||
String bottle_number = null;
|
||||
String carton_number = null;
|
||||
try {
|
||||
material_code = list.get(15).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行物料编码为空");
|
||||
}
|
||||
try {
|
||||
material_number = list.get(16).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行物料名称为空");
|
||||
}
|
||||
String model = null;
|
||||
String batch = null;
|
||||
String shdnumber= null;
|
||||
String sum_qty= null;
|
||||
String carton_qty= null;
|
||||
try {
|
||||
shdnumber = list.get(17).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行送货单单号为空");
|
||||
}
|
||||
try {
|
||||
bottle_number = list.get(18).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行瓶盖号为空");
|
||||
}
|
||||
try {
|
||||
carton_number = list.get(19).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行纸箱号为空");
|
||||
}
|
||||
try {
|
||||
carton_qty = list.get(21).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行总罐数为空");
|
||||
}
|
||||
try {
|
||||
sum_qty = list.get(20).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行箱内罐数为空");
|
||||
}
|
||||
try {
|
||||
model = list.get(22).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行型号为空");
|
||||
}
|
||||
try {
|
||||
batch = list.get(23).toString();
|
||||
} catch (Exception var17) {
|
||||
throw new BadRequestException("当前客户" + list.get(1).toString() + "所在行批号为空");
|
||||
}
|
||||
MdBaseMaterial mdBaseMaterial = new MdBaseMaterial();
|
||||
// mdBaseMaterial=mdBaseMaterialMapper.isbatch(batch_number,actual_batch);
|
||||
// if(mdBaseMaterial!=null){
|
||||
// continue;
|
||||
// }
|
||||
param.put("material_id", IdUtil.getSnowflake(1, 1).nextId());
|
||||
param.put("customer",customer);
|
||||
param.put("production_materials",production_materials);
|
||||
param.put("actual_batch",actual_batch);
|
||||
param.put("inventory_qty",inventory_qty);
|
||||
param.put("product_qty",product_qty);
|
||||
param.put("large_model",large_model);
|
||||
param.put("small_model",small_model);
|
||||
param.put("batch_number",batch_number);
|
||||
param.put("weight",weight);
|
||||
param.put("remark",remark);
|
||||
param.put("shdnumber",shdnumber);
|
||||
param.put("bottle_number",bottle_number);
|
||||
param.put("carton_number",carton_number);
|
||||
param.put("carton_qty",carton_qty);
|
||||
param.put("sum_qty",sum_qty);
|
||||
param.put("customer", customer);
|
||||
param.put("production_materials", production_materials);
|
||||
param.put("actual_batch", actual_batch);
|
||||
param.put("inventory_qty", inventory_qty);
|
||||
param.put("product_qty", product_qty);
|
||||
param.put("large_model", large_model);
|
||||
param.put("small_model", small_model);
|
||||
param.put("batch_number", batch_number);
|
||||
param.put("weight", weight);
|
||||
param.put("remark", remark);
|
||||
param.put("shdnumber", shdnumber);
|
||||
param.put("bottle_number", bottle_number);
|
||||
param.put("carton_number", carton_number);
|
||||
param.put("carton_qty", carton_qty);
|
||||
param.put("sum_qty", sum_qty);
|
||||
param.put("model", model);
|
||||
param.put("batch", batch);
|
||||
param.put("material_code", material_code);
|
||||
param.put("material_number", material_number);
|
||||
MdBaseMaterial entity = ConvertUtil.convert(param, MdBaseMaterial.class);
|
||||
mdBaseMaterialMapper.insert(entity);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void doExport(HttpServletResponse response) throws IOException {
|
||||
List<MdBaseMaterial> mstwmaterials=mdBaseMaterialMapper.mstwmaterials();
|
||||
List<MdBaseMaterial> mstwmaterials = mdBaseMaterialMapper.mstwmaterials();
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for(MdBaseMaterial MdBaseMaterial:mstwmaterials){
|
||||
for (MdBaseMaterial MdBaseMaterial : mstwmaterials) {
|
||||
//该批次数量
|
||||
Integer pznum=Integer.parseInt(MdBaseMaterial.getSum_qty());
|
||||
if(pznum==0){
|
||||
Integer pznum = Integer.parseInt(MdBaseMaterial.getSum_qty());
|
||||
if (pznum == 0) {
|
||||
continue;
|
||||
}
|
||||
Integer carton_qty=Integer.parseInt(MdBaseMaterial.getCarton_qty());
|
||||
Integer real_carton_qty=0;
|
||||
Integer real_carton_number=0;//当前箱号
|
||||
Integer carton_qty = Integer.parseInt(MdBaseMaterial.getCarton_qty());
|
||||
Integer real_carton_qty = 0;
|
||||
Integer real_carton_number = 0;//当前箱号
|
||||
// Integer zxnumber=pznum/carton_qty;
|
||||
String bottle_number=MdBaseMaterial.getBottle_number();
|
||||
String carton_number=MdBaseMaterial.getCarton_number();
|
||||
String large_model=MdBaseMaterial.getLarge_model();
|
||||
String small_model=MdBaseMaterial.getSmall_model();
|
||||
String batch_number=MdBaseMaterial.getBatch_number();
|
||||
Integer weishu=MdBaseMaterial.getSum_qty().length();
|
||||
String psletters = bottle_number.substring(0,4);
|
||||
String psdigits = bottle_number.substring(4,15);
|
||||
String year=bottle_number.substring(3,5);
|
||||
String month=bottle_number.substring(5,7);
|
||||
String day=bottle_number.substring(7,9);
|
||||
String bottle_number = MdBaseMaterial.getBottle_number();
|
||||
String carton_number = MdBaseMaterial.getCarton_number();
|
||||
String large_model = MdBaseMaterial.getLarge_model();
|
||||
String small_model = MdBaseMaterial.getSmall_model();
|
||||
String batch_number = MdBaseMaterial.getBatch_number();
|
||||
Integer weishu = MdBaseMaterial.getSum_qty().length();
|
||||
String psletters = bottle_number.substring(0, 4);
|
||||
String psdigits = bottle_number.substring(4, 15);
|
||||
String year = bottle_number.substring(3, 5);
|
||||
String month = bottle_number.substring(5, 7);
|
||||
String day = bottle_number.substring(7, 9);
|
||||
String zxletters = carton_number.replaceAll("\\d+$", ""); // 匹配并去掉末尾的数字
|
||||
String zxdigits = extractNumberAfterLastLetter(carton_number); // 匹配并取出末尾的数字部分
|
||||
//总纸箱数
|
||||
Integer sum_carton1 = (pznum+carton_qty-1)/carton_qty;
|
||||
for(int i=0;i<pznum;i++){
|
||||
Integer sum_carton1 = (pznum + carton_qty - 1) / carton_qty;
|
||||
for (int i = 0; i < pznum; i++) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
if(real_carton_qty<carton_qty){
|
||||
if (real_carton_qty < carton_qty) {
|
||||
real_carton_qty++;
|
||||
}else{
|
||||
real_carton_qty=1;
|
||||
} else {
|
||||
real_carton_qty = 1;
|
||||
real_carton_number++;
|
||||
}
|
||||
Integer real_zxdigits2= Integer.parseInt(zxdigits)+real_carton_number;
|
||||
Integer real_zxdigits= Integer.parseInt(zxdigits)+real_carton_number-sum_carton1+1;
|
||||
String real_zxdigits1=null;
|
||||
if(real_zxdigits<=9){
|
||||
real_zxdigits1="0"+String.valueOf(real_zxdigits);
|
||||
}else{
|
||||
real_zxdigits1=String.valueOf(real_zxdigits);
|
||||
Integer real_zxdigits = Integer.parseInt(zxdigits) + real_carton_number - sum_carton1 + 1;
|
||||
String real_zxdigits1 = null;
|
||||
if (real_zxdigits <= 9) {
|
||||
real_zxdigits1 = "0" + String.valueOf(real_zxdigits);
|
||||
} else {
|
||||
real_zxdigits1 = String.valueOf(real_zxdigits);
|
||||
}
|
||||
map.put("箱号",zxletters+real_zxdigits1);
|
||||
map.put("箱号", zxletters + real_zxdigits1);
|
||||
// Integer real_psdigits=Integer.parseInt(psdigits)+i-pznum+1;
|
||||
Long real_psdigits=Long.valueOf(psdigits)+i-pznum+1;
|
||||
map.put("单枚号/瓶号/包号",psletters+real_psdigits);
|
||||
map.put("规格型号",large_model+"-"+small_model);
|
||||
map.put("批号",small_model+"-"+batch_number);
|
||||
map.put("数量","2");
|
||||
map.put("供应商","帝科");
|
||||
map.put("生产日期(yyyy/MM/dd)","20"+year+"/"+month+"/"+day);
|
||||
Integer month1=Integer.parseInt(month);
|
||||
month1=month1+6;
|
||||
if(month1>12){
|
||||
month1=month1-12;
|
||||
Long real_psdigits = Long.valueOf(psdigits) + i - pznum + 1;
|
||||
map.put("单枚号/瓶号/包号", psletters + real_psdigits);
|
||||
map.put("规格型号", large_model + "-" + small_model);
|
||||
map.put("批号", small_model + "-" + batch_number);
|
||||
map.put("数量", "2");
|
||||
map.put("供应商", "帝科");
|
||||
map.put("生产日期(yyyy/MM/dd)", "20" + year + "/" + month + "/" + day);
|
||||
Integer month1 = Integer.parseInt(month);
|
||||
month1 = month1 + 6;
|
||||
if (month1 > 12) {
|
||||
month1 = month1 - 12;
|
||||
}
|
||||
map.put("有效日期(yyyy/MM/dd)","20"+year+"/"+month+"/"+day);
|
||||
map.put("有效日期(yyyy/MM/dd)", "20" + year + "/" + month + "/" + day);
|
||||
// 获取当前日期
|
||||
LocalDate currentDate1 = LocalDate.now();
|
||||
|
||||
@@ -250,101 +343,102 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
|
||||
// 格式化当前日期
|
||||
String formattedDate = currentDate1.format(formatter);
|
||||
map.put("发货日期(yyyy/MM/dd)",formattedDate);
|
||||
map.put("发货日期(yyyy/MM/dd)", formattedDate);
|
||||
list.add(map);
|
||||
}
|
||||
}
|
||||
FileUtil.downloadExcel(list, response);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void doExport1(HttpServletResponse response) throws IOException {
|
||||
List<MdBaseMaterial> jkmaterials=mdBaseMaterialMapper.jkmaterials();
|
||||
List<MdBaseMaterial> jkmaterials = mdBaseMaterialMapper.jkmaterials();
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for(MdBaseMaterial MdBaseMaterial:jkmaterials){
|
||||
Integer pzweight=Integer.parseInt(MdBaseMaterial.getWeight());
|
||||
Integer pznum=Integer.parseInt(MdBaseMaterial.getSum_qty());
|
||||
if(pznum==0){
|
||||
for (MdBaseMaterial MdBaseMaterial : jkmaterials) {
|
||||
Integer pzweight = Integer.parseInt(MdBaseMaterial.getWeight());
|
||||
Integer pznum = Integer.parseInt(MdBaseMaterial.getSum_qty());
|
||||
if (pznum == 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
Integer carton_qty=Integer.parseInt(MdBaseMaterial.getCarton_qty());
|
||||
Integer real_carton_qty=0;
|
||||
Integer real_carton_number=0;//当前箱号
|
||||
Integer carton_qty = Integer.parseInt(MdBaseMaterial.getCarton_qty());
|
||||
Integer real_carton_qty = 0;
|
||||
Integer real_carton_number = 0;//当前箱号
|
||||
//单重
|
||||
Integer wt=0;
|
||||
Integer wt = 0;
|
||||
//整箱总重
|
||||
Integer wtsum=0;
|
||||
if(pzweight.equals(pznum)){
|
||||
wt=1;
|
||||
wtsum=wt*carton_qty;
|
||||
}else{
|
||||
wt=2;
|
||||
wtsum=wt*carton_qty;
|
||||
Integer wtsum = 0;
|
||||
if (pzweight.equals(pznum)) {
|
||||
wt = 1;
|
||||
wtsum = wt * carton_qty;
|
||||
} else {
|
||||
wt = 2;
|
||||
wtsum = wt * carton_qty;
|
||||
}
|
||||
// Integer zxnumber=pznum/carton_qty;
|
||||
String bottle_number=MdBaseMaterial.getBottle_number();
|
||||
String carton_number=MdBaseMaterial.getCarton_number();
|
||||
String large_model=MdBaseMaterial.getLarge_model();
|
||||
String small_model=MdBaseMaterial.getSmall_model();
|
||||
String batch_number=MdBaseMaterial.getBatch_number();
|
||||
String customer=MdBaseMaterial.getCustomer();
|
||||
String psletters = bottle_number.substring(0,20);
|
||||
String psdigits = bottle_number.substring(20,23);
|
||||
String zxletters = carton_number.substring(0,18);
|
||||
String zx1 = carton_number.substring(18,20);
|
||||
String zx2 = carton_number.substring(20,23);
|
||||
String zxdigits = carton_number.substring(23,33);
|
||||
String bottle_number = MdBaseMaterial.getBottle_number();
|
||||
String carton_number = MdBaseMaterial.getCarton_number();
|
||||
String large_model = MdBaseMaterial.getLarge_model();
|
||||
String small_model = MdBaseMaterial.getSmall_model();
|
||||
String batch_number = MdBaseMaterial.getBatch_number();
|
||||
String customer = MdBaseMaterial.getCustomer();
|
||||
String psletters = bottle_number.substring(0, 20);
|
||||
String psdigits = bottle_number.substring(20, 23);
|
||||
String zxletters = carton_number.substring(0, 18);
|
||||
String zx1 = carton_number.substring(18, 20);
|
||||
String zx2 = carton_number.substring(20, 23);
|
||||
String zxdigits = carton_number.substring(23, 33);
|
||||
//总纸箱数
|
||||
Integer sum_carton1 = (pznum+carton_qty-1)/carton_qty;
|
||||
for(int i=0;i<pznum;i++){
|
||||
Integer sum_carton1 = (pznum + carton_qty - 1) / carton_qty;
|
||||
for (int i = 0; i < pznum; i++) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
if(real_carton_qty<carton_qty){
|
||||
if (real_carton_qty < carton_qty) {
|
||||
real_carton_qty++;
|
||||
}else{
|
||||
real_carton_qty=1;
|
||||
} else {
|
||||
real_carton_qty = 1;
|
||||
real_carton_number++;
|
||||
}
|
||||
Long real_zxdigits= Long.valueOf(zxdigits)+real_carton_number-sum_carton1+1;
|
||||
String real_zxdigits1=String.valueOf(real_zxdigits);
|
||||
if(i>(sum_carton1-1)*carton_qty-1) {
|
||||
map.put("托号(必填)", zxletters + zx1+zx2+real_zxdigits1);
|
||||
map.put("箱号(必填)", zxletters + zx1+zx2+real_zxdigits1);
|
||||
}else {
|
||||
if(wtsum>9) {
|
||||
Long real_zxdigits = Long.valueOf(zxdigits) + real_carton_number - sum_carton1 + 1;
|
||||
String real_zxdigits1 = String.valueOf(real_zxdigits);
|
||||
if (i > (sum_carton1 - 1) * carton_qty - 1) {
|
||||
map.put("托号(必填)", zxletters + zx1 + zx2 + real_zxdigits1);
|
||||
map.put("箱号(必填)", zxletters + zx1 + zx2 + real_zxdigits1);
|
||||
} else {
|
||||
if (wtsum > 9) {
|
||||
map.put("托号(必填)", zxletters + wtsum + zx2 + real_zxdigits1);
|
||||
map.put("箱号(必填)", zxletters + wtsum + zx2 + real_zxdigits1);
|
||||
}else{
|
||||
map.put("托号(必填)", zxletters + "0" + wtsum + zx2 + real_zxdigits1);
|
||||
map.put("箱号(必填)", zxletters + "0" + wtsum + zx2 + real_zxdigits1);
|
||||
}
|
||||
}
|
||||
Integer real_psdigits=Integer.parseInt(psdigits)+i-pznum+1;
|
||||
if(real_psdigits>=100){
|
||||
map.put("包号(选填)",psletters+real_psdigits);
|
||||
} else if(real_psdigits>=10){
|
||||
map.put("包号(选填)",psletters+"0"+real_psdigits);
|
||||
}else if(real_psdigits>0){
|
||||
map.put("包号(选填)",psletters+"00"+real_psdigits);
|
||||
}
|
||||
if(wt==1){
|
||||
map.put("包实装货物数","1");
|
||||
}else if(wt==2){
|
||||
if(i==pznum-1&&pzweight % 2 == 1 ){
|
||||
map.put("包实装货物数","1");
|
||||
}
|
||||
else{
|
||||
map.put("包实装货物数","2");
|
||||
} else {
|
||||
map.put("托号(必填)", zxletters + "0" + wtsum + zx2 + real_zxdigits1);
|
||||
map.put("箱号(必填)", zxletters + "0" + wtsum + zx2 + real_zxdigits1);
|
||||
}
|
||||
}
|
||||
map.put("批号",small_model+"-"+batch_number);
|
||||
map.put("发运数量",String.valueOf(pzweight));
|
||||
map.put("客户",customer);
|
||||
Integer real_psdigits = Integer.parseInt(psdigits) + i - pznum + 1;
|
||||
if (real_psdigits >= 100) {
|
||||
map.put("包号(选填)", psletters + real_psdigits);
|
||||
} else if (real_psdigits >= 10) {
|
||||
map.put("包号(选填)", psletters + "0" + real_psdigits);
|
||||
} else if (real_psdigits > 0) {
|
||||
map.put("包号(选填)", psletters + "00" + real_psdigits);
|
||||
}
|
||||
if (wt == 1) {
|
||||
map.put("包实装货物数", "1");
|
||||
} else if (wt == 2) {
|
||||
if (i == pznum - 1 && pzweight % 2 == 1) {
|
||||
map.put("包实装货物数", "1");
|
||||
} else {
|
||||
map.put("包实装货物数", "2");
|
||||
}
|
||||
}
|
||||
map.put("批号", small_model + "-" + batch_number);
|
||||
map.put("发运数量", String.valueOf(pzweight));
|
||||
map.put("客户", customer);
|
||||
list.add(map);
|
||||
}
|
||||
}
|
||||
FileUtil.downloadExcel(list, response);
|
||||
}
|
||||
|
||||
public static String extractNumberAfterLastLetter(String input) {
|
||||
// 正则表达式:匹配最后一个字母后面的数字
|
||||
Pattern pattern = Pattern.compile("[a-zA-Z]([0-9]+)$");
|
||||
@@ -356,4 +450,74 @@ public class MdBaseMaterialServiceImpl extends ServiceImpl<MdBaseMaterialMapper,
|
||||
|
||||
return ""; // 如果没有匹配到数字,返回空字符串
|
||||
}
|
||||
|
||||
@Override
|
||||
public void doExport2(HttpServletResponse response) throws IOException {
|
||||
List<MdBaseMaterial> dcmaterials = mdBaseMaterialMapper.dcmaterials();
|
||||
LocalDate currentDate = LocalDate.now();
|
||||
List<Map<String, Object>> list = new ArrayList<>();
|
||||
for (MdBaseMaterial MdBaseMaterial : dcmaterials) {
|
||||
Integer pzweight = Integer.parseInt(MdBaseMaterial.getWeight());
|
||||
Integer pznum = Integer.parseInt(MdBaseMaterial.getSum_qty());
|
||||
//物料编码
|
||||
String material_code = MdBaseMaterial.getMaterial_code();
|
||||
//物料描述
|
||||
String material_number = MdBaseMaterial.getMaterial_number();
|
||||
//箱号
|
||||
String carton_number = MdBaseMaterial.getCarton_number();
|
||||
String zxletters = carton_number.replaceAll("\\d+$", ""); // 匹配并去掉末尾的数字
|
||||
String zxdigits = extractNumberAfterLastLetter(carton_number); // 匹配并取出末尾的数字部分
|
||||
if (pznum == 0) {
|
||||
continue;
|
||||
}
|
||||
Integer carton_qty = Integer.parseInt(MdBaseMaterial.getCarton_qty());
|
||||
String bottle_number = MdBaseMaterial.getBottle_number();
|
||||
Long bottle_number1 = Long.valueOf(bottle_number);
|
||||
//单重
|
||||
Integer wt = 0;
|
||||
//整箱总重
|
||||
Integer wtsum = 0;
|
||||
//总纸箱数
|
||||
Integer sum_carton1 = (pznum + carton_qty - 1) / carton_qty;
|
||||
//最后一箱瓶数量
|
||||
Integer last_carton_number = pznum - (sum_carton1 - 1) * carton_qty;
|
||||
Integer real_carton_qty = 0;
|
||||
//当前箱号
|
||||
Integer real_carton_number = 0;
|
||||
if (pzweight.equals(pznum)) {
|
||||
wt = 1;
|
||||
wtsum = wt * carton_qty;
|
||||
} else {
|
||||
wt = 2;
|
||||
wtsum = wt * carton_qty;
|
||||
}
|
||||
for (int i = 0; i < pznum; i++) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
if (real_carton_qty < carton_qty) {
|
||||
real_carton_qty++;
|
||||
} else {
|
||||
real_carton_qty = 1;
|
||||
real_carton_number++;
|
||||
}
|
||||
Integer real_zxdigits = Integer.parseInt(zxdigits) + real_carton_number - sum_carton1 + 1;
|
||||
String real_zxdigits1 = null;
|
||||
if (real_zxdigits <= 9) {
|
||||
real_zxdigits1 = "0" + String.valueOf(real_zxdigits);
|
||||
} else {
|
||||
real_zxdigits1 = String.valueOf(real_zxdigits);
|
||||
}
|
||||
map.put("物料编码", material_code);
|
||||
map.put("物料描述", material_number);
|
||||
map.put("箱号", zxletters + real_zxdigits1);
|
||||
map.put("罐子编码", String.valueOf(bottle_number1 - pznum + i + 1));
|
||||
if (real_carton_number + 1 == sum_carton1) {
|
||||
map.put("数量", last_carton_number * wt);
|
||||
} else {
|
||||
map.put("数量", carton_qty * wt);
|
||||
}
|
||||
list.add(map);
|
||||
}
|
||||
}
|
||||
FileUtil.downloadExcel(list, response);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,7 +121,22 @@ public class Tickets {
|
||||
* 纸箱类型
|
||||
*/
|
||||
private String carton_form;
|
||||
|
||||
/**
|
||||
* 型号
|
||||
*/
|
||||
private String model;
|
||||
/**
|
||||
* 批号
|
||||
*/
|
||||
private String batch;
|
||||
/**
|
||||
* 物料编码
|
||||
*/
|
||||
private String material_code;
|
||||
/**
|
||||
* 物料名称
|
||||
*/
|
||||
private String material_number;
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
|
||||
@@ -105,6 +105,9 @@ public class TicketsServiceImpl extends ServiceImpl<TicketsMapper, Tickets> impl
|
||||
if(!StrUtil.isNotBlank(planned_quantity)){
|
||||
throw new BadRequestException("未填写计划数量");
|
||||
}
|
||||
if(!StrUtil.isNotBlank(bottle_weight)){
|
||||
throw new BadRequestException("未填每罐重量");
|
||||
}
|
||||
if(!StrUtil.isNotBlank(carton_board)){
|
||||
throw new BadRequestException("未填写纸箱关联标签模板");
|
||||
}
|
||||
@@ -118,9 +121,7 @@ public class TicketsServiceImpl extends ServiceImpl<TicketsMapper, Tickets> impl
|
||||
if(carton_number.length()!=33){
|
||||
throw new BadRequestException("纸箱号不对");
|
||||
}
|
||||
if(!StrUtil.isNotBlank(bottle_weight)){
|
||||
throw new BadRequestException("未填晶科每罐重量");
|
||||
}if(!StrUtil.isNotBlank(shdnumber)){
|
||||
if(!StrUtil.isNotBlank(shdnumber)){
|
||||
throw new BadRequestException("未填送货单");
|
||||
}
|
||||
|
||||
@@ -156,10 +157,13 @@ public class TicketsServiceImpl extends ServiceImpl<TicketsMapper, Tickets> impl
|
||||
Device device = deviceAppService.findDeviceByCode("ZPLC");
|
||||
if(device.getDeviceDriver() instanceof PrimaryDeviceConveyorDeviceDriver) {
|
||||
PrimaryDeviceConveyorDeviceDriver primary = (PrimaryDeviceConveyorDeviceDriver) device.getDeviceDriver();
|
||||
Integer number=Integer.parseInt(entity.getCarton_qty());
|
||||
if(primary.getTo_labeling()!=number){
|
||||
throw new BadRequestException("当前所下发工单每箱数量数据不对");
|
||||
}
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("to_order_No", entity.getTicket_id());
|
||||
map.put("to_ice",entity.getIs_ice());
|
||||
map.put("to_labeling",entity.getCarton_qty());
|
||||
map.put("to_qty",entity.getPlanned_quantity());
|
||||
if(StrUtil.isBlank(entity.getBottle_board())){
|
||||
map.put("is_printbottle",0);
|
||||
|
||||
Reference in New Issue
Block a user