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.SecurityUtils;
|
||||
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.EmisPrintTpl;
|
||||
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.WaybillOrder;
|
||||
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.system.service.ISysConfigService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.OutputStream;
|
||||
import java.nio.charset.Charset;
|
||||
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.config.PayConfig;
|
||||
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.DateUtils;
|
||||
import com.xdadan.erp.common.utils.file.FileUtils;
|
||||
@ -103,6 +104,9 @@ public class EmisWaybillController extends EmisBaseController
|
||||
@Autowired
|
||||
private IEmisTmsScanRecordService emisTmsScanRecordService;
|
||||
|
||||
@Autowired
|
||||
RedissonService redissonService;
|
||||
|
||||
|
||||
@GetMapping(value = "/checkWaybillIsExists")
|
||||
public AjaxResult checkWaybillIsExists(String billCode){
|
||||
@ -977,12 +981,32 @@ public class EmisWaybillController extends EmisBaseController
|
||||
String item = subCodArr[i];
|
||||
|
||||
if(!StringUtils.isEmpty(item)) {
|
||||
Map<String, Object> order = emisBaseService.getWaybillPrintOrder(item, subBillCodeRange, tpCodeItem, "zh", tpCodeItem, printManCode);
|
||||
String pdfBase64Data = xtp.genPDFBase64(order);
|
||||
// Map<String, Object> order = emisBaseService.getWaybillPrintOrder(item, subBillCodeRange, tpCodeItem, "zh", tpCodeItem, printManCode);
|
||||
// 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();
|
||||
jObj.put("result", "success");
|
||||
jObj.put("billCodeItem", item);
|
||||
jObj.put("file", pdfBase64Data);
|
||||
// jObj.put("billCodeItem", item);
|
||||
// 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);
|
||||
}
|
||||
@ -1009,6 +1033,7 @@ public class EmisWaybillController extends EmisBaseController
|
||||
for(Object objFile:fileArrAll) {
|
||||
JSONObject jObjFileItem = (JSONObject) objFile;
|
||||
String result = jObjFileItem.getString("result");
|
||||
String fileType = jObjFileItem.getString("fileType");
|
||||
String billCodeItem = jObjFileItem.getString("billCodeItem");
|
||||
JSONObject printItem = new JSONObject();
|
||||
printItem.put("billCode", billCodeItem);
|
||||
@ -1016,8 +1041,23 @@ public class EmisWaybillController extends EmisBaseController
|
||||
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 {
|
||||
|
||||
|
||||
|
||||
String pdfbase64 = jObjFileItem.getString("file");
|
||||
String fileId = UUID.fastUUID().toString();
|
||||
String fileUploadDir = PayConfig.getUploadPath() + File.separator + DateUtils.datePath();
|
||||
|
||||
@ -1281,6 +1321,8 @@ public class EmisWaybillController extends EmisBaseController
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@RequestMapping("/updatePrintStatus")
|
||||
public AjaxResult updatePrintStatus(String billCode)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user