Update
parent
f4f1079cbb
commit
6448d8ab87
|
|
@ -4,11 +4,11 @@ namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Enums\BaseType;
|
use App\Enums\BaseType;
|
||||||
use App\Helpers\Paginator;
|
use App\Helpers\Paginator;
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use App\Models\AgriculturalBase;
|
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
use App\Http\Requestes\AgriculturalBaseRequest;
|
use App\Http\Requestes\AgriculturalBaseRequest;
|
||||||
use App\Http\Resources\AgriculturalBaseResource;
|
use App\Http\Resources\AgriculturalBaseResource;
|
||||||
|
use App\Models\AgriculturalBase;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class AgriculturalBaseController extends Controller
|
class AgriculturalBaseController extends Controller
|
||||||
{
|
{
|
||||||
|
|
@ -62,7 +62,7 @@ class AgriculturalBaseController extends Controller
|
||||||
$cropsIds = $request->input('crops_ids', []);
|
$cropsIds = $request->input('crops_ids', []);
|
||||||
$type = $request->input('type');
|
$type = $request->input('type');
|
||||||
//已添加区域无法变更类型
|
//已添加区域无法变更类型
|
||||||
if($type !== $agriculturalBasic->type->value) {
|
if ($type !== $agriculturalBasic->type->value) {
|
||||||
return $this->error('无法变更类型');
|
return $this->error('无法变更类型');
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Http\Requestes\CropRequest;
|
||||||
|
use App\Http\Resources\CropResource;
|
||||||
use App\Models\Crop;
|
use App\Models\Crop;
|
||||||
use App\Models\CropYield;
|
use App\Models\CropYield;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Requestes\CropRequest;
|
|
||||||
use App\Http\Resources\CropResource;
|
|
||||||
|
|
||||||
class CropController extends Controller
|
class CropController extends Controller
|
||||||
{
|
{
|
||||||
|
|
@ -22,7 +22,7 @@ class CropController extends Controller
|
||||||
{
|
{
|
||||||
$input = $request->input();
|
$input = $request->input();
|
||||||
//如果有上级,录入path
|
//如果有上级,录入path
|
||||||
if($input['parent_id'] ?? 0){
|
if ($input['parent_id'] ?? 0) {
|
||||||
$parent = Crop::findOrFail($input['parent_id']);
|
$parent = Crop::findOrFail($input['parent_id']);
|
||||||
$input['path'] = ($parent?->path ?? '').$parent?->id.'-';
|
$input['path'] = ($parent?->path ?? '').$parent?->id.'-';
|
||||||
}
|
}
|
||||||
|
|
@ -41,8 +41,8 @@ class CropController extends Controller
|
||||||
//如果原本是结点,不允许修改为非节点
|
//如果原本是结点,不允许修改为非节点
|
||||||
//如果原本非结点,且有子节点,同样无法修改;
|
//如果原本非结点,且有子节点,同样无法修改;
|
||||||
$input = $request->input();
|
$input = $request->input();
|
||||||
if($input['is_end'] != $crop->is_end){
|
if ($input['is_end'] != $crop->is_end) {
|
||||||
if($crop->is_end || Crop::where(['parent_id', $crop->id])->exists()){
|
if ($crop->is_end || Crop::where(['parent_id', $crop->id])->exists()) {
|
||||||
return $this->error('无法修改结点状态');
|
return $this->error('无法修改结点状态');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -55,11 +55,11 @@ class CropController extends Controller
|
||||||
public function destroy(Crop $crop)
|
public function destroy(Crop $crop)
|
||||||
{
|
{
|
||||||
//如果有关联数据,无法删除
|
//如果有关联数据,无法删除
|
||||||
if(CropYield::where('crop_id', $crop->id)->exists()){
|
if (CropYield::where('crop_id', $crop->id)->exists()) {
|
||||||
return $this->error('该结点有关联产量数据, 无法删除');
|
return $this->error('该结点有关联产量数据, 无法删除');
|
||||||
}
|
}
|
||||||
//如果有子节点,无法删除
|
//如果有子节点,无法删除
|
||||||
if(Crop::where(['parent_id', $crop->id])->exists()){
|
if (Crop::where(['parent_id', $crop->id])->exists()) {
|
||||||
return $this->error('该结点有关联产量数据, 无法删除');
|
return $this->error('该结点有关联产量数据, 无法删除');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,10 @@
|
||||||
namespace App\Http\Requestes;
|
namespace App\Http\Requestes;
|
||||||
|
|
||||||
use App\Enums\BaseType;
|
use App\Enums\BaseType;
|
||||||
use Illuminate\Validation\Rules\Enum;
|
|
||||||
use Illuminate\Foundation\Http\FormRequest;
|
|
||||||
use Illuminate\Contracts\Validation\Validator;
|
use Illuminate\Contracts\Validation\Validator;
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
use Illuminate\Http\Exceptions\HttpResponseException;
|
use Illuminate\Http\Exceptions\HttpResponseException;
|
||||||
|
use Illuminate\Validation\Rules\Enum;
|
||||||
|
|
||||||
class AgriculturalBaseRequest extends FormRequest
|
class AgriculturalBaseRequest extends FormRequest
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ class CropRequest extends FormRequest
|
||||||
'is_end' => '请选择是否结点',
|
'is_end' => '请选择是否结点',
|
||||||
'unit' => '请填写单位',
|
'unit' => '请填写单位',
|
||||||
'extends' => '请正确填写扩展字段',
|
'extends' => '请正确填写扩展字段',
|
||||||
'sort' => '请正确填写排序'
|
'sort' => '请正确填写排序',
|
||||||
];
|
];
|
||||||
|
|
||||||
return $messages;
|
return $messages;
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
namespace App\Http\Resources;
|
namespace App\Http\Resources;
|
||||||
|
|
||||||
use Illuminate\Http\Resources\Json\JsonResource;
|
use Illuminate\Http\Resources\Json\JsonResource;
|
||||||
use Peidikeji\Keywords\Http\Resources\KeywordResource;
|
|
||||||
|
|
||||||
class AgriculturalBaseResource extends JsonResource
|
class AgriculturalBaseResource extends JsonResource
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,8 @@ use EloquentFilter\ModelFilter;
|
||||||
|
|
||||||
class AgriculturalBaseFilter extends ModelFilter
|
class AgriculturalBaseFilter extends ModelFilter
|
||||||
{
|
{
|
||||||
public function type($type){
|
public function type($type)
|
||||||
|
{
|
||||||
return $this->where('type', $type);
|
return $this->where('type', $type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ class CropFilter extends ModelFilter
|
||||||
{
|
{
|
||||||
$q = $this;
|
$q = $this;
|
||||||
switch ($type) {
|
switch ($type) {
|
||||||
case "top":
|
case 'top':
|
||||||
$q->whereNull('parent_id');
|
$q->whereNull('parent_id');
|
||||||
break;
|
break;
|
||||||
case 'all':
|
case 'all':
|
||||||
|
|
@ -23,6 +23,7 @@ class CropFilter extends ModelFilter
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $q;
|
return $q;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,11 +21,13 @@ class AgriculturalBase extends Model
|
||||||
'description', 'map', 'areas', 'workforce',
|
'description', 'map', 'areas', 'workforce',
|
||||||
];
|
];
|
||||||
|
|
||||||
public function scopeBase($q){
|
public function scopeBase($q)
|
||||||
|
{
|
||||||
return $q->where('type', BaseType::Base);
|
return $q->where('type', BaseType::Base);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function scopeTown($q){
|
public function scopeTown($q)
|
||||||
|
{
|
||||||
return $q->where('type', BaseType::Town);
|
return $q->where('type', BaseType::Town);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,8 @@ class Crop extends Model
|
||||||
{
|
{
|
||||||
use Filterable;
|
use Filterable;
|
||||||
|
|
||||||
public function scopeSort($q){
|
public function scopeSort($q)
|
||||||
|
{
|
||||||
return $q->orderBy('sort', 'desc')->orderBy('created_at', 'desc');
|
return $q->orderBy('sort', 'desc')->orderBy('created_at', 'desc');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -18,6 +19,6 @@ class Crop extends Model
|
||||||
'name', 'parent_id',
|
'name', 'parent_id',
|
||||||
'path', 'is_end',
|
'path', 'is_end',
|
||||||
'sort',
|
'sort',
|
||||||
'extends'
|
'extends',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ namespace App\Models;
|
||||||
|
|
||||||
use EloquentFilter\Filterable;
|
use EloquentFilter\Filterable;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
use Peidikeji\Keywords\Models\Keywords;
|
|
||||||
|
|
||||||
class CropFlow extends Model
|
class CropFlow extends Model
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ namespace App\Models;
|
||||||
|
|
||||||
use EloquentFilter\Filterable;
|
use EloquentFilter\Filterable;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
use Peidikeji\Keywords\Models\Keywords;
|
|
||||||
|
|
||||||
class CropYield extends Model
|
class CropYield extends Model
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -421,7 +421,7 @@ class LinkosDeviceLogService
|
||||||
/**
|
/**
|
||||||
* 矢量法计算风向度数
|
* 矢量法计算风向度数
|
||||||
*
|
*
|
||||||
* @param array $windSamples
|
* @param array $windSamples
|
||||||
* @return int
|
* @return int
|
||||||
*/
|
*/
|
||||||
protected function calculateWindDegree(array $windSamples): int
|
protected function calculateWindDegree(array $windSamples): int
|
||||||
|
|
@ -437,13 +437,13 @@ class LinkosDeviceLogService
|
||||||
// 角度转弧度
|
// 角度转弧度
|
||||||
$radian = deg2rad($sample['wind_degree']);
|
$radian = deg2rad($sample['wind_degree']);
|
||||||
|
|
||||||
$x += $sample['wind_speed']*sin($radian);
|
$x += $sample['wind_speed'] * sin($radian);
|
||||||
$y += $sample['wind_speed']*cos($radian);
|
$y += $sample['wind_speed'] * cos($radian);
|
||||||
}
|
}
|
||||||
|
|
||||||
$degree = round(rad2deg(atan($x/$y)));
|
$degree = round(rad2deg(atan($x / $y)));
|
||||||
|
|
||||||
if (($x > 0 || $x < 0 ) && $y < 0) {
|
if (($x > 0 || $x < 0) && $y < 0) {
|
||||||
$degree += 180;
|
$degree += 180;
|
||||||
} elseif ($x < 0 && $y > 0) {
|
} elseif ($x < 0 && $y > 0) {
|
||||||
$degree += 360;
|
$degree += 360;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue