wugg il y a 7 mois
Parent
commit
ff3fc38c4d

+ 15 - 5
app/admin/controller/Payment.php

@@ -994,7 +994,10 @@ class Payment extends Base
                ->where($condition)
                ->order("a.id","desc")
                ->field("a.*,b.payNo")
-               ->paginate (["list_rows"=>$size,"page"=>$page]);
+               ->paginate (["list_rows"=>$size,"page"=>$page])->each(function(&$item){
+                        $item['orderTax'] = OrderCategory::where(['code' => $item['sequenceNo'], 'spuCode' => $item['goodNo']])
+                            ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
+               });
         //校验是否开通了供应商账号
         $supplierAr=array_unique(array_column($list->items(),'supplierNo'));
         $supp_account = check_has_account_by_supplierNos($supplierAr);
@@ -1093,10 +1096,17 @@ class Payment extends Base
         $cgdinfo['goodNum'] =$cgdinfo['goodNum']- $cgdinfo['thNum'];
         $cgdinfo['sendNum'] =$cgdinfo['sendNum']- $cgdinfo['thNum'];
         $cgdinfo['child']=[];
-        $cgdinfo['orderTax'] =OrderCategory::GetTaxInfoByCode($sequenceNo);
+        $cgdinfo['orderTax']= OrderCategory::where(['code' => $cgdinfo['sequenceNo'], 'spuCode' => $cgdinfo['goodNo']])
+            ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
         $list=(new GoodCombind())->where("spuCode",$cgdinfo['goodNo'])->visible(["child"])->with(["child"])
         ->select();
-        if($list->isEmpty()==false)$cgdinfo['child']=array_column($list->toArray(),'child');
+        if($list->isEmpty()==false){
+            $cgdinfo['child']=array_column($list->toArray(),'child');
+            foreach ($cgdinfo['child'] as &$value){
+                $value['orderTax'] = OrderCategory::where(['code' => $cgdinfo['sequenceNo'], 'spuCode' => $value['spuCode']])
+                    ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
+            }
+        }
         return app_show(0,"获取成功",$cgdinfo);
     }
     //todo
@@ -1115,9 +1125,9 @@ class Payment extends Base
 	        $pay =Db::name("pay_info")->alias("a")->leftJoin("cgd_info b","a.cgdNo=b.sequenceNo")
 	        ->where(["a.is_del"=>0,"b.is_del"=>0,"a.payNo"=>$payNo])->field("b.*")
 	        ->select()->toArray();
-	        $orderTax = OrderCategory::GetTaxInfoByCode(array_column($pay,"sequenceNo"));
 	        foreach ($pay as &$value){
-	            $value['orderTax'] = $orderTa[$value['sequenceNo']]??[];
+	            $value['orderTax'] = OrderCategory::where(["code"=>$value['sequenceNo'],"spuCode"=>$value['goodNo']])
+                    ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
 	            $value['catInfo'] = json_decode($value['catInfo'],true);
 	            $value['goodNum'] =$value['goodNum']- $value['thNum'];
 	            $value['sendNum'] =$value['sendNum']- $value['thNum'];

+ 7 - 3
app/admin/controller/Sale.php

@@ -156,11 +156,13 @@ class Sale extends Base{
         ->leftJoin("good b","a.goodNo=b.spuCode")
         ->field("a.*,b.status as cat_status,b.inv_cat_name,b.inv_cat_code,b.inv_tax,b.inv_good_name,b.isZx")
         ->order("a.createdTime desc")
-        ->where($condition)->page($page,$size)->select();
+        ->where($condition)->page($page,$size)->select()->each(function(&$item){
+                                $item['orderTax'] = OrderCategory::where(['code' => $item['sequenceNo'], 'spuCode' => $item['goodNo']])
+                                    ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
+                                });
         $data=[];
 
         foreach ( $list as $ky=>$value){
-            $value['taxInfo'] = $orderTax[$value['sequenceNo']]??[];
             $value['catInfo'] = json_decode($value['catInfo'],true);
                             $value['inv_tag_name']='';
                             $value['pay_tag_name']='';
@@ -444,7 +446,9 @@ class Sale extends Base{
         $qrdinfo['pay_tag_remark']='';
         $qrdinfo['inv_tag_img']='';
         $qrdinfo['inv_tag_remark']='';
-        $qrdinfo['orderTax'] =OrderCategory::GetTaxInfoByCode($post['sequenceNo']);
+        $qrdinfo['orderTax']=OrderCategory::where(['code' => $qrdinfo['sequenceNo'], 'spuCode' => $qrdinfo['goodNo']])
+                                    ->field(['cat_code', 'cat_name', 'merge_code', 'short_name', 'tax', 'inv_good_name'])->findOrEmpty();
+                      ;
         if($qrdinfo['pay_tag']==1 || $qrdinfo['inv_tag']==1){
 	        $tag =Db::name('tag_log')->alias('a')->leftJoin('order_tag b','a.tag_id=b.id')
 	        ->where(['code'=>$qrdinfo['sequenceNo'],'a.status'=>[1,2]])->order('id desc')->column('a.id,b.tag_name,a.tag_img,a.tag_remark','b.type');

+ 2 - 1
app/admin/model/OrderCategory.php

@@ -20,6 +20,7 @@ class OrderCategory extends Model{
                 $ist = self::where(["code"=>$code,"order_type"=>$orderType,"spuCode"=>$value['spuCode']])->findOrEmpty();
                 if($ist->isEmpty() || $ist->cat_code==''){
                   $Temp=[
+                      "id"=>$ist->id??null,
                       "code"=>$code,
                       "order_type"=>$orderType,
                       "spuCode"=>$value['spuCode'],
@@ -34,7 +35,7 @@ class OrderCategory extends Model{
                 }
             }
             if(!empty($save)){
-                self::insertAll($save);
+                (new OrderCategory)->saveAll($save);
             }
         }
     }

+ 1 - 1
app/command/good.php

@@ -95,7 +95,7 @@ class good extends Command
             	return Db::connect('mysql_wsm')->name('unit')->where("id",$m)->value("unit","");
             })->field("a.spuCode,good_name,cat_id,good_unit,craft_desc,after_sales,supplierNo,companyNo,supplierName,companyName,good_img,
             good_info_img,good_thumb_img,creater,createrid,is_stock,0 isZx,is_combind,cgd_supplier_code,cgd_supplier_name,isChild,addtime,updatetime
-            b.tax_id,b.tax,b.inv_good_name")
+            ,b.tax_id,b.tax,b.inv_good_name")
             ->where("updatetime",">=", $this->date)
             ->where("status","=", 1)
             ->select()->toArray();