wugg 10 months ago
parent
commit
fb47dfec4a

+ 48 - 0
app/admin/controller/CompanyCatProfit.php

@@ -260,4 +260,52 @@ class CompanyCatProfit extends Base
         return json_show(0, '获取成功', ['count' => $count, 'list' => $list]);
     }
 
+        public function copyProfit(){
+    	  $param = $this->request->only(['companyNo', 'cat_id','copy_companyNo', 'copy_cat_id',], 'post', 'trim');
+    	  $val = Validate::rule([
+    	              'companyNo|公司编码' => 'requireIf:cat_id,0|length:18',
+    	              'cat_id|分类id' => 'requireIf:cat_id,0|number|egt:0',
+    	              'copy_companyNo|源头公司编码' => 'requireWith:companyNo|alphaNum|length:18',
+    	              'copy_cat_id|源头分类id' => 'requireWith:cat_id|number|egt:0',
+    	          ]);
+    	  if ($val->check($param) == false)$this->error($val->getError());
+    	  $where = [['is_del','=',0]];
+    	  if($param['copy_companyNo']!=0){
+    	  	$where[]=['companyNo','=',$param['copy_companyNo']];
+    	  }
+    	  
+    	  if($param['copy_cat_id']!=0){
+    	      	  	$where[]=['cat_id','=',$param['copy_cat_id']];
+    	  }
+    	    if($param['copy_companyNo']==$param['companyNo']&&
+    	    $param['copy_cat_id']==$param['cat_id']){
+    	    	$this->error('数据已存在,请删除后在复制');
+    	    }
+    	  $rs = Db::name('company_cat_profit')->where($where)->field('companyNo,cat_id,rate,order_rate,money_rate,low_rate,sale_rate ')->select();
+    	   if(empty($rs)) $this->error('未找到可复制数据');
+    	   Db::startTrans();
+    	   try{
+    	   	$temp=[];
+    	   foreach ($rs as $key=>$value){
+    	   	        if($param['cat_id']!=0){
+    	   	            	   	   $value['cat_id'] = $param['cat_id'];
+    	   	          }
+    	   	        if($param['companyNo']!=0){
+    	   	            	   	        	$value['companyNo'] = $param['companyNo'];
+    	   	            	   	        }
+    	            $temp[]=$value;
+    	   	        if($key%1000==0){
+    	   	        	Db::name('company_cat_profit')->insertAll($temp);
+    	   	        	$temp=[];
+    	   	        }
+    	      }
+    	   if(empty($temp)==false) Db::name('company_cat_profit')->insertAll($temp);
+    	   Db::commit();
+    	   $this->success('复制成功');
+    	   }catch (\Exception $exception)
+    	    {
+	            Db::rollback();
+	            $this->error($exception->getMessage());
+    	    }
+    }
 }

+ 58 - 59
app/admin/controller/CompanyPlatformCatProfit.php

@@ -109,64 +109,6 @@ class CompanyPlatformCatProfit extends Base
         }
         return $rs ? json_show(0, '设置成功') : json_show(1004, '设置失败');
     }
