mirror of
https://gitee.com/ShopeX/OMS
synced 2026-04-27 03:05:45 +08:00
【新增】天猫超市商品下载同步
【修复】天猫超市发货问题 【修复】采购单单号因含特殊字符导致入库或取消失败 【修复】售后批量操作设置显示不正确
This commit is contained in:
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
@@ -131,7 +130,7 @@
|
||||
</div>
|
||||
</td>
|
||||
<td >
|
||||
<h4><{if $member.is_encrypt}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>购买人信息</h4>
|
||||
<h4><{if $member.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>购买人信息</h4>
|
||||
<div class="division" id="memberinfo">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
|
||||
@@ -180,7 +179,7 @@
|
||||
</td>
|
||||
<td >
|
||||
<h4>
|
||||
<{if $order.is_encrypt}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>
|
||||
<{if $order.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>
|
||||
<span><{t}>收货人信息<{/t}></span>
|
||||
<span style="position:relative;" id="order_receiver_copy_span"><button class="btn" id="order_receiver_copy" stu="Y" info="<{$order.consignee.area|region}>,<{$order.consignee.addr|escape:'html'}>,<{$order.consignee.name}><{if $order.consignee.telephone}>,<{$order.consignee.telephone|escape:'html'}><{/if}><{if $order.consignee.mobile}>,<{$order.consignee.mobile|escape:'html'}><{/if}>,<{$order.consignee.zip|escape:'html'}>"><span><span><{t}>复制收货人信息<{/t}></span></span></button></span>
|
||||
<!-- <span style="font-size:12px;" class="sysiconBtnNoIcon" style="cursor:pointer" id="order_receiver_copy" status="Y" info="<{$order.consignee.area|escape:'html'}>,<{$order.consignee.addr|escape:'html'}>,<{$order.name}><{if $order.consignee.telephone}>,<{$order.consignee.telephone|escape:'html'}><{/if}><{if $order.consignee.mobile}>,<{$order.consignee.mobile|escape:'html'}><{/if}>,<{$order.consignee.zip|escape:'html'}>"><{t}>复制收货人信息<{/t}></span> -->
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
height: 20px;
|
||||
}
|
||||
</style>
|
||||
<h4><{if $dly.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<h4><{if $dly.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<div class="division" id="deliveryinfo">
|
||||
<table border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
|
||||
@@ -86,28 +86,28 @@
|
||||
</div>
|
||||
</td>
|
||||
<td style="vertical-align:top;">
|
||||
<h4><{if $member.is_encrypt}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>购买人信息</h4>
|
||||
<h4><{if $member.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>购买人信息</h4>
|
||||
<div class="division">
|
||||
<table cellspacing="0" cellpadding="0" border="0" id="memberinfo">
|
||||
<tbody><tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>用户名:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>用户名:</th>
|
||||
<td>
|
||||
<span sensitive-field="uname"><{$member.account.uname|ciphertext:'member','uname',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'name' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'name' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<td><span sensitive-field="name"><{$member.contact.name|ciphertext:'member','name',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td><span sensitive-field="mobile"><{$member.contact.phone.mobile|ciphertext:'member','mobile',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td><span sensitive-field="tel"><{$member.contact.phone.telephone|ciphertext:'member','tel',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'address' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'address' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<td><{$member.contact.area|region}></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -116,29 +116,29 @@
|
||||
</td>
|
||||
<td style="vertical-align:top;">
|
||||
<h4>
|
||||
<span><{if $order.is_encrypt}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{t}>收货人信息<{/t}></span>
|
||||
<span><{if $order.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{t}>收货人信息<{/t}></span>
|
||||
</h4>
|
||||
<div class="division">
|
||||
<table cellspacing="0" cellpadding="0" border="0" id="consigneeinfo">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th ><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<th ><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<td><span sensitive-field="ship_name" data-order="2"><{$order.ship_name|ciphertext:'order','ship_name',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td><span sensitive-field="ship_mobile" data-order="4"><{$order.ship_mobile|ciphertext:'order','ship_mobile',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td><span sensitive-field="ship_tel" data-order="3"><{$order.ship_tel|ciphertext:'order','ship_tel',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<td><{$order.ship_area|region}></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地址:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地址:</th>
|
||||
<td style="white-space: normal; line-height: 18px;"><span sensitive-field="ship_addr" data-order="1"><{$order.ship_addr|escape:'html'|ciphertext:'order','ship_addr',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr style="display: none;">
|
||||
|
||||
@@ -313,6 +313,8 @@ define("SHOP_GET_ITEMS_ALL_RPC", 'store.items.all.get');
|
||||
define("SHOP_GET_ITEMS_LIST_RPC", 'store.items.list.get'); // 通过IID获取多个前端商品
|
||||
define("SHOP_GET_FENXIAO_PRODUCTS", 'store.fenxiao.products.get'); // 淘分销商品下载
|
||||
define("SHOP_GET_SUPPLIER_PRODUCTS", 'store.supplier.item.list.info.query'); // 供应商商品下载
|
||||
define("SHOP_SUPPLIER_PRODUCTS_FIND",'store.supplier.products.find'); // 供应商商品查询
|
||||
|
||||
define("SHOP_ITEM_GET",'store.item.get'); // 通过IID获取单个商品
|
||||
define("SHOP_ITEM_SKU_GET",'store.item.sku.get'); // 单拉商品SKU
|
||||
define("SHOP_ORDER_SETTLE_GET",'store.trade.settle.get'); //获取抖音订单明细
|
||||
|
||||
@@ -172,7 +172,7 @@ class erpapi_shop_matrix_tmall_request_maochao_delivery extends erpapi_shop_requ
|
||||
// 喵速达:取平台推送的store_code
|
||||
$store_code = $storeCodes[0];
|
||||
}else{
|
||||
$store_code = $sdf['branch']['branch_bn'];
|
||||
$store_code = $sdf['store_code'] ?: $sdf['branch']['branch_bn'];
|
||||
}
|
||||
|
||||
// params
|
||||
@@ -189,4 +189,4 @@ class erpapi_shop_matrix_tmall_request_maochao_delivery extends erpapi_shop_requ
|
||||
];
|
||||
return $params;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
* @author ykm 2022/6/27 18:09:55
|
||||
* @describe 处理店铺商品相关类
|
||||
*/
|
||||
|
||||
class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_request_product {
|
||||
|
||||
protected function getUpdateStockApi() {
|
||||
@@ -25,21 +26,40 @@ class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_reque
|
||||
return $api_name;
|
||||
}
|
||||
|
||||
/**
|
||||
* format_stocks
|
||||
* @param mixed $stockList stockList
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
private function getStoreCode($branch_bn) {
|
||||
|
||||
public function format_stocks($stockList) {
|
||||
static $storeCode = [];
|
||||
if(isset($storeCode[$branch_bn])) {
|
||||
return $storeCode[$branch_bn];
|
||||
}
|
||||
|
||||
$branch = app::get('ome')->model('branch')->dump(array ('branch_bn'=>$branch_bn,'check_permission'=>'false'));
|
||||
if(empty($branch)) {
|
||||
return $branch_bn;
|
||||
}
|
||||
|
||||
$relation = app::get('ome')->model('branch_relation')->dump(array ('branch_id'=>$branch['branch_id'],'type' => '3pl'));
|
||||
if(empty($relation)) {
|
||||
return $branch_bn;
|
||||
}
|
||||
|
||||
$storeCode[$branch_bn] = $relation['relation_branch_bn'];
|
||||
|
||||
return $storeCode[$branch_bn];
|
||||
}
|
||||
|
||||
|
||||
public function _getUpdateStockParams($stockList) {
|
||||
$firstStock = current($stockList);
|
||||
$shop_id = $this->__channelObj->channel['shop_id'];
|
||||
|
||||
if(empty($firstStock['branch_bn'])) {
|
||||
$memo = '未使用分仓独立回写,不能回写';
|
||||
$optLogModel = app::get('inventorydepth')->model('operation_log');
|
||||
$optLogModel->write_log('shop', $shop_id, 'stockup',$memo);
|
||||
return false;
|
||||
// $memo = '未使用分仓独立回写,不能回写';
|
||||
// $optLogModel = app::get('inventorydepth')->model('operation_log');
|
||||
// $optLogModel->write_log('shop', $shop_id, 'stockup',$memo);
|
||||
return [];
|
||||
}
|
||||
|
||||
$bns = array();
|
||||
foreach ($stockList as $key => $val)
|
||||
{
|
||||
@@ -51,7 +71,7 @@ class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_reque
|
||||
$skuObj = app::get('inventorydepth')->model('shop_skus');
|
||||
$tempList = $skuObj->getList('shop_sku_id,shop_product_bn,shop_iid', array('shop_id'=>$shop_id, 'shop_product_bn'=>$bns));
|
||||
if(empty($tempList)){
|
||||
return false;
|
||||
return [];
|
||||
}
|
||||
$shopBnList = [];
|
||||
foreach ($tempList as $key => $value) {
|
||||
@@ -79,21 +99,21 @@ class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_reque
|
||||
"additional_info" => [
|
||||
"attribute" => [
|
||||
"inv_operate_mode" => "FULLAMOUNT",
|
||||
"supplier_id" => $val['shop_sku_id']
|
||||
"supplier_id" => $this->__channelObj->channel['config']['supplier_id'],
|
||||
]
|
||||
],
|
||||
"location"=> [
|
||||
"store_code"=> $value['branch_bn']
|
||||
"store_code"=> $this->getStoreCode($value['branch_bn'])
|
||||
],
|
||||
"detail_order"=> [
|
||||
"operation_detail_order_id"=> count($detail_operation_list)
|
||||
"operation_detail_order_id"=> time().rand(1000, 9999),
|
||||
]
|
||||
];
|
||||
$detail_operation_list[] = $tmp;
|
||||
}
|
||||
}
|
||||
if(empty($list_quantity)) {
|
||||
return false;
|
||||
return [];
|
||||
}
|
||||
$inventory_main_operation = [[
|
||||
'main_order'=>[
|
||||
@@ -110,16 +130,7 @@ class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_reque
|
||||
return $return;
|
||||
}
|
||||
|
||||
protected function _getUpdateStockParams($stocks) {
|
||||
return $stocks;
|
||||
}
|
||||
|
||||
#实时下载店铺商品
|
||||
/**
|
||||
* skuAllGet
|
||||
* @param mixed $sdf sdf
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function skuAllGet($sdf)
|
||||
{
|
||||
$timeout = 20;
|
||||
@@ -130,36 +141,86 @@ class erpapi_shop_matrix_tmall_request_maochao_product extends erpapi_shop_reque
|
||||
'end_time' => $sdf['end_time'],
|
||||
'supplier_id' => $sdf['supplier_id'],
|
||||
);
|
||||
|
||||
if ($sdf['scroll_id']) {
|
||||
$param['scroll_id'] = $sdf['scroll_id'];
|
||||
}
|
||||
|
||||
$title = "获取店铺(" . $this->__channelObj->channel['name'] .')商品';
|
||||
$result = $this->__caller->call(SHOP_GET_SUPPLIER_PRODUCTS,$param,array(),$title,$timeout, $param['supplier_id']);
|
||||
|
||||
$api_name = SHOP_GET_SUPPLIER_PRODUCTS;
|
||||
if (is_array($this->__channelObj->channel['config']) && in_array('MCZZ',(array) $this->__channelObj->channel['config']['sub_business_type'])) {
|
||||
$api_name = SHOP_SUPPLIER_PRODUCTS_FIND;
|
||||
}
|
||||
|
||||
$result = $this->__caller->call($api_name,$param,array(),$title,$timeout, $param['supplier_id']);
|
||||
if ($result['res_ltype'] > 0) {
|
||||
for ($i=0;$i<3;$i++) {
|
||||
$result = $this->__caller->call(SHOP_GET_SUPPLIER_PRODUCTS,$param,array(),$title,$timeout, $param['supplier_id']);
|
||||
$result = $this->__caller->call($api_name,$param,array(),$title,$timeout, $param['supplier_id']);
|
||||
if ($result['res_ltype'] == 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if($result['data']) {
|
||||
$data = json_decode($result['data'], true);
|
||||
$result['data'] = [];
|
||||
if(empty($data['data']['data']['page_data']['page_data'])) {
|
||||
return $result;
|
||||
}
|
||||
foreach ($data['data']['data']['page_data']['page_data'] as $value) {
|
||||
$result['data'][] = [
|
||||
'iid' => $value['sc_item_id'],
|
||||
'title' => $value['sc_item_name'],
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku' => [
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku_id' => $value['supplier_id'],
|
||||
'barcode' => $value['barcode'],
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
$data = $result['data'] ? json_decode($result['data'], true) : [];
|
||||
|
||||
if ($api_name == SHOP_GET_SUPPLIER_PRODUCTS) {
|
||||
$result['data'] = $this->supplierProductsGetResponse($data);
|
||||
}
|
||||
|
||||
if ($api_name == SHOP_SUPPLIER_PRODUCTS_FIND) {
|
||||
$result['scroll_id'] = $data['data']['scroll_id'];
|
||||
$result['total_count'] = $data['data']['total_count'];
|
||||
|
||||
$result['data'] = $this->supplierProductsFindResponse($data);
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
private function supplierProductsGetResponse($data) {
|
||||
|
||||
$formatData = [];
|
||||
if(!$data || empty($data['data']['data']['page_data']['page_data'])) {
|
||||
return $formatData;
|
||||
}
|
||||
foreach ($data['data']['data']['page_data']['page_data'] as $value) {
|
||||
$formatData[] = [
|
||||
'iid' => $value['sc_item_id'],
|
||||
'title' => $value['sc_item_name'],
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku' => [
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku_id' => $value['supplier_id'],
|
||||
'barcode' => $value['barcode'],
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
return $formatData;
|
||||
}
|
||||
|
||||
private function supplierProductsFindResponse($data) {
|
||||
$formatData = [];
|
||||
|
||||
if(!$data || empty($data['data']['data'])) {
|
||||
return $formatData;
|
||||
}
|
||||
|
||||
foreach ($data['data']['data']['supply_product_info_response'] as $value) {
|
||||
$formatData[] = [
|
||||
'iid' => $value['supplier_product_id'],
|
||||
'title' => $value['supplier_product_name'],
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku' => [
|
||||
'outer_id' => $value['outer_id'],
|
||||
'sku_id' => $value['supplier_product_id'],
|
||||
'barcode' => $value['barcode'],
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
return $formatData;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,6 +39,39 @@ class erpapi_shop_response_bookingrefund extends erpapi_shop_response_abstract {
|
||||
'oid_list' => $params['oid_list'],
|
||||
'refundStatus' => $params['refundStatus'] ? : 1,
|
||||
'shop_id' => $this->__channelObj->channel['shop_id'],
|
||||
'sub_business_type' => [],
|
||||
];
|
||||
|
||||
if ( is_array($this->__channelObj->channel['config']) && $this->__channelObj->channel['config']['sub_business_type'] ) {
|
||||
$sdf['sub_business_type'] = (array) $this->__channelObj->channel['config']['sub_business_type'];
|
||||
}
|
||||
|
||||
return $sdf;
|
||||
}
|
||||
|
||||
public function fxordermsg($params){
|
||||
// shopbee供销供应商订单信息同步
|
||||
$this->__apilog['title'] = '供销供应商订单信息同步';
|
||||
$this->__apilog['original_bn'] = $params['bizOrderCode'];
|
||||
if (empty($params['bizOrderCode'])) {
|
||||
return array('rsp' => 'fail', 'msg' => '业务单号不能为空');
|
||||
}
|
||||
$sdf = [
|
||||
'order_bn' => $params['bizOrderCode'],
|
||||
'shop_id' => $this->__channelObj->channel['shop_id'],
|
||||
'supplierName' => $params['supplierName'],
|
||||
'buyerComments' => $params['buyerComments'],
|
||||
'supplierId' => $params['supplierId'],
|
||||
'sellerId' => $params['sellerId'],
|
||||
'bizType' => $params['bizType'],
|
||||
'outBizCode' => $params['outBizCode'],
|
||||
'extraContent' => $params['extraContent'],
|
||||
'sellerComments' => $params['sellerComments'],
|
||||
'sellerName' => $params['sellerName'],
|
||||
'bizOrderCode' => $params['bizOrderCode'],
|
||||
'deliverRequirement' => $params['deliverRequirement'],
|
||||
'appointArrivedTime' => $params['appointArrivedTime'],
|
||||
'appointDeliveryTime' => $params['appointDeliveryTime'],
|
||||
];
|
||||
return $sdf;
|
||||
}
|
||||
|
||||
@@ -79,6 +79,12 @@ class erpapi_shop_response_process_bookingrefund{
|
||||
}else{ //异步asynchronous
|
||||
$orderInfo['pause_status'] = $pause_status;
|
||||
$ret = $this->ordermsg_back($orderInfo, $params);
|
||||
|
||||
// 如果是猫超主站退款回告成功,直接退款
|
||||
if ($ret['rsp'] == 'succ' && in_array('MCZZ', (array) $params['sub_business_type'])) {
|
||||
$this->_dealRefund($orderInfo);
|
||||
}
|
||||
|
||||
return array('rsp'=>'succ', 'msg' => $ret);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -393,6 +393,7 @@ class erpapi_shop_whitelist {
|
||||
SHOP_RESHIPPING_CONSIGNGOODS, //补寄发货
|
||||
SHOP_RESHIPPING_REFUSEREASON_GET, //查询拒绝原因列表
|
||||
STORE_VIRTUAL_NUMBER_GROUP_UPDATE,
|
||||
SHOP_SUPPLIER_PRODUCTS_FIND, //供应商商品查询
|
||||
);
|
||||
|
||||
/**
|
||||
|
||||
@@ -20,16 +20,12 @@
|
||||
* @author 334395174@qq.com
|
||||
* @version 0.1
|
||||
*/
|
||||
|
||||
class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
{
|
||||
|
||||
// 流水单
|
||||
/**
|
||||
* index
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
|
||||
public function index(){
|
||||
public function index(){
|
||||
|
||||
$params = array(
|
||||
'actions'=>[],
|
||||
@@ -50,10 +46,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
//基础数据
|
||||
/**
|
||||
* base
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function base(){
|
||||
|
||||
if(!isset($_POST['time_from'])) $_POST['time_from'] = date('Y-m-01', strtotime(date("Y-m-d")));
|
||||
@@ -197,10 +189,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
//收支单导入 - 账单导入
|
||||
/**
|
||||
* bill_import
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function bill_import(){
|
||||
$platformConfig = $this->getPlatformConfig();
|
||||
|
||||
@@ -246,10 +234,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 待核销列表
|
||||
/**
|
||||
* unverification
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function unverification()
|
||||
{
|
||||
|
||||
@@ -276,10 +260,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
|
||||
|
||||
// 导出设置页
|
||||
/**
|
||||
* export
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function export(){
|
||||
|
||||
$this->pagedata['shop_list'] = financebase_func::getShopList(financebase_func::getShopType());
|
||||
@@ -289,10 +269,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 检查是否允许导出
|
||||
/**
|
||||
* 检查Export
|
||||
* @return mixed 返回验证结果
|
||||
*/
|
||||
public function checkExport(){
|
||||
$mdlBill = app::get('financebase')->model('bill');
|
||||
$bill_start_time = strtotime($_POST['time_from']);
|
||||
@@ -305,14 +281,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 导出csv
|
||||
/**
|
||||
* doExport
|
||||
* @param mixed $shop_id ID
|
||||
* @param mixed $time_from time_from
|
||||
* @param mixed $time_to time_to
|
||||
* @param mixed $bill_status bill_status
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function doExport($shop_id,$time_from,$time_to,$bill_status='all'){
|
||||
|
||||
set_time_limit(0);
|
||||
@@ -395,10 +363,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 重新匹配页面
|
||||
/**
|
||||
* rematch
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function rematch(){
|
||||
$this->pagedata['request_url'] = $this->url .'&act=doMatch';
|
||||
/* if($_POST['bill_category'] != 'all' && empty($_POST['id'])) {
|
||||
@@ -408,10 +372,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
$this->dialog_batch('financebase_mdl_base', false, 100, 'incr');
|
||||
}
|
||||
|
||||
/**
|
||||
* doMatch
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function doMatch(){
|
||||
$retArr = array(
|
||||
'itotal' => 0,
|
||||
@@ -486,11 +446,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 重新设置订单号
|
||||
/**
|
||||
* 重置OrderBn
|
||||
* @param mixed $id ID
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function resetOrderBn($id)
|
||||
{
|
||||
$bill_info = app::get('financebase')->model("bill")->getList('order_bn,id,credential_number,trade_no,money',array('id'=>$id,'status|lthan'=>2),0,1);
|
||||
@@ -499,10 +454,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 保存设置订单号
|
||||
/**
|
||||
* 保存OrderBn
|
||||
* @return mixed 返回操作结果
|
||||
*/
|
||||
public function saveOrderBn()
|
||||
{
|
||||
$this->begin('index.php?app=financebase&ctl=admin_shop_settlement_bill&act=index');
|
||||
@@ -548,10 +499,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 导出未匹配订单号
|
||||
/**
|
||||
* exportUnMatch
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function exportUnMatch(){
|
||||
|
||||
$oFunc = kernel::single('financebase_func');
|
||||
@@ -562,11 +509,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
$this->display('admin/bill/export_unmatch.html');
|
||||
}
|
||||
|
||||
/**
|
||||
* doUnMatchExport
|
||||
* @param mixed $platform_type platform_type
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function doUnMatchExport($platform_type = 'alipay'){
|
||||
set_time_limit(0);
|
||||
|
||||
@@ -662,10 +604,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
}
|
||||
|
||||
// 导入未匹配订单号
|
||||
/**
|
||||
* importUnMatch
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function importUnMatch(){
|
||||
|
||||
$oFunc = kernel::single('financebase_func');
|
||||
@@ -676,10 +614,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
$this->display('admin/bill/import_unmatch.html');
|
||||
}
|
||||
|
||||
/**
|
||||
* doUnMatchImport
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function doUnMatchImport()
|
||||
{
|
||||
|
||||
@@ -722,11 +656,6 @@ class financebase_ctl_admin_shop_settlement_bill extends desktop_controller
|
||||
|
||||
|
||||
// 查看核销详情
|
||||
/**
|
||||
* detailVerification
|
||||
* @param mixed $order_bn order_bn
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function detailVerification($order_bn)
|
||||
{
|
||||
echo $order_bn;
|
||||
|
||||
@@ -65,9 +65,15 @@ class inventorydepth_shop_maochao_skus {
|
||||
$sdf['page'] = $offset;
|
||||
$sdf['page_size'] = $limit;
|
||||
$rs = kernel::single('erpapi_router_request')->set('shop',$shop_id)->product_skuAllGet($sdf);
|
||||
if(empty($rs['data'])) {
|
||||
if(empty($rs['data']) && $sdf['page'] != 1) {
|
||||
break;
|
||||
}
|
||||
|
||||
if ($rs['scroll_id']) {
|
||||
$sdf['scroll_id'] = $rs['scroll_id'];
|
||||
}
|
||||
|
||||
|
||||
$data = [];
|
||||
foreach ($rs['data'] as $item) {
|
||||
$tmp = array(
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
</table>
|
||||
</div></td>
|
||||
<td valign="top" >
|
||||
<h4><{if $invoice_order.is_encrypt}><a class="invoice-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>客户信息</h4>
|
||||
<h4><{if $invoice_order.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="invoice-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>客户信息</h4>
|
||||
<div class="division" >
|
||||
<table id="invoiceinfo" cellspacing="0" cellpadding="0" border="0" class="data-hide">
|
||||
<tbody>
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
<td width="180px">送货地址:</td>
|
||||
<td id='consigneeinfo'>
|
||||
<{$dly.ship_province}> <{$dly.ship_city}> <{$dly.ship_district}> <span sensitive-field="ship_addr"><{$dly.ship_addr|escape:'html'|ciphertext:'order','ship_addr',$dly.shop_type}></span>
|
||||
<{if $dly.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>
|
||||
<{if $dly.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<style>
|
||||
.logi-no-input{width:150px;height:20px;}
|
||||
</style>
|
||||
<h4><{if $dly.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<h4><{if $dly.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<input type="hidden" name="status" value="<{$status}>" />
|
||||
<div class="division">
|
||||
<table border="0" cellspacing="0" cellpadding="0" id="deliveryinfo">
|
||||
@@ -34,15 +34,15 @@
|
||||
<td ><{foreach from=$order_bn item=item}><{$item}><br><{/foreach}></td>
|
||||
<th >配送方式:</th>
|
||||
<td ><{$dly.delivery}></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<td ><span sensitive-field="uname"><{$dly.member_name|ciphertext:'delivery','uname',$dly.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<th><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<td ><span sensitive-field="ship_name"><{$dly.consignee.name|ciphertext:'delivery','ship_name',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td ><span sensitive-field="ship_tel"><{$dly.consignee.telephone|ciphertext:'delivery','ship_tel',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td ><span sensitive-field="ship_mobile"><{$dly.consignee.mobile|ciphertext:'delivery','ship_mobile',$dly.shop_type}></span></td>
|
||||
<th>Email:</th>
|
||||
<td><{$dly.consignee.email}></td>
|
||||
|
||||
@@ -4294,7 +4294,13 @@ class ome_ctl_admin_order extends desktop_controller{
|
||||
$tmp = array();
|
||||
$tmp = $o['items'];
|
||||
unset($o['items']);
|
||||
|
||||
|
||||
// 更新pay_status状态值
|
||||
//@todo:解决手工批量删除赠品,又手工编辑订单进行恢复,导致pay_status='5'退款状态,无法审核订单;
|
||||
if($o['delete'] == 'false' && $o['price'] == '0'){
|
||||
$o['pay_status'] = '0';
|
||||
}
|
||||
|
||||
$oOrderObj->save($o);
|
||||
foreach ($tmp as $oo){
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* 缺货列表
|
||||
*/
|
||||
@@ -28,11 +29,10 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
}
|
||||
/**
|
||||
* 缺货搜索
|
||||
*
|
||||
*
|
||||
* @param void
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function index() {
|
||||
|
||||
$params = array(
|
||||
@@ -349,7 +349,7 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
|
||||
/**
|
||||
* 缺货订单列表
|
||||
*
|
||||
*
|
||||
* @return void
|
||||
* @author
|
||||
*/
|
||||
@@ -383,10 +383,6 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
$this->finder('ome_mdl_orders',$params);
|
||||
}
|
||||
|
||||
/**
|
||||
* routerAgain
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function routerAgain() {
|
||||
|
||||
$batchLogModel = app::get('ome')->model('batch_log');
|
||||
@@ -429,10 +425,6 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
return $params;
|
||||
}
|
||||
|
||||
/**
|
||||
* routerSpilt
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function routerSpilt() {
|
||||
// $key = 'ome-order-lack-router';
|
||||
// cachecore::store($key, time(), 360);
|
||||
@@ -457,10 +449,6 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
echo json_encode($retArr);
|
||||
}
|
||||
|
||||
/**
|
||||
* apply
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function apply() {
|
||||
$order_id = (int) $_GET['order_id'];
|
||||
$order = app::get('ome')->model('orders')->db_dump($order_id, 'shop_type, order_source');
|
||||
@@ -480,7 +468,7 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
exit;
|
||||
}
|
||||
$bmIds = array_column($order_items, 'product_id');
|
||||
$branch_id = current($appointBranch)['branch_id'];
|
||||
$branch_id = current($appointBranch);
|
||||
$branch_product = app::get('ome')->model('branch_product')->getList('product_id, store, store_freeze',
|
||||
['branch_id'=>$branch_id, 'product_id'=>$bmIds]);
|
||||
$branch_product = array_column($branch_product, null, 'product_id');
|
||||
@@ -509,10 +497,6 @@ class ome_ctl_admin_order_lack extends desktop_controller {
|
||||
$this->singlepage('admin/order/lack/apply.html');
|
||||
}
|
||||
|
||||
/**
|
||||
* dealApply
|
||||
* @return mixed 返回值
|
||||
*/
|
||||
public function dealApply() {
|
||||
$order_id = (int) $_POST['order_id'];
|
||||
$out_stock = $_POST['out_stock'];
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
class ome_ctl_admin_return_batch extends desktop_controller {
|
||||
|
||||
var $workground = "setting_tools";
|
||||
@@ -54,6 +53,7 @@ class ome_ctl_admin_return_batch extends desktop_controller {
|
||||
}
|
||||
}
|
||||
$oReturn_batch = $this->app->model('return_batch');
|
||||
$return_batch = array();
|
||||
if ($batch_id) {
|
||||
$return_batch = $oReturn_batch->dump($batch_id);
|
||||
}
|
||||
@@ -119,4 +119,4 @@ class ome_ctl_admin_return_batch extends desktop_controller {
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
*/
|
||||
class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
{
|
||||
|
||||
public $name = "退换货单";
|
||||
public $workground = "aftersale_center";
|
||||
|
||||
@@ -522,7 +521,6 @@ class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
$is_auto_approve = app::get('ome')->getConf('return.auto_approve');
|
||||
if ($is_auto_approve == 'on') {
|
||||
$reshipLib = kernel::single('ome_reship');
|
||||
|
||||
$result = $reshipLib->batch_reship_queue($reship[0]['reship_id']);
|
||||
}
|
||||
}
|
||||
@@ -538,6 +536,7 @@ class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
|
||||
/**
|
||||
* 根据order_bn快速获取订单信息(售后申请、退换货单2处加载订单信息)
|
||||
*
|
||||
* @author yangminsheng
|
||||
**/
|
||||
public function getOrderinfo()
|
||||
@@ -640,7 +639,7 @@ class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
$branchLib = kernel::single('ome_branch');
|
||||
$store_id = $branchLib->isStoreBranch($order["branch_id"]);
|
||||
if ($store_id) {
|
||||
//是门店仓
|
||||
//是门店仓
|
||||
$order["branch_list"] = kernel::single('o2o_return')->get_aftersale_o2o_branch($order["branch_id"]);
|
||||
//售后设置->退货仓库设置 类型选择:发货仓库的
|
||||
$branchtype = app::get('wms')->getConf('wms.branchset.type');
|
||||
@@ -659,7 +658,7 @@ class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//是电商仓
|
||||
//是电商仓
|
||||
$order["branch_list"] = app::get('ome')->model('branch')->getlist('branch_id,name', array('disabled' => 'false', 'b_type' => 1));
|
||||
}
|
||||
$order['member_uname'] = $member['account']['uname'];
|
||||
@@ -4167,7 +4166,6 @@ class ome_ctl_admin_return_rchange extends desktop_controller
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 验证页面配置项
|
||||
*/
|
||||
|
||||
@@ -55,11 +55,19 @@ class ome_event_trigger_shop_data_delivery_taobao extends ome_event_trigger_shop
|
||||
// }
|
||||
|
||||
$this->__sdf['order_extend'] = $this->_get_order_extend($delivery_id);
|
||||
|
||||
$this->__sdf['store_code'] = '';
|
||||
|
||||
// BN对应的OID
|
||||
$oidList = [];
|
||||
$orderObjects = $this->_get_all_order_objects($delivery_id);
|
||||
$this->__sdf['order_objects'] = $orderObjects;
|
||||
foreach ($orderObjects as $object) {
|
||||
|
||||
if ($object['store_code']) {
|
||||
$this->__sdf['store_code'] = $object['store_code'];
|
||||
}
|
||||
|
||||
foreach ($object['order_items'] as $item) {
|
||||
if(empty($object['oid'])) {
|
||||
continue;
|
||||
|
||||
@@ -37,13 +37,17 @@ class ome_order_refund {
|
||||
if($order['createway'] != 'matrix') {
|
||||
return [false, ['msg'=>'非平台订单']];
|
||||
}
|
||||
$shop = app::get('ome')->model('shop')->db_dump(['shop_id'=>$order['shop_id']], 'node_id, node_type');
|
||||
$shop = app::get('ome')->model('shop')->db_dump(['shop_id'=>$order['shop_id']], 'node_id, node_type, business_type');
|
||||
if(empty($shop['node_id'])) {
|
||||
return [false, ['msg'=>'店铺未绑定']];
|
||||
}
|
||||
if(!in_array($shop['node_type'], ['taobao'])) {
|
||||
return [false, ['msg'=>'非淘宝店铺']];
|
||||
}
|
||||
if($shop['business_type'] == 'maochao') {
|
||||
return [false, ['msg'=>'猫超国际']];
|
||||
}
|
||||
|
||||
list($rs, $notice) = kernel::single('ome_order_refund_status')->fetch($order['order_bn'], $shop['node_id'], $order['shop_id']);
|
||||
if(!$rs) {
|
||||
return [true, ['msg'=>$notice['msg']]];
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<style>
|
||||
.logi-no-input{width:150px;height:20px;}
|
||||
</style>
|
||||
<h4><{if $dly.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<h4><{if $dly.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<input type="hidden" name="status" value="<{$status}>" />
|
||||
<input type="hidden" name="delivery_id" value="<{$dly.delivery_id}>" />
|
||||
<div class="division">
|
||||
@@ -35,15 +35,15 @@
|
||||
<td ><{foreach from=$order_bn item=item}><{$item}><br><{/foreach}></td>
|
||||
<th >配送方式:</th>
|
||||
<td ><{$dly.delivery}></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<td ><span sensitive-field="uname"><{$dly.member_name|ciphertext:'delivery','uname',$dly.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<td ><span sensitive-field="ship_name"><{$dly.consignee.name|ciphertext:'delivery','ship_name',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td ><span sensitive-field="ship_tel"><{$dly.consignee.telephone|ciphertext:'delivery','ship_tel',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td ><span sensitive-field="ship_mobile"><{$dly.consignee.mobile|ciphertext:'delivery','ship_mobile',$dly.shop_type}></span></td>
|
||||
<th>Email:</th>
|
||||
<td><{$dly.consignee.email}></td>
|
||||
|
||||
@@ -17,15 +17,15 @@
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="delivery-info">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<td><span sensitive-field="ship_name"><{$order.consignee.name|ciphertext:'order','ship_name',$order.shop_type}></span>
|
||||
<input type="hidden" name="consignee[name]" value="<{$order.consignee.name}>" /></td>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>配送地址:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>配送地址:</th>
|
||||
<td><span id='consignee[area]'><{$order.consignee.area|region}></span>
|
||||
<input type="hidden" name="consignee[area]" value="<{$order.consignee.area}>" />
|
||||
<span id='consignee[addr]' sensitive-field="ship_addr"><{$order.consignee.addr|ciphertext:'order','ship_addr',$order.shop_type}></span>
|
||||
<input type='hidden' name='consignee[addr]' value="<{$order.consignee.addr}>"/></td>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话/手机:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话/手机:</th>
|
||||
<td>
|
||||
<span sensitive-field="ship_tel"><{$order.consignee.telephone|ciphertext:'order','ship_tel',$order.shop_type}></span>
|
||||
<span><{if $order.consignee.telephone}>/<{/if}></span>
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<{if $member.is_encrypt}><th><a class="data-hide member-sensitive-btn" href="javascript:void(0);" ></a></th><{/if}>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员用户名:</th>
|
||||
<{if $member.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><th><a class="data-hide member-sensitive-btn" href="javascript:void(0);" ></a></th><{/if}>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员用户名:</th>
|
||||
<td>
|
||||
<span sensitive-field="uname">
|
||||
|
||||
@@ -40,9 +40,9 @@
|
||||
<{/if}>
|
||||
</span>
|
||||
</td>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<td><span sensitive-field="name"><{$member.contact.name|ciphertext:'member','name',$order.shop_type}></span></td>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>联系电话:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>联系电话:</th>
|
||||
<td>
|
||||
<span sensitive-field="tel"><{$member.contact.phone.telephone|ciphertext:'member','tel',$order.shop_type}></span>
|
||||
<span><{if $member.contact.phone.telephone}>/<{/if}></span>
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<{if $order.process_status neq 'is_retrial'}>
|
||||
<{if $operate && (($order.ship_status neq '1' && $order.ship_status neq '3' && $order.ship_status neq '4'&& $order.shipping.is_cod eq 'false') || ($order.pay_status neq '1' && $order.ship_status neq '3' && $order.ship_status neq '4'&& $order.shipping.is_cod eq 'true') || ($order.pay_status neq '1' && $order.ship_status neq '3' && $order.ship_status neq '4'&& $use_before_payed eq 'true') || ($order.process_status eq 'splitting' && $order.ship_status eq '3'))}>
|
||||
<{include file="admin/order/order_button.html"}>
|
||||
@@ -196,30 +195,30 @@
|
||||
</div>
|
||||
</td>
|
||||
<td style="vertical-align:top;">
|
||||
<h4><{if $member.is_encrypt}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>购买人信息</h4>
|
||||
<h4><{if $member.is_encrypt}><{if !defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW')}><a class="member-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{/if}>购买人信息</h4>
|
||||
<div class="division">
|
||||
<table cellspacing="0" cellpadding="0" border="0" id="memberinfo">
|
||||
|
||||
<tbody><tr>
|
||||
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>用户名:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>用户名:</th>
|
||||
<td>
|
||||
<span sensitive-field="uname"><{$member.account.uname|ciphertext:'member','uname',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'name' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'name' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<td><span sensitive-field="name"><{$member.contact.name|ciphertext:'member','name',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td><span sensitive-field="tel"><{$member.contact.phone.telephone|ciphertext:'member','tel',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td><span sensitive-field="mobile"><{$member.contact.phone.mobile|ciphertext:'member','mobile',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'address' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'address' class="member-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<td><{$member.contact.area|region}></td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -232,7 +231,7 @@
|
||||
</td>
|
||||
<td style="vertical-align:top;">
|
||||
<h4>
|
||||
<span><{if $order.is_encrypt}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{t}>收货人信息<{/t}></span>
|
||||
<span><{if $order.is_encrypt}><{if !defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW')}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{/if}><{t}>收货人信息<{/t}></span>
|
||||
<span style="position:relative;" id="order_receiver_copy_span">
|
||||
<{if $is_hied_receiver_copy !== true}>
|
||||
<button type="button" class="btn" id="order_receiver_copy" stu="Y">
|
||||
@@ -248,23 +247,23 @@
|
||||
<td><{$order.consignee.r_time}></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th ><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<th ><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>姓名:</th>
|
||||
<td><span sensitive-field="ship_name" data-order="2"><{$order.consignee.name|ciphertext:'order','ship_name',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td><span sensitive-field="ship_tel" data-order="3"><{$order.consignee.telephone|ciphertext:'order','ship_tel',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td><span sensitive-field="ship_mobile" data-order="4"><{$order.consignee.mobile|ciphertext:'order','ship_mobile',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地区:</th>
|
||||
<td><{$order.consignee.area|region}></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo'}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地址:</th>
|
||||
<th><{if $member.is_encrypt && $order.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'receiver_address' class="order-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>地址:</th>
|
||||
<td style="white-space: normal; line-height: 18px;"><span sensitive-field="ship_addr" data-order="1"><{$order.consignee.addr|escape:'html'|ciphertext:'order','ship_addr',$order.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<{capture name="header"}>
|
||||
<{css app="ome" src="ome.css"}>
|
||||
<{script src="coms/autocompleter.js" app='desktop' }>
|
||||
@@ -56,7 +55,7 @@
|
||||
</div>
|
||||
|
||||
<div class="finder-detail">
|
||||
<h3><{if $order.is_encrypt}><a class="data-hide order-sensitive-btn" href="javascript:void(0);"></a><{/if}>配送信息</h3>
|
||||
<h3><{if $order.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="data-hide order-sensitive-btn" href="javascript:void(0);"></a><{/if}>配送信息</h3>
|
||||
<div class="division" style="background:#fff; " id="order_edit_receiver">
|
||||
<a href="javascript:void(0);" id="consignee-edit">编辑</a>
|
||||
<{include file="admin/order/edit/consignee_info.html"}>
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
<!-- 订单售后情况 END-->
|
||||
|
||||
<div class="finder-detail">
|
||||
<h3><{if $order.is_encrypt}><a class="data-hide order-sensitive-btn" href="javascript:void(0);"></a><{/if}>配送信息</h3>
|
||||
<h3><{if $order.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="data-hide order-sensitive-btn" href="javascript:void(0);"></a><{/if}>配送信息</h3>
|
||||
<div class="division" style="background:#fff; " id="order_edit_receiver">
|
||||
<a href="javascript:void(0);" id="consignee-edit">编辑</a>
|
||||
<{include file="admin/order/edit/consignee_info.html"}>
|
||||
@@ -757,6 +757,7 @@ function do_refund()
|
||||
var height=550;
|
||||
ome_order_refund_dialog(id, newtotal, total, is_cod, pay_status, width, height);
|
||||
}
|
||||
|
||||
function ome_order_refund_dialog(id, newtotal, total, is_cod, pay_status,width,height)
|
||||
{
|
||||
var url = 'index.php?app=ome&ctl=admin_order&act=do_check&finder_id=<{$env.get.finder_id}>&p[0]='+id+'&p[1]='+newtotal+'&p[2]='+total+'&is_cod='+is_cod+'&pay_status='+pay_status;
|
||||
@@ -776,10 +777,7 @@ function ome_order_refund_dialog(id, newtotal, total, is_cod, pay_status,width,h
|
||||
|
||||
var callurl='index.php?app=ome&ctl=admin_order&act=getSalesMaterialgroup',store=[];
|
||||
if($('add-material-btn')){
|
||||
|
||||
$('add-material-btn').addEvent('click',function(e) {
|
||||
|
||||
|
||||
var shop_id = $E('input[name=shop_id]').getValue();
|
||||
var url='index.php?app=desktop&act=alertpages&goto='+encodeURIComponent('index.php?app=material&ctl=admin_material_sales&act=findSalesMaterial&shop_id='+shop_id);
|
||||
Ex_Loader('modedialog',function() {
|
||||
@@ -797,6 +795,5 @@ if($('add-material-btn')){
|
||||
});
|
||||
}.bind(this));
|
||||
});
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<style>
|
||||
.gridlist th{
|
||||
width:140px;
|
||||
@@ -36,7 +35,7 @@
|
||||
<td colspan="2">
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" style="width:100%" class="gridlist">
|
||||
<tr>
|
||||
<th><{if $reship_data.is_encrypt}><a class="reship-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>销售单:</th>
|
||||
<th><{if $reship_data.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="reship-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>销售单:</th>
|
||||
<td><{$reship_data.order_bn}></td>
|
||||
<th>创建日期:</th><td><{$reship_data.createtime|cdate}></td>
|
||||
<th>会员名:</th><td><{$reship_data.member_id|ciphertext:'reship','ship_name',$reship_data.shop_type}></td>
|
||||
@@ -407,4 +406,4 @@ CheckEditFrame();
|
||||
}
|
||||
|
||||
<{/if}>
|
||||
</script>
|
||||
</script>
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<form action="index.php?app=ome&ctl=admin_return_batch&act=set&finder_id=<{$finder_id}>" method="post" id="form1" enctype="multipart/form-data" target="upload">
|
||||
<div class="tableform">
|
||||
<div class="division">
|
||||
@@ -31,8 +30,8 @@
|
||||
<th><{t}>类型:<{/t}></th>
|
||||
<td >
|
||||
<select name='batch_type' vtype="required">
|
||||
<{foreach from=$batch_type item=batch_type key=key}>
|
||||
<option value='<{$key}>'><{$batch_type}></option>
|
||||
<{foreach from=$batch_type item=type_label key=key}>
|
||||
<option value='<{$key}>' <{if $return_batch.batch_type == $key}>selected="selected"<{/if}>><{$type_label}></option>
|
||||
<{/foreach}>
|
||||
</select>
|
||||
<em class="c-red">*</em>
|
||||
@@ -98,4 +97,4 @@ $('form1').store('target',{
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
|
||||
@@ -15,17 +15,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
class openapi_data_original_aftersales
|
||||
{
|
||||
/**
|
||||
* 获取List
|
||||
* @param mixed $filter filter
|
||||
* @param mixed $start_time start_time
|
||||
* @param mixed $end_time end_time
|
||||
* @param mixed $offset offset
|
||||
* @param mixed $limit limit
|
||||
* @return mixed 返回结果
|
||||
*/
|
||||
public function getList($filter,$start_time,$end_time,$offset=0,$limit=100)
|
||||
{
|
||||
$aftersaleMdl = app::get('sales')->model('aftersale');
|
||||
@@ -50,7 +42,12 @@ class openapi_data_original_aftersales
|
||||
$branchInfos[$branch['branch_id']]['branch_bn'] = $branch['branch_bn'];
|
||||
}
|
||||
$aftersaleLists = $aftersaleMdl->getList('*', $filter, $offset, $limit,'aftersale_id ASC');
|
||||
|
||||
if(empty($aftersaleLists)){
|
||||
return array(
|
||||
'lists' => array(),
|
||||
'count' => $count,
|
||||
);
|
||||
}
|
||||
|
||||
$shopInfos = $shopObj->getList('shop_id,shop_bn,name,delivery_mode', [
|
||||
'shop_id' => array_column($aftersaleLists, 'shop_id'),
|
||||
@@ -58,13 +55,13 @@ class openapi_data_original_aftersales
|
||||
$shopInfos = array_column($shopInfos, null, 'shop_id');
|
||||
|
||||
|
||||
$aftersaleIds = array();
|
||||
$orderIds = array();
|
||||
$memberIds = array();
|
||||
$returnIds = array();
|
||||
$reshipIds = array();
|
||||
$refundApplyIds = array();
|
||||
$opIds = array();
|
||||
$aftersaleIds = array(-1);
|
||||
$orderIds = array(-1);
|
||||
$memberIds = array(-1);
|
||||
$returnIds = array(-1);
|
||||
$reshipIds = array(-1);
|
||||
$refundApplyIds = array(-1);
|
||||
$opIds = array(-1);
|
||||
foreach ($aftersaleLists as $k => $aftersale){
|
||||
$aftersaleIds[] = $aftersale['aftersale_id'];
|
||||
|
||||
@@ -333,7 +330,7 @@ class openapi_data_original_aftersales
|
||||
}
|
||||
/**
|
||||
* 获取基础物料信息
|
||||
*
|
||||
*
|
||||
* @param array $productIds
|
||||
* @return array
|
||||
*/
|
||||
@@ -444,4 +441,4 @@ class openapi_data_original_aftersales
|
||||
'count' => $count,
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,6 +78,23 @@ class purchase_mdl_po extends dbeav_model{
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入采购单号安全清洗
|
||||
*
|
||||
* 仅保留安全字符,避免引号、&、注释符等特殊字符进入后续 SQL/缓存/日志链路。
|
||||
*
|
||||
* @param string $poBn
|
||||
* @return string
|
||||
*/
|
||||
private function sanitizeImportPoBn($poBn)
|
||||
{
|
||||
$poBn = trim(str_replace(' ', '', (string) $poBn));
|
||||
$poBn = strip_tags($poBn);
|
||||
$poBn = preg_replace('/[^A-Za-z0-9._\/-]/', '', $poBn);
|
||||
|
||||
return substr($poBn, 0, 32);
|
||||
}
|
||||
|
||||
function getSafeStock($data=null, $start=0, $end=1){
|
||||
$where = ' ';
|
||||
|
||||
@@ -572,7 +589,9 @@ class purchase_mdl_po extends dbeav_model{
|
||||
$memo = serialize($export_memo);
|
||||
}
|
||||
$pSdf['memo'] = $memo;
|
||||
$pSdf['po_bn'] = $aP['purchase']['contents'][0][0];
|
||||
|
||||
// 导入的采购单号
|
||||
$pSdf['po_bn'] = $this->sanitizeImportPoBn($aP['purchase']['contents'][0][0]);
|
||||
$pSdf['supplier_id'] = $supplier['supplier_id'];
|
||||
$pSdf['branch_id'] = $branch['branch_id'];
|
||||
|
||||
@@ -750,6 +769,8 @@ class purchase_mdl_po extends dbeav_model{
|
||||
|
||||
$fileData['item']['contents'][] = $row;
|
||||
}else {
|
||||
$row[0] = $this->sanitizeImportPoBn($row[0]);
|
||||
$row_0 = $row[0];
|
||||
if (empty($row_0)){
|
||||
$msg['error'] = "请填写采购单编号";
|
||||
return false;
|
||||
|
||||
@@ -13,9 +13,8 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<div class="tableform">
|
||||
<h4><span><{if $aftersales.is_encrypt}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{t}>售后单详情<{/t}></span></h4>
|
||||
<h4><span><{if $aftersales.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="order-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}><{t}>售后单详情<{/t}></span></h4>
|
||||
<div class="division">
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0" id="consigneeinfo">
|
||||
<tr>
|
||||
|
||||
@@ -13,14 +13,12 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
|
||||
<{capture name="header"}>
|
||||
<link href="../app/ome/statics/ome.css" rel="stylesheet" type="text/css">
|
||||
<{/capture}>
|
||||
|
||||
<div class="tableform" id="saleinfo">
|
||||
<h4><{if $deliveryinfo.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>基本信息</h4>
|
||||
<h4><{if $deliveryinfo.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>基本信息</h4>
|
||||
<div class="division">
|
||||
<table border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
|
||||
@@ -14,22 +14,24 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @author ykm 216-01-25
|
||||
* @describe 京东电子面单
|
||||
* @describe 爱库存电子面单 SDF 组装
|
||||
*/
|
||||
|
||||
class wms_event_trigger_logistics_data_electron_aikucun extends wms_event_trigger_logistics_data_electron_common
|
||||
{
|
||||
|
||||
/**
|
||||
* 获取DirectSdf
|
||||
* @param mixed $arrDelivery arrDelivery
|
||||
* @param mixed $arrBill arrBill
|
||||
* @param mixed $shop shop
|
||||
* @return mixed 返回结果
|
||||
* 矩阵 orderInfo.orderChannelsType 固定值(与小红书多店铺映射不同)
|
||||
*/
|
||||
public function orderChannelsType()
|
||||
{
|
||||
return 'aikucun';
|
||||
}
|
||||
|
||||
public function getDirectSdf($arrDelivery, $arrBill, $shop) {
|
||||
public function getDirectSdf($arrDelivery, $arrBill, $shop)
|
||||
{
|
||||
$delivery = $arrDelivery[0];
|
||||
|
||||
if (empty($arrBill)) {
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<{capture name="header"}>
|
||||
<link href="../app/wms/statics/wms.css" rel="stylesheet" type="text/css">
|
||||
<{/capture}>
|
||||
@@ -23,7 +22,7 @@
|
||||
<style>
|
||||
.logi-no-input{width:150px;height:20px;}
|
||||
</style>
|
||||
<h4><{if $dly.is_encrypt}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<h4><{if $dly.is_encrypt && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a class="delivery-sensitive-btn data-hide" href="javascript:void(0);"></a><{/if}>发货单信息:</h4>
|
||||
<input type="hidden" name="status" value="<{$status}>" />
|
||||
<div class="division">
|
||||
<table border="0" cellspacing="0" cellpadding="0" id="deliveryinfo">
|
||||
@@ -34,15 +33,15 @@
|
||||
<td ><{foreach from=$order_bn item=item}><{$item}><br><{/foreach}></td>
|
||||
<th >配送方式:</th>
|
||||
<td ><{$dly.delivery}></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>会员:</th>
|
||||
<td ><span sensitive-field="uname"><{$dly.member_name|ciphertext:'delivery','uname',$dly.shop_type}></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<th><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'uname' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>收货人:</th>
|
||||
<td ><span sensitive-field="ship_name"><{$dly.consignee.name|ciphertext:'delivery','ship_name',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'tel' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>电话:</th>
|
||||
<td ><span sensitive-field="ship_tel"><{$dly.consignee.telephone|ciphertext:'delivery','ship_tel',$dly.shop_type}></span></td>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo'}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<th ><{if $dly.is_encrypt && $dly.shop_type == 'pinduoduo' && (!defined('SENSITIVE_DATA_SHOW') || constant('SENSITIVE_DATA_SHOW'))}><a data-type = 'mobile' class="delivery-sensitive-btn-detail data-hide" style="background-size: 13px 10px;" href="javascript:void(0);"></a><{/if}>手机:</th>
|
||||
<td ><span sensitive-field="ship_mobile"><{$dly.consignee.mobile|ciphertext:'delivery','ship_mobile',$dly.shop_type}></span></td>
|
||||
<th>Email:</th>
|
||||
<td><{$dly.consignee.email}></td>
|
||||
|
||||
Reference in New Issue
Block a user