打印模板管理
<ul>
<li>
<p>打印模板主要是为定长、定宽的打印内容设计的内容格式化功能,主要用于<a href="http://www.feyin.cn/zh-3080/" title="标签类打印机ZH-3080">标签类打印机ZH-3080</a>,一般根据标签纸张的大小(30mmX40mm、60mmX30mm等多种规格)确定模板外框大小后,再设计内部的内容排版格式。</p>
</li>
<li>每个开发者名下最多可以创建1000个模板。</li>
</ul>
<p>模板管理分为如下几个api
<a href="#1">1. 创建标签打印模板</a>
<a href="#2">2. 修改打印模板</a>
<a href="#3">3. 获取模板列表</a></p>
<p>模板的排版问题请参考:<a href="#4">模板格式说明</a></p>
<hr />
<h4 id="1">创建标签打印模板</h4>
<p><strong>请求URL:</strong> </p>
<ul>
<li><code>https://api.open.feyin.net/template?access_token=ACCESS_TOKEN</code></li>
</ul>
<p><strong>请求方式:</strong></p>
<ul>
<li>POST,JSON提交</li>
</ul>
<p><strong>参数:</strong> </p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">name</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>模板名称,不超过30个字符</td>
</tr>
<tr>
<td style="text-align: left;">content</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>模板内容,格式详见下面的“模板格式”中的例子</td>
</tr>
<tr>
<td style="text-align: left;">catalog</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>模板归类,如 "tsc"</td>
</tr>
<tr>
<td style="text-align: left;">desc</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>模板说明</td>
</tr>
</tbody>
</table>
<p><strong>请求示例</strong></p>
<pre><code class="language-json"> {
"name": "My Order Template",
"content": "模板的内容,详见下面的例子,譬如 hello {{ name }}",
"catalog": "tsc",
"desc": "模板的消息描述内容"
}</code></pre>
<p><strong>返回示例</strong></p>
<p>正常情况下,飞印开放平台会返回下述JSON数据:</p>
<pre><code class="language-json">{
"template_id":"bbbbbf0eb8222228c6c5254000bbbbb"
}</code></pre>
<p><strong>返回参数说明</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">template_id</td>
<td style="text-align: left;">string</td>
<td>返回创建成功的模板id</td>
</tr>
</tbody>
</table>
<p>错误时飞印开放平台会返回错误码等信息,JSON数据详见“<a href="https://www.showdoc.cc/1687352?page_id=82683529162250" title="全局返回码说明">全局返回码说明</a>”</p>
<hr />
<h4 id="2">修改打印模板</h4>
<p><strong>请求URL:</strong> </p>
<ul>
<li><code>https://api.open.feyin.net/template/{template_id}?access_token=ACCESS_TOKEN</code></li>
<li>url中的 模板id 为创建模板时,系统返回的模板id</li>
</ul>
<p><strong>请求方式:</strong></p>
<ul>
<li>POST,JSON提交</li>
</ul>
<p><strong>参数:</strong> </p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">name</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>模板名称,不超过30个字符</td>
</tr>
<tr>
<td style="text-align: left;">content</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>模板内容,格式详见创建模板时的“模板格式”中的例子</td>
</tr>
<tr>
<td style="text-align: left;">catalog</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>模板归类,如 "tsc"</td>
</tr>
<tr>
<td style="text-align: left;">desc</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>模板说明</td>
</tr>
</tbody>
</table>
<p><strong>请求示例</strong></p>
<pre><code class="language-json"> {
"name": "更新过的模板名称",
"content": "需要更新的模板的内容"
"catalog": "tsc",
"desc": "模板的消息描述内容"
}</code></pre>
<p><strong>返回示例</strong></p>
<pre><code class="language-json">{
"errcode":0,
"errmsg":"ok"
}</code></pre>
<p>JSON数据详见“<a href="https://www.showdoc.cc/1687352?page_id=137418124005771" title="全局返回码说明">全局返回码说明</a>”</p>
<hr />
<h4 id="3">获取指定的打印模板</h4>
<p><strong>请求URL:</strong> </p>
<ul>
<li><code>https://api.open.feyin.net/template/detail/{template_id}?access_token=ACCESS_TOKEN</code></li>
</ul>
<p><strong>请求方式:</strong></p>
<ul>
<li>
<p>GET </p>
<p><strong>返回示例</strong></p>
</li>
</ul>
<pre><code class="language-json">{
"name": "My Order Template1",
"content": "模板的内容,详见下面的例子,譬如 hello {{ name }}",
"catalog": "tsc",
"desc": "模板的消息描述内容",
"updated_at": "2017-12-20 15:00:00"
}</code></pre>
<p><strong>返回参数说明</strong></p>
<p>返回一个template 对象</p>
<p><strong>tempalte对象</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">name</td>
<td style="text-align: left;">string</td>
<td>模板名称</td>
</tr>
<tr>
<td style="text-align: left;">content</td>
<td style="text-align: left;">string</td>
<td>模板内容</td>
</tr>
<tr>
<td style="text-align: left;">catalog</td>
<td style="text-align: left;">string</td>
<td>模板归类,如 "tsc"</td>
</tr>
<tr>
<td style="text-align: left;">desc</td>
<td style="text-align: left;">string</td>
<td>模板说明</td>
</tr>
<tr>
<td style="text-align: left;">updated_at</td>
<td style="text-align: left;">string</td>
<td>模板最后更新时间</td>
</tr>
</tbody>
</table>
<hr />
<h4 id="3">获取所有打印模板列表</h4>
<p><strong>请求URL:</strong> </p>
<ul>
<li><code>https://api.open.feyin.net/templates?access_token=ACCESS_TOKEN</code></li>
</ul>
<p><strong>请求方式:</strong></p>
<ul>
<li>
<p>GET </p>
<p><strong>返回示例</strong></p>
</li>
</ul>
<pre><code class="language-json">[
{
"name": "My Order Template1",
"content": "模板的内容,详见下面的例子,譬如 hello {{ name }}",
"catalog": "tsc",
"desc": "模板的消息描述内容",
"updated_at": "2017-12-20 15:00:00"
},
{
"name": "Tag Template2",
"content": "SIZE 60 mm,40 mm\nCLS\nTEXT 144,30,\"TSS24.BF2\",0,2,2,\"{{text1}}\"",
"catalog": "tsc",
"desc": "商标标签模板",
"updated_at": "2018-01-02 15:00:00"
}
...
]</code></pre>
<p><strong>返回参数说明</strong></p>
<p>返回一个列表,列表中每个元素均为一个如下的template 对象</p>
<p><strong>tempalte对象</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">name</td>
<td style="text-align: left;">string</td>
<td>模板名称</td>
</tr>
<tr>
<td style="text-align: left;">content</td>
<td style="text-align: left;">string</td>
<td>模板内容</td>
</tr>
<tr>
<td style="text-align: left;">catalog</td>
<td style="text-align: left;">string</td>
<td>模板归类,如 "tsc"</td>
</tr>
<tr>
<td style="text-align: left;">desc</td>
<td style="text-align: left;">string</td>
<td>模板说明</td>
</tr>
<tr>
<td style="text-align: left;">updated_at</td>
<td style="text-align: left;">string</td>
<td>模板最后更新时间</td>
</tr>
</tbody>
</table>
<hr />
<h3 id="4">模板格式说明</h3>
<p>模板内容中,用 {{ paramNname }} 表示 此处作为参数占位符,在打印模板消息时,将用提交过来的paramName所指定的数据替换,譬如, 假设模板是 </p>
<pre><code>TEXT 144,30,"TSS24.BF2",0,2,2,"{{text1}}"</code></pre>
<p>打印模板消息时,传递过来的参数是</p>
<pre><code>{
...
"text1":"这里是替换的内容",
...
}</code></pre>
<p>那么最终打印的内容会是</p>
<pre><code>TEXT 144,30,"TSS24.BF2",0,2,2,"这里是替换的内容"</code></pre>
<p>例1</p>
<pre><code>SIZE 60 mm,40 mm
CLS
TEXT 144,30,"TSS24.BF2",0,2,2,"{{text1}}"
TEXT 70,100,"TSS24.BF2",0,1,2,"{{text2}}"
TEXT 70,180,"TSS24.BF2",0,1,2,"{{text3}}"
TEXT 268,250,"TSS24.BF2",0,1,1,"官方网站"
TEXT 108,285,"TSS24.BF2",0,1,1,"{{text4}}"
QRCODE 240,90,M,6,A,0,"{{qrcode}}"
PRINT 1</code></pre>
<p>例2</p>
<pre><code>SIZE 60 mm,40 mm
CLS
TEXT 144,30,"TSS24.BF2",0,2,2,"{{text1}}"
TEXT 100,100,"TSS24.BF2",0,1,1,"{{text2}}"
TEXT 100,140,"TSS24.BF2",0,1,1,"{{text3}}"
BARCODE 100,230,"128",50,1,0,2,4,"{{barcode1}}"
BAR 100,85,280,5
TEXT 20,17,"TSS24.BF2",0,2,2,"{{text4}}"
TEXT 20,95,"TSS24.BF2",0,2,2,"{{text5}}"
TEXT 20,173,"TSS24.BF2",0,2,2,"{{text6}}"
TEXT 20,251,"TSS24.BF2",0,2,2,"{{text7}}"
TEXT 412,17,"TSS24.BF2",0,2,2,"{{text8}}"
TEXT 412,95,"TSS24.BF2",0,2,2,"{{text9}}"
TEXT 412,173,"TSS24.BF2",0,2,2,"{{text10}}"
TEXT 412,251,"TSS24.BF2",0,2,2,"{{text11}}"
PRINT 1</code></pre>