作者 李宇航

合并分支 'master-server' 到 'master'

修改询盘导出脱敏问题



查看合并请求 !853
@@ -168,7 +168,7 @@ class InquiryController extends BaseController @@ -168,7 +168,7 @@ class InquiryController extends BaseController
168 $data = $data['list'] ?? []; 168 $data = $data['list'] ?? [];
169 foreach ($data as &$item){ 169 foreach ($data as &$item){
170 //非正常登录的 170 //非正常登录的
171 - if($this->param['login_source']??0 != 2){ 171 + if($this->user['login_source']??0 != 2){
172 //脱敏 172 //脱敏
173 !empty($item['email']) && $item['email'] = email_desensitize($item['email']); 173 !empty($item['email']) && $item['email'] = email_desensitize($item['email']);
174 !empty($item['phone']) && $item['phone'] = substr($item['phone'], 0, -4) . '****'; 174 !empty($item['phone']) && $item['phone'] = substr($item['phone'], 0, -4) . '****';
@@ -195,6 +195,13 @@ class ProductController extends BaseController @@ -195,6 +195,13 @@ class ProductController extends BaseController
195 $this->map['title'] = str_replace('+',' ',$this->map['title']); 195 $this->map['title'] = str_replace('+',' ',$this->map['title']);
196 $query = $query->where('title','like','%'.$this->map['title'].'%'); 196 $query = $query->where('title','like','%'.$this->map['title'].'%');
197 } 197 }
  198 + if(isset($this->map['keyword_title']) && !empty($this->map['keyword_title'])){
  199 + $keywordModel = new Keyword();
  200 + $keywordInfo = $keywordModel->read(['title'=>$this->map['keyword_title']],['id']);
  201 + if(!empty($keywordInfo)){
  202 + $query = $query->where('keyword_id','like','%,'.$keywordInfo['id'].',%');
  203 + }
  204 + }
198 if(isset($this->map['status'])){ 205 if(isset($this->map['status'])){
199 if($this->map['status'] == 0){ 206 if($this->map['status'] == 0){
200 $query = $query->whereIn('status',[0,3]); 207 $query = $query->whereIn('status',[0,3]);
@@ -207,6 +207,9 @@ class CustomTemplateLogic extends BaseLogic @@ -207,6 +207,9 @@ class CustomTemplateLogic extends BaseLogic
207 public function handleSaveParam(){ 207 public function handleSaveParam(){
208 $this->param['url'] = str_replace_url($this->param['url']); 208 $this->param['url'] = str_replace_url($this->param['url']);
209 $this->param['operator_id'] = $this->user['id']; 209 $this->param['operator_id'] = $this->user['id'];
  210 + if(empty($this->project)){
  211 + $this->fail('登录已过期,请重新登录');
  212 + }
210 if(($this->project['deploy_build']['is_search'] == 0) && ($this->param['url'] == 'search')){ 213 if(($this->project['deploy_build']['is_search'] == 0) && ($this->param['url'] == 'search')){
211 $this->fail('请先开启搜索页可视化'); 214 $this->fail('请先开启搜索页可视化');
212 } 215 }
@@ -175,6 +175,9 @@ class BaseLogic extends Logic @@ -175,6 +175,9 @@ class BaseLogic extends Logic
175 $str = http_build_query($data); 175 $str = http_build_query($data);
176 $url = $this->user['domain'].'api/delHtml/?'.$str; 176 $url = $this->user['domain'].'api/delHtml/?'.$str;
177 $serverIpModel = new ServersIp(); 177 $serverIpModel = new ServersIp();
  178 + if(empty($this->project)){
  179 + $this->fail('登录已过期,请重新登录');
  180 + }
178 $serversIpInfo = $serverIpModel->read(['id'=>$this->project['serve_id']],['servers_id']); 181 $serversIpInfo = $serverIpModel->read(['id'=>$this->project['serve_id']],['servers_id']);
179 if($serversIpInfo && ($serversIpInfo['servers_id'] == ServerConfig::SELF_SITE_ID)){ 182 if($serversIpInfo && ($serversIpInfo['servers_id'] == ServerConfig::SELF_SITE_ID)){
180 //自建站服务器直接返回 183 //自建站服务器直接返回
@@ -163,48 +163,7 @@ class UserLoginLogic @@ -163,48 +163,7 @@ class UserLoginLogic
163 if($project['site_status'] != 0){//关闭站点 163 if($project['site_status'] != 0){//关闭站点
164 $this->fail('当前网站已过期,请联系管理员及时续费。'); 164 $this->fail('当前网站已过期,请联系管理员及时续费。');
165 } 165 }
166 - $info['title'] = $project['title'] ?? '';  
167 - $info['company'] = $project['company'] ?? '';  
168 - $info['from_order_id'] = $project['from_order_id'] ?? '';  
169 - $info['aicc'] = $project['aicc'] ?? '';  
170 - $info['hagro'] = $project['hagro'] ?? '';  
171 - $info['plan'] = Project::planMap()[$project['deploy_build']['plan']];  
172 - $info['test_domain'] = $project['deploy_build']['test_domain'] ?? '';  
173 - $info['domain'] = (!empty($project['deploy_optimize']['domain']) ? ((new DomainInfo())->getDomain($project['deploy_optimize']['domain'])) : ($project['deploy_build']['test_domain'] ?? ''));  
174 - $info['is_customized'] = $project['is_customized'];  
175 - $info['is_upload_manage'] = $project['is_upload_manage'];  
176 - $info['is_upgrade'] = $project['is_upgrade'];  
177 - $info['is_show_blog'] = $project['is_show_blog'];  
178 - $info['upload_config'] = $project['upload_config'];  
179 - $info['main_lang_id'] = $project['main_lang_id'];  
180 - $info['image_max'] = $project['image_max'];  
181 - $info['uptime_type'] = $this->getHistory($project);  
182 - $info['uptime'] = $project['uptime'];  
183 - $info['storage_type'] = $project['storage_type'];  
184 - $info['project_location'] = $project['project_location'];  
185 - $info['open_export_product'] = $project['open_export_product'];  
186 - $info['is_update_language'] = $project['is_update_language'];  
187 - $info['is_watermark'] = $project['is_watermark'];  
188 - $project['deploy_build']['configuration']['is_product'] = $project['deploy_build']['configuration']['is_news'] = $project['deploy_build']['configuration']['is_blogs'] = $project['deploy_build']['configuration']['is_module'] = "1";  
189 - $info['configuration'] = $project['deploy_build']['configuration'];  
190 - $info['file_cdn'] = $project['deploy_build']['file_cdn'];  
191 - $info['project_type'] = $project['type'];  
192 - $info['service_duration'] = $project['deploy_build']['service_duration'];  
193 - $info['remain_day'] = $project['remain_day'];  
194 - if($info['is_customized'] == 1){  
195 - $info['is_visualization'] = json_decode($project['is_visualization']);  
196 - }  
197 - $info['is_comment'] = $project['deploy_build']['is_comment'] ?? 0;  
198 - $info['is_visualization_authority'] = $project['deploy_build']['is_visualization_authority'];  
199 - $info['is_inquiry_country'] = $project['is_inquiry_country'];  
200 - $info['is_subscribe'] = $project['is_subscribe'];  
201 - //是否开通AMP  
202 - $is_amp = 0;  
203 - if(!empty($project['deploy_optimize']['domain'])){  
204 - $amp_info = (new DomainInfo())->read(['id'=>$project['deploy_optimize']['domain']],['amp_status']);  
205 - $is_amp = $amp_info ? $amp_info['amp_status'] : 0;  
206 - }  
207 - $info['is_amp'] = $is_amp; 166 + $info = $this->handleInfo($info,$project);
208 $info['login_source'] = $login_source; 167 $info['login_source'] = $login_source;
209 //保存项目缓存 168 //保存项目缓存
210 Cache::put('user-'.$info['project_id'],$project,12 * 3600); 169 Cache::put('user-'.$info['project_id'],$project,12 * 3600);
@@ -212,6 +171,27 @@ class UserLoginLogic @@ -212,6 +171,27 @@ class UserLoginLogic
212 } 171 }
213 172
214 /** 173 /**
  174 + * @remark :组装返回数据
  175 + * @name :getProjectInfo
  176 + * @author :lyh
  177 + * @method :post
  178 + * @time :2023/8/29 15:26
  179 + */
  180 + public function assembleParam($mobile,$project_id){
  181 + $info = $this->model->read(['mobile'=>$mobile,'project_id'=>$project_id],['id','mobile','status','role_id','token','name','wechat','project_id']);
  182 + //获取项目详情
  183 + $project = $this->getProjectInfo($project_id);
  184 + if($project['site_status'] != 0){//关闭站点
  185 + $this->fail('当前网站已过期,请联系管理员及时续费。');
  186 + }
  187 + $info = $this->handleInfo($info,$project);
  188 + $info['login_source'] = User::LOGIN_PASSWORD_SOURCE;//账号密码登录返回
  189 + //保存项目缓存
  190 + Cache::put('user-'.$info['project_id'],$project,12 * 3600);
  191 + return $this->success($info);
  192 + }
  193 +
  194 + /**
215 * @remark :获取问卷调查记录(阶段记录) 195 * @remark :获取问卷调查记录(阶段记录)
216 * @name :getHistory 196 * @name :getHistory
217 * @author :lyh 197 * @author :lyh
@@ -260,19 +240,13 @@ class UserLoginLogic @@ -260,19 +240,13 @@ class UserLoginLogic
260 } 240 }
261 241
262 /** 242 /**
263 - * @remark :组装返回数据  
264 - * @name :getProjectInfo 243 + * @remark :登录返回数据处理
  244 + * @name :handleInfo
265 * @author :lyh 245 * @author :lyh
266 * @method :post 246 * @method :post
267 - * @time :2023/8/29 15:26 247 + * @time :2024/11/5 16:51
268 */ 248 */
269 - public function assembleParam($mobile,$project_id){  
270 - $info = $this->model->read(['mobile'=>$mobile,'project_id'=>$project_id],['id','mobile','status','role_id','token','name','wechat','project_id']);  
271 - //获取项目详情  
272 - $project = $this->getProjectInfo($project_id);  
273 - if($project['site_status'] != 0){//关闭站点  
274 - $this->fail('当前网站已过期,请联系管理员及时续费。');  
275 - } 249 + public function handleInfo($info,$project){
276 $info['title'] = $project['title'] ?? ''; 250 $info['title'] = $project['title'] ?? '';
277 $info['company'] = $project['company'] ?? ''; 251 $info['company'] = $project['company'] ?? '';
278 $info['from_order_id'] = $project['from_order_id'] ?? ''; 252 $info['from_order_id'] = $project['from_order_id'] ?? '';
@@ -309,6 +283,7 @@ class UserLoginLogic @@ -309,6 +283,7 @@ class UserLoginLogic
309 $info['is_visualization_authority'] = $project['deploy_build']['is_visualization_authority']; 283 $info['is_visualization_authority'] = $project['deploy_build']['is_visualization_authority'];
310 $info['is_inquiry_country'] = $project['is_inquiry_country']; 284 $info['is_inquiry_country'] = $project['is_inquiry_country'];
311 $info['is_subscribe'] = $project['is_subscribe']; 285 $info['is_subscribe'] = $project['is_subscribe'];
  286 + $info['is_news'] = $project['is_news'] ?? 0;
312 //是否开通AMP 287 //是否开通AMP
313 $is_amp = 0; 288 $is_amp = 0;
314 if(!empty($project['deploy_optimize']['domain'])){ 289 if(!empty($project['deploy_optimize']['domain'])){
@@ -316,13 +291,9 @@ class UserLoginLogic @@ -316,13 +291,9 @@ class UserLoginLogic
316 $is_amp = $amp_info ? $amp_info['amp_status'] : 0; 291 $is_amp = $amp_info ? $amp_info['amp_status'] : 0;
317 } 292 }
318 $info['is_amp'] = $is_amp; 293 $info['is_amp'] = $is_amp;
319 - $info['login_source'] = User::LOGIN_PASSWORD_SOURCE;//账号密码登录返回  
320 - //保存项目缓存  
321 - Cache::put('user-'.$info['project_id'],$project,12 * 3600);  
322 - return $this->success($info); 294 + return $info;
323 } 295 }
324 296
325 -  
326 /** 297 /**
327 * @remark :获取项目数据详情 298 * @remark :获取项目数据详情
328 * @name :getProjectInfo 299 * @name :getProjectInfo