dev
Jing Li 2022-10-24 17:28:10 +08:00
parent f4f1079cbb
commit 6448d8ab87
12 changed files with 30 additions and 28 deletions

View File

@ -4,11 +4,11 @@ namespace App\Http\Controllers;
use App\Enums\BaseType;
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\Resources\AgriculturalBaseResource;
use App\Models\AgriculturalBase;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class AgriculturalBaseController extends Controller
{
@ -62,7 +62,7 @@ class AgriculturalBaseController extends Controller
$cropsIds = $request->input('crops_ids', []);
$type = $request->input('type');
//已添加区域无法变更类型
if($type !== $agriculturalBasic->type->value) {
if ($type !== $agriculturalBasic->type->value) {
return $this->error('无法变更类型');
}
try {

View File

@ -2,11 +2,11 @@
namespace App\Http\Controllers;
use App\Http\Requestes\CropRequest;
use App\Http\Resources\CropResource;
use App\Models\Crop;
use App\Models\CropYield;
use Illuminate\Http\Request;
use App\Http\Requestes\CropRequest;
use App\Http\Resources\CropResource;
class CropController extends Controller
{
@ -22,7 +22,7 @@ class CropController extends Controller
{
$input = $request->input();
//如果有上级录入path
if($input['parent_id'] ?? 0){
if ($input['parent_id'] ?? 0) {
$parent = Crop::findOrFail($input['parent_id']);
$input['path'] = ($parent?->path ?? '').$parent?->id.'-';
}
@ -41,8 +41,8 @@ class CropController extends Controller
//如果原本是结点,不允许修改为非节点
//如果原本非结点,且有子节点,同样无法修改;
$input = $request->input();
if($input['is_end'] != $crop->is_end){
if($crop->is_end || Crop::where(['parent_id', $crop->id])->exists()){
if ($input['is_end'] != $crop->is_end) {
if ($crop->is_end || Crop::where(['parent_id', $crop->id])->exists()) {
return $this->error('无法修改结点状态');
}
}
@ -55,11 +55,11 @@ class CropController extends Controller
public function destroy(Crop $crop)
{
//如果有关联数据,无法删除
if(CropYield::where('crop_id', $crop->id)->exists()){
if (CropYield::where('crop_id', $crop->id)->exists()) {
return $this->error('该结点有关联产量数据, 无法删除');
}
//如果有子节点,无法删除
if(Crop::where(['parent_id', $crop->id])->exists()){
if (Crop::where(['parent_id', $crop->id])->exists()) {
return $this->error('该结点有关联产量数据, 无法删除');
}

View File

@ -3,10 +3,10 @@
namespace App\Http\Requestes;
use App\Enums\BaseType;
use Illuminate\Validation\Rules\Enum;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Contracts\Validation\Validator;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Validation\Rules\Enum;
class AgriculturalBaseRequest extends FormRequest
{

View File

@ -36,7 +36,7 @@ class CropRequest extends FormRequest
'is_end' => '请选择是否结点',
'unit' => '请填写单位',
'extends' => '请正确填写扩展字段',
'sort' => '请正确填写排序'
'sort' => '请正确填写排序',
];
return $messages;

View File

@ -3,7 +3,6 @@
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\JsonResource;
use Peidikeji\Keywords\Http\Resources\KeywordResource;
class AgriculturalBaseResource extends JsonResource
{

View File

@ -6,7 +6,8 @@ use EloquentFilter\ModelFilter;
class AgriculturalBaseFilter extends ModelFilter
{
public function type($type){
public function type($type)
{
return $this->where('type', $type);
}
}

View File

@ -15,7 +15,7 @@ class CropFilter extends ModelFilter
{
$q = $this;
switch ($type) {
case "top":
case 'top':
$q->whereNull('parent_id');
break;
case 'all':
@ -23,6 +23,7 @@ class CropFilter extends ModelFilter
default:
break;
}
return $q;
}
}

View File

@ -21,11 +21,13 @@ class AgriculturalBase extends Model
'description', 'map', 'areas', 'workforce',
];
public function scopeBase($q){
public function scopeBase($q)
{
return $q->where('type', BaseType::Base);
}
public function scopeTown($q){
public function scopeTown($q)
{
return $q->where('type', BaseType::Town);
}

View File

@ -9,7 +9,8 @@ class Crop extends Model
{
use Filterable;
public function scopeSort($q){
public function scopeSort($q)
{
return $q->orderBy('sort', 'desc')->orderBy('created_at', 'desc');
}
@ -18,6 +19,6 @@ class Crop extends Model
'name', 'parent_id',
'path', 'is_end',
'sort',
'extends'
'extends',
];
}

View File

@ -4,7 +4,6 @@ namespace App\Models;
use EloquentFilter\Filterable;
use Illuminate\Database\Eloquent\Model;
use Peidikeji\Keywords\Models\Keywords;
class CropFlow extends Model
{

View File

@ -4,7 +4,6 @@ namespace App\Models;
use EloquentFilter\Filterable;
use Illuminate\Database\Eloquent\Model;
use Peidikeji\Keywords\Models\Keywords;
class CropYield extends Model
{

View File

@ -437,13 +437,13 @@ class LinkosDeviceLogService
// 角度转弧度
$radian = deg2rad($sample['wind_degree']);
$x += $sample['wind_speed']*sin($radian);
$y += $sample['wind_speed']*cos($radian);
$x += $sample['wind_speed'] * sin($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;
} elseif ($x < 0 && $y > 0) {
$degree += 360;