StoreService.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. namespace app\admin\model\store;
  3. use app\admin\model\store\StoreServiceLog as ServiceLogModel;
  4. use app\admin\model\wechat\WechatUser;
  5. use traits\ModelTrait;
  6. use basic\ModelBasic;
  7. /**
  8. * 客服管理 model
  9. * Class StoreProduct
  10. * @package app\admin\model\store
  11. */
  12. class StoreService extends ModelBasic
  13. {
  14. use ModelTrait;
  15. /**
  16. * @return array
  17. */
  18. public static function getList($mer_id){
  19. $model = new self;
  20. $model->alias('a');
  21. $model->join('__USER__ b ','b.uid = a.uid');
  22. $model->field('a.*,b.nickname as wx_name');
  23. $model->where("mer_id",$mer_id);
  24. $model->order('a.id desc');
  25. return self::page($model,function($item,$key){
  26. });
  27. }
  28. /**
  29. * @return array
  30. */
  31. public static function getChatUser($now_service,$mer_id){
  32. $where = 'mer_id = '.$mer_id.' AND (uid = '.$now_service["uid"].' OR to_uid='.$now_service["uid"].')';
  33. $chat_list = ServiceLogModel::field("uid,to_uid")->where($where)->group("uid,to_uid")->select();
  34. if(count($chat_list) > 0){
  35. $arr_user = $arr_to_user = [];
  36. foreach ($chat_list as $key => $value) {
  37. array_push($arr_user,$value["uid"]);
  38. array_push($arr_to_user,$value["to_uid"]);
  39. }
  40. $uids = array_merge($arr_user,$arr_to_user);
  41. $list = WechatUser::field("uid,nickname,headimgurl")->where(array("uid"=>array(array("in",$uids),array("neq",$now_service["uid"]))))->select();
  42. foreach ($list as $index => $user) {
  43. $service = self::field("uid,nickname,avatar as headimgurl")->where(array("uid"=>$user["uid"]))->find();
  44. if($service)$list[$index] = $service;
  45. }
  46. }else{
  47. $list = null;
  48. }
  49. return $list;
  50. }
  51. }