Browse Source

Merge branch 'master-new' of http://120.46.155.214:3000/wugg/phpstock into master-new

wugg 1 year ago
parent
commit
dafad44735

+ 2 - 2
app/admin/controller/After.php

@@ -288,7 +288,7 @@ class After extends Base
                     ->name('supplier')
                     ->where(['is_del' => 0, 'personid' => $arr])
                     ->column('code');
-                $where[] = ["a.supplierNo", "in", $supplierNos];//这个地方不应该使用condition,应该使用where与其他条件并列
+                $condition[] = ["a.supplierNo", "in", $supplierNos];//这个地方不应该使用condition,应该使用where与其他条件并列
             }
         }
 
@@ -1811,7 +1811,7 @@ class After extends Base
                 ])->findOrEmpty();
 
             if (empty($rs)) throw new Exception('该售后单记录不存在');
-            if (in_array($rs['status'], [4, 12, 5, 8])) throw new Exception('不允许取消');
+            if (in_array($rs['status'], [5,6,8,11,12])) throw new Exception('不允许取消');
 
             //修改记录
             $res = Db::name('order_return')

+ 16 - 3
app/admin/controller/OrderOutChild.php

@@ -409,7 +409,7 @@ class OrderOutChild extends Base
 
         $order_out = Db::name('order_out')
             ->where(['is_del' => 0, 'outCode' => array_unique(array_column($child, 'outCode'))])
-            ->column('id,send_num,send_status,0 already_send_num,status,apply_id', 'outCode');
+            ->column('id,send_num,send_status,0 already_send_num,post_name,post_code,post_fee,status,apply_id', 'outCode');
 
         $sale = Db::name('sale')
             ->where(['is_del' => 0, 'orderCode' => array_unique(array_column($child, 'orderCode'))])
@@ -516,12 +516,25 @@ class OrderOutChild extends Base
                 ]);
 
                 $order_out[$child[$value['outChildCode']]['outCode']]['already_send_num'] += $child[$value['outChildCode']]['num'];
-
+                $order_out[$child[$value['outChildCode']]['outCode']]['already_send_num'] += $child[$value['outChildCode']]['num'];
+                $order_out[$child[$value['outChildCode']]['outCode']]['already_send_num'] += $child[$value['outChildCode']]['num'];
+				if($order_out[$child[$value['outChildCode']]['outCode']]['post_name']==''||$order_out[$child[$value['outChildCode']]['outCode']]['post_code']=='' ){
+					$order_out[$child[$value['outChildCode']]['outCode']]['post_name']=  $value['post_name'];
+					$order_out[$child[$value['outChildCode']]['outCode']]['post_code']=  $value['post_code'];
+					$order_out[$child[$value['outChildCode']]['outCode']]['post_fee']=  $value['post_fee'];
+				}
                 //发货单
                 //send_status 3部分发货,4全部发货
                 Db::name('order_out')
                     ->where(['id' => $order_out[$child[$value['outChildCode']]['outCode']]['id']])
-                    ->update(['send_status' => $order_out[$child[$value['outChildCode']]['outCode']]['already_send_num'] >= $order_out[$child[$value['outChildCode']]['outCode']]['send_num'] ? 4 : 3, 'status' => 2, 'updatetime' => $date]);
+                    ->update([
+                    	'send_status' => $order_out[$child[$value['outChildCode']]['outCode']]['already_send_num'] >= $order_out[$child[$value['outChildCode']]['outCode']]['send_num'] ? 4 : 3,
+                    	'status' => 2,
+                    	'post_name' => $order_out[$child[$value['outChildCode']]['outCode']]['post_name'],
+                        'post_code' => $order_out[$child[$value['outChildCode']]['outCode']]['post_code'],
+                        'post_fee' => $order_out[$child[$value['outChildCode']]['outCode']]['post_fee'],
+                    	'updatetime' => $date
+                    	 ]);
 
                 $sale[$child[$value['outChildCode']]['orderCode']]['send_num'] += $child[$value['outChildCode']]['num'];
                 $sale[$child[$value['outChildCode']]['orderCode']]['wsend_num'] -= $child[$value['outChildCode']]['num'];

+ 4 - 2
app/admin/controller/ReorderChild.php

@@ -137,8 +137,8 @@ class ReorderChild extends Base
                     "before_status" => 0,
                     'holder_id' => $this->uid
                 ]);
-
-                //维护发货工单
+				if(isset($value['outChildCode'])){
+					 //维护发货工单
                 $orderOutChild[$value['outChildCode']]['num'] -= $value['return_num'];
                 if ($orderOutChild[$value['outChildCode']]['num'] <= 0) {
                     $orderOutChild[$value['outChildCode']]['status'] = 4;
@@ -153,6 +153,8 @@ class ReorderChild extends Base
                         'status' => $orderOutChild[$value['outChildCode']]['status'],
                         'is_del' => $orderOutChild[$value['outChildCode']]['is_del'],
                     ]);
