|
@@ -656,25 +656,57 @@ class Buy
|
|
|
$type = Dever::input('search_option_type', $type);
|
|
|
$type = Dever::input('type', $type);
|
|
|
|
|
|
- $noprice = Dever::input('noprice', 2);
|
|
|
- if ($type == 3) {
|
|
|
- $noprice = 1;
|
|
|
- }
|
|
|
+ $info = Dever::db('shop/buy_order')->one($id);
|
|
|
|
|
|
- $cash_type = Dever::input('cash', 1);
|
|
|
+ $result = array();
|
|
|
|
|
|
- $config = Dever::db('shop/buy_order')->config;
|
|
|
+ $type_info = $this->show_base($info, $result, $type);
|
|
|
|
|
|
- $info = Dever::db('shop/buy_order')->one($id);
|
|
|
+ $parent_order = $this->show_address($info, $result, $type, $type_info);
|
|
|
|
|
|
- $tk_status = Dever::db('shop/buy_order_refund')->config['status'];
|
|
|
- $tk_process = Dever::db('shop/buy_order_refund')->config['process'];
|
|
|
+ $button = $this->show_button($info, $type, $parent_order);
|
|
|
|
|
|
- $status = $config['status'][$info['status']];
|
|
|
+ $audit = Dever::input('audit');
|
|
|
+ if ($audit == 1) {
|
|
|
+ # 审核信息
|
|
|
+ $this->show_audit($info, $result);
|
|
|
+ } else {
|
|
|
+ # 退款信息
|
|
|
+ $this->show_refund($info, $result);
|
|
|
+
|
|
|
+ # 配送信息
|
|
|
+ $this->show_ps($info, $result);
|
|
|
|
|
|
- $tk = Dever::db('shop/buy_order_refund')->find(array('order_id' => $info['id'], 'type' => 1));
|
|
|
+ $noprice = Dever::input('noprice', 2);
|
|
|
+ if ($type == 3) {
|
|
|
+ $noprice = 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ # 商品信息
|
|
|
+ $this->show_goods($info, $result, $type, $noprice);
|
|
|
+
|
|
|
+ # 对账信息
|
|
|
+ $this->show_dz($info, $result, $noprice);
|
|
|
+ }
|
|
|
+
|
|
|
+ $head = array
|
|
|
+ (
|
|
|
+ 'name' => '基本信息',
|
|
|
+ 'btn' => $button,
|
|
|
+ );
|
|
|
+ $html = Dever::show($head, $result);
|
|
|
+
|
|
|
+ return $html;
|
|
|
+ }
|
|
|
+
|
|
|
+ private function show_base($info, &$result, $type)
|
|
|
+ {
|
|
|
+ $config = Dever::db('shop/buy_order')->config;
|
|
|
+
|
|
|
+ $status = $config['status'][$info['status']];
|
|
|
|
|
|
$cdate = date('Y-m-d H:i', $info['cdate']);
|
|
|
+
|
|
|
if ($info['operdate']) {
|
|
|
$operdate = date('Y-m-d H:i', $info['operdate']);
|
|
|
} else {
|
|
@@ -715,8 +747,6 @@ class Buy
|
|
|
$type_info = Dever::db('store/info')->find($info['type_id']);
|
|
|
}
|
|
|
|
|
|
- $result = array();
|
|
|
-
|
|
|
$result[$info['order_num']] = array
|
|
|
(
|
|
|
'type' => 'info',
|
|
@@ -731,13 +761,17 @@ class Buy
|
|
|
)
|
|
|
);
|
|
|
|
|
|
+ return $type_info;
|
|
|
+ }
|
|
|
+
|
|
|
+ private function show_address($info, &$result, $type, $type_info)
|
|
|
+ {
|
|
|
$parent_order = array();
|
|
|
if ($info['parent_type'] == 2) {
|
|
|
$parent_order = Dever::db('shop/sell_order')->find($info['parent_order_id']);
|
|
|
} elseif ($info['parent_type'] == 3) {
|
|
|
$parent_order = Dever::db('agent/dh_order')->find($info['parent_order_id']);
|
|
|
}
|
|
|
-
|
|
|
if ($parent_order && isset($parent_order['uid']) && $parent_order['uid']) {
|
|
|
if ($parent_order['address_id']) {
|
|
|
$address = Dever::load('passport/address')->getOne($parent_order['uid'], $parent_order['address_id']);
|
|
@@ -814,6 +848,11 @@ class Buy
|
|
|
);
|
|
|
}
|
|
|
|
|
|
+ return $parent_order;
|
|
|
+ }
|
|
|
+
|
|
|
+ private function show_button($info, $type, $parent_order)
|
|
|
+ {
|
|
|
$button = array();
|
|
|
if ($type == 2) {
|
|
|
$config = Dever::load('factory/admin/auth.config');
|
|
@@ -907,464 +946,427 @@ class Buy
|
|
|
);
|
|
|
}
|
|
|
|
|
|
- $audit = Dever::input('audit');
|
|
|
- if ($audit == 1) {
|
|
|
- $order['type'] = 1;
|
|
|
+ return $button;
|
|
|
+ }
|
|
|
|
|
|
- $goods = Dever::db('shop/buy_order_goods')->select(array('order_id' => $info['id']));
|
|
|
+ private function getSelect($source_id, $goods_id)
|
|
|
+ {
|
|
|
+ $select = '<select class="audit">';
|
|
|
+ foreach ($source as $k => $v) {
|
|
|
+ $yes = '';
|
|
|
+ if ($source_id && $v['id'] == $source_id) {
|
|
|
+ $yes = 'selected';
|
|
|
+ }
|
|
|
+ $select .= '<option value="'.$v['type'] . '_' . $v['id'] . '_' . $goods_id.'" '.$yes.'>'.$v['name'].'</option>';
|
|
|
+ }
|
|
|
+ $select .= '</select>';
|
|
|
|
|
|
- $shop = Dever::db('shop/info')->find($info['type_id']);
|
|
|
+ return $select;
|
|
|
+ }
|
|
|
|
|
|
- list($data, $source) = $this->assign($goods, $info, $shop, true);
|
|
|
+ private function show_audit($info, &$result)
|
|
|
+ {
|
|
|
+ $order['type'] = 1;
|
|
|
|
|
|
- if ($data) {
|
|
|
- $head = array('序号', '商品编号', '商品名称', '供货商', '订货总数量', '商品计量单位', '订货单总金额');
|
|
|
- $body = array();
|
|
|
- $i = 0;
|
|
|
- foreach ($data as $k => $v) {
|
|
|
- foreach ($v as $v1) {
|
|
|
- $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v1['goods_id'], $v1['sku_id']);
|
|
|
- if (isset($goods_info['sku'])) {
|
|
|
- $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
- } else {
|
|
|
- $sku = '';
|
|
|
- }
|
|
|
- $d = array
|
|
|
- (
|
|
|
- $i+1,
|
|
|
- $goods_info['code'],
|
|
|
- $goods_info['name'] . $sku,
|
|
|
- $v1['source_name'],
|
|
|
- $v1['num'],
|
|
|
- $goods_info['unit'],
|
|
|
- $v1['p_price'] * $v1['num'],
|
|
|
- );
|
|
|
+ $goods = Dever::db('shop/buy_order_goods')->select(array('order_id' => $info['id']));
|
|
|
|
|
|
- $body[] = $d;
|
|
|
+ $shop = Dever::db('shop/info')->find($info['type_id']);
|
|
|
|
|
|
- $i++;
|
|
|
- }
|
|
|
- }
|
|
|
- if ($goods) {
|
|
|
- foreach ($goods as $k => $v) {
|
|
|
- $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['goods_id'], $v['sku_id']);
|
|
|
- if (isset($goods_info['sku'])) {
|
|
|
- $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
- } else {
|
|
|
- $sku = '';
|
|
|
- }
|
|
|
- $d = array
|
|
|
- (
|
|
|
- $i+1,
|
|
|
- $goods_info['code'],
|
|
|
- $goods_info['name'] . $sku,
|
|
|
- '无',
|
|
|
- $v['num'],
|
|
|
- $goods_info['unit'],
|
|
|
- $v['p_price'] * $v['num'],
|
|
|
- );
|
|
|
+ list($data, $source) = $this->assign($goods, $info, $shop, true);
|
|
|
|
|
|
- $body[] = $d;
|
|
|
+ if ($data) {
|
|
|
|
|
|
- $i++;
|
|
|
+ $head = array('序号', '商品编号', '商品名称', '供货商', '订货总数量', '商品计量单位', '订货单总金额');
|
|
|
+ $body = array();
|
|
|
+ $i = 0;
|
|
|
+ foreach ($data as $k => $v) {
|
|
|
+ foreach ($v as $v1) {
|
|
|
+ $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v1['goods_id'], $v1['sku_id']);
|
|
|
+ if (isset($goods_info['sku'])) {
|
|
|
+ $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
+ } else {
|
|
|
+ $sku = '';
|
|
|
}
|
|
|
- }
|
|
|
- $result['商品拆单'] = array
|
|
|
- (
|
|
|
- 'type' => 'table',
|
|
|
- 'content' => array
|
|
|
+ $d = array
|
|
|
(
|
|
|
- 'head' => $head,
|
|
|
- 'body' => $body,
|
|
|
- )
|
|
|
- );
|
|
|
- }
|
|
|
- } else {
|
|
|
- $url = Dever::url('lib/buy.refund_commit?json=1', 'mshop');
|
|
|
- if (!$info['refund_cash']) {
|
|
|
- $info['refund_cash'] = 0;
|
|
|
- }
|
|
|
+ $i+1,
|
|
|
+ $goods_info['code'],
|
|
|
+ $goods_info['name'] . $sku,
|
|
|
+ $this->getSelect($v1['source_id'], $v1['order_goods_id']),
|
|
|
+ $v1['num'],
|
|
|
+ $goods_info['unit'],
|
|
|
+ $v1['p_price'] * $v1['num'],
|
|
|
+ );
|
|
|
|
|
|
- if ($info['refund_cash'] > 0 && $tk) {
|
|
|
-
|
|
|
- if ($type == 2) {
|
|
|
- $info['refund_cash'] = $info['refund_p_cash'];
|
|
|
- }
|
|
|
- if ($tk['process'] == 1) {
|
|
|
- $process = '<a href="javascript:;" onclick="audit('.$tk['id'].', 2, \''.$url.'\')" class="layui-btn layui-btn-primary">通过</a><a href="javascript:;" onclick="audit('.$tk['id'].', 3, \''.$url.'\')" class="layui-btn layui-btn-danger">驳回</a>';
|
|
|
- } else {
|
|
|
- $process = $tk_process[$tk['process']];
|
|
|
+ $body[] = $d;
|
|
|
+
|
|
|
+ $i++;
|
|
|
}
|
|
|
- $desc = array();
|
|
|
- $desc['退款原因'] = $tk['desc'];
|
|
|
- $desc['退款图片'] = '暂无';
|
|
|
- if ($tk['pic']) {
|
|
|
- $pic = explode(',', $tk['pic']);
|
|
|
- $tk['pic'] = '';
|
|
|
- foreach ($pic as $k => $v) {
|
|
|
- $tk['pic'] .= '<a href="'.$v.'" target="_blank"><img src="'.$v.'" width="100"/></a>';
|
|
|
+ }
|
|
|
+ if ($goods) {
|
|
|
+ foreach ($goods as $k => $v) {
|
|
|
+ $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['goods_id'], $v['sku_id']);
|
|
|
+ if (isset($goods_info['sku'])) {
|
|
|
+ $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
+ } else {
|
|
|
+ $sku = '';
|
|
|
}
|
|
|
- }
|
|
|
- ;
|
|
|
- $tk['cdate'] = date('Y-m-d H:i', $tk['cdate']);
|
|
|
- $result['退款信息'] = array
|
|
|
- (
|
|
|
- 'type' => 'info',
|
|
|
- 'content' => array
|
|
|
+ $d = array
|
|
|
(
|
|
|
- array
|
|
|
- (
|
|
|
- array('退款金额', $info['refund_cash']),
|
|
|
- array('数量', $info['num']),
|
|
|
- array('退款进度', $process),
|
|
|
- ),
|
|
|
+ $i+1,
|
|
|
+ $goods_info['code'],
|
|
|
+ $goods_info['name'] . $sku,
|
|
|
+ $this->getSelect(false, $v['id']),
|
|
|
+ $v['num'],
|
|
|
+ $goods_info['unit'],
|
|
|
+ $v['p_price'] * $v['num'],
|
|
|
+ );
|
|
|
|
|
|
- array
|
|
|
- (
|
|
|
- array('申请时间', $tk['cdate']),
|
|
|
- array('申请原因', $tk['desc']),
|
|
|
- array('图片', $tk['pic']),
|
|
|
- ),
|
|
|
- ),
|
|
|
- );
|
|
|
- }
|
|
|
+ $body[] = $d;
|
|
|
|
|
|
- $info['ps_info'] = Dever::db('shop/buy_order_ps')->find(array('order_id' => $info['id']));
|
|
|
- if ($info['ps_info']) {
|
|
|
- $info['ps_info']['service'] = Dever::array_decode($info['ps_info']['service']);
|
|
|
- $info['ps_info']['cdate'] = date('Y-m-d H:i', $info['ps_info']['cdate']);
|
|
|
- if ($info['ps_info']['ydate']) {
|
|
|
- $info['ps_info']['ydate'] = date('Y-m-d H:i', $info['ps_info']['ydate']);
|
|
|
- } else {
|
|
|
- $info['ps_info']['ydate'] = '无';
|
|
|
+ $i++;
|
|
|
}
|
|
|
+ }
|
|
|
+ $result['商品拆单'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'table',
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ 'head' => $head,
|
|
|
+ 'body' => $body,
|
|
|
+ )
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- $status = Dever::db('shop/buy_order_ps')->config['status'];
|
|
|
- $info['ps_info']['status_name'] = $status[$info['ps_info']['status']];
|
|
|
-
|
|
|
- $service = array();
|
|
|
- if ($info['ps_info']['service']) {
|
|
|
- foreach ($info['ps_info']['service'] as $k => $v) {
|
|
|
- if (isset($v['order_num']) && $v['order_num']) {
|
|
|
- $info['ps_info']['service'][$k]['service_name'] = '供应商自送';
|
|
|
- if ($v['service_id'] > 0) {
|
|
|
- $service_info = Dever::db('shop/service')->find($v['service_id']);
|
|
|
- $info['ps_info']['service'][$k]['service_name'] = $service_info['name'];
|
|
|
- }
|
|
|
+ private function show_refund($info, &$result)
|
|
|
+ {
|
|
|
+ $tk = Dever::db('shop/buy_order_refund')->find(array('order_id' => $info['id'], 'type' => 1));
|
|
|
+ $url = Dever::url('lib/buy.refund_commit?json=1', 'mshop');
|
|
|
+ if (!$info['refund_cash']) {
|
|
|
+ $info['refund_cash'] = 0;
|
|
|
+ }
|
|
|
|
|
|
- $service[] = array
|
|
|
- (
|
|
|
- array('名称', $info['ps_info']['service'][$k]['service_name']),
|
|
|
- array('单号', isset($v['order_num']) ? $v['order_num'] : ''),
|
|
|
- );
|
|
|
- }
|
|
|
- }
|
|
|
+ if ($info['refund_cash'] > 0 && $tk) {
|
|
|
+
|
|
|
+ if ($type == 2) {
|
|
|
+ $info['refund_cash'] = $info['refund_p_cash'];
|
|
|
+ }
|
|
|
+ if ($tk['process'] == 1) {
|
|
|
+ $process = '<a href="javascript:;" onclick="audit('.$tk['id'].', 2, \''.$url.'\')" class="layui-btn layui-btn-primary">通过</a><a href="javascript:;" onclick="audit('.$tk['id'].', 3, \''.$url.'\')" class="layui-btn layui-btn-danger">驳回</a>';
|
|
|
+ } else {
|
|
|
+ $tk_process = Dever::db('shop/buy_order_refund')->config['process'];
|
|
|
+ $process = $tk_process[$tk['process']];
|
|
|
+ }
|
|
|
+ $desc = array();
|
|
|
+ $desc['退款原因'] = $tk['desc'];
|
|
|
+ $desc['退款图片'] = '暂无';
|
|
|
+ if ($tk['pic']) {
|
|
|
+ $pic = explode(',', $tk['pic']);
|
|
|
+ $tk['pic'] = '';
|
|
|
+ foreach ($pic as $k => $v) {
|
|
|
+ $tk['pic'] .= '<a href="'.$v.'" target="_blank"><img src="'.$v.'" width="100"/></a>';
|
|
|
}
|
|
|
-
|
|
|
- $result['物流信息'] = array
|
|
|
+ }
|
|
|
+;
|
|
|
+ $tk['cdate'] = date('Y-m-d H:i', $tk['cdate']);
|
|
|
+ $result['退款信息'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'info',
|
|
|
+ 'content' => array
|
|
|
(
|
|
|
- 'type' => 'info',
|
|
|
- 'content' => array
|
|
|
+ array
|
|
|
(
|
|
|
- array
|
|
|
- (
|
|
|
- array('发货时间', $info['ps_info']['cdate']),
|
|
|
- array('收货时间', $info['ps_info']['ydate']),
|
|
|
- array('查单', '<a href="https://www.kuaidi100.com/?from=openv" target="_blank">点此手动查单</a>'),
|
|
|
- ),
|
|
|
+ array('退款金额', $info['refund_cash']),
|
|
|
+ array('数量', $info['num']),
|
|
|
+ array('退款进度', $process),
|
|
|
),
|
|
|
- );
|
|
|
- $result['物流信息']['content'] = array_merge($result['物流信息']['content'], $service);
|
|
|
- /*
|
|
|
- if ($noprice == 1) {
|
|
|
- $result['物流信息'] = array
|
|
|
- (
|
|
|
- 'type' => 'info',
|
|
|
- 'content' => array
|
|
|
- (
|
|
|
- array
|
|
|
- (
|
|
|
- array('名称', $info['ps_info']['service_name']),
|
|
|
- array('单号', $info['ps_info']['order_num']),
|
|
|
- ),
|
|
|
-
|
|
|
- array
|
|
|
- (
|
|
|
- array('数量', $info['ps_info']['num']),
|
|
|
- array('重量', $info['ps_info']['zl']),
|
|
|
- array('体积', $info['ps_info']['tj']),
|
|
|
- ),
|
|
|
-
|
|
|
- array
|
|
|
- (
|
|
|
- array('发货时间', $info['ps_info']['cdate']),
|
|
|
- array('收货时间', $info['ps_info']['ydate']),
|
|
|
- ),
|
|
|
- ),
|
|
|
- );
|
|
|
- } else {
|
|
|
|
|
|
- $result['物流信息'] = array
|
|
|
+ array
|
|
|
(
|
|
|
- 'type' => 'info',
|
|
|
- 'content' => array
|
|
|
- (
|
|
|
- array
|
|
|
- (
|
|
|
- array('名称', $info['ps_info']['service_name']),
|
|
|
- array('单号', $info['ps_info']['order_num']),
|
|
|
- array('费用', $info['ps_info']['price']),
|
|
|
- ),
|
|
|
-
|
|
|
- array
|
|
|
- (
|
|
|
- array('配货员', $info['ps_info']['phy']),
|
|
|
- array('打包员', $info['ps_info']['dby']),
|
|
|
- ),
|
|
|
-
|
|
|
- array
|
|
|
- (
|
|
|
- array('数量', $info['ps_info']['num']),
|
|
|
- array('重量', $info['ps_info']['zl']),
|
|
|
- array('体积', $info['ps_info']['tj']),
|
|
|
- ),
|
|
|
-
|
|
|
- array
|
|
|
- (
|
|
|
- array('发货时间', $info['ps_info']['cdate']),
|
|
|
- array('收货时间', $info['ps_info']['ydate']),
|
|
|
- ),
|
|
|
- ),
|
|
|
- );
|
|
|
- }
|
|
|
- */
|
|
|
+ array('申请时间', $tk['cdate']),
|
|
|
+ array('申请原因', $tk['desc']),
|
|
|
+ array('图片', $tk['pic']),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ # 获取配送信息
|
|
|
+ private function show_ps($info, &$result)
|
|
|
+ {
|
|
|
+ $info['ps_info'] = Dever::db('shop/buy_order_ps')->find(array('order_id' => $info['id']));
|
|
|
+ if ($info['ps_info']) {
|
|
|
+ $info['ps_info']['service'] = Dever::array_decode($info['ps_info']['service']);
|
|
|
+ $info['ps_info']['cdate'] = date('Y-m-d H:i', $info['ps_info']['cdate']);
|
|
|
+ if ($info['ps_info']['ydate']) {
|
|
|
+ $info['ps_info']['ydate'] = date('Y-m-d H:i', $info['ps_info']['ydate']);
|
|
|
+ } else {
|
|
|
+ $info['ps_info']['ydate'] = '无';
|
|
|
}
|
|
|
|
|
|
+ $status = Dever::db('shop/buy_order_ps')->config['status'];
|
|
|
+ $info['ps_info']['status_name'] = $status[$info['ps_info']['status']];
|
|
|
|
|
|
- $body = array();
|
|
|
- $body_total = array();
|
|
|
- $body_total['price'] = 0;
|
|
|
- $body_total['num'] = 0;
|
|
|
- $goods = Dever::db('shop/buy_order_goods')->select(array('order_id' => $info['id']));
|
|
|
- $goods_status = Dever::db('shop/buy_order_goods')->config['status'];
|
|
|
-
|
|
|
- $refund_body = array();
|
|
|
- $refund_body_total = array();
|
|
|
- $refund_body_total['price'] = 0;
|
|
|
- $refund_body_total['num'] = 0;
|
|
|
- foreach ($goods as $k => $v) {
|
|
|
- if ($type == 2) {
|
|
|
- $v['price'] = $v['p_price'];
|
|
|
- }
|
|
|
- $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['goods_id'], $v['sku_id']);
|
|
|
- $status = $goods_status[$v['status']];
|
|
|
+ $service = array();
|
|
|
+ if ($info['ps_info']['service']) {
|
|
|
+ foreach ($info['ps_info']['service'] as $k => $v) {
|
|
|
+ if (isset($v['order_num']) && $v['order_num']) {
|
|
|
+ $info['ps_info']['service'][$k]['service_name'] = '供应商自送';
|
|
|
+ if ($v['service_id'] > 0) {
|
|
|
+ $service_info = Dever::db('shop/service')->find($v['service_id']);
|
|
|
+ $info['ps_info']['service'][$k]['service_name'] = $service_info['name'];
|
|
|
+ }
|
|
|
|
|
|
- $tk = Dever::db('shop/buy_order_refund')->find(array('order_id' => $info['id'], 'order_goods_id' => $v['id'], 'type' => 2));
|
|
|
- if ($tk && $tk['process'] == 1) {
|
|
|
- if ($type == 1) {
|
|
|
- $status = '申请' . $tk_status[$tk['status']];
|
|
|
- } else {
|
|
|
- $status = '已上报';
|
|
|
+ $service[] = array
|
|
|
+ (
|
|
|
+ array('名称', $info['ps_info']['service'][$k]['service_name']),
|
|
|
+ array('单号', isset($v['order_num']) ? $v['order_num'] : ''),
|
|
|
+ );
|
|
|
}
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- if ($type == 1) {
|
|
|
- $desc = array();
|
|
|
- $desc['退款原因'] = $tk['desc'];
|
|
|
- $desc['退款图片'] = '暂无';
|
|
|
- if ($tk['pic']) {
|
|
|
- $desc['退款图片'] = '';
|
|
|
- $pic = explode(',', $tk['pic']);
|
|
|
- foreach ($pic as $k1 => $v1) {
|
|
|
- $desc['退款图片'] .= '<a href="'.$v1.'" target="_blank"><img src="'.$v1.'" width="100"/></a>';
|
|
|
- }
|
|
|
- }
|
|
|
- $status .= '<div style="width:300px"><table><tr><td><a href="javascript:showAlert($(\'#desc_content\').html());">点此查看原因</a><span id="desc_content" style="display:none">'.Dever::table($desc).'</span><td>';
|
|
|
+ $result['物流信息'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'info',
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ array
|
|
|
+ (
|
|
|
+ array('发货时间', $info['ps_info']['cdate']),
|
|
|
+ array('收货时间', $info['ps_info']['ydate']),
|
|
|
+ array('查单', '<a href="https://www.kuaidi100.com/?from=openv" target="_blank">点此手动查单</a>'),
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ $result['物流信息']['content'] = array_merge($result['物流信息']['content'], $service);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- $status .= '<td><button href="javascript:;" style="width:80px" onclick="audit('.$tk['id'].', 2, \''.$url.'\')" class="layui-btn layui-btn-primary">通过</button></td><td><button href="javascript:;" onclick="audit('.$tk['id'].', 3, \''.$url.'\')" style="width:80px" class="layui-btn layui-btn-danger">驳回</button></td></tr></table></div>';
|
|
|
- }
|
|
|
- } elseif ($type > 1 && (!$tk || ($tk && $tk['process'] == 3))) {
|
|
|
+ # 获取商品清单
|
|
|
+ private function show_goods($info, &$result, $type, $noprice)
|
|
|
+ {
|
|
|
+ $body = array();
|
|
|
+ $body_total = array();
|
|
|
+ $body_total['price'] = 0;
|
|
|
+ $body_total['num'] = 0;
|
|
|
+ $goods = Dever::db('shop/buy_order_goods')->select(array('order_id' => $info['id']));
|
|
|
+ $goods_status = Dever::db('shop/buy_order_goods')->config['status'];
|
|
|
+ $tk_status = Dever::db('shop/buy_order_refund')->config['status'];
|
|
|
|
|
|
- //$tui = Dever::url('lib/buy.refund_apply_info_one_commit?json=1', 'mshop');
|
|
|
- if ($type == 2) {
|
|
|
- $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=13&type_id=' . $info['source_id'], 'factory');
|
|
|
- } else {
|
|
|
- if ($info['source_type'] == 3) {
|
|
|
- $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=13&type_id=' . $info['source_id'], 'store');
|
|
|
- } else {
|
|
|
- $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=12&type_id=' . $info['source_id'], 'store');
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- if ($info['status'] == 3) {
|
|
|
- $status = '<a href="javascript:;" onclick="fastEdit($(this), \''.$tui.'\', \'缺货退款\', \'\', 1)" class="layui-btn">缺货退款</a>';
|
|
|
- } elseif ($info['status'] == 4) {
|
|
|
- $status = '<a href="javascript:;" onclick="fastEdit($(this), \''.$tui.'\', \'报损退款\', \'\', 1)" class="layui-btn">报损退款</a>';
|
|
|
- }
|
|
|
- }
|
|
|
+ $refund_body = array();
|
|
|
+ $refund_body_total = array();
|
|
|
+ $refund_body_total['price'] = 0;
|
|
|
+ $refund_body_total['num'] = 0;
|
|
|
+ foreach ($goods as $k => $v) {
|
|
|
+ if ($type == 2) {
|
|
|
+ $v['price'] = $v['p_price'];
|
|
|
+ }
|
|
|
+ $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['goods_id'], $v['sku_id']);
|
|
|
+ $status = $goods_status[$v['status']];
|
|
|
|
|
|
- if (isset($goods_info['sku'])) {
|
|
|
- $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
+ $tk = Dever::db('shop/buy_order_refund')->find(array('order_id' => $info['id'], 'order_goods_id' => $v['id'], 'type' => 2));
|
|
|
+ if ($tk && $tk['process'] == 1) {
|
|
|
+ if ($type == 1) {
|
|
|
+ $status = '申请' . $tk_status[$tk['status']];
|
|
|
} else {
|
|
|
- $sku = '';
|
|
|
+ $status = '已上报';
|
|
|
}
|
|
|
|
|
|
- $d = array
|
|
|
- (
|
|
|
- 'pic' => $goods_info['cover'],
|
|
|
- 'name' => $goods_info['name'],
|
|
|
- 'sku' => $sku,
|
|
|
- 'price' => $v['price'],
|
|
|
- 'num' => $v['num'] . $goods_info['unit'],
|
|
|
- 'status' => $status,
|
|
|
- );
|
|
|
+ if ($type == 1) {
|
|
|
+ $desc = array();
|
|
|
+ $desc['退款原因'] = $tk['desc'];
|
|
|
+ $desc['退款图片'] = '暂无';
|
|
|
+ if ($tk['pic']) {
|
|
|
+ $desc['退款图片'] = '';
|
|
|
+ $pic = explode(',', $tk['pic']);
|
|
|
+ foreach ($pic as $k1 => $v1) {
|
|
|
+ $desc['退款图片'] .= '<a href="'.$v1.'" target="_blank"><img src="'.$v1.'" width="100"/></a>';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $status .= '<div style="width:300px"><table><tr><td><a href="javascript:showAlert($(\'#desc_content\').html());">点此查看原因</a><span id="desc_content" style="display:none">'.Dever::table($desc).'</span><td>';
|
|
|
|
|
|
- if ($goods_info['price_type'] > 2) {
|
|
|
- $d['goods'] = $goods_info['goods'];
|
|
|
+ $status .= '<td><button href="javascript:;" style="width:80px" onclick="audit('.$tk['id'].', 2, \''.$url.'\')" class="layui-btn layui-btn-primary">通过</button></td><td><button href="javascript:;" onclick="audit('.$tk['id'].', 3, \''.$url.'\')" style="width:80px" class="layui-btn layui-btn-danger">驳回</button></td></tr></table></div>';
|
|
|
}
|
|
|
+ } elseif ($type > 1 && (!$tk || ($tk && $tk['process'] == 3))) {
|
|
|
|
|
|
- if ($tk && $v['status'] == 3 && $tk['status'] != 3) {
|
|
|
- $d['status'] = $tk_status[$tk['status']];
|
|
|
- if ($noprice == 1) {
|
|
|
- unset($d['price']);
|
|
|
- }
|
|
|
- $refund_body[] = $d;
|
|
|
- $price = $v['price']*$v['num'];
|
|
|
- $refund_body_total['price'] += $price;
|
|
|
- $refund_body_total['num'] += $v['num'];
|
|
|
+ //$tui = Dever::url('lib/buy.refund_apply_info_one_commit?json=1', 'mshop');
|
|
|
+ if ($type == 2) {
|
|
|
+ $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=13&type_id=' . $info['source_id'], 'factory');
|
|
|
} else {
|
|
|
- if ($noprice == 1) {
|
|
|
- unset($d['price']);
|
|
|
+ if ($info['source_type'] == 3) {
|
|
|
+ $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=13&type_id=' . $info['source_id'], 'store');
|
|
|
+ } else {
|
|
|
+ $tui = Dever::url('order_tui?order_goods_id=' . $v['id'] . '&order_id=' . $info['id'] . '&type=12&type_id=' . $info['source_id'], 'store');
|
|
|
}
|
|
|
- $body[] = $d;
|
|
|
- $price = $v['price']*$v['num'];
|
|
|
- $body_total['price'] += $price;
|
|
|
- $body_total['num'] += $v['num'];
|
|
|
+
|
|
|
+ }
|
|
|
+ if ($info['status'] == 3) {
|
|
|
+ $status = '<a href="javascript:;" onclick="fastEdit($(this), \''.$tui.'\', \'缺货退款\', \'\', 1)" class="layui-btn">缺货退款</a>';
|
|
|
+ } elseif ($info['status'] == 4) {
|
|
|
+ $status = '<a href="javascript:;" onclick="fastEdit($(this), \''.$tui.'\', \'报损退款\', \'\', 1)" class="layui-btn">报损退款</a>';
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if ($body) {
|
|
|
+ if (isset($goods_info['sku'])) {
|
|
|
+ $sku = '[' . $goods_info['sku']['string'] . ']';
|
|
|
+ } else {
|
|
|
+ $sku = '';
|
|
|
+ }
|
|
|
+
|
|
|
+ $d = array
|
|
|
+ (
|
|
|
+ 'pic' => $goods_info['cover'],
|
|
|
+ 'name' => $goods_info['name'],
|
|
|
+ 'sku' => $sku,
|
|
|
+ 'price' => $v['price'],
|
|
|
+ 'num' => $v['num'] . $goods_info['unit'],
|
|
|
+ 'status' => $status,
|
|
|
+ );
|
|
|
|
|
|
- if ($refund_body_total['price']) {
|
|
|
- $body_total['set_price'] = $body_total['price'] - $refund_body_total['price'];
|
|
|
- }
|
|
|
- if ($refund_body_total['num']) {
|
|
|
- $body_total['set_num'] = $body_total['num'] - $refund_body_total['num'];
|
|
|
- }
|
|
|
+ if ($goods_info['price_type'] > 2) {
|
|
|
+ $d['goods'] = $goods_info['goods'];
|
|
|
+ }
|
|
|
|
|
|
+ if ($tk && $v['status'] == 3 && $tk['status'] != 3) {
|
|
|
+ $d['status'] = $tk_status[$tk['status']];
|
|
|
if ($noprice == 1) {
|
|
|
- unset($body_total['price']);
|
|
|
- unset($body_total['set_price']);
|
|
|
+ unset($d['price']);
|
|
|
}
|
|
|
-
|
|
|
- $result['商品清单'] = array
|
|
|
- (
|
|
|
- 'type' => 'list',
|
|
|
- 'content' => $body,
|
|
|
- 'total' => $body_total,
|
|
|
- );
|
|
|
+ $refund_body[] = $d;
|
|
|
+ $price = $v['price']*$v['num'];
|
|
|
+ $refund_body_total['price'] += $price;
|
|
|
+ $refund_body_total['num'] += $v['num'];
|
|
|
+ } else {
|
|
|
+ if ($noprice == 1) {
|
|
|
+ unset($d['price']);
|
|
|
+ }
|
|
|
+ $body[] = $d;
|
|
|
+ $price = $v['price']*$v['num'];
|
|
|
+ $body_total['price'] += $price;
|
|
|
+ $body_total['num'] += $v['num'];
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
- if ($refund_body) {
|
|
|
+ if ($body) {
|
|
|
|
|
|
- if ($noprice == 1) {
|
|
|
- unset($refund_body_total['price']);
|
|
|
- }
|
|
|
+ if ($refund_body_total['price']) {
|
|
|
+ $body_total['set_price'] = $body_total['price'] - $refund_body_total['price'];
|
|
|
+ }
|
|
|
+ if ($refund_body_total['num']) {
|
|
|
+ $body_total['set_num'] = $body_total['num'] - $refund_body_total['num'];
|
|
|
+ }
|
|
|
|
|
|
- $result['缺货与报损商品'] = array
|
|
|
- (
|
|
|
- 'type' => 'list',
|
|
|
- 'content' => $refund_body,
|
|
|
- 'total' => $refund_body_total,
|
|
|
- );
|
|
|
+ if ($noprice == 1) {
|
|
|
+ unset($body_total['price']);
|
|
|
+ unset($body_total['set_price']);
|
|
|
}
|
|
|
+
|
|
|
+ $result['商品清单'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'list',
|
|
|
+ 'content' => $body,
|
|
|
+ 'total' => $body_total,
|
|
|
+ );
|
|
|
+ }
|
|
|
|
|
|
- $search_option_type = Dever::input('search_option_type');
|
|
|
- if ($cash_type == 1) {
|
|
|
- if ($search_option_type == 1) {
|
|
|
- # 门店结算单
|
|
|
- $cash_order = Dever::db('cash/order')->select(array('type' => $info['type'], 'type_id' => $info['type_id'], 'source_order_id' => $info['id']));
|
|
|
+ if ($refund_body) {
|
|
|
|
|
|
- $col = 'cash';
|
|
|
+ if ($noprice == 1) {
|
|
|
+ unset($refund_body_total['price']);
|
|
|
+ }
|
|
|
|
|
|
- } elseif ($search_option_type == 2) {
|
|
|
- # 工厂结算单
|
|
|
- $cash_order = Dever::db('cash/order')->select(array('source_type' => $info['source_type'], 'source_id' => $info['source_id'], 'source_order_id' => $info['id']));
|
|
|
+ $result['缺货与报损商品'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'list',
|
|
|
+ 'content' => $refund_body,
|
|
|
+ 'total' => $refund_body_total,
|
|
|
+ );
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- $col = 'p_cash';
|
|
|
- } elseif ($search_option_type == 3) {
|
|
|
- # 仓库结算单
|
|
|
- $cash_order = Dever::db('cash/order')->select(array('source_type' => $info['source_type'], 'source_id' => $info['source_id'], 'source_order_id' => $info['id']));
|
|
|
+ # 获取对账清单
|
|
|
+ private function show_dz($info, &$result, $noprice)
|
|
|
+ {
|
|
|
+ $cash_type = Dever::input('cash', 1);
|
|
|
+ $search_option_type = Dever::input('search_option_type');
|
|
|
+ if ($cash_type == 1) {
|
|
|
+ if ($search_option_type == 1) {
|
|
|
+ # 门店结算单
|
|
|
+ $cash_order = Dever::db('cash/order')->select(array('type' => $info['type'], 'type_id' => $info['type_id'], 'source_order_id' => $info['id']));
|
|
|
|
|
|
- $col = 'num';
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
+ $col = 'cash';
|
|
|
|
|
|
- if (isset($cash_order) && $cash_order) {
|
|
|
- $head = array('序号', '结算单号', '数量', '金额', '结算类型', '入账状态', '审核状态', '结算时间', '审核备注', '管理');
|
|
|
+ } elseif ($search_option_type == 2) {
|
|
|
+ # 工厂结算单
|
|
|
+ $cash_order = Dever::db('cash/order')->select(array('source_type' => $info['source_type'], 'source_id' => $info['source_id'], 'source_order_id' => $info['id']));
|
|
|
|
|
|
- if ($search_option_type == 3 || $noprice == 1) {
|
|
|
- unset($head[3]);
|
|
|
- }
|
|
|
+ $col = 'p_cash';
|
|
|
+ } elseif ($search_option_type == 3) {
|
|
|
+ # 仓库结算单
|
|
|
+ $cash_order = Dever::db('cash/order')->select(array('source_type' => $info['source_type'], 'source_id' => $info['source_id'], 'source_order_id' => $info['id']));
|
|
|
|
|
|
- $body = array();
|
|
|
- $config = Dever::db('cash/order')->config;
|
|
|
- foreach ($cash_order as $k => $v) {
|
|
|
- $cdate = date('Y-m-d H:i', $v['cdate']);
|
|
|
- $fdate = $v['fdate'] ? date('Y-m-d H:i', $v['fdate']) : '';
|
|
|
- $operdate = $v['operdate'] ? date('Y-m-d H:i', $v['operdate']) : '';
|
|
|
- $cash = $v[$col];
|
|
|
-
|
|
|
- $url = Dever::url('project/database/list?project=shop&table=buy_order_goods&order_id='.$v['source_order_id'].'&page_type=1', 'manage');
|
|
|
- $v['source_order_num'] = '<a href="'.$url.'" style="color:blue">'.$v['source_order_num'].'</a>';
|
|
|
-
|
|
|
- $m = '';
|
|
|
- if ($v['audit'] == 1 && $v['audit_type'] == 2) {
|
|
|
- $url = Dever::url('project/database/update?project=cash&table=order&where_id='.$v['id'].'&col=audit,desc', 'manage');
|
|
|
- $m = '<a href="javascript:;" onclick="fastEdit($(this), \''.$url.'\', \'审核\', \'\', 1)" class="layui-btn">审核</a>';
|
|
|
- }
|
|
|
+ $col = 'num';
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
- $d = array
|
|
|
- (
|
|
|
- $k+1,
|
|
|
- $v['order_num'],
|
|
|
- $v['num'],
|
|
|
- $cash,
|
|
|
- $config['config_jstype'][$v['jstype']],
|
|
|
- $config['config_status'][$v['status']],
|
|
|
- $config['config_audit'][$v['audit']],
|
|
|
- $operdate,
|
|
|
- $v['desc'],
|
|
|
- $m,
|
|
|
- );
|
|
|
+ if (isset($cash_order) && $cash_order) {
|
|
|
+ $head = array('序号', '结算单号', '数量', '金额', '结算类型', '入账状态', '审核状态', '结算时间', '审核备注', '管理');
|
|
|
|
|
|
- if ($search_option_type == 3 || $noprice == 1) {
|
|
|
- unset($d[3]);
|
|
|
- }
|
|
|
- $body[] = $d;
|
|
|
+ if ($search_option_type == 3 || $noprice == 1) {
|
|
|
+ unset($head[3]);
|
|
|
+ }
|
|
|
+
|
|
|
+ $body = array();
|
|
|
+ $config = Dever::db('cash/order')->config;
|
|
|
+ foreach ($cash_order as $k => $v) {
|
|
|
+ $cdate = date('Y-m-d H:i', $v['cdate']);
|
|
|
+ $fdate = $v['fdate'] ? date('Y-m-d H:i', $v['fdate']) : '';
|
|
|
+ $operdate = $v['operdate'] ? date('Y-m-d H:i', $v['operdate']) : '';
|
|
|
+ $cash = $v[$col];
|
|
|
+
|
|
|
+ $url = Dever::url('project/database/list?project=shop&table=buy_order_goods&order_id='.$v['source_order_id'].'&page_type=1', 'manage');
|
|
|
+ $v['source_order_num'] = '<a href="'.$url.'" style="color:blue">'.$v['source_order_num'].'</a>';
|
|
|
+
|
|
|
+ $m = '';
|
|
|
+ if ($v['audit'] == 1 && $v['audit_type'] == 2) {
|
|
|
+ $url = Dever::url('project/database/update?project=cash&table=order&where_id='.$v['id'].'&col=audit,desc', 'manage');
|
|
|
+ $m = '<a href="javascript:;" onclick="fastEdit($(this), \''.$url.'\', \'审核\', \'\', 1)" class="layui-btn">审核</a>';
|
|
|
}
|
|
|
|
|
|
- $result['对账清单'] = array
|
|
|
+ $d = array
|
|
|
(
|
|
|
- 'type' => 'table',
|
|
|
- 'content' => array
|
|
|
- (
|
|
|
- 'head' => $head,
|
|
|
- 'body' => $body,
|
|
|
- )
|
|
|
+ $k+1,
|
|
|
+ $v['order_num'],
|
|
|
+ $v['num'],
|
|
|
+ $cash,
|
|
|
+ $config['config_jstype'][$v['jstype']],
|
|
|
+ $config['config_status'][$v['status']],
|
|
|
+ $config['config_audit'][$v['audit']],
|
|
|
+ $operdate,
|
|
|
+ $v['desc'],
|
|
|
+ $m,
|
|
|
);
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- $head = array
|
|
|
- (
|
|
|
- 'name' => '基本信息',
|
|
|
- 'btn' => $button,
|
|
|
- );
|
|
|
- $html = Dever::show($head, $result);
|
|
|
+ if ($search_option_type == 3 || $noprice == 1) {
|
|
|
+ unset($d[3]);
|
|
|
+ }
|
|
|
+ $body[] = $d;
|
|
|
+ }
|
|
|
|
|
|
- return $html;
|
|
|
+ $result['对账清单'] = array
|
|
|
+ (
|
|
|
+ 'type' => 'table',
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ 'head' => $head,
|
|
|
+ 'body' => $body,
|
|
|
+ )
|
|
|
+ );
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
# 发货
|