moonsflyer 8 miesięcy temu
rodzic
commit
037da192d7

+ 3 - 2
app/adminapi/controller/agricultural_machinery/UserServiceController.php

@@ -182,7 +182,8 @@ class UserServiceController extends BaseAdminController
     }
 
     public function getUserServiceData(){
-        $result = UserServiceLogic::saveServiceList();
-        return $this->success('查询成功', [], 1, 1);
+        $result = UserServiceLogic::getServiceList();
+
+        return $this->success('查询成功', $result, 1, 1);
     }
 }

+ 74 - 2
app/adminapi/logic/agricultural_machinery/UserServiceLogic.php

@@ -22,6 +22,7 @@ use app\common\model\article\ArticleCate;
 use app\common\model\user\User;
 use app\common\model\agricultural_machinery\ServiceCategory as AgriculturalMachineryServiceCategory;
 use app\common\model\recharge\RechargeOrder;
+use app\common\model\supply_demand\SupplyDemandInfo;
 use app\common\model\ServiceCharge;
 use think\facade\Db;
 
@@ -196,7 +197,78 @@ class UserServiceLogic extends BaseLogic
         return true;
     }
 
-    public static function saveServiceList(){
-        return [];
+    public static function getServiceList(){
+
+//        //农资供应
+        $sdswhere = [];
+        $sdswhere[]=['sdi.status','=',2];
+        $sdswhere[]=['sdi.type','=',1];
+        $SupplyInfo = SupplyDemandInfo::alias('sdi')
+            ->leftJoin('supply_demand_cate sdc','sdi.cate_id = sdc.id')->field('sdi.cate_id,sdc.name,sum(number) total_num')->where($sdswhere)->group('cate_id')->select()->toArray();
+        $cate_name_arr = array_column($SupplyInfo,'name');
+        $value_arr = array_column($SupplyInfo,'total_num');
+        $middle['cate_name'] = $cate_name_arr;
+        $middle['cate_value'] = $value_arr;
+
+
+        $uswhere = [];
+        $uswhere[]=['status','=',1];
+        $UserServiceInfo = UserService::field('type,count(id) total_num')->where($uswhere)->group('type')->order('type asc')->select()->toArray();
+        $type_arr =[1,2,3];
+        $utype_arr = array_column($UserServiceInfo,'type');
+        $user_service_value = [];
+
+        foreach($type_arr as $tv){
+
+            $data=[];
+            if(in_array($tv,$utype_arr)){
+                foreach($UserServiceInfo as $usv){
+                    if($tv == $usv['type']){
+                        $data['value'] = $usv['total_num'];
+                    }
+                }
+            }else{
+                $data['value'] = 0;
+            }
+
+            switch ($tv){
+                case 1:
+                    $type_name = '农机服务';
+                    break;
+                case 2:
+                    $type_name = '烘干服务';
+                    break;
+                case 3:
+                    $type_name = '飞防服务';
+                    break;
+            }
+            $data['name'] = $type_name;
+            $user_service_value[]=$data;
+
+        }
+
+        $middle['user_service_value'] = $user_service_value;
+
+        //
+        $sdswhere = [];
+        $sdswhere[]=['sdi.status','=',2];
+        $sdswhere[]=['sdi.type','=',1];
+        $SupplyInfo = SupplyDemandInfo::alias('sdi')
+            ->leftJoin('supply_demand_cate sdc','sdi.cate_id = sdc.id')->field('sdi.cate_id,sdc.name,sum(number) total_num')
+            ->where($sdswhere)->group('cate_id')->order('total_num desc')->limit(6)->select()->toArray();
+
+        $cate_name_arr = array_column($SupplyInfo,'name');
+        $value_arr = array_column($SupplyInfo,'total_num');
+
+        foreach($SupplyInfo as &$siv){
+            unset($siv['cate_id']);
+            $siv['value'] = $siv['total_num'];
+            unset($siv['total_num']);
+        }
+        $middle['SupplyDemandInfo'] = $SupplyInfo;
+        $middle['supply_cate_name'] = $cate_name_arr;
+        $middle['supply_cate_value'] = $value_arr;
+
+        return $middle;
     }
 }

+ 9 - 0
app/common.php

@@ -31,7 +31,16 @@ function create_token(string $extra = '') : string
     return md5($salt . $extra . time() . $encryptSalt);
 }
 
+function getMonthFirstAndLastDay($year, $month) {
+    // 计算该月份的第一天
+    $firstDay = date('Y-m-01', strtotime("$year-$month-01"));
 
+    // 计算该月份的最后一天
+    $lastDay = date('Y-m-t', strtotime("$year-$month-01"));
+
+    // 返回第一天和最后一天的日期
+    return array('firstDay' => $firstDay, 'lastDay' => $lastDay);
+}
 /**
  * @notes 截取某字符字符串
  * @param $str