md
This commit is contained in:
parent
1fc508abd5
commit
784af0930c
@ -24,6 +24,7 @@ import com.xdadan.erp.common.enums.BusinessType;
|
|||||||
import com.xdadan.erp.common.utils.DateUtils;
|
import com.xdadan.erp.common.utils.DateUtils;
|
||||||
import com.xdadan.erp.common.utils.SecurityUtils;
|
import com.xdadan.erp.common.utils.SecurityUtils;
|
||||||
import com.xdadan.erp.common.utils.poi.ExcelUtil;
|
import com.xdadan.erp.common.utils.poi.ExcelUtil;
|
||||||
|
import com.xdadan.erp.common.utils.redis.CacheUtils;
|
||||||
import com.xdadan.erp.emis.domain.EmisBrand;
|
import com.xdadan.erp.emis.domain.EmisBrand;
|
||||||
import com.xdadan.erp.emis.domain.EmisPrintTpl;
|
import com.xdadan.erp.emis.domain.EmisPrintTpl;
|
||||||
import com.xdadan.erp.emis.domain.EmisSite;
|
import com.xdadan.erp.emis.domain.EmisSite;
|
||||||
@ -34,16 +35,21 @@ import com.xdadan.erp.emis.domain.vo.Reciever;
|
|||||||
import com.xdadan.erp.emis.domain.vo.Sender;
|
import com.xdadan.erp.emis.domain.vo.Sender;
|
||||||
import com.xdadan.erp.emis.domain.vo.WaybillOrder;
|
import com.xdadan.erp.emis.domain.vo.WaybillOrder;
|
||||||
import com.xdadan.erp.emis.service.*;
|
import com.xdadan.erp.emis.service.*;
|
||||||
|
import com.xdadan.erp.emis.service.print.IXddTplPrint;
|
||||||
|
import com.xdadan.erp.emis.service.print.tanex.TanexSubBillPrintImpl;
|
||||||
|
import com.xdadan.erp.emis.service.print.tanex.TanexTplPrintImpl;
|
||||||
import com.xdadan.erp.emis.utils.WaybillHelper;
|
import com.xdadan.erp.emis.utils.WaybillHelper;
|
||||||
import com.xdadan.erp.system.service.ISysConfigService;
|
import com.xdadan.erp.system.service.ISysConfigService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.OutputStream;
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
@ -378,6 +384,57 @@ public class EmisCommonController extends EmisBaseController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping("/getBillPng/{uuid}")
|
||||||
|
public AjaxResult getBillPng(HttpServletRequest request, HttpServletResponse response,@PathVariable("uuid")String uuid )
|
||||||
|
{
|
||||||
|
// "https://api.emis.tanex56.com/api/bizsvr/emis/common/getBillPng/123123212.png"
|
||||||
|
if(StringUtils.isEmpty(uuid)){
|
||||||
|
return AjaxResult.error("参数错误");
|
||||||
|
}
|
||||||
|
// redissonService.setStr("PRINT-IMG-"+uuid,"",300);
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
"billCode":"",
|
||||||
|
"tplCode":"",
|
||||||
|
"printManCode":""
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
String PRINT_KEY="PRINT-IMG-"+uuid.trim();
|
||||||
|
String printParamStr=redissonService.getStr(PRINT_KEY);
|
||||||
|
if(StringUtils.isEmpty(printParamStr)){
|
||||||
|
return AjaxResult.error("图片已过期");
|
||||||
|
}
|
||||||
|
|
||||||
|
JSONObject jObj = JSONObject.parseObject(printParamStr);
|
||||||
|
String billCode=jObj.getString("billCode");
|
||||||
|
String tplCode=jObj.getString("tplCode");
|
||||||
|
String printManCode=jObj.getString("printManCode");
|
||||||
|
|
||||||
|
try {
|
||||||
|
response.setCharacterEncoding("UTF-8");
|
||||||
|
response.setContentType(MediaType.IMAGE_PNG_VALUE);
|
||||||
|
response.setHeader("Content-Disposition", "filename=" + uuid+".png");
|
||||||
|
OutputStream os=response.getOutputStream();
|
||||||
|
|
||||||
|
Map<String, Object> order = emisBaseService.getWaybillPrintOrder(billCode, "1,1",tplCode, "zh", tplCode,printManCode);
|
||||||
|
if(order!=null) {
|
||||||
|
IXddTplPrint tplPrint = new TanexSubBillPrintImpl();
|
||||||
|
tplPrint.genPNG(order, os);
|
||||||
|
|
||||||
|
}else{
|
||||||
|
return AjaxResult.error("运单信息失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}catch (Exception ex){
|
||||||
|
ex.printStackTrace();
|
||||||
|
return AjaxResult.error("异常");
|
||||||
|
}
|
||||||
|
|
||||||
|
return AjaxResult.success("成功");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取打印模版
|
* 获取打印模版
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -30,6 +30,7 @@ import com.deepoove.poi.data.Pictures;
|
|||||||
import com.xdadan.erp.common.annotation.filter.jackson.JacksonFilter;
|
import com.xdadan.erp.common.annotation.filter.jackson.JacksonFilter;
|
||||||
import com.xdadan.erp.common.config.PayConfig;
|
import com.xdadan.erp.common.config.PayConfig;
|
||||||
import com.xdadan.erp.common.core.domain.entity.SysUser;
|
import com.xdadan.erp.common.core.domain.entity.SysUser;
|
||||||
|
import com.xdadan.erp.common.core.redis.RedissonService;
|
||||||
import com.xdadan.erp.common.utils.BarcodeUtils;
|
import com.xdadan.erp.common.utils.BarcodeUtils;
|
||||||
import com.xdadan.erp.common.utils.DateUtils;
|
import com.xdadan.erp.common.utils.DateUtils;
|
||||||
import com.xdadan.erp.common.utils.file.FileUtils;
|
import com.xdadan.erp.common.utils.file.FileUtils;
|
||||||
@ -103,6 +104,9 @@ public class EmisWaybillController extends EmisBaseController
|
|||||||
@Autowired
|
@Autowired
|
||||||
private IEmisTmsScanRecordService emisTmsScanRecordService;
|
private IEmisTmsScanRecordService emisTmsScanRecordService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
RedissonService redissonService;
|
||||||
|
|
||||||
|
|
||||||
@GetMapping(value = "/checkWaybillIsExists")
|
@GetMapping(value = "/checkWaybillIsExists")
|
||||||
public AjaxResult checkWaybillIsExists(String billCode){
|
public AjaxResult checkWaybillIsExists(String billCode){
|
||||||
@ -977,12 +981,32 @@ public class EmisWaybillController extends EmisBaseController
|
|||||||
String item = subCodArr[i];
|
String item = subCodArr[i];
|
||||||
|
|
||||||
if(!StringUtils.isEmpty(item)) {
|
if(!StringUtils.isEmpty(item)) {
|
||||||
Map<String, Object> order = emisBaseService.getWaybillPrintOrder(item, subBillCodeRange, tpCodeItem, "zh", tpCodeItem, printManCode);
|
// Map<String, Object> order = emisBaseService.getWaybillPrintOrder(item, subBillCodeRange, tpCodeItem, "zh", tpCodeItem, printManCode);
|
||||||
String pdfBase64Data = xtp.genPDFBase64(order);
|
// String pdfBase64Data = xtp.genPDFBase64(order);
|
||||||
|
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
"billCode":"",
|
||||||
|
"tplCode":"",
|
||||||
|
"printManCode":""
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
String uuid = UUID.fastUUID().toString();
|
||||||
|
JSONObject jObjImg = new JSONObject();
|
||||||
|
jObjImg.put("billCode",item);
|
||||||
|
jObjImg.put("tplCode",tpCodeItem);
|
||||||
|
jObjImg.put("printManCode",printManCode);
|
||||||
|
|
||||||
|
redissonService.setStr("PRINT-IMG-"+uuid,jObjImg.toJSONString(),1800);
|
||||||
|
|
||||||
JSONObject jObj = new JSONObject();
|
JSONObject jObj = new JSONObject();
|
||||||
jObj.put("result", "success");
|
jObj.put("result", "success");
|
||||||
jObj.put("billCodeItem", item);
|
// jObj.put("billCodeItem", item);
|
||||||
jObj.put("file", pdfBase64Data);
|
// jObj.put("file", pdfBase64Data);
|
||||||
|
String imageUrl="https://api.emis.tanex56.com/api/bizsvr/emis/common/getBillPng/"+uuid;
|
||||||
|
jObj.put("imageUrl", imageUrl);
|
||||||
|
jObj.put("fileType", "URL");
|
||||||
|
|
||||||
fileArrAll.add(jObj);
|
fileArrAll.add(jObj);
|
||||||
}
|
}
|
||||||
@ -1009,6 +1033,7 @@ public class EmisWaybillController extends EmisBaseController
|
|||||||
for(Object objFile:fileArrAll) {
|
for(Object objFile:fileArrAll) {
|
||||||
JSONObject jObjFileItem = (JSONObject) objFile;
|
JSONObject jObjFileItem = (JSONObject) objFile;
|
||||||
String result = jObjFileItem.getString("result");
|
String result = jObjFileItem.getString("result");
|
||||||
|
String fileType = jObjFileItem.getString("fileType");
|
||||||
String billCodeItem = jObjFileItem.getString("billCodeItem");
|
String billCodeItem = jObjFileItem.getString("billCodeItem");
|
||||||
JSONObject printItem = new JSONObject();
|
JSONObject printItem = new JSONObject();
|
||||||
printItem.put("billCode", billCodeItem);
|
printItem.put("billCode", billCodeItem);
|
||||||
@ -1016,8 +1041,23 @@ public class EmisWaybillController extends EmisBaseController
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
String pdfbase64 = jObjFileItem.getString("file");
|
if("URL".equals(fileType)){
|
||||||
|
String imageUrl = jObjFileItem.getString("imageUrl");
|
||||||
|
printItem.put("imageUrl", imageUrl);
|
||||||
|
printItem.put("result", "success");
|
||||||
|
printItem.put("message", "success");
|
||||||
|
|
||||||
|
jArr.add(printItem);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 远程PDF生成模式
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
String pdfbase64 = jObjFileItem.getString("file");
|
||||||
String fileId = UUID.fastUUID().toString();
|
String fileId = UUID.fastUUID().toString();
|
||||||
String fileUploadDir = PayConfig.getUploadPath() + File.separator + DateUtils.datePath();
|
String fileUploadDir = PayConfig.getUploadPath() + File.separator + DateUtils.datePath();
|
||||||
|
|
||||||
@ -1281,6 +1321,8 @@ public class EmisWaybillController extends EmisBaseController
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@RequestMapping("/updatePrintStatus")
|
@RequestMapping("/updatePrintStatus")
|
||||||
public AjaxResult updatePrintStatus(String billCode)
|
public AjaxResult updatePrintStatus(String billCode)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user