+				}
+
 
                 if ($param['outCode'] != '') {
                     //维护发货单

+ 25 - 8
app/admin/controller/ReportByRelaComNo.php

@@ -367,6 +367,8 @@ class ReportByRelaComNo extends Base
                     'wait_confirm_total_num' => '0',//待与供应商确认-总单数
                     'wait_in_total_fee' => '0',//待入库-总金额
                     'wait_in_total_num' => '0',//待入库-总单数
+                    'relaComNo' => $this->relaComNo,
+                    'relaComName' => $this->relaComName,
                 ];
             }
 
@@ -386,8 +388,6 @@ class ReportByRelaComNo extends Base
                     break;
             }
 
-            $value['业务公司编码'] = $this->relaComNo;
-            $value['业务公司名称'] = $this->relaComName;
 
 //            if ($value['status'] == 0) {
 //                $data[$value['addtime']][$value['itemid']]['wait_total_fee'] += $value['total_fee'];
@@ -431,7 +431,6 @@ class ReportByRelaComNo extends Base
         if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
 
         //@todo  此处无法添加业务公司筛选
-        //@todo 关联表 depart_user、company_item和supplier都需要更换
         $where = [['cb.is_del', '=', 0]];
         if ($param['start_date'] != '' && $param['end_date'] != '') $where[] = ['cb.addtime', 'between', [$param['start_date'] . ' 00:00:00', $param['end_date'] . ' 23:59:59']];
 //        if ($param['supplier'] != '') $where[] = ['s.name', 'like', '%' . $param['supplier'] . '%'];
@@ -450,20 +449,38 @@ class ReportByRelaComNo extends Base
 
         $list = Db::name('consult_bids')
             ->alias('cb')
-            ->field('DATE_FORMAT(cb.addtime,"%Y-%m-%d") addtime,du.itemid,cb.createrid,SUM(c.num) num,COUNT(cb.id) total,IF(ISNULL(`du`.`nickname`),`s`.`name`,`du`.`nickname`) nickname,IF(ISNULL(`ci`.`name`),"供应商",`ci`.`name`) name,s.name supplierName')
+//            ->field('DATE_FORMAT(cb.addtime,"%Y-%m-%d") addtime,du.itemid,cb.createrid,SUM(c.num) num,COUNT(cb.id) total,IF(ISNULL(`du`.`nickname`),`s`.`name`,`du`.`nickname`) nickname,IF(ISNULL(`ci`.`name`),"供应商",`ci`.`name`) name,cb.supplierName')
+            ->field('DATE_FORMAT(cb.addtime,"%Y-%m-%d") addtime,cb.createrid,SUM(c.num) num,COUNT(cb.id) total,"" nickname,"" name,cb.supplierName')
             ->leftJoin('consult_info c', 'c.infoNo=cb.infoNo')
-            ->leftJoin('depart_user du', 'du.uid=cb.createrid AND du.is_del=0')
-            ->leftJoin('company_item ci', 'ci.id=du.itemid')
-            ->leftJoin('supplier s', 's.code=cb.supplierNo')
+//            ->leftJoin('depart_user du', 'du.uid=cb.createrid AND du.is_del=0')
+//            ->leftJoin('company_item ci', 'ci.id=du.itemid')
+//            ->leftJoin('supplier s', 's.code=cb.supplierNo')
             ->where($where)
-            ->group('addtime,du.itemid,ci.name ,cb.createrid,du.nickname,s.name')
+//            ->group('addtime,du.itemid,ci.name ,cb.createrid,du.nickname,cb.supplierName')
+            ->group('addtime,cb.createrid,cb.supplierNo')
             ->order('addtime desc,du.itemid,ci.name ,cb.createrid,du.nickname')
 //            ->page($param['page'], $param['size'])
             ->cursor();
 
