修复编码风格
parent
7ea9994dba
commit
9b10527985
|
|
@ -2,13 +2,11 @@
|
|||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Admin;
|
||||
use App\Enums\BaseType;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Http\Controllers\AdminController;
|
||||
|
||||
class AgriculturalBaseController extends AdminController
|
||||
|
|
@ -42,7 +40,6 @@ class AgriculturalBaseController extends AdminController
|
|||
|
||||
$grid->filter(function (Grid\Filter $filter) {
|
||||
$filter->like('name')->width(3);
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -76,7 +73,7 @@ class AgriculturalBaseController extends AdminController
|
|||
|
||||
$form->hidden('type')->value(BaseType::Base->value);
|
||||
|
||||
$form->saving(function($form){
|
||||
$form->saving(function ($form) {
|
||||
$position = json_decode($form->position);
|
||||
|
||||
$form->address = $position->address ?? '';
|
||||
|
|
|
|||
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use App\Http\Resources\CropResource;
|
||||
use App\Models\Crop;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Admin;
|
||||
use App\Http\Resources\CropResource;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
use Dcat\Admin\Http\Controllers\AdminController;
|
||||
use Dcat\Admin\Show;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
|
||||
class CropController extends AdminController
|
||||
{
|
||||
|
|
@ -39,7 +39,6 @@ class CropController extends AdminController
|
|||
|
||||
$grid->filter(function (Grid\Filter $filter) {
|
||||
$filter->like('name')->width(3);
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -47,8 +46,7 @@ class CropController extends AdminController
|
|||
/**
|
||||
* Make a show builder.
|
||||
*
|
||||
* @param mixed $id
|
||||
*
|
||||
* @param mixed $id
|
||||
* @return Show
|
||||
*/
|
||||
protected function detail($id)
|
||||
|
|
@ -78,13 +76,13 @@ class CropController extends AdminController
|
|||
return Form::make(new Crop(), function (Form $form) {
|
||||
$form->display('id');
|
||||
$form->select('category_id')->options(Keywords::where('type_key', 'crops-category')->get()->pluck('name', 'id'));
|
||||
$form->select('parent_id')->options(Crop::selectOptions(function($q){
|
||||
$form->select('parent_id')->options(Crop::selectOptions(function ($q) {
|
||||
return $q->where('is_end', 0);
|
||||
}))->required();
|
||||
// $form->text('parent_id');
|
||||
$form->radio('crop_type')->options([
|
||||
1=> '基地',
|
||||
2=> '镇街'
|
||||
1 => '基地',
|
||||
2 => '镇街',
|
||||
])->default(2);
|
||||
$form->text('name');
|
||||
$form->switch('is_end');
|
||||
|
|
@ -102,8 +100,10 @@ class CropController extends AdminController
|
|||
});
|
||||
}
|
||||
|
||||
public function info($id){
|
||||
public function info($id)
|
||||
{
|
||||
$crop = Crop::findOrFail($id);
|
||||
|
||||
return CropResource::make($crop);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use App\Models\AgriculturalBase;
|
||||
use App\Models\Crop;
|
||||
use App\Models\CropYield;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Admin;
|
||||
use App\Models\CropYield;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Dcat\Admin\Http\Controllers\AdminController;
|
||||
use Dcat\Admin\Show;
|
||||
|
||||
class CropYieldController extends AdminController
|
||||
{
|
||||
|
|
@ -21,15 +21,16 @@ class CropYieldController extends AdminController
|
|||
protected function grid()
|
||||
{
|
||||
$builder = CropYield::with(['base', 'crop', 'createdBy', 'updatedBy']);
|
||||
|
||||
return Grid::make($builder, function (Grid $grid) {
|
||||
$grid->column('id')->sortable();
|
||||
$grid->column('base.name', '区域')->label();
|
||||
$grid->column('crop.name', '农作物');
|
||||
$grid->column('time_year')->append('年');
|
||||
$grid->column('quarter')->display(function($v){
|
||||
$grid->column('quarter')->display(function ($v) {
|
||||
return '第'.$v.'季度';
|
||||
});
|
||||
$grid->column('yield')->display(function($v){
|
||||
$grid->column('yield')->display(function ($v) {
|
||||
return $v.$this->crop?->unit ?? '';
|
||||
});
|
||||
$grid->column('cultivated');
|
||||
|
|
@ -54,8 +55,7 @@ class CropYieldController extends AdminController
|
|||
/**
|
||||
* Make a show builder.
|
||||
*
|
||||
* @param mixed $id
|
||||
*
|
||||
* @param mixed $id
|
||||
* @return Show
|
||||
*/
|
||||
protected function detail($id)
|
||||
|
|
@ -84,6 +84,7 @@ class CropYieldController extends AdminController
|
|||
protected function form()
|
||||
{
|
||||
$builder = CropYield::with(['base', 'crop']);
|
||||
|
||||
return Form::make($builder, function (Form $form) {
|
||||
$model = $form->model();
|
||||
|
||||
|
|
@ -93,12 +94,12 @@ class CropYieldController extends AdminController
|
|||
|
||||
$form->datetime('time_year')->format('YYYY')->required();
|
||||
$form->radio('quarter')->options([
|
||||
1=>'1季度',2=>'2季度',3=>'3季度',4=>'4季度',
|
||||
1 => '1季度', 2 => '2季度', 3 => '3季度', 4 => '4季度',
|
||||
])->default(1)->required();
|
||||
$form->currency('yield')->symbol($model->crop?->unit ?? '斤');
|
||||
|
||||
Admin::script(
|
||||
<<<JS
|
||||
<<<'JS'
|
||||
let crop;
|
||||
$('body').on('select2:select', 'select.field_crop_id', function(e){
|
||||
let url_path = '/admin/api/crops/' + e.params.data.id
|
||||
|
|
@ -120,12 +121,14 @@ class CropYieldController extends AdminController
|
|||
if ($v === null) {
|
||||
$v = 0;
|
||||
}
|
||||
|
||||
return $v;
|
||||
});
|
||||
$form->currency('output')->symbol('元')->default(0)->required()->saving(function ($v) {
|
||||
if ($v === null) {
|
||||
$v = 0;
|
||||
}
|
||||
|
||||
return $v;
|
||||
});
|
||||
// $form->text('created_by');
|
||||
|
|
|
|||
|
|
@ -2,12 +2,11 @@
|
|||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use App\Models\FriendLink;
|
||||
use Carbon\Carbon;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Admin;
|
||||
use App\Models\FriendLink;
|
||||
use Dcat\Admin\Http\Controllers\AdminController;
|
||||
|
||||
class FriendLinkController extends AdminController
|
||||
|
|
@ -22,7 +21,7 @@ class FriendLinkController extends AdminController
|
|||
return Grid::make(new FriendLink(), function (Grid $grid) {
|
||||
// $grid->column('id')->sortable();
|
||||
$grid->column('name');
|
||||
$grid->column('type')->display(function(){
|
||||
$grid->column('type')->display(function () {
|
||||
return $this->typeLabel();
|
||||
});
|
||||
// $grid->column('content');
|
||||
|
|
@ -40,7 +39,6 @@ class FriendLinkController extends AdminController
|
|||
|
||||
$grid->filter(function (Grid\Filter $filter) {
|
||||
$filter->like('name')->width(3);
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -58,7 +56,7 @@ class FriendLinkController extends AdminController
|
|||
$form->radio('type')
|
||||
->options(FriendLink::typeMap())
|
||||
->default(FriendLink::TYPE_LINK)
|
||||
->when(FriendLink::TYPE_LINK, function($form){
|
||||
->when(FriendLink::TYPE_LINK, function ($form) {
|
||||
$form->text('content_1', '内容')->customFormat(function () {
|
||||
if ($this->model()->type == FriendLink::TYPE_LINK) {
|
||||
return $this->model()->content;
|
||||
|
|
@ -67,7 +65,7 @@ class FriendLinkController extends AdminController
|
|||
}
|
||||
});
|
||||
})
|
||||
->when(FriendLink::TYPE_VIDEO, function($form){
|
||||
->when(FriendLink::TYPE_VIDEO, function ($form) {
|
||||
$form->file('content_2', '内容')->chunked()
|
||||
->accept('mp4', 'mp4/*')
|
||||
->move('friend-link/'.Carbon::now()->toDateString())
|
||||
|
|
@ -75,14 +73,14 @@ class FriendLinkController extends AdminController
|
|||
->saveFullUrl()
|
||||
->removable(false)
|
||||
->autoUpload()->autoSave(false)->customFormat(function () {
|
||||
if ($this->model()->type == FriendLink::TYPE_VIDEO) {
|
||||
return $this->model()->content;
|
||||
} else {
|
||||
return '';
|
||||
};
|
||||
});
|
||||
})
|
||||
->when(FriendLink::TYPE_ARTICLE, function($form){
|
||||
if ($this->model()->type == FriendLink::TYPE_VIDEO) {
|
||||
return $this->model()->content;
|
||||
} else {
|
||||
return '';
|
||||
}
|
||||
});
|
||||
})
|
||||
->when(FriendLink::TYPE_ARTICLE, function ($form) {
|
||||
$form->editor('content_3', '内容')->options([
|
||||
'plugins' => [
|
||||
'image',
|
||||
|
|
|
|||
|
|
@ -19,12 +19,14 @@ class CropExtends extends Field
|
|||
public function listen($listen = '')
|
||||
{
|
||||
$this->listen = $listen;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function render()
|
||||
{
|
||||
$this->addVariables(['listen' => $this->listen]);
|
||||
|
||||
return parent::render();
|
||||
}
|
||||
|
||||
|
|
@ -38,30 +40,31 @@ class CropExtends extends Field
|
|||
{
|
||||
$value = json_decode($value, true);
|
||||
$toValue = null;
|
||||
if($value){
|
||||
foreach($value as $item){
|
||||
if ($value) {
|
||||
foreach ($value as $item) {
|
||||
$toValue[$item['name']] = $item['value'];
|
||||
}
|
||||
}
|
||||
|
||||
return $toValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化渲染值
|
||||
*
|
||||
* @param [type] $value
|
||||
* @return void
|
||||
*/
|
||||
* 格式化渲染值
|
||||
*
|
||||
* @param [type] $value
|
||||
* @return void
|
||||
*/
|
||||
protected function formatFieldData($data)
|
||||
{
|
||||
$value = parent::formatFieldData($data);
|
||||
|
||||
$crop = Arr::get($this->variables, 'crop', null);
|
||||
$toValue = [];
|
||||
if($crop && $crop->extends){
|
||||
if ($crop && $crop->extends) {
|
||||
$extends = json_decode($crop->extends, true);
|
||||
foreach ($extends as $ext){
|
||||
$toValue[] = array_merge($ext, ['value'=>$value[$ext['name']] ?? null]);
|
||||
foreach ($extends as $ext) {
|
||||
$toValue[] = array_merge($ext, ['value' => $value[$ext['name']] ?? null]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -72,5 +75,4 @@ class CropExtends extends Field
|
|||
{
|
||||
return $this->addVariables(['crop' => $crop]);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<?php
|
||||
|
||||
use App\Admin\Form\Amap;
|
||||
use App\Admin\Form\CropExtends;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Admin;
|
||||
use App\Admin\Form\Amap;
|
||||
use App\Admin\Form\CropExtends;
|
||||
|
||||
/**
|
||||
* Dcat-admin - admin builder based on Laravel.
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ enum DeviceStatus: int
|
|||
case Offline = 2; // 离线
|
||||
case Broken = 3; // 故障
|
||||
|
||||
/**
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public static function status(): array
|
||||
|
|
|
|||
|
|
@ -51,6 +51,7 @@ class AdminUserController extends Controller
|
|||
public function show(AdminUser $adminUser)
|
||||
{
|
||||
$adminUser->load(['bases', 'roles']);
|
||||
|
||||
return $this->json(AdminUserResource::make($adminUser));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3,14 +3,14 @@
|
|||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Enums\BaseType;
|
||||
use App\Enums\DeviceStatus;
|
||||
use App\Enums\DeviceType;
|
||||
use App\Helpers\Paginator;
|
||||
use App\Enums\DeviceStatus;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Http\Requestes\AgriculturalBaseRequest;
|
||||
use App\Http\Resources\AgriculturalBaseResource;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class AgriculturalBaseController extends Controller
|
||||
{
|
||||
|
|
@ -57,6 +57,7 @@ class AgriculturalBaseController extends Controller
|
|||
public function show(AgriculturalBase $agriculturalBasic)
|
||||
{
|
||||
$agriculturalBasic->load('crops');
|
||||
|
||||
return $this->json(AgriculturalBaseResource::make($agriculturalBasic));
|
||||
}
|
||||
|
||||
|
|
@ -105,9 +106,10 @@ class AgriculturalBaseController extends Controller
|
|||
/**
|
||||
* 获取指定设备类型下有设备的基地
|
||||
*/
|
||||
public function deviceBase(Request $request){
|
||||
public function deviceBase(Request $request)
|
||||
{
|
||||
$deviceType = $request->input('device_type', DeviceType::Monitor);
|
||||
$list = AgriculturalBase::filter($request->all())->whereHas('devices', function($q) use ($deviceType){
|
||||
$list = AgriculturalBase::filter($request->all())->whereHas('devices', function ($q) use ($deviceType) {
|
||||
return $q->where('type', $deviceType)->where('status', DeviceStatus::Online);
|
||||
})->get();
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,6 @@ use App\Models\Materiel;
|
|||
use App\Models\RiceShrimpFlow;
|
||||
use App\Models\RiceShrimpIndustry;
|
||||
use App\Models\RiceShrimpPrice;
|
||||
use App\Services\RiceShrimpPriceService;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ChartController extends Controller
|
||||
|
|
@ -15,7 +14,7 @@ class ChartController extends Controller
|
|||
/**
|
||||
* 稻虾价格趋势
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function riceShrimpPrice(Request $request)
|
||||
|
|
@ -63,7 +62,7 @@ class ChartController extends Controller
|
|||
/**
|
||||
* 稻虾产业
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function riceShrimpIndustry(Request $request)
|
||||
|
|
@ -114,7 +113,7 @@ class ChartController extends Controller
|
|||
/**
|
||||
* 稻虾流向
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function riceShrimpFlow(Request $request)
|
||||
|
|
@ -155,7 +154,7 @@ class ChartController extends Controller
|
|||
/**
|
||||
* 大宗物资
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function materiel(Request $request)
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ class CropController extends Controller
|
|||
{
|
||||
$query = Crop::filter($request->input());
|
||||
$list = $query->sort()->get();
|
||||
|
||||
return $this->json(CropResource::collection($list));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,16 +2,15 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Crop;
|
||||
use App\Models\CropYield;
|
||||
use App\Helpers\Paginator;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
use App\Http\Requestes\CropYieldRequest;
|
||||
use App\Http\Resources\CropYieldResource;
|
||||
use App\Http\Requestes\CropYieldUpdateRequest;
|
||||
use App\Models\AgriculturalBase;
|
||||
use App\Models\Crop;
|
||||
use App\Models\CropYield;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
|
||||
class CropYieldController extends Controller
|
||||
{
|
||||
|
|
@ -35,19 +34,19 @@ class CropYieldController extends Controller
|
|||
$cropId = $request->input('crop_id');
|
||||
$timeYear = $request->input('time_year');
|
||||
$quarter = $request->input('quarter');
|
||||
if(CropYield::where([
|
||||
if (CropYield::where([
|
||||
'base_id' => $baseId,
|
||||
'crop_id' => $cropId,
|
||||
'time_year' => $timeYear,
|
||||
'quarter' => $quarter
|
||||
])->exists()){
|
||||
'quarter' => $quarter,
|
||||
])->exists()) {
|
||||
return $this->error('该数据已存在,无法添加,请修改');
|
||||
}
|
||||
|
||||
$crop = Crop::find($cropId);
|
||||
|
||||
CropYield::create(array_merge($request->input(), [
|
||||
'category_id'=> $crop->category_id ?? 0,
|
||||
'category_id' => $crop->category_id ?? 0,
|
||||
'created_by' => auth('api')->user()?->id ?? 0,
|
||||
'updated_by' => auth('api')->user()?->id ?? 0,
|
||||
]));
|
||||
|
|
@ -68,19 +67,19 @@ class CropYieldController extends Controller
|
|||
$cropId = $request->input('crop_id');
|
||||
$timeYear = $request->input('time_year');
|
||||
$quarter = $request->input('quarter');
|
||||
if(CropYield::where([
|
||||
if (CropYield::where([
|
||||
'base_id' => $baseId,
|
||||
'crop_id' => $cropId,
|
||||
'time_year' => $timeYear,
|
||||
'quarter' => $quarter
|
||||
])->where('id', '<>', $cropYield->id)->exists()){
|
||||
'quarter' => $quarter,
|
||||
])->where('id', '<>', $cropYield->id)->exists()) {
|
||||
return $this->error('该数据已存在,无法添加,请修改');
|
||||
}
|
||||
|
||||
$crop = Crop::find($cropId);
|
||||
|
||||
$cropYield->update(array_merge($request->input(), [
|
||||
'category_id'=> $crop->category_id ?? 0,
|
||||
'category_id' => $crop->category_id ?? 0,
|
||||
'updated_by' => auth('api')->user()?->id ?? 0,
|
||||
]));
|
||||
|
||||
|
|
@ -97,84 +96,85 @@ class CropYieldController extends Controller
|
|||
/**
|
||||
* 季度统计图
|
||||
*
|
||||
* @param Request $request
|
||||
* @param Request $request
|
||||
* @return void
|
||||
*/
|
||||
public function quarterStaticsChart(Request $request){
|
||||
$categoryId = $request->input('category_id');//获取产业ID
|
||||
$cropId = $request->input('crop_id', 0);//农作物ID
|
||||
public function quarterStaticsChart(Request $request)
|
||||
{
|
||||
$categoryId = $request->input('category_id'); //获取产业ID
|
||||
$cropId = $request->input('crop_id', 0); //农作物ID
|
||||
|
||||
//统计区域范围
|
||||
$baseId = $request->input('base_id', 0);
|
||||
|
||||
//统计时间
|
||||
$year = $request->input('year', date('Y'));//默认今年
|
||||
$year = $request->input('year', date('Y')); //默认今年
|
||||
|
||||
$crop = Crop::where([
|
||||
'category_id' => $categoryId,
|
||||
'id' => $cropId
|
||||
'id' => $cropId,
|
||||
])->first();
|
||||
|
||||
$staticCropIds = [];
|
||||
$extendsQ = '';
|
||||
//常规统计
|
||||
//常规统计
|
||||
$staticsData = [
|
||||
'yield' => [
|
||||
'name' => '产量',
|
||||
'unit' => $crop?->unit ??'斤',
|
||||
'unit' => $crop?->unit ?? '斤',
|
||||
'list' => [
|
||||
'第1季度'=> null,
|
||||
'第2季度'=> null,
|
||||
'第3季度'=> null,
|
||||
'第4季度'=> null,
|
||||
]
|
||||
'第1季度' => null,
|
||||
'第2季度' => null,
|
||||
'第3季度' => null,
|
||||
'第4季度' => null,
|
||||
],
|
||||
],
|
||||
'cultivated' =>[
|
||||
'cultivated' => [
|
||||
'name' => '种养殖面积',
|
||||
'unit' => '亩',
|
||||
'list' => [
|
||||
'第1季度'=> null,
|
||||
'第2季度'=> null,
|
||||
'第3季度'=> null,
|
||||
'第4季度'=> null,
|
||||
'第1季度' => null,
|
||||
'第2季度' => null,
|
||||
'第3季度' => null,
|
||||
'第4季度' => null,
|
||||
],
|
||||
],
|
||||
'output' => [
|
||||
'name' => '产值',
|
||||
'unit' => '元',
|
||||
'list' => [
|
||||
'第1季度'=> null,
|
||||
'第2季度'=> null,
|
||||
'第3季度'=> null,
|
||||
'第4季度'=> null,
|
||||
]
|
||||
]
|
||||
'第1季度' => null,
|
||||
'第2季度' => null,
|
||||
'第3季度' => null,
|
||||
'第4季度' => null,
|
||||
],
|
||||
],
|
||||
];
|
||||
if($crop?->is_end){
|
||||
if ($crop?->is_end) {
|
||||
$staticCropIds[] = $crop->id;
|
||||
if($crop->extends){
|
||||
if ($crop->extends) {
|
||||
$i = 0;
|
||||
foreach ($crop->extends as $item){
|
||||
foreach ($crop->extends as $item) {
|
||||
$i++;
|
||||
$_key = 'extend_'.$i;
|
||||
$staticsData[$_key] = [
|
||||
'name' => $item['name'],
|
||||
'unit' => $item['unit'],
|
||||
'list' => [
|
||||
'第1季度'=> null,
|
||||
'第2季度'=> null,
|
||||
'第3季度'=> null,
|
||||
'第4季度'=> null,
|
||||
]
|
||||
'第1季度' => null,
|
||||
'第2季度' => null,
|
||||
'第3季度' => null,
|
||||
'第4季度' => null,
|
||||
],
|
||||
];
|
||||
$extendsQ .= ", sum((extends->> '".$item['name']."')::NUMERIC) as extend_".$i."_total ";
|
||||
$extendsQ .= ", sum((extends->> '".$item['name']."')::NUMERIC) as extend_".$i.'_total ';
|
||||
}
|
||||
}
|
||||
}else{
|
||||
} else {
|
||||
$cropQ = Crop::query();
|
||||
if($crop){
|
||||
if ($crop) {
|
||||
$cropQ->where('path', 'like', '%'.$crop->id.'-');
|
||||
}else{
|
||||
} else {
|
||||
$cropQ->where('category_id', $categoryId);
|
||||
}
|
||||
$staticCropIds = $cropQ->where('is_end', 1)->pluck('id')->toArray();
|
||||
|
|
@ -183,19 +183,19 @@ class CropYieldController extends Controller
|
|||
$q = CropYield::query();
|
||||
$q->where('time_year', $year)->whereIn('crop_id', $staticCropIds)->groupBy('quarter');
|
||||
|
||||
if($baseId){
|
||||
if ($baseId) {
|
||||
$q->where('base_id', $baseId);
|
||||
}
|
||||
$q1 = clone $q;
|
||||
$sumSql = "quarter, sum(yield) as yield_total, sum(cultivated) as cultivated_total, sum(output) as output_total ";
|
||||
if($extendsQ){
|
||||
$sumSql.= $extendsQ;
|
||||
$sumSql = 'quarter, sum(yield) as yield_total, sum(cultivated) as cultivated_total, sum(output) as output_total ';
|
||||
if ($extendsQ) {
|
||||
$sumSql .= $extendsQ;
|
||||
}
|
||||
$data1 = $q1->select(DB::raw($sumSql))->get();
|
||||
|
||||
$data1 = $data1->keyBy('quarter');
|
||||
foreach ($staticsData as $key => $value) {
|
||||
foreach ($data1 as $quarter => $item){
|
||||
foreach ($data1 as $quarter => $item) {
|
||||
$_key = $key.'_total';
|
||||
$staticsData[$key]['list']['第'.$quarter.'季度'] = $item->$_key ?? 0;
|
||||
}
|
||||
|
|
@ -206,62 +206,61 @@ class CropYieldController extends Controller
|
|||
|
||||
/**
|
||||
* 行业产值统计,查询某年,可选镇(饼状图)
|
||||
*
|
||||
*/
|
||||
public function categoryStaticsChart(Request $request){
|
||||
$baseId = $request->input('base_id');//镇
|
||||
$year = $request->input('year', date('Y'));//年份
|
||||
public function categoryStaticsChart(Request $request)
|
||||
{
|
||||
$baseId = $request->input('base_id'); //镇
|
||||
$year = $request->input('year', date('Y')); //年份
|
||||
|
||||
$q = CropYield::query();
|
||||
$q->where('time_year', $year);
|
||||
if($baseId){
|
||||
if ($baseId) {
|
||||
$q->where('base_id', $baseId);
|
||||
}
|
||||
$q->groupBy('category_id');
|
||||
$totalData = $q->select(DB::raw("category_id, sum(output) as output_total "))
|
||||
$totalData = $q->select(DB::raw('category_id, sum(output) as output_total '))
|
||||
->get()
|
||||
->keyBy('category_id')->toArray();
|
||||
|
||||
$categories = Keywords::filter($request->all())->where('type_key', 'crops-category')->get();
|
||||
|
||||
$data = [];
|
||||
foreach ($categories as $category){
|
||||
foreach ($categories as $category) {
|
||||
$data[$category->name] = 0;
|
||||
if(isset($totalData[$category->id])){
|
||||
if (isset($totalData[$category->id])) {
|
||||
$data[$category->name] = $totalData[$category->id]['output_total'];
|
||||
}
|
||||
}
|
||||
|
||||
return $this->json([
|
||||
'list' =>$data
|
||||
'list' => $data,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 总产值,查询年折线图(当年往前查4年),可选镇
|
||||
*
|
||||
*/
|
||||
public function totalStaticsChart(Request $request){
|
||||
$baseId = $request->input('base_id');//镇
|
||||
public function totalStaticsChart(Request $request)
|
||||
{
|
||||
$baseId = $request->input('base_id'); //镇
|
||||
$nowYear = date('Y');
|
||||
|
||||
$q = CropYield::query();
|
||||
if($baseId){
|
||||
if ($baseId) {
|
||||
$q->where('base_id', $baseId);
|
||||
}
|
||||
$q->where('time_year', '>=', $nowYear-3);
|
||||
$q->where('time_year', '>=', $nowYear - 3);
|
||||
|
||||
$q->groupBy('time_year');
|
||||
$totalData = $q->select(DB::raw("time_year, sum(output) as output_total "))
|
||||
$totalData = $q->select(DB::raw('time_year, sum(output) as output_total '))
|
||||
->get()
|
||||
->keyBy('time_year')->toArray();
|
||||
|
||||
|
||||
$data = [];
|
||||
for($i = 0; $i < 4; $i++){
|
||||
$_year = $nowYear-$i;
|
||||
for ($i = 0; $i < 4; $i++) {
|
||||
$_year = $nowYear - $i;
|
||||
$data[$_year] = 0;
|
||||
if(isset($totalData[$_year])){
|
||||
if (isset($totalData[$_year])) {
|
||||
$data[$_year] = $totalData[$_year]['output_total'];
|
||||
}
|
||||
}
|
||||
|
|
@ -276,17 +275,18 @@ class CropYieldController extends Controller
|
|||
*
|
||||
* @return void
|
||||
*/
|
||||
public function totalStaticsList(Request $request){
|
||||
$year = $request->input('year', date('Y'));//年份
|
||||
$categoryId = $request->input('category_id');//行业ID
|
||||
public function totalStaticsList(Request $request)
|
||||
{
|
||||
$year = $request->input('year', date('Y')); //年份
|
||||
$categoryId = $request->input('category_id'); //行业ID
|
||||
|
||||
$q = CropYield::query();
|
||||
$q->where('time_year', $year);
|
||||
if($categoryId){
|
||||
if ($categoryId) {
|
||||
$q->where('category_id', $categoryId);
|
||||
}
|
||||
$q->groupBy('base_id');
|
||||
$totalData = $q->select(DB::raw("base_id, sum(output) as output_total "))
|
||||
$totalData = $q->select(DB::raw('base_id, sum(output) as output_total '))
|
||||
->get()
|
||||
->keyBy('base_id')->toArray();
|
||||
|
||||
|
|
@ -294,9 +294,9 @@ class CropYieldController extends Controller
|
|||
|
||||
$data = [];
|
||||
|
||||
foreach ($bases as $base){
|
||||
foreach ($bases as $base) {
|
||||
$data[$base->name] = 0;
|
||||
if(isset($totalData[$base->id])){
|
||||
if (isset($totalData[$base->id])) {
|
||||
$data[$base->name] = $totalData[$base->id]['output_total'];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,17 +2,17 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Device;
|
||||
use App\Enums\DeviceStatus;
|
||||
use App\Enums\DeviceType;
|
||||
use App\Helpers\Paginator;
|
||||
use App\Enums\DeviceStatus;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\SoilMonitoringLog;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Http\Requestes\DeviceRequest;
|
||||
use App\Http\Resources\DeviceResource;
|
||||
use App\Models\WaterQualityMonitoringLog;
|
||||
use App\Models\Device;
|
||||
use App\Models\MeteorologicalMonitoringLog;
|
||||
use App\Models\SoilMonitoringLog;
|
||||
use App\Models\WaterQualityMonitoringLog;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class DeviceController extends Controller
|
||||
{
|
||||
|
|
@ -73,7 +73,8 @@ class DeviceController extends Controller
|
|||
/**
|
||||
* 统计某个基地下所有设备状态数量
|
||||
*/
|
||||
public function typeStatusNum(Request $request){
|
||||
public function typeStatusNum(Request $request)
|
||||
{
|
||||
$baseId = $request->input('base_id');
|
||||
|
||||
$query = Device::where('agricultural_base_id', $baseId)->groupBy('type')->groupBy('status');
|
||||
|
|
@ -86,11 +87,12 @@ class DeviceController extends Controller
|
|||
|
||||
//初始化数据;
|
||||
$data = [];
|
||||
foreach (DeviceType::types() as $typeKey => $typeName){
|
||||
foreach(DeviceStatus::status() as $statusKey => $statusName){
|
||||
foreach (DeviceType::types() as $typeKey => $typeName) {
|
||||
foreach (DeviceStatus::status() as $statusKey => $statusName) {
|
||||
$data[$typeKey][$statusKey] = $resData[$typeKey][$statusKey] ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
return $this->json($data);
|
||||
}
|
||||
|
||||
|
|
@ -100,11 +102,11 @@ class DeviceController extends Controller
|
|||
public function dataStatics(Request $request)
|
||||
{
|
||||
$deviceId = $request->input('device_id');
|
||||
$deviceColumn = $request->input('device_column');//指定字段
|
||||
$deviceColumn = $request->input('device_column'); //指定字段
|
||||
|
||||
$device = Device::find($deviceId);
|
||||
$data = null;
|
||||
switch ($device->type){
|
||||
switch ($device->type) {
|
||||
case DeviceType::Monitor://监控设备
|
||||
$data = DeviceResource::make($device);
|
||||
break;
|
||||
|
|
@ -117,10 +119,10 @@ class DeviceController extends Controller
|
|||
//当天
|
||||
$dataList = SoilMonitoringLog::where('device_id', $deviceId)->whereDate('monitored_at', now())->get()->keyBy('monitored_at')->toArray();
|
||||
$data = [];
|
||||
for ($i = 0; $i < 24; $i++){
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0',STR_PAD_LEFT).':00:00';
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
$data[$_key] = null;
|
||||
if(isset($dataList[$_key])){
|
||||
if (isset($dataList[$_key])) {
|
||||
$data[$_key] = $dataList[$_key][$deviceColumn] ?? null;
|
||||
}
|
||||
}
|
||||
|
|
@ -129,10 +131,10 @@ class DeviceController extends Controller
|
|||
//当天
|
||||
$dataList = WaterQualityMonitoringLog::where('device_id', $deviceId)->whereDate('monitored_at', now())->get()->keyBy('monitored_at')->toArray();
|
||||
$data = [];
|
||||
for ($i = 0; $i < 24; $i++){
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0',STR_PAD_LEFT).':00:00';
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
$data[$_key] = null;
|
||||
if(isset($dataList[$_key])){
|
||||
if (isset($dataList[$_key])) {
|
||||
$data[$_key] = $dataList[$_key][$deviceColumn] ?? null;
|
||||
}
|
||||
}
|
||||
|
|
@ -151,32 +153,32 @@ class DeviceController extends Controller
|
|||
{
|
||||
$baseId = $request->input('base_id');
|
||||
$deviceType = $request->input('device_type');
|
||||
$deviceColumn = $request->input('device_column');//指定字段
|
||||
$deviceColumn = $request->input('device_column'); //指定字段
|
||||
|
||||
//先获取基地下该类型所有设备
|
||||
$deviceData = Device::where([
|
||||
'agricultural_base_id' => $baseId,
|
||||
'type' => $deviceType
|
||||
'type' => $deviceType,
|
||||
])->get();
|
||||
|
||||
$data = [];
|
||||
switch ($deviceType){
|
||||
switch ($deviceType) {
|
||||
case DeviceType::Monitor->value://监控设备
|
||||
$data = DeviceResource::collection($deviceData);
|
||||
break;
|
||||
case DeviceType::Soil->value:
|
||||
$dataList = SoilMonitoringLog::where('agricultural_base_id', $baseId)->whereDate('monitored_at', now())->get()->groupBy('device_id');
|
||||
|
||||
foreach ($deviceData as $device){
|
||||
foreach ($deviceData as $device) {
|
||||
$_dataList = $dataList->get($device->id);
|
||||
$data[$device->monitoring_point] = [];
|
||||
if($_dataList){
|
||||
if ($_dataList) {
|
||||
$_dataList = $_dataList->keyBy('monitored_at')->toArray();
|
||||
}
|
||||
for ($i = 0; $i < 24; $i++){
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0',STR_PAD_LEFT).':00:00';
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
$data[$device->monitoring_point][$_key] = null;
|
||||
if(isset($_dataList[$_key])){
|
||||
if (isset($_dataList[$_key])) {
|
||||
$data[$device->monitoring_point][$_key] = $_dataList[$_key][$deviceColumn] ?? null;
|
||||
}
|
||||
}
|
||||
|
|
@ -185,23 +187,23 @@ class DeviceController extends Controller
|
|||
case DeviceType::WaterQuality->value:
|
||||
$dataList = WaterQualityMonitoringLog::where('agricultural_base_id', $baseId)->whereDate('monitored_at', now())->get()->groupBy('device_id');
|
||||
|
||||
foreach ($deviceData as $device){
|
||||
foreach ($deviceData as $device) {
|
||||
$_dataList = $dataList->get($device->id);
|
||||
$data[$device->monitoring_point] = [];
|
||||
if($_dataList){
|
||||
if ($_dataList) {
|
||||
$_dataList = $_dataList->keyBy('monitored_at')->toArray();
|
||||
}
|
||||
for ($i = 0; $i < 24; $i++){
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0',STR_PAD_LEFT).':00:00';
|
||||
for ($i = 0; $i < 24; $i++) {
|
||||
$_key = date('Y-m-d').' '.str_pad($i, 2, '0', STR_PAD_LEFT).':00:00';
|
||||
$data[$device->monitoring_point][$_key] = null;
|
||||
if(isset($_dataList[$_key])){
|
||||
if (isset($_dataList[$_key])) {
|
||||
$data[$device->monitoring_point][$_key] = $_dataList[$_key][$deviceColumn] ?? null;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return $this->json($data);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,10 +3,10 @@
|
|||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Helpers\Paginator;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\DeviceWarning;
|
||||
use Peidikeji\Setting\Models\Setting;
|
||||
use App\Http\Resources\DeviceWarningResource;
|
||||
use App\Models\DeviceWarning;
|
||||
use Illuminate\Http\Request;
|
||||
use Peidikeji\Setting\Models\Setting;
|
||||
|
||||
class DeviceWarningController extends Controller
|
||||
{
|
||||
|
|
@ -32,23 +32,22 @@ class DeviceWarningController extends Controller
|
|||
|
||||
public function updateRule(Request $request)
|
||||
{
|
||||
|
||||
$slug = $request->input(['slug']);
|
||||
$ruleValue = $request->input(['value'], []);
|
||||
|
||||
$rule = Setting::where('slug', $slug)->first();
|
||||
//获取提交的规则
|
||||
if($rule){
|
||||
if ($rule) {
|
||||
$oldValue = json_decode($rule->value, true);
|
||||
foreach($oldValue as $key => $value){
|
||||
foreach($value as $lv =>$item){
|
||||
if(isset($ruleValue[$key][$lv])){
|
||||
foreach ($oldValue as $key => $value) {
|
||||
foreach ($value as $lv => $item) {
|
||||
if (isset($ruleValue[$key][$lv])) {
|
||||
$oldValue[$key][$lv] = $ruleValue[$key][$lv];
|
||||
}
|
||||
}
|
||||
}
|
||||
$rule->update([
|
||||
'value' => json_encode($oldValue)
|
||||
'value' => json_encode($oldValue),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -67,5 +66,4 @@ class DeviceWarningController extends Controller
|
|||
|
||||
return $this->json(DeviceWarningResource::collection($list));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,13 +3,14 @@
|
|||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Helpers\Paginator;
|
||||
use App\Http\Resources\FriendLinkResource;
|
||||
use App\Models\FriendLink;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Http\Resources\FriendLinkResource;
|
||||
|
||||
class FriendLinkController extends Controller
|
||||
{
|
||||
public function index(Request $request){
|
||||
public function index(Request $request)
|
||||
{
|
||||
$query = FriendLink::filter($request->all());
|
||||
|
||||
$list = $query->simplePaginate(Paginator::resolvePerPage('per_page', 20, 50));
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ class MaterielController extends Controller
|
|||
/**
|
||||
* 物资列表
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Resources\Json\ResourceCollection
|
||||
*/
|
||||
public function index(Request $request): ResourceCollection
|
||||
|
|
@ -31,7 +31,7 @@ class MaterielController extends Controller
|
|||
/**
|
||||
* 创建物资
|
||||
*
|
||||
* @param \App\Http\Requestes\MaterielStoreRequest $request
|
||||
* @param \App\Http\Requestes\MaterielStoreRequest $request
|
||||
* @return \App\Http\Resources\MaterielResource
|
||||
*
|
||||
* @throws \App\Exceptions\BizException
|
||||
|
|
@ -65,8 +65,8 @@ class MaterielController extends Controller
|
|||
/**
|
||||
* 修改物资
|
||||
*
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\MaterielUpdateRequest $request
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\MaterielUpdateRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpIndustryResource
|
||||
*/
|
||||
public function update($id, MaterielUpdateRequest $request): MaterielResource
|
||||
|
|
@ -100,7 +100,7 @@ class MaterielController extends Controller
|
|||
/**
|
||||
* 删除物资
|
||||
*
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function destroy($id): JsonResponse
|
||||
|
|
|
|||
|
|
@ -9,14 +9,13 @@ use App\Models\RiceShrimpFlow;
|
|||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Resources\Json\ResourceCollection;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
class RiceShrimpFlowController extends Controller
|
||||
{
|
||||
/**
|
||||
* 稻虾流向列表
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Resources\Json\ResourceCollection
|
||||
*/
|
||||
public function index(Request $request): ResourceCollection
|
||||
|
|
@ -32,7 +31,7 @@ class RiceShrimpFlowController extends Controller
|
|||
/**
|
||||
* 创建稻虾流向
|
||||
*
|
||||
* @param \App\Http\Requestes\RiceShrimpFlowStoreRequest $request
|
||||
* @param \App\Http\Requestes\RiceShrimpFlowStoreRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpFlowResource
|
||||
*
|
||||
* @throws \App\Exceptions\BizException
|
||||
|
|
@ -64,8 +63,8 @@ class RiceShrimpFlowController extends Controller
|
|||
/**
|
||||
* 修改稻虾流向
|
||||
*
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpFlowUpdateRequest $request
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpFlowUpdateRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpIndustryResource
|
||||
*/
|
||||
public function update($id, RiceShrimpFlowUpdateRequest $request): RiceShrimpFlowResource
|
||||
|
|
@ -97,7 +96,7 @@ class RiceShrimpFlowController extends Controller
|
|||
/**
|
||||
* 删除稻虾流向
|
||||
*
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function destroy($id): JsonResponse
|
||||
|
|
|
|||
|
|
@ -9,14 +9,13 @@ use App\Models\RiceShrimpIndustry;
|
|||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Resources\Json\ResourceCollection;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
class RiceShrimpIndustryController extends Controller
|
||||
{
|
||||
/**
|
||||
* 稻虾产业列表
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Resources\Json\ResourceCollection
|
||||
*/
|
||||
public function index(Request $request): ResourceCollection
|
||||
|
|
@ -32,7 +31,7 @@ class RiceShrimpIndustryController extends Controller
|
|||
/**
|
||||
* 创建稻虾价格
|
||||
*
|
||||
* @param \App\Http\Requestes\RiceShrimpIndustryStoreRequest $request
|
||||
* @param \App\Http\Requestes\RiceShrimpIndustryStoreRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpIndustryResource
|
||||
*
|
||||
* @throws \App\Exceptions\BizException
|
||||
|
|
@ -65,8 +64,8 @@ class RiceShrimpIndustryController extends Controller
|
|||
/**
|
||||
* 修改稻虾价格
|
||||
*
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpIndustryUpdateRequest $request
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpIndustryUpdateRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpIndustryResource
|
||||
*/
|
||||
public function update($id, RiceShrimpIndustryUpdateRequest $request): RiceShrimpIndustryResource
|
||||
|
|
@ -99,7 +98,7 @@ class RiceShrimpIndustryController extends Controller
|
|||
/**
|
||||
* 删除稻虾价格
|
||||
*
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function destroy($id): JsonResponse
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Exceptions\BizException;
|
||||
use App\Http\Requestes\RiceShrimpPriceStoreRequest;
|
||||
use App\Http\Requestes\RiceShrimpPriceUpdateRequest;
|
||||
use App\Http\Resources\RiceShrimpPriceResource;
|
||||
|
|
@ -10,14 +9,13 @@ use App\Models\RiceShrimpPrice;
|
|||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Resources\Json\ResourceCollection;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
|
||||
class RiceShrimpPriceController extends Controller
|
||||
{
|
||||
/**
|
||||
* 稻虾价格列表
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\Resources\Json\ResourceCollection
|
||||
*/
|
||||
public function index(Request $request): ResourceCollection
|
||||
|
|
@ -33,7 +31,7 @@ class RiceShrimpPriceController extends Controller
|
|||
/**
|
||||
* 创建稻虾价格
|
||||
*
|
||||
* @param \App\Http\Requestes\RiceShrimpPriceStoreRequest $request
|
||||
* @param \App\Http\Requestes\RiceShrimpPriceStoreRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpPriceResource
|
||||
*
|
||||
* @throws \App\Exceptions\BizException
|
||||
|
|
@ -63,8 +61,8 @@ class RiceShrimpPriceController extends Controller
|
|||
/**
|
||||
* 修改稻虾价格
|
||||
*
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpPriceUpdateRequest $request
|
||||
* @param int $id
|
||||
* @param \App\Http\Requestes\RiceShrimpPriceUpdateRequest $request
|
||||
* @return \App\Http\Resources\RiceShrimpPriceResource
|
||||
*/
|
||||
public function update($id, RiceShrimpPriceUpdateRequest $request): RiceShrimpPriceResource
|
||||
|
|
@ -95,7 +93,7 @@ class RiceShrimpPriceController extends Controller
|
|||
/**
|
||||
* 删除稻虾价格
|
||||
*
|
||||
* @param int $id
|
||||
* @param int $id
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function destroy($id): JsonResponse
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ namespace App\Http\Requestes;
|
|||
use App\Enums\MaterielType;
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Illuminate\Validation\Rules\Enum;
|
||||
|
||||
class MaterielStoreRequest extends FormRequest
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Illuminate\Validation\Rules\Enum;
|
||||
|
||||
class MaterielUpdateRequest extends FormRequest
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RiceShrimpFlowStoreRequest extends FormRequest
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RiceShrimpIndustryStoreRequest extends FormRequest
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RiceShrimpIndustryUpdateRequest extends FormRequest
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RiceShrimpPriceStoreRequest extends FormRequest
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ namespace App\Http\Requestes;
|
|||
|
||||
use App\Rules\Quarter;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class RiceShrimpPriceUpdateRequest extends FormRequest
|
||||
{
|
||||
|
|
|
|||
|
|
@ -23,9 +23,9 @@ class AgriculturalBaseResource extends JsonResource
|
|||
'address_lng' => $this->address_lng ?? '',
|
||||
'description' => $this->description ?? '',
|
||||
'map' => $this->map ?? '',
|
||||
'areas' => ($this->areas ?? 0.00),//占地面积
|
||||
'workforce' => $this->workforce ?? 0,//人数
|
||||
'cultivated' =>$this->cultivated ?? 0,//种养殖面积
|
||||
'areas' => ($this->areas ?? 0.00), //占地面积
|
||||
'workforce' => $this->workforce ?? 0, //人数
|
||||
'cultivated' => $this->cultivated ?? 0, //种养殖面积
|
||||
'crops' => CropResource::collection($this->whenLoaded('crops')),
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
namespace App\Http\Resources;
|
||||
|
||||
use App\Models\AdminUser;
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
|
||||
class RiceShrimpPriceResource extends JsonResource
|
||||
|
|
|
|||
|
|
@ -11,7 +11,8 @@ class AgriculturalBaseFilter extends ModelFilter
|
|||
return $this->where('type', $type);
|
||||
}
|
||||
|
||||
public function parentId($parentId){
|
||||
public function parentId($parentId)
|
||||
{
|
||||
return $this->where('parent_id', $parentId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,7 +22,8 @@ class CropFilter extends ModelFilter
|
|||
return $q;
|
||||
}
|
||||
|
||||
public function cropType($cropType){
|
||||
public function cropType($cropType)
|
||||
{
|
||||
return $this->where('crop_type', $cropType);
|
||||
}
|
||||
|
||||
|
|
@ -31,8 +32,8 @@ class CropFilter extends ModelFilter
|
|||
return $this->where('category_id', $categoryId);
|
||||
}
|
||||
|
||||
|
||||
public function parent($parentId){
|
||||
public function parent($parentId)
|
||||
{
|
||||
return $this->where('parent_id', $parentId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@ class DeviceFilter extends ModelFilter
|
|||
return $this->where('type', $type);
|
||||
}
|
||||
|
||||
public function status($status){
|
||||
public function status($status)
|
||||
{
|
||||
return $this->where('status', $status);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,8 @@ class DeviceWarningFilter extends ModelFilter
|
|||
return $this->where('base_id', $base);
|
||||
}
|
||||
|
||||
public function status($status){
|
||||
public function status($status)
|
||||
{
|
||||
return $this->where('status', $status);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,11 +16,13 @@ class FriendLinkFilter extends ModelFilter
|
|||
return $this->where('type', $type);
|
||||
}
|
||||
|
||||
public function recommend($recommend){
|
||||
public function recommend($recommend)
|
||||
{
|
||||
return $this->where('is_recommend', $recommend);
|
||||
}
|
||||
|
||||
public function show($show){
|
||||
public function show($show)
|
||||
{
|
||||
return $this->where('is_show', $show);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,9 +3,9 @@
|
|||
namespace App\Models;
|
||||
|
||||
use App\Enums\BaseType;
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
|
||||
class AgriculturalBase extends Model
|
||||
{
|
||||
|
|
@ -19,7 +19,7 @@ class AgriculturalBase extends Model
|
|||
'type',
|
||||
'name', 'person', 'address', 'address_lat', 'address_lng',
|
||||
'description', 'map', 'areas', 'workforce',
|
||||
'parent_id','cultivated',
|
||||
'parent_id', 'cultivated',
|
||||
];
|
||||
|
||||
public function scopeBase($q)
|
||||
|
|
@ -42,11 +42,13 @@ class AgriculturalBase extends Model
|
|||
return $this->belongsToMany(Crop::class, 'base_crops', 'base_id', 'crop_id');
|
||||
}
|
||||
|
||||
public function yieldLogs(){
|
||||
public function yieldLogs()
|
||||
{
|
||||
return $this->hasMany(CropYield::class, 'base_id');
|
||||
}
|
||||
|
||||
public function devices(){
|
||||
public function devices()
|
||||
{
|
||||
return $this->hasMany(Device::class, 'agricultural_base_id');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
namespace App\Models;
|
||||
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
use Dcat\Admin\Traits\ModelTree;
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
use Dcat\Admin\Traits\ModelTree;
|
||||
|
||||
class Crop extends Model
|
||||
{
|
||||
|
|
@ -17,7 +17,7 @@ class Crop extends Model
|
|||
protected $orderColumn = 'sort';
|
||||
|
||||
protected $casts = [
|
||||
'extends' => 'array'
|
||||
'extends' => 'array',
|
||||
];
|
||||
|
||||
public function scopeSort($q)
|
||||
|
|
@ -32,14 +32,16 @@ class Crop extends Model
|
|||
'path', 'is_end',
|
||||
'sort',
|
||||
'extends',
|
||||
'crop_type'
|
||||
'crop_type',
|
||||
];
|
||||
|
||||
public function category(){
|
||||
public function category()
|
||||
{
|
||||
return $this->belongsTo(Keywords::class, 'category_id');
|
||||
}
|
||||
|
||||
public function parent(){
|
||||
public function parent()
|
||||
{
|
||||
return $this->belongsTo(self::class, 'parent_id');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,23 +2,23 @@
|
|||
|
||||
namespace App\Models;
|
||||
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
|
||||
class CropYield extends Model
|
||||
{
|
||||
use Filterable, HasDateTimeFormatter;
|
||||
|
||||
protected $casts = [
|
||||
'extends'=>'array',
|
||||
'extends' => 'array',
|
||||
];
|
||||
|
||||
protected $fillable = [
|
||||
'base_id', 'crop_id', 'time_year', 'yield', 'cultivated', 'output', 'user_id',
|
||||
'created_by', 'updated_by',
|
||||
'quarter', 'extends',
|
||||
'category_id'
|
||||
'category_id',
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@
|
|||
namespace App\Models;
|
||||
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class DeviceWarning extends Model
|
||||
{
|
||||
|
|
@ -12,6 +12,6 @@ class DeviceWarning extends Model
|
|||
|
||||
protected $fillable = [
|
||||
'device_id', 'base_id', 'lv', 'content', 'status', 'remarks',
|
||||
'linkos_device_id', 'linkos_reported_at'
|
||||
'linkos_device_id', 'linkos_reported_at',
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,10 +3,10 @@
|
|||
namespace App\Models;
|
||||
|
||||
use Dcat\Admin\Admin;
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||
use EloquentFilter\Filterable;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class FriendLink extends Model
|
||||
{
|
||||
|
|
@ -19,7 +19,7 @@ class FriendLink extends Model
|
|||
public const TYPE_ARTICLE = 3; //文章
|
||||
|
||||
protected $fillable = [
|
||||
'name', 'type', 'content', 'sort', 'is_recommend', 'is_show'
|
||||
'name', 'type', 'content', 'sort', 'is_recommend', 'is_show',
|
||||
];
|
||||
|
||||
public static function typeMap()
|
||||
|
|
@ -27,7 +27,7 @@ class FriendLink extends Model
|
|||
return [
|
||||
self::TYPE_LINK => '链接',
|
||||
self::TYPE_VIDEO => '视频',
|
||||
self::TYPE_ARTICLE => '文章'
|
||||
self::TYPE_ARTICLE => '文章',
|
||||
];
|
||||
}
|
||||
|
||||
|
|
@ -46,7 +46,8 @@ class FriendLink extends Model
|
|||
return "<span class='label' style='background: $background;'>{$name}</span>";
|
||||
}
|
||||
|
||||
public function scopeSort($q){
|
||||
public function scopeSort($q)
|
||||
{
|
||||
return $q->orderBy('sort', 'desc')->orderBy('created_at', 'desc');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,11 +2,10 @@
|
|||
|
||||
namespace Database\Seeders;
|
||||
|
||||
use Throwable;
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Database\Seeder;
|
||||
use App\Models\AgriculturalBase;
|
||||
use Illuminate\Database\Seeder;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Throwable;
|
||||
|
||||
class AgriculturalBaseSeeder extends Seeder
|
||||
{
|
||||
|
|
@ -19,19 +18,19 @@ class AgriculturalBaseSeeder extends Seeder
|
|||
{
|
||||
//
|
||||
$bases = [
|
||||
['name' => '古湖街道', 'type' => 2, 'description' => '', 'areas' => '38674', 'workforce'=> '86860'],
|
||||
['name' => '金鹅街道', 'type' => 2, 'description' => '', 'areas' => '39532', 'workforce'=> '201'],
|
||||
['name' => '响石镇', 'type' => 2, 'description' => '', 'areas' => '56630', 'workforce'=> '47690'],
|
||||
['name' => '圣灯镇', 'type' => 2, 'description' => '', 'areas' => '21448', 'workforce'=> '23895'],
|
||||
['name' => '黄家镇', 'type' => 2, 'description' => '', 'areas' => '93373', 'workforce'=> '204'],
|
||||
['name' => '双凤镇', 'type' => 2, 'description' => '', 'areas' => '76150', 'workforce'=> '69042'],
|
||||
['name' => '龙市镇', 'type' => 2, 'description' => '', 'areas' => '86558', 'workforce'=> '206'],
|
||||
['name' => '界市镇', 'type' => 2, 'description' => '', 'areas' => '69345', 'workforce'=> '207'],
|
||||
['name' => '石碾镇', 'type' => 2, 'description' => '', 'areas' => '66164', 'workforce'=> '208'],
|
||||
['name' => '石燕桥镇', 'type' => 2, 'description' => '', 'areas' => '58382', 'workforce'=> '209'],
|
||||
['name' => '胡家镇', 'type' => 2, 'description' => '', 'areas' => '55742', 'workforce'=> '69332'],
|
||||
['name' => '云顶镇', 'type' => 2, 'description' => '', 'areas' => '46676', 'workforce'=> '40749'],
|
||||
['name' => '普润镇', 'type' => 2, 'description' => '', 'areas' => '58370', 'workforce'=> '212'],
|
||||
['name' => '古湖街道', 'type' => 2, 'description' => '', 'areas' => '38674', 'workforce' => '86860'],
|
||||
['name' => '金鹅街道', 'type' => 2, 'description' => '', 'areas' => '39532', 'workforce' => '201'],
|
||||
['name' => '响石镇', 'type' => 2, 'description' => '', 'areas' => '56630', 'workforce' => '47690'],
|
||||
['name' => '圣灯镇', 'type' => 2, 'description' => '', 'areas' => '21448', 'workforce' => '23895'],
|
||||
['name' => '黄家镇', 'type' => 2, 'description' => '', 'areas' => '93373', 'workforce' => '204'],
|
||||
['name' => '双凤镇', 'type' => 2, 'description' => '', 'areas' => '76150', 'workforce' => '69042'],
|
||||
['name' => '龙市镇', 'type' => 2, 'description' => '', 'areas' => '86558', 'workforce' => '206'],
|
||||
['name' => '界市镇', 'type' => 2, 'description' => '', 'areas' => '69345', 'workforce' => '207'],
|
||||
['name' => '石碾镇', 'type' => 2, 'description' => '', 'areas' => '66164', 'workforce' => '208'],
|
||||
['name' => '石燕桥镇', 'type' => 2, 'description' => '', 'areas' => '58382', 'workforce' => '209'],
|
||||
['name' => '胡家镇', 'type' => 2, 'description' => '', 'areas' => '55742', 'workforce' => '69332'],
|
||||
['name' => '云顶镇', 'type' => 2, 'description' => '', 'areas' => '46676', 'workforce' => '40749'],
|
||||
['name' => '普润镇', 'type' => 2, 'description' => '', 'areas' => '58370', 'workforce' => '212'],
|
||||
];
|
||||
DB::table('agricultural_bases')->truncate();
|
||||
try {
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ class KeywordsTableSeeder extends Seeder
|
|||
$list = [
|
||||
['key' => 'crops-category', 'name' => '农作物产业分类', 'value' => '', 'list' => [
|
||||
['key' => 'crops-cate-nongye', 'name' => '农业', 'type_key' => 'crops-category', 'value' => ''],
|
||||
['key' => 'crops-cate-yuye', 'name' => '渔业', 'type_key' => 'crops-category', 'value' => '',],
|
||||
['key' => 'crops-cate-yuye', 'name' => '渔业', 'type_key' => 'crops-category', 'value' => ''],
|
||||
['key' => 'crops-cate-xumuye', 'name' => '畜牧业', 'type_key' => 'crops-category', 'value' => ''],
|
||||
['key' => 'crops-cate-lingye', 'name' => '林业', 'type_key' => 'crops-category', 'value' => ''],
|
||||
['key' => 'crops-cate-activity', 'name' => '其他', 'type_key' => 'crops-category', 'value' => ''],
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ class SettingTableSeeder extends Seeder
|
|||
['name' => '全市数据-人口', 'slug' => 'city_data_population', 'value' => '{"value":"0", "unit":"万人"}'],
|
||||
['name' => '全市数据-耕地总面积', 'slug' => 'city_data_cultivated_area', 'value' => '{"value":"0", "unit":"万亩"}'],
|
||||
['name' => '全市数据-生猪年出栏', 'slug' => 'city_data_pig_output', 'value' => '{"value":"0", "unit":"万头"}'],
|
||||
['name' => '警报规则-土壤设备', 'slug' => 'device_warning_rule_soil', 'value' =>'{
|
||||
['name' => '警报规则-土壤设备', 'slug' => 'device_warning_rule_soil', 'value' => '{
|
||||
"temperature":{
|
||||
"1":[{"min":null,"max":null},{"min":null,"max":null}],
|
||||
"2":[{"min":null,"max":null},{"min":null,"max":null}],
|
||||
|
|
@ -70,7 +70,7 @@ class SettingTableSeeder extends Seeder
|
|||
"4":[{"min":null,"max":null}]
|
||||
}
|
||||
}'],
|
||||
['name' => '警报规则-水质设备', 'slug' => 'device_warning_rule_waterquality', 'value' =>'{
|
||||
['name' => '警报规则-水质设备', 'slug' => 'device_warning_rule_waterquality', 'value' => '{
|
||||
"temperature":{
|
||||
"1":[{"min":null,"max":null},{"min":null,"max":null}],
|
||||
"2":[{"min":null,"max":null},{"min":null,"max":null}],
|
||||
|
|
@ -107,7 +107,7 @@ class SettingTableSeeder extends Seeder
|
|||
"3":[{"min":null,"max":null}],
|
||||
"4":[{"min":null,"max":null}]
|
||||
}
|
||||
}']
|
||||
}'],
|
||||
];
|
||||
Setting::insert($list);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
*
|
||||
* @author jqh <841324345@qq.com>
|
||||
*/
|
||||
|
||||
namespace Dcat\Admin {
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
|
|
@ -253,9 +254,13 @@ namespace Dcat\Admin {
|
|||
* @method Grid\Column|Collection ph(string $label = null)
|
||||
* @method Grid\Column|Collection turbidity(string $label = null)
|
||||
*/
|
||||
class Grid {}
|
||||
class Grid
|
||||
{
|
||||
}
|
||||
|
||||
class MiniGrid extends Grid {}
|
||||
class MiniGrid extends Grid
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* @property Show\Field|Collection id
|
||||
|
|
@ -500,30 +505,32 @@ namespace Dcat\Admin {
|
|||
* @method Show\Field|Collection ph(string $label = null)
|
||||
* @method Show\Field|Collection turbidity(string $label = null)
|
||||
*/
|
||||
class Show {}
|
||||
class Show
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* @method \App\Admin\Form\Amap amap(...$params)
|
||||
*/
|
||||
class Form {}
|
||||
|
||||
class Form
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
namespace Dcat\Admin\Grid {
|
||||
/**
|
||||
|
||||
*/
|
||||
class Column {}
|
||||
|
||||
/**
|
||||
|
||||
*/
|
||||
class Filter {}
|
||||
class Column
|
||||
{
|
||||
}
|
||||
|
||||
class Filter
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
namespace Dcat\Admin\Show {
|
||||
/**
|
||||
|
||||
*/
|
||||
class Field {}
|
||||
|
||||
class Field
|
||||
{
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'labels' => [
|
||||
'AgriculturalBase' => '基地数据',
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
<?php
|
||||
|
||||
return [
|
||||
'labels' => [
|
||||
'CropYield' => 'CropYield',
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
<?php
|
||||
|
||||
return [
|
||||
'labels' => [
|
||||
'Crop' => 'Crop',
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'labels' => [
|
||||
'FriendLink' => '友情链接',
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ Route::group(['middleware' => 'auth:sanctum'], function () {
|
|||
Route::get('citydata-statistics', [CityDataController::class, 'statistics'])->name('citydata_statistics.index');
|
||||
//基地数据
|
||||
Route::apiResource('agricultural-basic', AgriculturalBaseController::class)->names('agricultural_basic');
|
||||
Route::get('agricultural-device-basic', [AgriculturalBaseController::class, 'deviceBase'])->name('agricultural_basic.device_bases');//通过设备类型查询基地
|
||||
Route::get('agricultural-device-basic', [AgriculturalBaseController::class, 'deviceBase'])->name('agricultural_basic.device_bases'); //通过设备类型查询基地
|
||||
//农作物
|
||||
Route::apiResource('crops', CropController::class)->names('crops');
|
||||
|
||||
|
|
@ -51,11 +51,11 @@ Route::group(['middleware' => 'auth:sanctum'], function () {
|
|||
Route::apiResource('friend-links', FriendLinkController::class)->only(['index'])->names('friend_links');
|
||||
|
||||
/**统计 **/
|
||||
Route::get('crop-yield-quarter-statics', [CropYieldController::class, 'quarterStaticsChart']);//季度统计
|
||||
Route::get('crop-yield-category-statics', [CropYieldController::class, 'categoryStaticsChart']);//行业统计产值
|
||||
Route::get('crop-yield-total-list', [CropYieldController::class, 'totalStaticsList']);//城镇统计产值
|
||||
Route::get('crop-yield-total-chart', [CropYieldController::class, 'totalStaticsChart']);//城镇统计产值
|
||||
Route::get('device-data-statics', [DeviceController::class, 'dataStatics']);//指定设备,当天的设备数据
|
||||
Route::get('crop-yield-quarter-statics', [CropYieldController::class, 'quarterStaticsChart']); //季度统计
|
||||
Route::get('crop-yield-category-statics', [CropYieldController::class, 'categoryStaticsChart']); //行业统计产值
|
||||
Route::get('crop-yield-total-list', [CropYieldController::class, 'totalStaticsList']); //城镇统计产值
|
||||
Route::get('crop-yield-total-chart', [CropYieldController::class, 'totalStaticsChart']); //城镇统计产值
|
||||
Route::get('device-data-statics', [DeviceController::class, 'dataStatics']); //指定设备,当天的设备数据
|
||||
Route::get('device-base-data-statics', [DeviceController::class, 'baseDataStatics']);
|
||||
|
||||
/** 系统管理 **/
|
||||
|
|
|
|||
Loading…
Reference in New Issue