|
@@ -106,9 +106,11 @@ class After extends Base
|
|
|
|
|
|
$userCommon = new \app\admin\common\User();
|
|
|
$supplier = $userCommon->handle('sInfo', ['code' => $goon['supplierNo']]);
|
|
|
- if (!isset($supplier['code']) || $supplier['code'] != 0) return json_show($supplier['code'], $supplier['message'], $supplier['data']);
|
|
|
+// if (!isset($supplier['code']) || $supplier['code'] != 0) return json_show($supplier['code'], $supplier['message'], $supplier['data']);
|
|
|
$supplier = $supplier['data'];
|
|
|
|
|
|
+ $names = $userCommon->handle('getCodeAndName', ['code' => [$oder['customer_code'], $oder['supplierNo']]]);
|
|
|
+
|
|
|
// $supplier =Db::name("supplier")->where(["code"=>$goon['supplierNo']])->find();
|
|
|
// if($supplier==false){
|
|
|
// return error_show(1005,"未找到商品供应商数据");
|
|
@@ -155,8 +157,11 @@ class After extends Base
|
|
|
"good_code" => $oder['good_code'],
|
|
|
"good_name" => $oder['good_name'],
|
|
|
"customer_code" => $oder['customer_code'],
|
|
|
+ "customer_name" => $names['data'][$oder['customer_code']] ?? '',
|
|
|
"apply_id" => $rm,
|
|
|
"apply_name" => $ri,
|
|
|
+ 'supplierNo' => $goon['supplierNo'],
|
|
|
+ 'supplierName' => $supplier['name'],
|
|
|
"cgder" => $wsm['contactor_name'] ?? '',
|
|
|
"cgderid" => $wsm['contactor'] ?? 0,
|
|
|
"person" => $supplier['person'] ?? '',
|
|
@@ -171,6 +176,8 @@ class After extends Base
|
|
|
"remark" => '',
|
|
|
"except_code" => $param['except_code'],
|
|
|
"order_type" => $orderout['order_type'],
|
|
|
+ 'companyNo' => $oder['supplierNo'],
|
|
|
+ 'companyName' => $names['data'][$oder['supplierNo']] ?? '',
|
|
|
"status" => 1,
|
|
|
"is_del" => 0,
|
|
|
"addtime" => date("Y-m-d H:i:s"),
|
|
@@ -219,7 +226,6 @@ class After extends Base
|
|
|
//售后申请单列表
|
|
|
public function list()
|
|
|
{
|
|
|
-
|
|
|
$param = $this->request->only([
|
|
|
'page' => 1,
|
|
|
'size' => 10,
|
|
@@ -231,13 +237,14 @@ class After extends Base
|
|
|
'orderCode' => '',
|
|
|
'good_code' => '',
|
|
|
'good_name' => '',
|
|
|
- 'customer_code' => '',
|
|
|
'except_code' => '',
|
|
|
'apply_name' => '',
|
|
|
'start' => '',
|
|
|
'end' => '',
|
|
|
- 'company_name' => '',
|
|
|
+ 'company_name' => '',//部门名称
|
|
|
'supplierNo' => '',
|
|
|
+ 'customer_code' => '',
|
|
|
+ 'companyNo' => '',
|
|
|
'order_source' => '',
|
|
|
], 'post', 'trim');
|
|
|
|
|
@@ -256,12 +263,9 @@ class After extends Base
|
|
|
if ($param['start'] !== "") $where[] = ['a.addtime', ">=", $param['start']];
|
|
|
if ($param['end'] !== "") $where[] = ['a.addtime', "<=", $param['end']];
|
|
|
if ($param['order_source'] !== "") $where[] = ['c.order_source', "=", $param['order_source']];
|
|
|
- if ($param['supplierNo'] !== "") {
|
|
|
- $spuCode = Db::name('good_basic')
|
|
|
- ->where(['is_del' => 0, 'supplierNo' => $param['supplierNo']])
|
|
|
- ->column('spuCode');
|
|
|
- $where[] = ['c.good_code', "in", $spuCode];
|
|
|
- }
|
|
|
+ if ($param['supplierNo'] !== "") $where[] = ['a.supplierNo', "like", '%' . $param['supplierNo'] . '%'];
|
|
|
+ if ($param['companyNo'] !== "") $where[] = ['a.companyNo', "like", '%' . $param['companyNo'] . '%'];
|
|
|
+
|
|
|
|
|
|
$condition = [];
|
|
|
|
|
@@ -303,7 +307,7 @@ class After extends Base
|
|
|
->where(function ($query) use ($condition) {
|
|
|
$query->whereOr($condition);
|
|
|
})
|
|
|
- ->field("a.*,b.return_wsm,b.contactor,b.mobile,b.addr,b.addr_code,b.post_code,b.post_company,b.post_fee,b.gys_remark,c.order_source,c.supplierNo")
|
|
|
+ ->field("a.*,b.return_wsm,b.contactor,b.mobile,b.addr,b.addr_code,b.post_code,b.post_company,b.post_fee,b.gys_remark,c.order_source")
|
|
|
->page($param['page'], $param['size'])
|
|
|
->order("a.addtime desc")
|
|
|
->select()
|
|
@@ -316,14 +320,14 @@ class After extends Base
|
|
|
//获取客户信息
|
|
|
// $all_customer_code = array_column($list, 'customer_code');
|
|
|
|
|
|
- $userCommon = new \app\admin\common\User();
|
|
|
- $customer_ = $userCommon->handle('getCodeAndName', ['code' => array_unique(array_merge(array_column($list, 'customer_code'), array_column($list, 'supplierNo')))]);
|
|
|
+// $userCommon = new \app\admin\common\User();
|
|
|
+// $customer_ = $userCommon->handle('getCodeAndName', ['code' => array_unique(array_merge(array_column($list, 'customer_code'), array_column($list, 'supplierNo')))]);
|
|
|
|
|
|
$data = [];
|
|
|
foreach ($list as $value) {
|
|
|
|
|
|
- $value['customer_name'] = $customer_['data'][$value['customer_code']] ?? '';
|
|
|
- $value['supplierName'] = $customer_['data'][$value['supplierNo']] ?? '';
|
|
|
+// $value['customer_name'] = $customer_['data'][$value['customer_code']] ?? '';
|
|
|
+// $value['supplierName'] = $customer_['data'][$value['supplierNo']] ?? '';
|
|
|
$value['company_name'] = $item[$value['apply_id']] ?? '';
|
|
|
|
|
|
//是否具有编辑权限
|
|
@@ -359,8 +363,8 @@ class After extends Base
|
|
|
$info['order_type'] = $orderinfo['order_type'];
|
|
|
$info['order_source'] = $orderinfo['order_source'];
|
|
|
$info['is_stock'] = $orderinfo['is_stock'];
|
|
|
- $info['customer_code'] = $orderinfo['customer_code'];
|
|
|
- $info['companyNo'] = $orderinfo['supplierNo'];
|
|
|
+// $info['customer_code'] = $orderinfo['customer_code'];
|
|
|
+// $info['companyNo'] = $orderinfo['supplierNo'];
|
|
|
$info['sale_price'] = $orderinfo['sale_price'];
|
|
|
$info['total_price'] = sprintf("%1\$.2f", $orderinfo['sale_price'] * $info['error_num']);
|
|
|
if ($orderinfo['order_type'] == 3) {
|
|
@@ -406,9 +410,9 @@ class After extends Base
|
|
|
$names = $userCommon->handle('getCodeAndName', ['code' => [
|
|
|
$wsmcode['supplierNo'] ?? '',
|
|
|
$wsmcode['companyNo'] ?? '',
|
|
|
- $info['customer_code'],
|
|
|
- $info['companyNo'],
|
|
|
- $info['supplierNo'],
|
|
|
+// $info['customer_code'],
|
|
|
+// $info['companyNo'],
|
|
|
+// $info['supplierNo'],
|
|
|
]]);
|
|
|
|
|
|
if ($info['return_wsm'] != '') {
|
|
@@ -425,9 +429,9 @@ class After extends Base
|
|
|
// $customer = Db::name("business")->field('id,company,companyNo')->where(["companyNo" => $orderinfo['supplierNo']])->find();
|
|
|
// }
|
|
|
|
|
|
- $info['customer_name'] = $names['data'][$info['customer_code']] ?? '';
|
|
|
- $info['companyName'] = $names['data'][$info['companyNo']] ?? '';
|
|
|
- $info['supplierName'] = $names['data'][$info['supplierNo']] ?? '';
|
|
|
+// $info['customer_name'] = $names['data'][$info['customer_code']] ?? '';
|
|
|
+// $info['companyName'] = $names['data'][$info['companyNo']] ?? '';
|
|
|
+// $info['supplierName'] = $names['data'][$info['supplierNo']] ?? '';
|
|
|
|
|
|
$info['can'] = $int;
|
|
|
|
|
@@ -458,11 +462,11 @@ class After extends Base
|
|
|
'returnCode',
|
|
|
'status',
|
|
|
'remark' => '',
|
|
|
- 'wsm_code'=>'',
|
|
|
- 'contactor'=>'',
|
|
|
- 'mobile'=>'',
|
|
|
- 'addr_code'=>'',
|
|
|
- 'addr'=>'',
|
|
|
+ 'wsm_code' => '',
|
|
|
+ 'contactor' => '',
|
|
|
+ 'mobile' => '',
|
|
|
+ 'addr_code' => '',
|
|
|
+ 'addr' => '',
|
|
|
|
|
|
], 'post', 'trim');
|
|
|
|
|
@@ -532,7 +536,7 @@ class After extends Base
|
|
|
}
|
|
|
|
|
|
//当处于以下节点时,level2账号必须是供应商负责人操作,level3账号不做限制
|
|
|
- if(in_array($info['status'],[9,10]) && ($this->level==2) && ($this->uid!=$info['person_id'])) return json_show(1004,'您不是供应商负责人,此时无权操作');
|
|
|
+ if (in_array($info['status'], [9, 10]) && ($this->level == 2) && ($this->uid != $info['person_id'])) return json_show(1004, '您不是供应商负责人,此时无权操作');
|
|
|
|
|
|
// $param['status'] = isset($this->post['status']) && $this->post['status']!=="" ? intval($this->post['status']) :"";
|
|
|
// if($param['status']===""){
|
|
@@ -633,34 +637,34 @@ class After extends Base
|
|
|
}
|
|
|
|
|
|
//维护退货地址的收货信息
|
|
|
- if($info['is_receive'] == 1 && $param['status'] == 4){
|
|
|
+ if ($info['is_receive'] == 1 && $param['status'] == 4) {
|
|
|
|
|
|
$tmp = Db::name('order_returninfo')
|
|
|
->field('id')
|
|
|
- ->where('returnCode',$param['returnCode'])
|
|
|
+ ->where('returnCode', $param['returnCode'])
|
|
|
->findOrEmpty();
|
|
|
|
|
|
- if(empty($tmp)){
|
|
|
+ if (empty($tmp)) {
|
|
|
//新增
|
|
|
Db::name('order_returninfo')
|
|
|
->insert([
|
|
|
- 'returnCode'=>$param['returnCode'],
|
|
|
- 'return_wsm'=>$param['wsm_code'],
|
|
|
- 'contactor'=>$param['contactor'],
|
|
|
- 'mobile'=>$param['mobile'] ,
|
|
|
- 'addr'=>$param['addr'],
|
|
|
- 'addr_code'=>$param['addr_code'],
|
|
|
- 'addtime'=>$date
|
|
|
+ 'returnCode' => $param['returnCode'],
|
|
|
+ 'return_wsm' => $param['wsm_code'],
|
|
|
+ 'contactor' => $param['contactor'],
|
|
|
+ 'mobile' => $param['mobile'],
|
|
|
+ 'addr' => $param['addr'],
|
|
|
+ 'addr_code' => $param['addr_code'],
|
|
|
+ 'addtime' => $date
|
|
|
]);
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
Db::name('order_returninfo')
|
|
|
- ->where('id',$tmp['id'])
|
|
|
+ ->where('id', $tmp['id'])
|
|
|
->update([
|
|
|
- 'return_wsm'=>$param['wsm_code'],
|
|
|
- 'contactor'=>$param['contactor'],
|
|
|
- 'mobile'=>$param['mobile'] ,
|
|
|
- 'addr'=>$param['addr'],
|
|
|
- 'addr_code'=>$param['addr_code'],
|
|
|
+ 'return_wsm' => $param['wsm_code'],
|
|
|
+ 'contactor' => $param['contactor'],
|
|
|
+ 'mobile' => $param['mobile'],
|
|
|
+ 'addr' => $param['addr'],
|
|
|
+ 'addr_code' => $param['addr_code'],
|
|
|
]);
|
|
|
}
|
|
|
}
|
|
@@ -1022,8 +1026,13 @@ class After extends Base
|
|
|
"post_code"=>$return_info['post_code'],
|
|
|
"post_company"=>$return_info['post_company'],
|
|
|
"customer_code"=>$info['customer_code'],
|
|
|
+ "customer_name"=>$info['customer_name'],
|
|
|
"addtime"=>date("Y-m-d H:i:s"),
|
|
|
- "updatetime"=>date("Y-m-d H:i:s")
|
|
|
+ "updatetime"=>date("Y-m-d H:i:s"),
|
|
|
+ 'supplierNo' => $info['supplierNo'],
|
|
|
+ 'supplierName' => $info['supplierName'],
|
|
|
+ 'companyNo' => $info['companyNo'],
|
|
|
+ 'companyName' => $info['companyName'],
|
|
|
];
|
|
|
$back =Db::name("order_back")->insert($data,true);
|
|
|
if($back>0){
|
|
@@ -1365,9 +1374,14 @@ class After extends Base
|
|
|
"post_code" => $returninfo["post_code"],
|
|
|
"post_company" => $returninfo["post_company"],
|
|
|
"customer_code" => $info["customer_code"],
|
|
|
+ "customer_name" => $info["customer_name"],
|
|
|
"status" => $info['return_tag'] == 1 ? 4 : 1, //return_tag==1退回供应商,status:4完成退货,1待验收
|
|
|
"addtime" => date("Y-m-d H:i:s"),
|
|
|
- "updatetime" => date("Y-m-d H:i:s")
|
|
|
+ "updatetime" => date("Y-m-d H:i:s"),
|
|
|
+ 'supplierNo' => $info['supplierNo'],
|
|
|
+ 'supplierName' => $info['supplierName'],
|
|
|
+ 'companyNo' => $info['companyNo'],
|
|
|
+ 'companyName' => $info['companyName'],
|
|
|
];
|
|
|
$sav = Db::name("order_back")->insert($thdata, true);
|
|
|
if ($sav) {
|
|
@@ -2834,12 +2848,15 @@ class After extends Base
|
|
|
'orderCode' => '',
|
|
|
'good_code' => '',
|
|
|
'good_name' => '',
|
|
|
- 'customer_code' => '',
|
|
|
'except_code' => '',
|
|
|
'apply_name' => '',
|
|
|
'start' => '',
|
|
|
'end' => '',
|
|
|
- 'company_name' => '',
|
|
|
+ 'company_name' => '',//部门名称
|
|
|
+ 'supplierNo' => '',
|
|
|
+ 'customer_code' => '',
|
|
|
+ 'companyNo' => '',
|
|
|
+ 'order_source' => '',
|
|
|
], 'post', 'trim');
|
|
|
|
|
|
$val = Validate::rule(['returnCode' => 'require|array|max:10']);
|
|
@@ -2847,6 +2864,8 @@ class After extends Base
|
|
|
if ($val->check($param) == false) return json_show(1004, $val->getError());
|
|
|
|
|
|
$where = [['a.is_del', "=", 0], ['a.returnCode', 'in', $param['returnCode']]];
|
|
|
+// if ($param['relaComNo'] !== '') $where[] = ['a.supplierNo', "=", $param['relaComNo']];
|
|
|
+ if ($param['returnCode'] !== '') $where[] = ['a.returnCode', "like", "%{$param['returnCode']}%"];
|
|
|
if ($param['outCode'] !== '') $where[] = ['a.outCode', "like", "%{$param['outCode']}%"];
|
|
|
if ($param['status'] !== '') $where[] = ['a.status', "=", $param['status']];
|
|
|
if ($param['order_type'] !== "") $where[] = ['a.order_type', "=", $param['order_type']];
|
|
@@ -2858,17 +2877,25 @@ class After extends Base
|
|
|
if ($param['apply_name'] != "") $where[] = ['a.apply_name', "like", "%{$param['apply_name']}%"];
|
|
|
if ($param['start'] !== "") $where[] = ['a.addtime', ">=", $param['start']];
|
|
|
if ($param['end'] !== "") $where[] = ['a.addtime', "<=", $param['end']];
|
|
|
+ if ($param['order_source'] !== "") $where[] = ['c.order_source', "=", $param['order_source']];
|
|
|
+ if ($param['supplierNo'] !== "") $where[] = ['a.supplierNo', "like", '%' . $param['supplierNo'] . '%'];
|
|
|
+ if ($param['companyNo'] !== "") $where[] = ['a.companyNo', "like", '%' . $param['companyNo'] . '%'];
|
|
|
if ($param['company_name'] !== "") $where[] = ["a.apply_id", 'in', get_company_item_user_by_name($param['company_name'])];
|
|
|
|
|
|
- $condition = [];
|
|
|
- $hand = resign_hand_user($this->uid, 0);
|
|
|
- $role = $this->checkDataShare();
|
|
|
- if (!empty($role[DataGroupModel::$type_全部])) {
|
|
|
- $arr = array_unique(array_merge($hand, $role[DataGroupModel::$type_全部]));
|
|
|
- $condition[] = ["a.person_id", "in", $hand];
|
|
|
- $condition[] = ["a.apply_id", "in", $arr];
|
|
|
- $condition[] = ["a.cgderid", "in", $hand];
|
|
|
+ //只有level2的账号过滤数据权限
|
|
|
+ if ($this->level == 2) {
|
|
|
+ $hand = resign_hand_user($this->uid, 0);
|
|
|
+ $role = $this->checkDataShare();
|
|
|
+ if (!empty($role[DataGroupModel::$type_全部])) {
|
|
|
+ $arr = array_unique(array_merge($hand, $role[DataGroupModel::$type_全部]));
|
|
|
+ $condition[] = ["a.person_id", "in", $hand];
|
|
|
+ $condition[] = ["a.apply_id", "in", $arr];
|
|
|
+ $condition[] = ["a.cgderid", "in", $hand];
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+ //level3账号不允许看到库存品订单
|
|
|
+ if ($this->level == 3) $where[] = ['c.is_stock', '<>', 1];
|
|
|
// $condition .="a.cgderid in {$hand} or a.person_id in {$hand} or a.apply_id in ("
|
|
|
// .implode(',',$role[DataGroupModel::$type_全部]).")";
|
|
|
|
|
@@ -2890,6 +2917,7 @@ a.orderCode 订单编号,
|
|
|
a.good_code 商品编号,
|
|
|
a.good_name 商品名称,
|
|
|
a.customer_code 客户编码,
|
|
|
+a.customer_name 客户名称,
|
|
|
a.is_post 是否承担物流费用,
|
|
|
a.is_th 供应商是否退货,
|
|
|
a.return_tag 退回何处,
|
|
@@ -2908,13 +2936,18 @@ b.addr_code,
|
|
|
b.post_code 快递单号,
|
|
|
b.post_company 快递公司,
|
|
|
b.post_fee 快递费用,
|
|
|
-b.gys_remark 供应商备注')
|
|
|
+b.gys_remark 供应商备注,
|
|
|
+a.supplierNo 供应商编码,
|
|
|
+a.supplierName 供应商名称,
|
|
|
+a.companyNo 业务公司编码,
|
|
|
+a.companyName 业务公司名称')
|
|
|
->alias('a')
|
|
|
->where($where)
|
|
|
->where(function ($query) use ($condition) {
|
|
|
$query->whereOr($condition);
|
|
|
})
|
|
|
->leftJoin('order_returninfo b', 'b.returnCode=a.returnCode')
|
|
|
+ ->leftJoin("sale c", "c.orderCode=a.orderCode AND c.is_del=0")
|
|
|
->select()
|
|
|
->toArray();
|
|
|
|