很多时候,我们把电子版的订单发送给小妹,让其打印并开发票,但是有一个不方便的地方就是每次开发票都需要到后台去找抬头和识别码,很不方便。那么把发票相关信息集成到订单中去,这样不是就可以直接复制开发票 了吗?
昨天琢磨了一下,今天把方法写给大家。
admin\tp_api.php文件,大约313行,
- if (!empty($order_id)) {
- $order_ids[] = $order_id;
下面添加代码
- $sql = 'SELECT inv_payee, tax_id FROM ' . $GLOBALS['ecs']->table('order_info') . ' WHERE order_id = \'' . $order_id . '\'';
- $invoice= $GLOBALS['db']->getRow($sql);
- $inv_payee =$invoice['inv_payee'];
- $tax_id = $invoice['tax_id'];
- $smarty->assign('inv_payee', $inv_payee);
- $smarty->assign('tax_id', $tax_id);
admin\templates\library\order_print_part.lbi文件,大约21行
- <div class="row">
- {if $order_type eq 'order'}<div class="lie w300">{$lang.label_delivery_time}{$order_info.best_time}</div>{/if}
- <div class="lie w300">{$lang.label_payment_method}{if $order_type eq 'order'}{$order_info.pay_name}{else}{$lang.offline_transaction}{/if}</div>
- </div>
下面添加代码
- <div class="row">
- <div class="lie w300">发票抬头:{$inv_payee|default:$lang.wu}</div>
- <div class="lie w300">纳税人识别号:{$tax_id|default:$lang.wu}</div>
- </div>
这样打印订单的时候就可以显示发票抬头和识别码了,把这个订单保存为pdf,然后就可以打印和开票了。
大商创系统后台订单的其它信息这里会显示发票的抬头和识别码
但是大商创系统很奇怪,当编辑“其他信息”的时候,只显示发票抬头,不显示识别码。
识别码不显示,那就更没办法去修改了。这里我们先显示这个识别码,解决办法为
admin\templates\order_step.dwt
大约445行
- <div class="item">
- <div class="step_label">{$lang.label_inv_payee}</div>
- <div class="step_value"><input type="text" name="inv_payee" id="inv_payee" value="{$order.inv_payee}" class="text" autocomplete="off" /></div>
- </div>
下面添加代码
- <div class="item">
- <div class="step_label">{$lang.id_code}</div>
- <div class="step_value"><input type="text" name="tax_id" id="tax_id" value="{if $order.invoice_type eq 0}{$order.tax_id|default:$lang.wu}{else}{$vat_info.tax_id|default:$lang.wu}{/if}" class="text" autocomplete="off" /></div>
- </div>
效果如下
仅仅显示这个代码没意义,我们还需要能够编辑、修改、保存,添加一句代码就行了
admin\order.php
大约4187行
- $order['inv_payee'] = $_POST['inv_payee'];
下面添加代码
- $order['tax_id'] = $_POST['tax_id'];
这样就可以编辑保存识别码了。