wugg 2 years ago
parent
commit
c3bd2ac1c9
3 changed files with 34 additions and 23 deletions
  1. 20 9
      app/admin/controller/InvCat.php
  2. 9 9
      app/admin/controller/OrderInv.php
  3. 5 5
      app/command/Report.php

+ 20 - 9
app/admin/controller/InvCat.php

@@ -9,6 +9,7 @@ use think\facade\Db;
 use think\facade\Validate;
 
 class InvCat extends BaseController{
+	private $Tax=[1=>"免税",2=>"不征税",3=>"零税率"];
     public function __construct(App $app) {parent::__construct($app);}
     //商品关联开票类目
     public function AddGood(){
@@ -38,12 +39,18 @@ class InvCat extends BaseController{
 			$addTax=isset($this->post['addTax'])&& $this->post['addTax']!==''?trim($this->post['addTax']):'';
 			if($is_discount==1){
 				// 优惠政策下 税率标识只能选择 0非零说率 1免税 2不征税 增值税管理为空"出口零税/免税/不征税"
-				if($tax==0 && $invTag==3){
-					return error_show(1004,"税率标识不能选择零税率");
-				}
-				if($addTax==''){
-					return error_show(1004,"参数 addTax 不能为空");
+				if($tax==0){
+					if($invTag==3){
+						return error_show(1004,"税率标识不能选择零税率");
+					}
+					if($addTax==''){
+						return error_show(1004,"参数 addTax 不能为空");
+					}
+					if($addTax!=$this->Tax[$invTag]){
+					return error_show(1004,"税率标识与增值税管理内容不符");
+					}
 				}
+
 			}else{
 				// 非优惠政策下 零税率 税率标识只能选择 3 普通零税率  增值税管理为空
 				// 非优惠政策下 非零税率 税率标识只能选择 0 非零税率  增值税管理为空
@@ -204,16 +211,20 @@ class InvCat extends BaseController{
 
                 if ($value['is_discount'] == 1) {
                     // 优惠政策下 税率标识只能选择 0非零说率 1免税 2不征税 增值税管理为空"出口零税/免税/不征税"
-                    if ($value['tax'] == 0 && $value['inv_tag'] == 3) throw new Exception($value['spuCode'].'税率标识不能选择零税率');
+                    if($value['tax'] == 0){
+                    	if ( $value['inv_tag'] == 3) throw new Exception($value['spuCode'].'税率标识不能选择零税率');
+                        if ($value['addTax'] == '') throw new Exception($value['spuCode'].'参数 addTax 不能为空');
+                        if($value['addTax']!=$this->Tax[$value['inv_tag']]){
+                        	throw new Exception($value['spuCode'].'税率标识与增值税管理内容不符');
+						}
+                    }
 
-                    if ($value['addTax'] == '') throw new Exception($value['spuCode'].'参数 addTax 不能为空');
 
                 } else {
                     // 非优惠政策下 零税率 税率标识只能选择 3 普通零税率  增值税管理为空
                     // 非优惠政策下 非零税率 税率标识只能选择 0 非零税率  增值税管理为空
                     if ($value['tax'] == 0 && $value['inv_tag'] != 3) throw new Exception($value['spuCode'].'税率标识只能选择零税率');
-
-                    $value['addTax'] = '';
+					$value['addTax'] = '';
                 }
 
                 $data = [

+ 9 - 9
app/admin/controller/OrderInv.php

@@ -152,19 +152,19 @@ class OrderInv extends BaseController{
                         "totalPrice"=>$value['inv_fee'],
                         "tax"=>$good_info['inv_tax']??$qrd['tax'],
                         "is_discount"=>$good_info['is_discount']??0,
-//                        "addTax"=>$good_info['addTax']??'',
-//                        "inv_tag"=>$good_info['inv_tag']??"",
+                        "addTax"=>$good_info['addTax']??'',
+                        "inv_tag"=>$good_info['inv_tag']??"",
                         "taxPrice"=>round($value['inv_fee']*($good_info['inv_tax']??$qrd['tax']),2),
                         "addtime"=>date("Y-m-d H:i:s"),
                         "updatetime"=>date("Y-m-d H:i:s")
                     ];
-                    if($invoice_good['tax']==0){
-                    	$invoice_good['addTax'] = $invoice_good['is_discount']==0?'': $good_info['addTax']??"";
-                    	$invoice_good['inv_tag'] = $invoice_good['is_discount']==0?3:$good_info['inv_tag']??'0';
-                    }else{
-                    	$invoice_good['addTax'] = $invoice_good['is_discount']==0?'': $good_info['addTax']??"";
-                    	$invoice_good['inv_tag'] ='';
-                    }
+//                    if($invoice_good['tax']==0){
+//                    	$invoice_good['addTax'] = $invoice_good['is_discount']==0?'': $good_info['addTax']??"";
+//                    	$invoice_good['inv_tag'] = $invoice_good['is_discount']==0?3:$good_info['inv_tag']??'0';
+//                    }else{
+//                    	$invoice_good['addTax'] = $invoice_good['is_discount']==0?'': $good_info['addTax']??"";
+//                    	$invoice_good['inv_tag'] ='';
+//                    }
                     $update = [
                         "inv_fee"=>$qrd['inv_fee']+$value['inv_fee'],
                         "winv_fee"=>$qrd['winv_fee']-$value['inv_fee'],

+ 5 - 5
app/command/Report.php

@@ -315,7 +315,7 @@ class Report extends Command
 
 		$data = Db::name('assoc')
 		          ->alias('b')
-		          ->field('DATE_FORMAT(b.addtime,\'%Y\') 年,DATE_FORMAT(b.addtime,\'%m\') 月,DATE_FORMAT(b.addtime,\'%d\') 日,a.companyName 业务公司名称,a.companyNo 业务公司编号,b.viceCode 资金认领编号,c.tradNo 资金编号,c.total_fee 本次核销金额,c.addtime 本次核销时间,c.status 资金认领状态,a.sequenceNo 确认单编号,a.department 业务员部门,a.ownerName 业务员,a.platName 平台类型,a.qrdSource 确认单类型,a.qrdType 商品类型,a.poCode PO编号,a.customerAttr 客户属性,a.branch 分公司,a.customerName 客户名称,a.firstCat 一级分类,a.goodName 产品名称,round(a.tax/100,2) 税点,(a.goodNum-a.thNum) 下单数量,a.goodPrice 销售单价,(a.totalPrice-a.th_fee) 销售总额')
+		          ->field('DATE_FORMAT(b.addtime,\'%Y\') 年,DATE_FORMAT(b.addtime,\'%m\') 月,DATE_FORMAT(b.addtime,\'%d\') 日,a.companyName 业务公司名称,a.companyNo 业务公司编号,b.viceCode 资金认领编号,c.tradNo 资金编号,c.total_fee 本次核销金额,c.addtime 本次核销时间,c.status 资金认领状态,a.sequenceNo 确认单编号,a.department 业务员部门,a.ownerName 业务员,a.platName 平台类型,a.qrdSource 确认单类型,a.qrdType 商品类型,a.poCode 平台订单号,a.customerAttr 客户属性,a.branch 分公司,a.customerName 客户名称,a.firstCat 一级分类,a.goodName 产品名称,round(a.tax/100,2) 税点,(a.goodNum-a.thNum) 下单数量,a.goodPrice 销售单价,(a.totalPrice-a.th_fee) 销售总额')
 		          ->leftJoin('qrd_info a', 'b.orderCode=a.sequenceNo')
 		          ->leftJoin('trade_pool c', 'c.logNo=b.viceCode')
 		          ->where($where)
@@ -441,7 +441,7 @@ class Report extends Command
             b.bkCode 备库单编号,
             b.sequenceNo 采购单单号,
             a.platName 平台类型,
-            a.poCode PO编号,
+            a.poCode 平台订单号,
             a.customerAttr 客户属性,
             a.branch 分公司,
             a.customerName 客户名称,
@@ -486,8 +486,8 @@ class Report extends Command
 			$value['库存性质'] = $this->qrdType[$value['库存性质']] ?? '';
 			$value['发货方式'] = $this->sendType[$value['发货方式']] ?? '';
 			$value['毛利润'] = round(bcsub($value['销售总额'], $value['采购总货款'], 3), 2);
-			$value['毛利率'] = $value['销售总额'] == 0 ? 0 : round(bcmul(bcsub(1, bcdiv($value['采购总货款'], $value['销售总额'], 5), 5), 100), 2) . '%';
-			$value['不含税采购成本'] = round(bcdiv($value['采购总货款'], bcadd(1,$value['采购税点']), 3), 2);
+			$value['毛利率'] = $value['销售总额'] == 0 ? 0 : round(bcmul(bcsub(1, bcdiv($value['采购总货款'], $value['销售总额'], 5),5), 100,2), 2) . '%';
+			$value['不含税采购成本'] = round(bcdiv($value['采购总货款'], bcadd(1,$value['采购税点'],3), 3), 2);
 
 			yield $value;
 		}
@@ -595,7 +595,7 @@ class Report extends Command
             a.ownerName 销售员,
             a.qrdSource 订单来源,
             a.platName 平台类型,
-            a.poCode PO编号,
+            a.poCode 平台订单号,
             a.customerName 客户名称,
             a.customerAttr 客户属性,
             a.branch 客户分公司,