作者 lyh

变更数据

  1 +<?php
  2 +/**
  3 + * @remark :
  4 + * @name :GeoCount.php
  5 + * @author :lyh
  6 + * @method :post
  7 + * @time :2025/10/13 16:05
  8 + */
  9 +
  10 +namespace App\Console\Commands\Geo;
  11 +
  12 +use App\Models\Geo\GeoQuestionLog;
  13 +use Illuminate\Console\Command;
  14 +use Illuminate\Support\Carbon;
  15 +
  16 +class GeoCount extends Command
  17 +{
  18 + /**
  19 + * The name and signature of the console command.
  20 + *
  21 + * @var string
  22 + */
  23 + protected $signature = 'geo_count';
  24 +
  25 + public $porject_id;//记录当时执行的project_id
  26 +
  27 + /**
  28 + * The console command description.
  29 + *
  30 + * @var string
  31 + */
  32 + protected $description = 'geo统计数据';
  33 +
  34 +
  35 +
  36 + public function handle(){
  37 +
  38 + }
  39 +
  40 + /**
  41 + * @remark :方法
  42 + * @name :_action
  43 + * @author :lyh
  44 + * @method :post
  45 + * @time :2025/10/13 16:20
  46 + */
  47 + public function _action()
  48 + {
  49 + //获取前一天的项目id
  50 + $date = Carbon::yesterday()->format('Y-m-d');
  51 + $start = $date.' 00:00:00';
  52 + $end = $date.' 23:59:59';
  53 + $geoLogModel = new GeoQuestionLog();
  54 + $geoLogModel->formatQuery(['created_at' => ['between',[$start,$end]]])->distinct()->pluck('project_id');
  55 + }
  56 +}
@@ -87,18 +87,20 @@ class AsideTicketLogController extends BaseController @@ -87,18 +87,20 @@ class AsideTicketLogController extends BaseController
87 }else { 87 }else {
88 // 如果所有子任务都完成了,则将工单状态改为已完成 88 // 如果所有子任务都完成了,则将工单状态改为已完成
89 // todo 注意:建站期间的工单,所有人都完成后,不自动完成工单,需要项目经理验收修改工单状态 89 // todo 注意:建站期间的工单,所有人都完成后,不自动完成工单,需要项目经理验收修改工单状态
90 - if (($ticket->title == 'GEO项目') || !($ticket->project->status == 1 && in_array($ticket->project->project_cate, [1, 2])))  
91 - {  
92 - $ticket->status = Tickets::STATUS_COMPLETED;  
93 - $ticket->end_at = now();  
94 - $ticket->end_time = diffInHours($ticket->created_at,$ticket->end_at);  
95 - $project = $ticket->project;  
96 - if ($project->wechat_switch && !$ticket->close_wechat)  
97 - $project->pushWechatGroupMsg("工单(ID:{$ticket->id})已全部完成,请访问查看详情!");  
98 - $ticket->pushDing('finish');  
99 - }else{ 90 + if (($ticket->title == 'GEO项目') || !($ticket->project->status == 1 && in_array($ticket->project->project_cate, [1, 2]))) {
  91 + $ticket->status = Tickets::STATUS_COMPLETED;
  92 + $ticket->end_at = now();
  93 + $ticket->end_time = diffInHours($ticket->created_at, $ticket->end_at);
  94 + $message = "工单(ID:{$ticket->id})已全部完成,请访问查看详情!";
  95 + } else {
100 $ticket->status = Tickets::STATUS_YANSHOU; 96 $ticket->status = Tickets::STATUS_YANSHOU;
  97 + $message = "工单(ID:{$ticket->id})已全部完成,请访问查看详情!请审核";
101 } 98 }
  99 + $project = $ticket->project;
  100 + if ($project->wechat_switch && !$ticket->close_wechat) {
  101 + $project->pushWechatGroupMsg($message);
  102 + }
  103 + $ticket->pushDing('finish');
102 } 104 }
103 $ticket->save(); 105 $ticket->save();
104 return $log; 106 return $log;