Merge pull request !192 from 赵世界/develop
This commit is contained in:
赵世界 2023-08-17 06:17:14 +00:00 committed by Gitee
commit 964a5aa6f3
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
6 changed files with 620 additions and 11 deletions

View File

@ -162,7 +162,11 @@ class BusinessOrderController extends Controller
$ids = BusinessOrderItem::query()->whereIn('external_sku_id', $externalSkuIds)->pluck('business_order_id'); $ids = BusinessOrderItem::query()->whereIn('external_sku_id', $externalSkuIds)->pluck('business_order_id');
$builder->whereIn('id', $ids); $builder->whereIn('id', $ids);
} }
if ($ids = $request->input('ids')) {
$builder->whereIn('id', $ids);
}
$businessOrders = $builder->get(); $businessOrders = $builder->get();
$waybill = new WayBillService(); $waybill = new WayBillService();
$waybill->setOrders($businessOrders); $waybill->setOrders($businessOrders);
$contents = $waybill->getContents(); $contents = $waybill->getContents();
@ -195,7 +199,7 @@ class BusinessOrderController extends Controller
], ],
'width' => 560 'width' => 560
], ],
'templateURL' => 'http://pinduoduoimg.yangkeduo.com/logistics/2019-07-14/5d7e8b5969d954539fcfba3268bbeb3a.xml' 'templateURL' => "http://pinduoduoimg.yangkeduo.com/logistics/2019-07-14/5d7e8b5969d954539fcfba3268bbeb3a.xml" // 自定义区域模板
]; ];
$data = []; $data = [];
foreach ($documents as &$document) { foreach ($documents as &$document) {
@ -210,7 +214,6 @@ class BusinessOrderController extends Controller
if ($document['note']) { if ($document['note']) {
$documentData['data']['list'][0]['text'] .= ' 备注:' . $document['note']; $documentData['data']['list'][0]['text'] .= ' 备注:' . $document['note'];
} }
$documentData['data']['templateURL'] = $document['templateUrl'];
unset($document['documentID'], $document['items'], $document['order_id'], $document['participate_no'], $document['note']); unset($document['documentID'], $document['items'], $document['order_id'], $document['participate_no'], $document['note']);
$data[] = [ $data[] = [
'documentID' => $documentID, 'documentID' => $documentID,

View File

@ -78,10 +78,12 @@ class FaceSheet extends KuaiTuanTuan
return $this->doRequest($type, $appendParams); return $this->doRequest($type, $appendParams);
} }
public function getCustomares() public function getCustomares($templateId = 118)
{ {
$type = 'pdd.cloudprint.customares.get'; $type = 'pdd.cloudprint.customares.get';
$appendParams = []; $appendParams = [
'template_id' => $templateId
];
return $this->doRequest($type, $appendParams); return $this->doRequest($type, $appendParams);
} }

View File

@ -6,7 +6,6 @@ use App\Models\GoodsSku;
use App\Models\ShopShip; use App\Models\ShopShip;
use App\Models\Waybill; use App\Models\Waybill;
use App\Services\Business\KuaiTuanTuan\FaceSheet; use App\Services\Business\KuaiTuanTuan\FaceSheet;
use Illuminate\Support\Facades\Storage;
class WayBillService class WayBillService
{ {
@ -18,9 +17,6 @@ class WayBillService
// 快递三联面单 // 快递三联面单
public $sfThree = 'https://file-link.pinduoduo.com/sf_three'; public $sfThree = 'https://file-link.pinduoduo.com/sf_three';
public $sfThreeTemplate = 'sf_three1677381064344.xml'; public $sfThreeTemplate = 'sf_three1677381064344.xml';
// 快递一联单
public $sfOneBase = 'https://file-link.pinduoduo.com/sf_one';
public $sfOneBaseTemplate = 'sf_one1688973997895.xml';
// 标准模板 // 标准模板
public $sfStd = 'https://file-link.pinduoduo.com/sf_std'; public $sfStd = 'https://file-link.pinduoduo.com/sf_std';
public $sfStdTemplate = 'sf_std1677380804913.xml'; public $sfStdTemplate = 'sf_std1677380804913.xml';
@ -57,7 +53,7 @@ class WayBillService
], ],
'encryptedData' => $printData['encryptedData'], 'encryptedData' => $printData['encryptedData'],
'signature' => $printData['signature'], 'signature' => $printData['signature'],
'templateUrl' => env('APP_URL') . '/ktt/' . $this->sfStdTemplate, 'templateUrl' => env('APP_URL') . '/ktt/' . $this->sfOneTemplate, // 电子面单模板
'ver' => $printData['ver'], 'ver' => $printData['ver'],
'userid' => $waybill->user_id, 'userid' => $waybill->user_id,
'items' => $item['items'], 'items' => $item['items'],
@ -74,7 +70,7 @@ class WayBillService
], ],
'encryptedData' => $waybill->encryptedData, 'encryptedData' => $waybill->encryptedData,
'signature' => $waybill->signature, 'signature' => $waybill->signature,
'templateUrl' => env('APP_URL') . '/ktt/' . $this->sfStdTemplate, 'templateUrl' => env('APP_URL') . '/ktt/' . $this->sfOneTemplate, // 电子面单模板
'ver' => $waybill->ver, 'ver' => $waybill->ver,
'userid' => $waybill->user_id, 'userid' => $waybill->user_id,
'items' => json_decode($waybill->items, true), 'items' => json_decode($waybill->items, true),
@ -198,7 +194,7 @@ class WayBillService
'name' => $order['recipient_name'], 'name' => $order['recipient_name'],
'mobile' => $order['recipient_mobile'], 'mobile' => $order['recipient_mobile'],
], ],
'template_url' => $this->sfStd, 'template_url' => $this->sfOne,
'user_id' => $shop->owner_id, 'user_id' => $shop->owner_id,
]; ];