-
-    //启禁用
-//    public function status()
-//    {
-//        $param = $this->request->only(['cat_id', 'companyNo', 'platform_id', 'status'], 'post', 'trim');
-//
-//        $val = Validate::rule([
-//            'cat_id|分类id' => 'require|number|gt:0',
-//            'platform_id|平台id' => 'require|number|gt:0',
-//            'companyNo|公司编码' => 'require|length:18',
-//            'status|状态' => 'require|number|in:0,1',
-//        ]);
-//
-//        if ($val->check($param) == false) return json_show(1004, $val->getError());
-//
-//        $cat = Db::name('cat')
-//            ->field('id,level')
-//            ->where(['id' => $param['cat_id'], 'is_del' => 0])
-//            ->findOrEmpty();
-//
-//        if (empty($cat)) return json_show(1005, '该分类不存在');
-//
-//        //要操作的分类id集合
-//        switch ($cat['level']) {
-//            case 1:
-//                $first_ids = Db::name('cat')
-//                    ->where(['is_del' => 0, 'pid' => $param['cat_id']])
-//                    ->column('id');
-//
-//                $second_ids = Db::name('cat')
-//                    ->where('is_del', 0)
-//                    ->whereIn('pid', $first_ids)
-//                    ->column('id');
-//
-//                $cat_ids = array_merge($first_ids, $second_ids);
-//                break;
-//
-//            case 2:
-//                $cat_ids = Db::name('cat')
-//                    ->where(['is_del' => 0, 'pid' => $param['cat_id']])
-//                    ->column('id');
-//                break;
-//        }
-//
-//        $cat_ids[] = $param['cat_id'];
-//
-//        $rs = Db::name('company_platform_cat_profit')
-//            ->where(['is_del' => 0, 'companyNo' => $param['companyNo'], 'platform_id' => $param['platform_id']])
-//            ->whereIn('cat_id', $cat_ids)
-//            ->where('status', '<>', $param['status'])
-//            ->update([
-//                'status' => $param['status'],
-//                'updatetime' => date('Y-m-d H:i:s')
-//            ]);
-//        return $rs ? json_show(0, '操作成功') : json_show(1004, '操作失败,该记录不存在或重复操作');
-//
-//    }
-
     //删除
     public function delete()
     {
@@ -194,5 +136,62 @@ class CompanyPlatformCatProfit extends Base
 
         return $rs ? json_show(0, '删除成功') : json_show(1004, '删除失败');
     }
-
+	
+    public function copyProfit(){
+    	  $param = $this->request->only(['companyNo', 'platform_id', 'cat_id',"copy_companyNo",'copy_platform_id', 'copy_cat_id',], 'post', 'trim');
+    	  $val = Validate::rule([
+    	              'companyNo|公司编码' => 'requireIf:platform_id,0|alphaNum|length:18',
+    	              'platform_id|平台id' => 'requireIf:companyNo,0|number|egt:0',
+    	              'cat_id|分类id' => 'number|egt:0',
+    	              'copy_companyNo|源头公司编码' => 'requireWith:companyNo|alphaNum|length:18',
+    	              'copy_platform_id|源头平台id' => 'requireWith:platform_id|number|egt:0',
+    	              'copy_cat_id|源头分类id' => 'requireWith:cat_id|number|egt:0',
+    	          ]);
+    	  
+    	  if ($val->check($param) == false)$this->error($val->getError());
+    	  $where = [["is_del","=",0]];
+    	  if($param['copy_companyNo']!=0){
+    	  	$where[]=["companyNo","=",$param['copy_companyNo']];
+    	  }
+    	  
+    	  if($param['copy_platform_id']!=0){
+    	  	$where[]=['platform_id','=',$param['copy_platform_id']];
+    	  }
+    	  if($param['copy_cat_id']!=0){
+    	      	  	$where[]=['cat_id','=',$param['copy_cat_id']];
+    	  }
+    	    if($param['copy_companyNo']==$param['companyNo'] &&$param['copy_platform_id']==$param['platform_id'] &&
+    	    $param['copy_cat_id']==$param['cat_id']){
+    	    	$this->error("数据已存在,请删除后在复制");
+    	    }
+    	  $rs = Db::name('company_platform_cat_profit')->where($where)->field("companyNo,platform_id,cat_id,rate,order_rate,money_rate,low_rate,sale_rate ")->select();
+    	   if(empty($rs)) $this->error('未找到可复制数据');
+    	   Db::startTrans();
+    	   try{
+    	   	$temp=[];
+    	   foreach ($rs as $key=>$value){
+    	   	        if($param['platform_id']!=0){
+    	   	        	$value['platform_id'] = $param['platform_id'];
+    	   	        }
+    	   	        if($param['cat_id']!=0){
+    	   	            	   	        	$value['cat_id'] = $param['cat_id'];
+    	   	            	   	        }
+    	   	        if($param['companyNo']!=0){
+    	   	            	   	        	$value['companyNo'] = $param['companyNo'];
+    	   	            	   	        }
+    	            $temp[]=$value;
+    	   	        if($key%1000==0){
+    	   	        	Db::name('company_platform_cat_profit')->insertAll($temp);
+    	   	        	$temp=[];
+    	   	        }
+    	      }
+    	   if(empty($temp)==false) Db::name('company_platform_cat_profit')->insertAll($temp);
+    	   Db::commit();
+    	   $this->success("复制成功");
+    	   }catch (\Exception $exception)
+    	    {
+	            Db::rollback();
+	            $this->error($exception->getMessage());
+    	    }
+    }
 }

