You've already forked qlg.tsgz.moe
							
							
		
			
				
	
	
		
			73 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
<?php
 | 
						|
namespace wstmart\common\model;
 | 
						|
use think\Db;
 | 
						|
/**
 | 
						|
 * ============================================================================
 | 
						|
 * 消息队列
 | 
						|
 */
 | 
						|
class MessageQueues extends Base{
 | 
						|
   /**
 | 
						|
	* 新增
 | 
						|
 	*/
 | 
						|
	public function add($param){
 | 
						|
		$shopId = $param["shopId"];
 | 
						|
		$tplCode = $param["tplCode"];
 | 
						|
		$msgcat = Db::name("shop_message_cats")->where(["msgCode"=>$tplCode])->find();
 | 
						|
		$msgDataId = $msgcat["msgDataId"];
 | 
						|
		$msgType = $param['msgType'];
 | 
						|
		$dbo = Db::name("shop_roles sr")
 | 
						|
				->join("__SHOP_USERS__ su","sr.id=su.roleId");
 | 
						|
		if($msgType==4){
 | 
						|
			$dbo = $dbo->join("__USERS__ u","su.userId=u.userId")
 | 
						|
					   ->where("u.wxOpenId!=''");
 | 
						|
		}
 | 
						|
		// 'SELECT `su`.`userId` FROM hyh_shop_roles sr INNER JOIN `hyh_shop_users` `su` ON `sr`.`id`=`su`.`roleId` WHERE  (  su.dataFlag=1 and FIND_IN_SET(1,sr.privilegeMsgs) )'
 | 
						|
		//添加店铺ID验证  mark hsf 20180403
 | 
						|
		$list = $dbo->where("su.dataFlag=1 AND FIND_IN_SET(".$msgDataId.",sr.privilegeMsgs) AND su.shopId={$shopId}")->field("su.userId")->select();
 | 
						|
		$suser = array();
 | 
						|
		if($msgType==4){
 | 
						|
			$suser = Db::name("shop_users su")->join("__USERS__ u","su.userId=u.userId")
 | 
						|
				->where(["su.shopId"=>$shopId,"su.roleId"=>0])
 | 
						|
				->where("u.wxOpenId!=''")
 | 
						|
				->field("su.userId")->find();
 | 
						|
		}else{
 | 
						|
			$suser = Db::name("shop_users")->where(["shopId"=>$shopId,"roleId"=>0])->field("userId")->find();
 | 
						|
		}
 | 
						|
		if(!empty($suser)){
 | 
						|
			$list[] = $suser;
 | 
						|
		}
 | 
						|
		if($msgType==1){
 | 
						|
			foreach ($list as $key => $user) {
 | 
						|
				WSTSendMsg($user['userId'],$param['content'],$param['msgJson'],$msgType);
 | 
						|
			}
 | 
						|
		}else{
 | 
						|
			$dataAll = [];
 | 
						|
			$paramJson = $param["paramJson"];
 | 
						|
			foreach ($list as $key => $user) {
 | 
						|
				$data = [];
 | 
						|
				$paramJson["userId"] = $user["userId"];
 | 
						|
				$data['userId'] = $user["userId"];
 | 
						|
				$data['msgType'] = $msgType;
 | 
						|
				$data['msgCode'] = $param['tplCode'];
 | 
						|
				$data['paramJson'] = json_encode($paramJson);
 | 
						|
				$data['msgJson'] = $param['msgJson'];
 | 
						|
				$data['createTime'] = date('Y-m-d H:i:s');
 | 
						|
				$data['sendStatus'] = 0;
 | 
						|
				$dataAll[] = $data;
 | 
						|
			}
 | 
						|
			Db::name("message_queues")->insertAll($dataAll);
 | 
						|
		}
 | 
						|
		
 | 
						|
	}
 | 
						|
	/**
 | 
						|
	 * 发送成功修改状态
 | 
						|
	 */
 | 
						|
	public function edit($id){
 | 
						|
		$data = [];
 | 
						|
		$data['sendStatus'] = 1;
 | 
						|
		$result = $this->where(["id"=>$id])->save($data);
 | 
						|
       	return $result;
 | 
						|
	}
 | 
						|
 | 
						|
}
 |