View File

@ -0,0 +1,221 @@
<page height="1040" width="608">
<% function GetTel(tel){ %>
<% if(tel.length == 11){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<7 && i>2){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else if(tel.length >4){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<tel.length -4){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else %>
<% return tel;%>
<%} %>
<% function GetRecipientTel(){ %>
<%var recipient_mobile = data.recipient ? (data.recipient.mobile || '') : '' %>
<%var recipient_phone = data.recipient ? (data.recipient.phone || '') : '' %>
<%var recipient_maskMobile = data.recipient ? (data.recipient.maskMobile || '') : '' %>
<% if(recipient_maskMobile.length ){ %>
<% return recipient_maskMobile; %>
<% }else if(recipient_mobile == recipient_phone) {%>
<% return GetTel(recipient_mobile);%>
<% }else %>
<% return GetTel(recipient_mobile) + " " + GetTel(recipient_phone);%>
<%} %>
<%var recipient_virtualNumber = data.recipient ? (data.recipient.virtualNumber || '') : '' %>
<%var recipient_identifyNumber = data.recipient ? (data.recipient.identifyNumber || '') : '' %>
<%var sender_name = data.sender ? (data.sender.name || '') : '' %>
<%var sender_mobile = data.sender ? (data.sender.mobile || '') : '' %>
<%var sender_phone = data.sender ? (data.sender.phone || '') : '' %>
<%var sender_telephone_number = (sender_mobile == sender_phone) ? GetTel(sender_mobile) : ( GetTel(sender_mobile) +' '+ GetTel(sender_phone)) %>
<%var sender_address =(data.sender && data.sender.address)? ((data.sender.address.province || '') +(data.sender.address.city || '') +(data.sender.address.district || '') +(data.sender.address.town || '') +(data.sender.address.detail || '')) : ''%>
<%var recipient_telephone_number = GetRecipientTel() %>
<%var recipient_name = data.recipient ? ( data.recipient.originalName ? data.recipient.originalName : (data.recipient.name || '')) : '' %>
<%var recipient_address =(data.recipient && data.recipient.address)? ((data.recipient.address.province || '') +(data.recipient.address.city || '') +(data.recipient.address.district || '') +(data.recipient.address.town || '') +(data.recipient.address.originalDetail ? data.recipient.address.originalDetail:data.recipient.address.detail || '')) : ''%>
<%var _threeSegmentCode = data.routingInfo ? (data.routingInfo.threeSegmentCode || '') : '' %>
<layout height="1040" width="608" orientation="vertical">
<!-- logo区域 -->
<layout height="112" orientation="vertical" >
<layout height="90" >
<% if(context.topLogo) {%>
<text align="left" fontSize="50" left="20" top="20" value="顺丰速运"/>
<% } %>
<text name="proCodeText" value="<%=data.commonPrintDto ? (data.commonPrintDto.proCode || '') : ''%>" height="60" left="450" top="15" width="150" align="right" fontSize="50" fontWeight="bold" zIndex="334"/>
</layout>
<layout left="50" height="32" top="90">
<text align="left" fontSize="23" value="已验视 打印时间 <%=context.date || ''%> <%=context.time || ''%> 第<%=context.index || ''%>个"/>
</layout>
</layout>
<layout height="192" width="608" >
<%var _YunDanBarCode = (data.waybillSequence==1 && data.totalPackagesCount >1 ) ? (data.parentWaybillCode || '') : (data.waybillCode || '') %>
<barcode name="YunDanBarCode" type="code128b" height="120" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<% if(data.totalPackagesCount >1 && data.waybillSequence > 1) {%>
<text height="40" top="130" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="子单号"/>
<text name="YunDanText" left="200" height="32" top="130" value="<%=data.waybillCode || ''%>" align="left" fontSize="30"/>
<text height="32" left="100" width="100" top="160" align="left" fontSize="30" value="母单号"/>
<text name="YunDanText" height="32" left="200" top="160" value="<%=data.parentWaybillCode || ''%>" align="left" fontSize="30"/>
<% }else if(data.waybillSequence ==1 && data.totalPackagesCount >1){ %>
<text height="40" top="130" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="母单号"/>
<text name="YunDanText" left="200" height="32" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% }else { %>
<text height="40" top="130" width="100" value="1\1" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="运单号"/>
<text name="YunDanText" left="200" height="46" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% } %>
</layout>
<!-- 固定区域 -->
<layout height="456" orientation="horizontal">
<%var _waybillCode = data.waybillCode || '' %>
<%var _waybillFontSize = _waybillCode.length > 12 ? (200/_waybillCode.length):22 %>
<!-- 左侧运单号 -->
<layout width="26" orientation="vertical" padding="0,50,0,50" >
<text name="YunDanText" value="<%=_waybillCode %>" width="26" height="200" align="center" valign="center" direction="left" orientation="vertical" fontSize="<%=_waybillFontSize %>"/>
<text name="YunDanText" value="<%=_waybillCode %>" width="26" height="200" align="center" valign="center" direction="left" orientation="vertical" fontSize="<%=_waybillFontSize %>"/>
</layout>
<!-- 运单内容 -->
<layout width="556" orientation="vertical" >
<layout height="80" bordersize="0,2,0,2">
<%var _fontSize = (608*2)/(_threeSegmentCode.length+1) %>
<% if(_fontSize <15){ %>
<% _fontSize = 15; %>
<% }else if(_fontSize >80){ %>
<% _fontSize = 70; %>
<%} %>
<text name="Bigpen" top="8" value="<%= _threeSegmentCode %>" fontWeight="bold" align="center" fontSize="<%= _fontSize %>"/>
</layout>
<layout height="40" orientation="horizontal" bordersize="0,0,0,2">
<% if(recipient_virtualNumber.length) {%>
<text value="隐私号码" width="140" height="40" align="center" valign="center" bkcolor="ff000000" textcolor="ffffffff" fontSize="30"/>
<text value="<%=recipient_virtualNumber%>转<%=recipient_identifyNumber%>" padding="10,5,0,0" width="300" height="40" align="left" valign="top" fontSize="30"/>
<% } %>
</layout>
<layout height="208" orientation="horizontal" bordersize="0,0,0,2">
<layout width="348" >
<image name="收" height="63" width="56" top="25" left="8"/>
<text name="ReceiverInfo" value="<%=recipient_name%>" fontSize="28" left="70" height="40" width="282" top="6" fontWeight="bold" align="left" valign="top"/>
<text name="ReceiverInfo" value="<%=recipient_telephone_number%>" fontSize="28" left="70" height="40" width="282" top="50" fontWeight="bold" align="left" valign="top"/>
<text name="ReceiverInfo" top="90" value="<%=recipient_address%>" fontSize="28" fontWeight="bold" align="left" valign="top"/>
</layout>
<layout height="208" width="208" bordersize="2,0,0,0">
<qrcode name="twoDimensionCode" type="code128b" value="<%=data.commonPrintDto ? (data.commonPrintDto.twoDimensionCode || '') : ''%>" padding="10,10,10,10"/>
</layout>
</layout>
<layout height="64" >
<layout width="80" left="0">
<text value="寄" left="8" fontSize="55" align="center" top="8"/>
</layout>
<layout width="430" left="80">
<text name="SenderInfo" value="<%=sender_name%> <%=sender_telephone_number%>&#x000A;<%=sender_address%>" top="16" fontSize="24" align="left" valign="top"/>
</layout>
</layout>
<layout height="64" orientation="horizontal" bordersize="0,0,0,2">
<text name="codingMapping" value="<%=data.commonPrintDto ? (data.commonPrintDto.codingMapping || '') : ''%>" height="88" width="200" top="5" fontSize="60" align="center" valign="top"/>
<%var _IN41 = (data.logisticsServices && data.logisticsServices.IN41 ) ? "先" : '' %>
<% if(_IN41.length != 0) {%>
<text name="INSURE" value="<%=_IN41 %>" width="100" top="5" fontSize="60" align="center" valign="top"/>
<% } %>
<%var _INSURE = (data.logisticsServices && data.logisticsServices.INSURE && data.logisticsServices.INSURE.desc) ? "保价 " : '' %>
<%var _IN144 = (data.logisticsServices && data.logisticsServices.IN144 ) ? "到齐派 " : ' ' %>
<%var _abFlag = data.commonPrintDto ? (data.commonPrintDto.abFlag || '') : '' %>
<text name="INSURE" value="<%=_IN144 + _INSURE + _abFlag %>" width="200" top="20" fontSize="30" align="left" valign="top"/>
</layout>
</layout>
<!-- 右侧运单号 -->
<layout width="26" orientation="vertical" padding="0,50,0,50" >
<text name="YunDanText" value="<%=_waybillCode %>" width="26" height="200" align="center" valign="center" direction="left" orientation="vertical" fontSize="<%=_waybillFontSize %>"/>
<text name="YunDanText" value="<%=_waybillCode %>" width="26" height="200" align="center" valign="center" direction="left" orientation="vertical" fontSize="<%=_waybillFontSize %>"/>
</layout>
</layout>
<!-- 自定义 -->
<layout name="user" height="160" left="16" width="576" >
</layout>
<!-- 广告区 -->
<layout height="120" orientation="horizontal" >
<%if (context.adControl && data.ad) {%>
<%if (data.ad.type == 2) {%>
<%if( data.ad.image && data.ad.image != ''){%>
<layout width="224" margin="0,8,0,0" >
<image name="AdArea" value="<%=data.ad.image%>" width="220" height="100" />
</layout>
<%}%>
<layout width="336" margin="8,8,8,0" >
<text value="<%=data.ad.text ? data.ad.text : ''%>" fontSize="30" top="20" align="left" wrap="true" valign="top" />
</layout>
<%} else {%>
<%if( data.ad.pic && data.ad.pic != ''){%>
<layout width="472" height="120" >
<!-- 462*104 -->
<image name="AdArea" value="<%=data.ad.pic%>" width="472" height="120" padding="10,8,0,8" />
</layout>
<%}%>
<layout width="120" height="120" >
<qrcode padding="8,8,8,8" name="AdArea" value="<%=data.ad.qrCode ? data.ad.qrCode : ''%>" />
</layout>
<%}%>
<%}%>
</layout>
</layout>
</page>

View File

@ -0,0 +1,165 @@
<page height="1200" width="800">
<% function GetTel(tel){ %>
<% if(tel.length == 11){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<7 && i>2){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else if(tel.length >4){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<tel.length -4){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else %>
<% return tel;%>
<%} %>
<% function GetRecipientTel(){ %>
<%var recipient_mobile = data.recipient ? (data.recipient.mobile || '') : '' %>
<%var recipient_phone = data.recipient ? (data.recipient.phone || '') : '' %>
<%var recipient_maskMobile = data.recipient ? (data.recipient.maskMobile || '') : '' %>
<% if(recipient_maskMobile.length ){ %>
<% return recipient_maskMobile; %>
<% }else if(recipient_mobile == recipient_phone) {%>
<% return GetTel(recipient_mobile);%>
<% }else %>
<% return GetTel(recipient_mobile) + " " + GetTel(recipient_phone);%>
<%} %>
<%var recipient_virtualNumber = data.recipient ? (data.recipient.virtualNumber || '') : '' %>
<%var recipient_identifyNumber = data.recipient ? (data.recipient.identifyNumber || '') : '' %>
<%var sender_name = data.sender ? (data.sender.name || '') : '' %>
<%var sender_mobile = data.sender ? (data.sender.mobile || '') : '' %>
<%var sender_phone = data.sender ? (data.sender.phone || '') : '' %>
<%var sender_telephone_number = (sender_mobile == sender_phone) ? GetTel(sender_mobile) : ( GetTel(sender_mobile) +' '+ GetTel(sender_phone)) %>
<%var sender_address =(data.sender && data.sender.address)? ((data.sender.address.province || '') +(data.sender.address.city || '') +(data.sender.address.district || '') +(data.sender.address.town || '') +(data.sender.address.detail || '')) : ''%>
<%var recipient_telephone_number = GetRecipientTel() %>
<%var recipient_name = data.recipient ? ( data.recipient.originalName ? data.recipient.originalName : (data.recipient.name || '')) : '' %>
<%var recipient_address =(data.recipient && data.recipient.address)? ((data.recipient.address.province || '') +(data.recipient.address.city || '') +(data.recipient.address.district || '') +(data.recipient.address.town || '') +(data.recipient.address.originalDetail ? data.recipient.address.originalDetail:data.recipient.address.detail || '')) : ''%>
<layout height="1200" width="800" orientation="vertical" >
<layout height="288" width="800" bordersize="0,0,0,2">
<layout height="90" >
<% if(context.topLogo) {%>
<image name="logo" type="1" width="250" height="90" value="https://funimg.pddpic.com/print_template/0882bedd-da33-42fc-9bb0-26ad7fe24bb2.png.slim.png" />
<% } %>
<text name="proCodeText" value="<%=data.commonPrintDto ? (data.commonPrintDto.proCode || '') : ''%>" height="60" left="380" top="15" width="400" align="right" fontSize="50" fontWeight="bold" zIndex="334"/>
</layout>
<layout left="200" top="90">
<text height="32" left="20" width="100" align="left" fontSize="23" value="打印时间"/>
<text name="printdate" height="32" width="130" left="120" align="left" value="<%=context.date || ''%>" fontSize="23"/>
<text name="printtime" height="40" width="100" left="250" align="left" value="<%=context.time || ''%>" fontSize="23"/>
<text name="printindex" height="40" width="200" left="350" align="left" value="第<%=context.index || ''%>个" fontSize="23"/>
</layout>
<layout height="176" top="112" width="800">
<%var _YunDanBarCode = (data.waybillSequence==1 && data.totalPackagesCount >1 ) ? (data.parentWaybillCode || '') : (data.waybillCode || '') %>
<% if(data.totalPackagesCount >1 && data.waybillSequence > 1) {%>
<barcode name="YunDanBarCode" type="code128b" height="110" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="120" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="120" align="left" fontSize="25" value="子单号"/>
<text name="YunDanText" left="200" height="32" top="120" value="<%=data.waybillCode || ''%>" align="left" fontSize="25"/>
<text height="32" left="100" width="100" top="150" align="left" fontSize="25" value="母单号"/>
<text name="YunDanText" height="32" left="200" top="150" value="<%=data.parentWaybillCode || ''%>" align="left" fontSize="25"/>
<% }else if(data.waybillSequence ==1 && data.totalPackagesCount >1){ %>
<barcode name="YunDanBarCode" type="code128b" height="120" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="130" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="母单号"/>
<text name="YunDanText" left="200" height="32" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% }else { %>
<barcode name="YunDanBarCode" type="code128b" height="120" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="130" width="100" value="1\1" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="运单号"/>
<text name="YunDanText" left="200" height="46" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% } %>
</layout>
</layout>
<!-- 收件人信息 -->
<layout height="244" width="800" bordersize="0,0,0,2" orientation="vertical">
<layout height="84" width="800">
<text name="Bigpen" top="4" value="<%= data.routingInfo ? (data.routingInfo.threeSegmentCode || '') : '' %>" fontWeight="bold" align="left" fontSize="75"/>
</layout>
<layout height="40" bordersize="0,2,0,2" orientation="horizontal" >
<% if(recipient_virtualNumber.length) {%>
<text value="隐私号码" width="140" height="40" align="center" valign="center" bkcolor="ff000000" textcolor="ffffffff" fontSize="30"/>
<text value="<%=recipient_virtualNumber%>转<%=recipient_identifyNumber%>" padding="10,5,0,0" width="300" height="40" align="left" valign="top" fontSize="30"/>
<% } %>
</layout>
<layout height="120" width="800" >
<layout width="80">
<image name="收" height="63" width="56" top="25" left="16"/>
</layout>
<layout width="720" left="80">
<text name="ReceiverInfo" value="<%=recipient_name%> <%=recipient_telephone_number%>&#x000A;<%=recipient_address%>" width="520" fontSize="28" fontWeight="bold" top="16" align="left" valign="center"/>
<waterrmark name="destTeamCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.destTeamCode || '') : ''%>" width="520" fontSize="100" fontWeight="bold" Alpha="70" top="20" align="center" valign="center"/>
<image name="cod" value="<%=data.commonPrintDto ? (data.commonPrintDto.cod || '') : ''%>" height="141" left="682" top="148" width="78" zIndex="334"/>
</layout>
</layout>
</layout>
<layout height="208" width="800" bordersize="0,0,0,2">
<layout width="264">
<line height="2" type="dash" top="48"/>
<line height="2" type="dash" top="136"/>
<text name="payType" value="<%=data.commonPrintDto ? (data.commonPrintDto.payType || '') : ''%>" height="48" fontSize="24" align="center" valign="center"/>
<text name="codingMapping" value="<%=data.commonPrintDto ? (data.commonPrintDto.codingMapping || '') : ''%>" height="88" top="48" fontSize="70" align="center" valign="center"/>
<text name="sourceTransferCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.sourceTransferCode || '') : ''%>" top="136" height="72" fontSize="30" align="center" valign="center"/>
</layout>
<!-- 二维码 -->
<layout width="256" left="264" bordersize="2,0,2,0">
<qrcode name="twoDimensionCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.twoDimensionCode || '') : ''%>" height="192" width="192" left="32" top="8"/>
</layout>
<layout width="80" left="520" bordersize="2,0,2,0">
<text top="16" value="已验视" fontSize="40" orientation="vertical" width="112" align="left" valign="center"/>
</layout>
<layout width="200" left="600" bordersize="2,0,0,0">
<line height="2" type="dash" top="136"/>
<text name="abFlag" value="<%=data.commonPrintDto ? (data.commonPrintDto.abFlag || '') : ''%>" height="141" align="center" valign="center" fontSize="90"/>
<text name="codingMappingOut" value="<%=data.commonPrintDto ? (data.commonPrintDto.codingMappingOut || '') : ''%>" top="136" height="72" fontSize="30" align="center" valign="center"/>
</layout>
</layout>
<!-- 寄件人信息 -->
<layout height="76" width="800" bordersize="0,0,0,2">
<layout width="80" left="0">
<text value="寄" left="8" fontSize="55" align="center" top="16"/>
</layout>
<layout width="720" left="80">
<text name="SenderInfo" value="<%=sender_name%> <%=sender_telephone_number%>&#x000A;<%=sender_address%>" top="8" fontSize="24" align="left" valign="center"/>
</layout>
</layout>
<layout height="104" orientation="vertical" width="800" bordersize="0,0,0,2" >
<%var _INSURE = (data.logisticsServices && data.logisticsServices.INSURE && data.logisticsServices.INSURE.desc) ? "保价" : '' %>
<%var _IN144 = (data.logisticsServices && data.logisticsServices.IN144 ) ? "到齐派 " : '' %>
<text value="增值服务:<%=_IN144 + _INSURE %>" height="33" left="40" align="left" valign="center" fontSize="30"/>
<text value="寄托物:" height="33" align="left" valign="center" left="40" fontSize="30"/>
<text value="计费重量: 实际重量: 费用合计:" height="33" align="left" left="40" valign="center" fontSize="30"/>
</layout>
<layout height="280" width="800" bordersize="0,0,0,2" >
<layout name="user" height="280" width="480" >
</layout>
<!-- 图标区域 -->
<layout height="320" left="480" width="800" >
<image name="printIcon1" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon1 || '') : ''%>" width="136" height="136" top="4" left="20" zIndex="334"/>
<image name="printIcon2" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon2 || '') : ''%>" height="136" width="136" top="4" left="164" zIndex="334"/>
<image name="printIcon3" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon3 || '') : ''%>" height="136" top="144" left="92" width="136" zIndex="334"/>
</layout>
</layout>
</layout>
</page>

View File

@ -0,0 +1,222 @@
<page height="1680" width="800">
<% function GetTel(tel){ %>
<% if(tel.length == 11){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<7 && i>2){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else if(tel.length >4){ %>
<% var str = ""; %>
<% for (var i = 0; i < tel.length; i++) { %>
<% if(i<tel.length -4){ %>
<% str += "*"; %>
<% }else { %>
<% str += tel.substring(i,i+1); %>
<%} } return str; %>
<% }else %>
<% return tel;%>
<%} %>
<% function GetRecipientTel(){ %>
<%var recipient_mobile = data.recipient ? (data.recipient.mobile || '') : '' %>
<%var recipient_phone = data.recipient ? (data.recipient.phone || '') : '' %>
<%var recipient_maskMobile = data.recipient ? (data.recipient.maskMobile || '') : '' %>
<% if(recipient_maskMobile.length ){ %>
<% return recipient_maskMobile; %>
<% }else if(recipient_mobile == recipient_phone) {%>
<% return GetTel(recipient_mobile);%>
<% }else %>
<% return GetTel(recipient_mobile) + " " + GetTel(recipient_phone);%>
<%} %>
<%var recipient_virtualNumber = data.recipient ? (data.recipient.virtualNumber || '') : '' %>
<%var recipient_identifyNumber = data.recipient ? (data.recipient.identifyNumber || '') : '' %>
<%var sender_name = data.sender ? (data.sender.name || '') : '' %>
<%var sender_mobile = data.sender ? (data.sender.mobile || '') : '' %>
<%var sender_phone = data.sender ? (data.sender.phone || '') : '' %>
<%var sender_telephone_number = (sender_mobile == sender_phone) ? GetTel(sender_mobile) : ( GetTel(sender_mobile) +' '+ GetTel(sender_phone)) %>
<%var sender_address =(data.sender && data.sender.address)? ((data.sender.address.province || '') +(data.sender.address.city || '') +(data.sender.address.district || '') +(data.sender.address.town || '') +(data.sender.address.detail || '')) : ''%>
<%var recipient_telephone_number = GetRecipientTel() %>
<%var recipient_name = data.recipient ? ( data.recipient.originalName ? data.recipient.originalName : (data.recipient.name || '')) : '' %>
<%var recipient_address =(data.recipient && data.recipient.address)? ((data.recipient.address.province || '') +(data.recipient.address.city || '') +(data.recipient.address.district || '') +(data.recipient.address.town || '') +(data.recipient.address.originalDetail ? data.recipient.address.originalDetail:data.recipient.address.detail || '')) : ''%>
<layout height="1680" width="800" orientation="vertical">
<layout height="288" width="800" bordersize="0,0,0,2">
<layout height="90" >
<% if(context.topLogo) {%>
<image name="logo" type="1" width="250" height="90" value="https://funimg.pddpic.com/print_template/0882bedd-da33-42fc-9bb0-26ad7fe24bb2.png.slim.png" />
<% } %>
<text name="proCodeText" value="<%=data.commonPrintDto ? (data.commonPrintDto.proCode || '') : ''%>" height="60" left="380" top="15" width="400" align="right" fontSize="50" fontWeight="bold" zIndex="334"/>
</layout>
<layout left="200" top="90">
<text height="32" left="20" width="100" align="left" fontSize="23" value="打印时间"/>
<text name="printdate" height="32" width="130" left="120" align="left" value="<%=context.date || ''%>" fontSize="23"/>
<text name="printtime" height="40" width="100" left="250" align="left" value="<%=context.time || ''%>" fontSize="23"/>
</layout>
<layout height="176" top="112" width="800">
<%var _YunDanBarCode = (data.waybillSequence==1 && data.totalPackagesCount >1 ) ? (data.parentWaybillCode || '') : (data.waybillCode || '') %>
<% if(data.totalPackagesCount >1 && data.waybillSequence > 1) {%>
<barcode name="YunDanBarCode" type="code128b" height="110" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="120" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="120" align="left" fontSize="25" value="子单号"/>
<text name="YunDanText" left="200" height="32" top="120" value="<%=data.waybillCode || ''%>" align="left" fontSize="25"/>
<text height="32" left="100" width="100" top="150" align="left" fontSize="25" value="母单号"/>
<text name="YunDanText" height="32" left="200" top="150" value="<%=data.parentWaybillCode || ''%>" align="left" fontSize="25"/>
<% }else if(data.waybillSequence ==1 && data.totalPackagesCount >1){ %>
<barcode name="YunDanBarCode" type="code128b" height="120" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="130" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="母单号"/>
<text name="YunDanText" left="200" height="32" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% }else { %>
<barcode name="YunDanBarCode" type="code128b" height="120" padding="60,8,60,0" value="<%=_YunDanBarCode %>" />
<text height="40" top="130" width="100" value="1\1" align="center" fontSize="30"/>
<text height="32" left="100" width="100" top="130" align="left" fontSize="30" value="运单号"/>
<text name="YunDanText" left="200" height="46" top="130" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
<% } %>
</layout>
</layout>
<!-- 收件人信息 -->
<layout height="244" width="800" orientation="vertical" bordersize="0,0,0,2" >
<layout height="84" width="800">
<text name="Bigpen" top="8" value="<%= data.routingInfo ? (data.routingInfo.threeSegmentCode || '') : '' %>" fontWeight="bold" align="left" fontSize="75"/>
</layout>
<layout height="40" bordersize="0,2,0,2" orientation="horizontal" >
<% if(recipient_virtualNumber.length) {%>
<text value="隐私号码" width="140" height="40" align="center" valign="center" bkcolor="ff000000" textcolor="ffffffff" fontSize="30"/>
<text value="<%=recipient_virtualNumber%>转<%=recipient_identifyNumber%>" padding="10,5,0,0" width="300" height="40" align="left" valign="top" fontSize="30"/>
<% } %>
</layout>
<layout height="120" width="800">
<layout width="80">
<image name="收" height="63" width="56" top="25" left="16"/>
</layout>
<layout width="720" left="80">
<text name="ReceiverInfo" value="<%=recipient_name%> <%=recipient_telephone_number%>&#x000A;<%=recipient_address%>" width="520" fontSize="28" fontWeight="bold" top="16" align="left" valign="center"/>
<waterrmark name="destTeamCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.destTeamCode || '') : ''%>" width="520" fontSize="100" fontWeight="bold" Alpha="70" top="20" align="center" valign="center"/>
<image name="cod" value="<%=data.commonPrintDto ? (data.commonPrintDto.cod || '') : ''%>" height="141" left="682" top="148" width="78" zIndex="334"/>
</layout>
</layout>
</layout>
<layout height="208" width="800" bordersize="0,0,0,2">
<layout width="264">
<line height="2" type="dash" top="48"/>
<line height="2" type="dash" top="136"/>
<text name="payType" value="<%=data.commonPrintDto ? (data.commonPrintDto.payType || '') : ''%>" height="48" fontSize="24" align="center" valign="center"/>
<text name="codingMapping" value="<%=data.commonPrintDto ? (data.commonPrintDto.codingMapping || '') : ''%>" height="88" top="48" fontSize="70" align="center" valign="center"/>
<text name="sourceTransferCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.sourceTransferCode || '') : ''%>" top="136" height="72" fontSize="30" align="center" valign="center"/>
</layout>
<!-- 二维码 -->
<layout width="256" left="264" bordersize="2,0,2,0">
<qrcode name="twoDimensionCode" value="<%=data.commonPrintDto ? (data.commonPrintDto.twoDimensionCode || '') : ''%>" height="192" width="192" left="32" top="8"/>
</layout>
<layout width="80" left="520" bordersize="2,0,2,0">
<text top="16" value="已验视" fontSize="40" orientation="vertical" width="112" align="left" valign="center"/>
</layout>
<layout width="200" left="600" bordersize="2,0,0,0">
<line height="2" type="dash" top="136"/>
<text name="abFlag" value="<%=data.commonPrintDto ? (data.commonPrintDto.abFlag || '') : ''%>" height="141" align="center" valign="center" fontSize="90"/>
<text name="codingMappingOut" value="<%=data.commonPrintDto ? (data.commonPrintDto.codingMappingOut || '') : ''%>" top="136" height="72" fontSize="30" align="center" valign="center"/>
</layout>
</layout>
<!-- 寄件人信息 -->
<layout height="76" width="800" bordersize="0,0,0,2">
<layout width="80" left="0">
<text value="寄" left="8" fontSize="55" align="center" top="8"/>
</layout>
<layout width="720" left="80">
<text name="SenderInfo" value="<%=sender_name%> <%=sender_telephone_number%>&#x000A;<%=sender_address%>" top="8" fontSize="24" align="left" valign="center"/>
</layout>
</layout>
<layout height="104" orientation="vertical" width="800" bordersize="0,0,0,2" >
<%var _INSURE = (data.logisticsServices && data.logisticsServices.INSURE && data.logisticsServices.INSURE.desc) ? "保价" : '' %>
<%var _IN144 = (data.logisticsServices && data.logisticsServices.IN144 ) ? "到齐派 " : '' %>
<text value="增值服务:<%=_IN144 + _INSURE %>" height="33" left="40" align="left" valign="center" fontSize="30"/>
<text value="寄托物:" height="33" align="left" valign="center" left="40" fontSize="30"/>
<text value="计费重量: 实际重量: 费用合计:" height="33" align="left" left="40" valign="center" fontSize="30"/>
</layout>
<layout height="280" width="800" bordersize="0,0,0,2" >
<layout name="user" height="280" width="480" >
</layout>
<!-- 图标区域 -->
<layout height="320" left="480" width="800" >
<image name="printIcon1" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon1 || '') : ''%>" width="136" height="136" top="4" left="20" zIndex="334"/>
<image name="printIcon2" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon2 || '') : ''%>" height="136" width="136" top="4" left="164" zIndex="334"/>
<image name="printIcon3" value="<%=data.commonPrintDto ? (data.commonPrintDto.printIcon3 || '') : ''%>" height="136" top="144" left="92" width="136" zIndex="334"/>
</layout>
</layout>
<layout height="240" width="800" bordersize="0,0,0,2">
<layout height="90" >
<% if(context.bottomLogo) {%>
<image name="logo" type="1" width="238" height="86" top="2" value="https://funimg.pddpic.com/print_template/0882bedd-da33-42fc-9bb0-26ad7fe24bb2.png.slim.png" />
<% } %>
<text name="proCodeText" value="<%=data.commonPrintDto ? (data.commonPrintDto.proCode || '') : ''%>" height="60" left="380" top="15" width="400" align="right" fontSize="50" fontWeight="bold" zIndex="334"/>
</layout>
<layout left="200" top="90">
<text height="32" left="20" width="100" align="left" fontSize="23" value="打印时间"/>
<text name="printdate" height="32" width="130" left="120" align="left" value="<%=context.date || ''%>" fontSize="23"/>
<text name="printtime" height="40" width="100" left="250" align="left" value="<%=context.time || ''%>" fontSize="23"/>
</layout>
<layout height="128" top="112" width="800">
<barcode name="YunDanBarCode" type="code128b" height="90" width="600" value="<%=_YunDanBarCode %>" top="8" left="100"/>
<% if(data.totalPackagesCount >1 && data.waybillSequence) {%>
<text height="40" top="100" width="100" value="<%=data.waybillSequence || ''%>\<%=data.totalPackagesCount || ''%>" align="center" fontSize="30"/>
<% }else { %>
<text height="40" top="100" width="100" value="1\1" align="center" fontSize="30"/>
<% } %>
<text height="32" left="100" width="100" top="100" align="left" fontSize="30" value="运单号"/>
<text name="YunDanText" left="200" height="46" top="100" value="<%=_YunDanBarCode %>" align="left" fontSize="30"/>
</layout>
</layout>
<!-- 寄件人信息 -->
<layout height="64" width="800" bordersize="0,0,0,2">
<layout width="80" left="0">
<text value="寄" left="8" fontSize="55" align="center" top="5"/>
</layout>
<layout width="720" left="80">
<text name="SenderInfo" value="<%=sender_name%> <%=sender_telephone_number%>&#x000A;<%=sender_address%>" top="16" fontSize="24" align="left" valign="center"/>
</layout>
</layout>
<layout height="64" width="800" bordersize="0,0,0,2">
<layout width="80" left="0">
<text value="收" left="8" fontSize="55" align="center" top="5"/>
</layout>
<layout width="720" left="80">
<text name="ReceiverInfo" value="<%=recipient_name%> <%=recipient_telephone_number%>&#x000A;<%=recipient_address%>" top="16" fontSize="24" align="left" valign="center"/>
</layout>
</layout>
<layout height="112" orientation="vertical" width="800" bordersize="0,0,0,2" >
<text value="增值服务:<%=(data.logisticsServices && data.logisticsServices.INSURE && data.logisticsServices.INSURE.desc) ? "" : ''%>" height="33" left="40" align="left" valign="center" fontSize="30"/>
<text value="寄托物:" height="33" align="left" valign="center" left="40" fontSize="30"/>
<text value="计费重量: 实际重量: 费用合计:" height="33" align="left" left="40" valign="center" fontSize="30"/>
</layout>
</layout>
</page>