+ 14 - 15
app/admin/controller/Consult.php

@@ -716,7 +716,10 @@ class Consult extends Base
         $expire_day = isset($this->post['expire_day'])&&$this->post['expire_day']!=""? intval($this->post['expire_day']) :"";
         $origin_place = isset($this->post['origin_place'])&&$this->post['origin_place']!=""? trim($this->post['origin_place']):"";
         $supplierNo = isset($this->post['supplierNo'])&&$this->post['supplierNo']!=""? trim($this->post['supplierNo']):"";
-//        $supplier_account = checkHasAccountBySupplierNos([$supplierNo]);
+         if ($this->level == 2) {
+        	 $supplier_account = checkHasAccountBySupplierNos([$supplierNo]);
+        	 if (isset($supplier_account[$supplierNo])) return json_show(1004, '供应商已开通账号,请用供应商账户反馈');
+          }
         $cgd_supplier_code =  isset($this->post['cgd_supplier_code'])&&$this->post['cgd_supplier_code']!=''? trim($this->post['cgd_supplier_code']):'';
 	    $cgd_apply_id =  isset($this->post['cgd_apply_id'])&&$this->post['cgd_apply_id']!=''? trim($this->post['cgd_apply_id']):0;
 	    $cgd_apply_name =  isset($this->post['cgd_apply_name'])&&$this->post['cgd_apply_name']!=''? trim($this->post['cgd_apply_name']):'';
@@ -725,13 +728,7 @@ class Consult extends Base
         $user= \app\admin\common\User::getIns();
         $supplier =$user->handle("getCodeAndName",["code"=>[$supplierNo,$cgd_supplier_code]]);
         $supplierName = isset($supplier['data'][$supplierNo])?$supplier['data'][$supplierNo]:"";
-         $cgd_supplier_name= $supplier['data'][$cgd_supplier_code]??'';
-//          if(isset($supplier_account[$supplierNo])){
-//	            if($cgd_supplier_code=='')return error_show(1004,'采购供应商信息不能为空');
-//	            if($cgd_apply_id=='')return error_show(1004,'采购竞单人信息不能为空');
-//	            if($supplier_origin_price==='')return error_show(1004,'采购供应商信息采购成本不能为空');
-//		        $cgd_supplier_name= $supplier['data'][$cgd_supplier_code]??'';
-//	        }
+        $cgd_supplier_name= $supplier['data'][$cgd_supplier_code]??'';
         $pay_way = isset($this->post['pay_way'])&&$this->post['pay_way']!=""? intval($this->post['pay_way']):"";
         $tax = isset($this->post['tax'])&&$this->post['tax']!=""? trim($this->post['tax']):"";
         $send_way = isset($this->post['send_way'])&&$this->post['send_way']!=""? intval($this->post['send_way']):"";
@@ -1130,7 +1127,12 @@ class Consult extends Base
         $expire_day = isset($this->post['expire_day'])&&$this->post['expire_day']!=""? intval($this->post['expire_day']) :"";
         $origin_place = isset($this->post['origin_place'])&&$this->post['origin_place']!=""? trim($this->post['origin_place']):"";
         $supplierNo = isset($this->post['supplierNo'])&&$this->post['supplierNo']!=""? trim($this->post['supplierNo']):"";