+        //所有账号
+        $user=Db::connect('mysql_sys')
+            ->name('user')
+            ->alias('a')
+            ->leftJoin('account_item b','b.account_id=a.account_id')
+            ->leftJoin('company_item c','c.id=b.itemid')
+            ->column('a.nickname,c.name','a.account_id');
+
         $data = [];
         foreach ($list as $value) {
 
+            if(isset($user[$value['createrid']])){
+                $value['nickname']=$user[$value['createrid']]['nickname'];
+                $value['name']=$user[$value['createrid']]['name'];
+            }else{
+                $value['nickname']=$value['supplierName'];
+                $value['name']='供应商';
+            }
+
             if ($value['name'] == '供应商') {
                 $data[] = $value;
                 continue;

+ 21 - 16
app/admin/controller/SaleReportByRelaComNo.php

@@ -2582,30 +2582,33 @@ class SaleReportByRelaComNo extends Base
 
         $data = Db::name('sale')
             ->alias('a')
-            ->field('a.id,a.order_type,u.itemid,"" name,a.apply_id')
+            ->field('a.id,a.order_type,a.apply_id')
 //            ->leftJoin("depart_user u", "u.uid=a.apply_id AND u.is_del=0")
 //            ->leftJoin("company_item ci", "ci.id=u.itemid")
             ->where($where)
             ->cursor();
-        $list = [];
+        $list = $tmp = [];
         $total = ['name' => '总计', 'tag_1' => 0, 'tag_2' => 0, 'tag_3' => 0, 'tag_total' => 0];
         foreach ($data as $val) {
-            if (!isset($list[$val['itemid']])) $list[$val['itemid']] = [
-                'name' => get_company_name_by_uid($val['apply_id']),
+            if (!isset($tmp[$val['apply_id']])) $tmp[$val['apply_id']] = get_company_name_by_uid($val['apply_id']);
+            $val['company_name'] = $tmp[$val['apply_id']];
+
+            if (!isset($list[$val['company_name']])) $list[$val['company_name']] = [
+                'name' => $val['company_name'],
                 'tag_1' => 0,
                 'tag_2' => 0,
                 'tag_3' => 0,
                 'tag_total' => 0,
-                $value['relaComNo'] = $this->relaComNo,
-                $value['relaComName'] = $this->relaComName,
+                'relaComNo' => $this->relaComNo,
+                'relaComName' => $this->relaComName,
             ];
-            $list[$val['itemid']]['tag_' . $val['order_type']]++;
-            $list[$val['itemid']]['tag_total']++;
+            $list[$val['company_name']]['tag_' . $val['order_type']]++;
+            $list[$val['company_name']]['tag_total']++;
             $total['tag_' . $val['order_type']]++;
             $total['tag_total']++;
 
         }
-        $list = array_merge($list);//重置下标
+        $list = array_values($list);//重置下标
         $list[] = $total;
         return app_show(0, '请求成功', $list);
 
@@ -2623,7 +2626,7 @@ class SaleReportByRelaComNo extends Base
 
         $data = Db::name('sale')
             ->alias('a')
-            ->field('a.id,a.order_type,u.itemid,"" name,a.apply_id ')
+            ->field('a.id,a.order_type,a.apply_id ')
 //            ->leftJoin("depart_user u", "u.uid=a.apply_id AND u.is_del=0")
 //            ->leftJoin("company_item ci", "ci.id=u.itemid")
             ->where($where)
@@ -2631,28 +2634,30 @@ class SaleReportByRelaComNo extends Base
         $list = [];
         $total = ['部门' => '总计', '库存品' => 0, '非库存品' => 0, '咨询采反' => 0, '总计' => 0];
         foreach ($data as $k => $val) {
-            if (!isset($list[$val['itemid']])) $list[$val['itemid']] = ['部门' => get_company_name_by_uid($val['apply_id']), '库存品' => 0, '非库存品' => 0, '咨询采反' => 0, '总计' => 0, $value['业务公司编码'] = $this->relaComNo, $value['业务公司名称'] = $this->relaComName];
+            if (!isset($tmp[$val['apply_id']])) $tmp[$val['apply_id']] = get_company_name_by_uid($val['apply_id']);
+            $val['company_name'] = $tmp[$val['apply_id']];
+            if (!isset($list[$val['company_name']])) $list[$val['company_name']] = ['部门' => $val['company_name'], '库存品' => 0, '非库存品' => 0, '咨询采反' => 0, '总计' => 0, '业务公司编码' => $this->relaComNo, '业务公司名称' => $this->relaComName];
 
             switch ($val['order_type']) {
                 case 1:
-                    $list[$val['itemid']]['库存品']++;
+                    $list[$val['company_name']]['库存品']++;
                     $total['库存品']++;
                     break;
                 case 2:
-                    $list[$val['itemid']]['非库存品']++;
+                    $list[$val['company_name']]['非库存品']++;
                     $total['非库存品']++;
                     break;
                 case 3:
-                    $list[$val['itemid']]['咨询采反']++;
+                    $list[$val['company_name']]['咨询采反']++;
                     $total['咨询采反']++;
                     break;
             }
 
-            $list[$val['itemid']]['总计']++;
+            $list[$val['company_name']]['总计']++;
             $total['总计']++;
 
         }
-        $list = array_merge($list);//重置下标
+        $list = array_values($list);//重置下标
         $list[] = $total;
 
         if (empty($list)) $list[] = ['没有相关可导出的数据'];