|
@@ -474,7 +474,7 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
@AutoLog(value = "发运明细主表-导出")
|
|
|
@ApiOperation(value="发运明细主表-导出", notes="发运明细主表-导出")
|
|
|
@GetMapping(value = "/exportXls")
|
|
|
- public Result<String> exportXls(SyShippingDetailsVo syShippingDetails,
|
|
|
+ public Result<String> exportXls(SyShippingDetailsVo syShippingDetails,String selectAll,String groupidList,
|
|
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
|
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
|
|
HttpServletResponse req) {
|
|
@@ -485,64 +485,76 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
|
|
|
QueryWrapper<SyShippingDetailsVo> queryWrapper = new QueryWrapper<>();
|
|
|
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getDocumentNo())){
|
|
|
- queryWrapper.like("t.documentNo",syShippingDetails.getDocumentNo());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getOrderNumber())){
|
|
|
- queryWrapper.like("t.orderNumber",syShippingDetails.getOrderNumber());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getStartTime())){
|
|
|
- queryWrapper.ge("t.documentDate",syShippingDetails.getStartTime());
|
|
|
- queryWrapper.le("t.documentDate",syShippingDetails.getEndTime());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getPreDeliveryDateB())){
|
|
|
- queryWrapper.ge("t.preDeliveryDate",syShippingDetails.getPreDeliveryDateB());
|
|
|
- queryWrapper.le("t.preDeliveryDate",syShippingDetails.getPreDeliveryDateE());
|
|
|
- }
|
|
|
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getSalesman())){
|
|
|
- queryWrapper.like("t.salesman",syShippingDetails.getSalesman());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getItemNumber())){
|
|
|
- queryWrapper.like("t.itemNumber",syShippingDetails.getItemNumber());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getRefer())){
|
|
|
- queryWrapper.eq("t.isReference",syShippingDetails.getRefer());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getSupplier())){
|
|
|
- queryWrapper.like("t.supplier",syShippingDetails.getSupplier());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getIsElement())){
|
|
|
- if(syShippingDetails.getIsElement().equals("0")){//没有维护
|
|
|
- queryWrapper.isNull("t.elementsId");
|
|
|
- }else{
|
|
|
- queryWrapper.isNotNull("t.elementsId");
|
|
|
+ if(selectAll.equals("1")) {
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getDocumentNo())) {
|
|
|
+ queryWrapper.like("t.documentNo", syShippingDetails.getDocumentNo());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getOrderNumber())) {
|
|
|
+ queryWrapper.like("t.orderNumber", syShippingDetails.getOrderNumber());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getStartTime())) {
|
|
|
+ queryWrapper.ge("t.documentDate", syShippingDetails.getStartTime());
|
|
|
+ queryWrapper.le("t.documentDate", syShippingDetails.getEndTime());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getPreDeliveryDateB())) {
|
|
|
+ queryWrapper.ge("t.preDeliveryDate", syShippingDetails.getPreDeliveryDateB());
|
|
|
+ queryWrapper.le("t.preDeliveryDate", syShippingDetails.getPreDeliveryDateE());
|
|
|
}
|
|
|
|
|
|
- }
|
|
|
- //分销点
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getDistributionPoint())){
|
|
|
- queryWrapper.like("t.distributionPoint",syShippingDetails.getDistributionPoint());
|
|
|
- }
|
|
|
- //客户
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getCustomerAbbreviation())){
|
|
|
- queryWrapper.like("t.customerAbbreviation",syShippingDetails.getCustomerAbbreviation());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getSubmitStatus())){
|
|
|
- queryWrapper.eq("t.submitStatus",syShippingDetails.getSubmitStatus());
|
|
|
- }
|
|
|
- //账套号
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getAccount())){
|
|
|
- queryWrapper.like("t.account",syShippingDetails.getAccount());
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getId())){
|
|
|
- queryWrapper.like("t.id",syShippingDetails.getId());
|
|
|
- }
|
|
|
- //小po
|
|
|
- if(oConvertUtils.isNotEmpty(syShippingDetails.getSmallPo())){
|
|
|
- String[] smllSplit = syShippingDetails.getSmallPo().split(",");
|
|
|
- List<String> asList = Arrays.asList(smllSplit);
|
|
|
- queryWrapper.in("t.smallPo",asList);
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getSalesman())) {
|
|
|
+ queryWrapper.like("t.salesman", syShippingDetails.getSalesman());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getItemNumber())) {
|
|
|
+ queryWrapper.like("t.itemNumber", syShippingDetails.getItemNumber());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getRefer())) {
|
|
|
+ queryWrapper.eq("t.isReference", syShippingDetails.getRefer());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getSupplier())) {
|
|
|
+ queryWrapper.like("t.supplier", syShippingDetails.getSupplier());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getIsElement())) {
|
|
|
+ if (syShippingDetails.getIsElement().equals("0")) {//没有维护
|
|
|
+ queryWrapper.isNull("t.elementsId");
|
|
|
+ } else {
|
|
|
+ queryWrapper.isNotNull("t.elementsId");
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ //分销点
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getDistributionPoint())) {
|
|
|
+ queryWrapper.like("t.distributionPoint", syShippingDetails.getDistributionPoint());
|
|
|
+ }
|
|
|
+ //客户
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getCustomerAbbreviation())) {
|
|
|
+ queryWrapper.like("t.customerAbbreviation", syShippingDetails.getCustomerAbbreviation());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getSubmitStatus())) {
|
|
|
+ queryWrapper.eq("t.submitStatus", syShippingDetails.getSubmitStatus());
|
|
|
+ }
|
|
|
+ //账套号
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getAccount())) {
|
|
|
+ queryWrapper.like("t.account", syShippingDetails.getAccount());
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getId())) {
|
|
|
+ queryWrapper.like("t.id", syShippingDetails.getId());
|
|
|
+ }
|
|
|
+ //小po
|
|
|
+ if (oConvertUtils.isNotEmpty(syShippingDetails.getSmallPo())) {
|
|
|
+ String[] smllSplit = syShippingDetails.getSmallPo().split(",");
|
|
|
+ List<String> asList = Arrays.asList(smllSplit);
|
|
|
+ queryWrapper.in("t.smallPo", asList);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+
|
|
|
+ List<String> strList = new ArrayList<>();
|
|
|
+ String groupidSplit[] =groupidList.split(",");
|
|
|
+ for(String str : groupidSplit){
|
|
|
+ strList.add(str);
|
|
|
+ }
|
|
|
+ queryWrapper.in("t.groupId",strList);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
try {
|
|
@@ -631,6 +643,7 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
|
|
|
|
|
|
}else{//成衣
|
|
|
+ // queryWrapper.orderByAsc("t.itemNumber,t.distributionPoint");
|
|
|
IPage<SyShippingDetailsVo> pageList = syShippingDetailsService.queryShippingDetails(page, queryWrapper);
|
|
|
|
|
|
if(pageList.getRecords().size()==0){
|
|
@@ -713,16 +726,16 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
builder1.deleteCharAt(builder1.length()-1);
|
|
|
//创建列名放在第一行
|
|
|
String[] params = null;
|
|
|
- if(oConvertUtils.isEmpty(syShippingDetails.getAccount())){
|
|
|
- result.setSuccess(false);
|
|
|
- result.setResult("导出失败!请选择账套号");
|
|
|
- result.setMessage("导出失败!请选择账套号");
|
|
|
- return result;
|
|
|
- }
|
|
|
- if(syShippingDetails.getAccount().equals("101")){
|
|
|
- params = ("成衣工厂*STYLE*PO NO.*分销点*CTN NO. FROM*CTN NO. TO*item NO./SKU NO./UPC NO./PACKS CODE*PREACKSKU*" + builder + "COLOUR*计划装箱数量*N.W/CTN*G.W/CTN*L(CM)*W(CM)*H(CM)*BUYER*配码规格*TTL CTNS*TTL PCS*TTL N.W*TTL G.W*TTL CBM*发运明细子表ID*发运明细分组ID*发运明细主表ID*申报要素ID").split("\\*");
|
|
|
+// if(oConvertUtils.isEmpty(syShippingDetails.getAccount())){
|
|
|
+// result.setSuccess(false);
|
|
|
+// result.setResult("导出失败!请选择账套号");
|
|
|
+// result.setMessage("导出失败!请选择账套号");
|
|
|
+// return result;
|
|
|
+// }
|
|
|
+ if(syPreList.get(index).getAccount().equals("101")){
|
|
|
+ params = ("成衣工厂*STYLE*PO NO.*分销点*CTN NO. FROM*CTN NO. TO*item NO./SKU NO./UPC NO./PACKS CODE*PREACKSKU*" + builder + "PCS/PACK*COLOUR*计划装箱数量*N.W/CTN*G.W/CTN*L(CM)*W(CM)*H(CM)*BUYER*配码规格*PACKS/CTN*PCS/CTN*PACK QTY*TTL CTNS*TTL PCS*TTL N.W*TTL G.W*TTL CBM*发运明细子表ID*发运明细分组ID*发运明细主表ID*申报要素ID").split("\\*");
|
|
|
}else {
|
|
|
- params = ("成衣工厂*款号*小po*分销点*起始箱号*结束箱号*item NO./SKU NO./UPC NO./PACKS CODE*PREACKSKU*" + builder + "颜色*计划装箱数量*净重/箱*毛重/箱*外箱长度*外箱宽度*外箱高度*客户简称*配码规格*箱数*总件数*总净重*总毛重*总体积*发运明细子表ID*发运明细分组ID*发运明细主表ID*申报要素ID").split("\\*");
|
|
|
+ params = ("成衣工厂*款号*小po*分销点*起始箱号*结束箱号*item NO./SKU NO./UPC NO./PACKS CODE*PREACKSKU*" + builder + "件数/包*颜色*计划装箱数量*净重/箱*毛重/箱*长*宽*高*客户简称*配码规格*包数/箱*件数/箱*包数*箱数*总件数*总净重*总毛重*总体积*发运明细子表ID*发运明细分组ID*发运明细主表ID*申报要素ID").split("\\*");
|
|
|
}
|
|
|
String[] params1 =syPreList.get(index).toString(builder.toString(),builder1.toString()).split("\\*");
|
|
|
String[] params2= {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","AA","AB","AC","AD","AE","AF","AG","AH","AI","AJ","AK","AL","AM","AN","AO","AP","AQ","AR","AS","AT","AU","AV","AW","AX","AY","AZ"};
|
|
@@ -735,6 +748,7 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
String wide = "";
|
|
|
String heigt = "";
|
|
|
String sunBox = "";
|
|
|
+ String pcspack = "";//件数/每包
|
|
|
|
|
|
Row row1 = sheet.createRow(0);
|
|
|
Row row2 = sheet.createRow(1);
|
|
@@ -750,18 +764,21 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
if(params[x].equals("毛重/箱") || params[x].equals("G.W/CTN")){
|
|
|
gross = params2[x];
|
|
|
}
|
|
|
- if(params[x].equals("外箱长度") || params[x].equals("L(CM)")){
|
|
|
+ if(params[x].equals("长") || params[x].equals("L(CM)")){
|
|
|
length = params2[x];
|
|
|
}
|
|
|
- if(params[x].equals("外箱宽度") || params[x].equals("W(CM)")){
|
|
|
+ if(params[x].equals("宽") || params[x].equals("W(CM)")){
|
|
|
wide = params2[x];
|
|
|
}
|
|
|
- if(params[x].equals("外箱高度") || params[x].equals("H(CM)")){
|
|
|
+ if(params[x].equals("高") || params[x].equals("H(CM)")){
|
|
|
heigt = params2[x];
|
|
|
}
|
|
|
if(params[x].equals("箱数") || params[x].equals("TTL CTNS")){
|
|
|
sunBox = params2[x];
|
|
|
}
|
|
|
+ if(params[x].equals("件数/包") || params[x].equals("PCS/PACK")){
|
|
|
+ pcspack = params2[x];
|
|
|
+ }
|
|
|
|
|
|
Cell cell = row1.createCell(x);
|
|
|
cell.setCellValue(params[x]);
|
|
@@ -806,6 +823,22 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
|
|
|
Cell cell1 = row2.createCell(x);
|
|
|
cell1.setCellFormula("ROUND(SUM("+length+"2*"+wide+"2*"+heigt+"2*"+sunBox+"2/1000000),3)");
|
|
|
}
|
|
|
+
|
|
|
+ //件数/箱 =所有尺码值
|
|
|
+ if(x == params.length-11){
|
|
|
+ Cell cell1 = row2.createCell(x);
|
|
|
+ cell1.setCellFormula("SUM("+params2[8]+"2:"+params2[size]+"2)");
|
|
|
+ }
|
|
|
+ //包数/箱 =件数/箱除以件数/包
|
|
|
+ if(x == params.length-12){
|
|
|
+ Cell cell1 = row2.createCell(x);
|
|
|
+ cell1.setCellFormula("SUM("+params2[8]+"2:"+params2[size]+"2)/"+pcspack+"2");
|
|
|
+ }
|
|
|
+ //包数 =包数/箱乘以箱数
|
|
|
+ if(x == params.length-10){
|
|
|
+ Cell cell1 = row2.createCell(x);
|
|
|
+ cell1.setCellFormula("SUM("+params2[8]+"2:"+params2[size]+"2)/"+pcspack+"2*SUM(F2-E2+1)");
|
|
|
+ }
|
|
|
}
|
|
|
index++;
|
|
|
}
|