-//          $supplier_account = checkHasAccountBySupplierNos([$supplierNo]);
+        
+         if ($this->level == 2) {
+        	 $supplier_account = checkHasAccountBySupplierNos([$bidinfo['supplierNo'],$supplierNo]);
+        	 if (isset($supplier_account[$bidinfo['supplierNo']])) return json_show(1004, '原供应商已开通账号,请用供应商账户反馈');
+        	 if (isset($supplier_account[$supplierNo])) return json_show(1004, '供应商已开通账号,请用供应商账户反馈');
+          }
          $cgd_supplier_code =  isset($this->post['cgd_supplier_code'])&&$this->post['cgd_supplier_code']!=''? trim($this->post['cgd_supplier_code']):'';
 	        $cgd_apply_id =  isset($this->post['cgd_apply_id'])&&$this->post['cgd_apply_id']!=''? trim($this->post['cgd_apply_id']):0;
 	        $cgd_apply_name =  isset($this->post['cgd_apply_name'])&&$this->post['cgd_apply_name']!=''? trim($this->post['cgd_apply_name']):'';
@@ -1140,12 +1142,9 @@ class Consult extends Base
         $supplier =$user->handle("getCodeAndName",["code"=>[$supplierNo,$cgd_supplier_code]]);
 
         $supplierName = isset($supplier['data'][$supplierNo])?$supplier['data'][$supplierNo]:"";
-//        if(isset($supplier_account[$supplierNo])){
-//	            if($cgd_supplier_code=='')return error_show(1004,'采购供应商信息不能为空');
-//	            if($cgd_apply_id=='')return error_show(1004,'采购竞单人信息不能为空');
-//	            if($supplier_origin_price==='')return error_show(1004,'采购供应商信息采购成本不能为空');
-		        $cgd_supplier_name= $supplier['data'][$cgd_supplier_code]??'';
-//	     }
+
+		$cgd_supplier_name= $supplier['data'][$cgd_supplier_code]??'';
+
         $pay_way = isset($this->post['pay_way'])&&$this->post['pay_way']!=""? intval($this->post['pay_way']):"";
         $tax = isset($this->post['tax'])&&$this->post['tax']!=""? trim($this->post['tax']):"";
         $send_way = isset($this->post['send_way'])&&$this->post['send_way']!=""? intval($this->post['send_way']):"0";

+ 3 - 1
app/admin/controller/Filing.php

@@ -971,7 +971,7 @@ class Filing extends Base
             "qrdType|订单类型" => "require|number|in:1,2,3",
             "goodName|商品名称" => "require|max:255|min:1",
             "goodUnit|商品单位" => "require|number|gt:0",
-            "tax|税率" => "require|number|gt:0",
+            "tax|税率" => "require|number|egt:0",
             "goodNum|商品数量" => "require|number|gt:0",
             "sale_total|销售总额" => "require|float|gt:0",
             "cgd_total|采购总额" => "require|float|gt:0",
@@ -1120,6 +1120,8 @@ class Filing extends Base
             "is_diff" => 0,
             "pay_way" => 0,
             "send_way" => 0,
+            "order_createrid" => $this->uid,
+            "order_creater" =>$this->uname,
             "companyNo" => $param['companyNo'],
             "companyName" => $tmp['data'][$param['companyNo']],
             "addtime" => date("Y-m-d H:i:s"),

+ 3 - 2
app/admin/controller/Goodup.php

@@ -1172,8 +1172,8 @@ class Goodup extends Base
             return error_show(1004,"参数market_price不能为空");
         }
         if ($this->level == 2) {
-        	            $supplier_account = checkHasAccountBySupplierNos([$data['supplierNo']]);
-        	            if (isset($supplier_account[$data['supplierNo']])) return json_show(1004, '供应商已开通账号,不允许操作');
+        	            $supplier_account = checkHasAccountBySupplierNos([$datas['supplierNo']]);
+        	            if (isset($supplier_account[$datas['supplierNo']])) return json_show(1004, '供应商已开通账号,不允许操作');
         }
         $nake_price = isset($this->post['nake_price'])&&$this->post['nake_price']!==""? floatval($this->post['nake_price']):"";
 
@@ -2169,6 +2169,7 @@ class Goodup extends Base
                     $tmp['package_fee'] = $value['package_fee'];
                     $tmp['other_fee'] = $value['other_fee'];
                     $tmp['nake_total'] =$value['nake_total'];
+                    $tmp['supplier_origin_price'] =$value['supplier_origin_price'];
                     $tmp['creater_id']=$createrid;
                     $tmp['creater']=$creater;
                     $tmp['is_del']=$value['is_del'];