Procházet zdrojové kódy

Merge branch 'master-new-wgg' of wugg/phpstock into master-new

wugg před 2 roky
rodič
revize
2acfa017cb
2 změnil soubory, kde provedl 32 přidání a 7 odebrání
  1. 31 7
      app/admin/controller/Channel.php
  2. 1 0
      app/admin/route/app.php

+ 31 - 7
app/admin/controller/Channel.php

@@ -39,6 +39,8 @@ class Channel extends Base{
 			"companyNo|业务公司"=>"require|max:255"
 			]);
 		if($valid->check($param)==false) return error_show(1006,$valid->getError());
+		$info=Db::name("channel")->where([["id","=",$param['id']]])->findOrEmpty();
+		if(empty($info)) return error_show(1006,"渠道信息未找到");
 		$ist=Db::name("channel")->where([["channel_name","=",$param['channel_name']],["id","<>",$param['id']]])->findOrEmpty();
 		if(!empty($ist)) return error_show(1006,"渠道名称已存在");
 		$company = \app\admin\common\User::getIns()->handle("getCodeAndName",["code"=>$param['companyNo']]);
@@ -50,11 +52,31 @@ class Channel extends Base{
 			"companyNo"=>$param['companyNo'],
 			"updatetime"=>date("Y-m-d H:i:s")
 			];
-		$int= Db::name("channel")->where($ist)->update($data);
+		$int= Db::name("channel")->where($info)->update($data);
+		if($int==false) return error_show(1004,"渠道编辑失败");
+		return app_show(0,"渠道编辑成功");
+	}
+	/**
+	* @return \think\response\Json|void
+	* @throws \think\db\exception\DbException
+	 */
+	public function status(){
+		$param =$this->request->only(["status"=>"","id"=>""],"post","trim");
+		$valid =Validate::rule([
+			"id|渠道ID"=>"require|number|gt:0",
+			"status|状态"=>"require|number|in:0,1"
+			]);
+		if($valid->check($param)==false) return error_show(1006,$valid->getError());
+		$info=Db::name("channel")->where([["id","=",$param['id']]])->findOrEmpty();
+		if(empty($info)) return error_show(1006,"渠道信息未找到");
+		$data=[
+			"status"=>$param['status'],
+			"updatetime"=>date("Y-m-d H:i:s")
+			];
+		$int= Db::name("channel")->where($info)->update($data);
 		if($int==false) return error_show(1004,"渠道编辑失败");
 		return app_show(0,"渠道编辑成功");
 	}
-
 	public function list(){
 		$param =$this->request->only(["channel_name"=>"","companyNo"=>"","companyName"=>"","page"=>1,"size"=>10],
 		"post","trim");
@@ -94,13 +116,15 @@ class Channel extends Base{
 	public function channelCatList(){
 		$param =$this->request->only(["channel_id"=>"0","cat_id"=>'',"cat_name"=>"","page"=>1,"size"=>15],"post","trim");
 		$where=[["is_del","=",0]];
-		if($param['channel_id']!=='') $where[]=["channel_id","=",$param['channel_id']];
 		if($param['cat_id']!=='') $where[]=["cat_id","=",$param['cat_id']];
 		if($param['cat_name']!=='') $where[]=["cat_name","=",$param['cat_name']];
-		$list =Db::name("channel_cat")->alias("a")
-		->rightJoin("cat b","a.cat_id=b.cid")
-		->field("b.id as cat_id,b.cat_name,ifnull(a.channel_id,{$param['channel_id']}) channel_id,ifnull(a.rate,0) rate,ifnull(a.is_del,0) is_del")
-		->having($where)
+		$list =Db::name("cat")
+		->field("id as cat_id,cat_name,{$param['channel_id']} channel_id,0 rate")
+		->where($where)
+		->withAttr("rate",
+		function ($value,$data){
+			return Db::name("channel_cat")->where(["channel_id"=>$data['channel_id'],"cat_id"=>$data['cat_id'],"is_del"=>0])->value("rate",0);
+		})
 		->select();
 		return app_show(0,"获取成功",$list);
 	}

+ 1 - 0
app/admin/route/app.php

@@ -825,6 +825,7 @@ route::rule('zxcopyedit', 'admin/Consult/zxCopyEdit');//咨询单复制单编辑
 
 route::rule('channeladd', 'admin/Channel/add');//渠道新建
 route::rule('channeledit', 'admin/Channel/edit');//渠道新建
+route::rule('channelstatus', 'admin/Channel/status');//渠道新建
 route::rule('channellist', 'admin/Channel/list');//渠道新建
 route::rule('channelquery', 'admin/Channel/query');//渠道新建
 route::rule('channeldel', 'admin/Channel/delete');//渠道新建