新增农户水产养殖模块接口
This commit is contained in:
parent
aa49814d65
commit
a757ccf91d
|
@ -76,7 +76,7 @@
|
|||
$pageNo = empty($params['page_no']) || $params['page_no'] < 0 ? 1 : $params['page_no'];
|
||||
$pageSize = empty($params['page_size']) || $params['page_size'] < 0 ? 10 : $params['page_size'];
|
||||
//设置搜素条件
|
||||
$query = 'user_id = '.$params['user_id'];
|
||||
$query = 'user_id = '.$params['user_id'].' and animal_status != 5';
|
||||
if(!empty($params['keyword'])){
|
||||
$query .= ' and (animal_code LIKE "%'.$params['keyword'].'%" or animal_kind LIKE "%'.$params['keyword'].'%" or animal_breed LIKE "%'.$params['keyword'].'%")';
|
||||
}
|
||||
|
@ -90,7 +90,7 @@
|
|||
public function animalStatus(): Json
|
||||
{
|
||||
$params = $this->request->post(['animal_id','status']);
|
||||
if(empty($params['animal_id']) || empty($params['status']) || !in_array($params['status'],[1,2,3,4])){
|
||||
if(empty($params['animal_id']) || empty($params['status']) || !in_array($params['status'],[1,2,3,4,5])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
$result = Db::name('farmer_animal_breed')->where('id',$params['animal_id'])->update(['animal_status'=>$params['status']]);
|
||||
|
|
|
@ -9,6 +9,10 @@
|
|||
{
|
||||
public array $notNeedLogin = [
|
||||
'pondInfo',
|
||||
'addFish','catchFish',
|
||||
'addFishPic','fishPicList',
|
||||
'addFishRecord','delFishRecord','ediFishRecord','fishRecordList',
|
||||
'pondEnvData'
|
||||
];
|
||||
|
||||
//获取农户池塘信息
|
||||
|
@ -25,67 +29,196 @@
|
|||
if($curl_result['code'] == 0){
|
||||
return $this->fail($curl_result['msg']);
|
||||
}
|
||||
//获取种植信息
|
||||
$pond_fish = Db::name('farmer_fish_breed')->where([
|
||||
['user_id','=',$params['user_id']],
|
||||
['pond_id','=',$params['pond_id']],
|
||||
])->order('id desc')->findOrEmpty();
|
||||
if(!empty($pond_fish)){
|
||||
$curl_result['data']['is_fished'] = true;
|
||||
$curl_result['data']['fish_id'] = $pond_fish['id'];
|
||||
$curl_result['data']['source_code'] = $pond_fish['source_code'];
|
||||
$curl_result['data']['kind'] = $pond_fish['kind'];
|
||||
$curl_result['data']['breed'] = $pond_fish['breed'];
|
||||
$curl_result['data']['number'] = $pond_fish['number'];
|
||||
$curl_result['data']['buy_info'] = $pond_fish['buy_info'];
|
||||
//获取图片
|
||||
$fish_pic = Db::name('farmer_fish_pic')->field('pic,create_time')->where('fish_id',$pond_fish['id'])->order('id desc')->findOrEmpty();
|
||||
$curl_result['data']['pic'] = !empty($fish_pic) ? $fish_pic['pic'] : '';
|
||||
$curl_result['data']['create_time'] = !empty($fish_pic) ? date('Y-m-d H:i:s',$fish_pic['create_time']) : '';
|
||||
//获取养殖信息
|
||||
$breedData = Db::name('farmer_pond_breed')->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->sum('number');
|
||||
//获取捕捞信息
|
||||
$catchData = Db::name('farmer_pond_catch')->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->sum('number');
|
||||
if($breedData - $catchData != 0){
|
||||
$curl_result['data']['is_culture'] = true;
|
||||
$curl_result['data']['total_num'] = $breedData - $catchData;
|
||||
//获取水产养殖种类
|
||||
$fishKind = Db::name('farmer_pond_breed')->distinct(true)->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->limit(4)->column('kind');
|
||||
//获取水产养殖具体品种
|
||||
$fiskBreed = Db::name('farmer_pond_breed')->distinct(true)->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->limit(4)->column('breed');
|
||||
$curl_result['data']['kind'] = $fishKind;
|
||||
$curl_result['data']['breed'] = $fiskBreed;
|
||||
//获取去最新的图片
|
||||
$pic = Db::name('farmer_pond_pic')->field('pic,create_time')->where('pond_id',$params['pond_id'])->findOrEmpty();
|
||||
if(!empty($pic)){
|
||||
$curl_result['data']['pic_detail'] = $pic;
|
||||
$curl_result['data']['pic_detail']['create_time'] = date('Y-m-d H:i:s',$pic['create_time']);
|
||||
}else{
|
||||
$curl_result['data']['pic_detail'] = [];
|
||||
}
|
||||
//获取养殖时间
|
||||
$firstBreed = Db::name('farmer_pond_breed')->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->findOrEmpty();
|
||||
$curl_result['data']['source_code'] = $firstBreed['source_code'];
|
||||
$curl_result['data']['create_time'] = date('Y-m-d H:i:s',$firstBreed['create_time']);
|
||||
}else{
|
||||
$curl_result['data']['is_fished'] = false;
|
||||
$curl_result['data']['is_culture'] = false;
|
||||
}
|
||||
//返回数据
|
||||
return $this->success('请求成功',$curl_result['data']);
|
||||
}
|
||||
|
||||
//添加养殖信息
|
||||
//添加水产养殖信息
|
||||
public function addFish(): Json
|
||||
{
|
||||
//获取参数
|
||||
$params = $this->request->post(['user_id','pond_id','kind','breed','number','buy_info','pic']);
|
||||
if(empty($params['user_id']) || empty($params['pond_id']) || empty($params['kind']) || empty($params['breed']) || empty($params['number']) || empty($params['buy_info'])){
|
||||
$params = $this->request->post(['user_id','pond_id','kind','breed','number','buy_info','buy_cert']);
|
||||
if(empty($params['user_id']) || empty($params['pond_id']) || empty($params['kind']) || empty($params['breed']) || empty($params['number']) || empty($params['buy_info']) || empty($params['buy_cert'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//判断当前土地是否种植作物
|
||||
$hasRes = Db::name('farmer_land_crop')->where([
|
||||
['user_id','=',$params['user_id']],
|
||||
['land_id','=',$params['land_id']],
|
||||
])->order('id desc')->findOrEmpty();
|
||||
if(!empty($hasRes) && empty($hasRes['ripe_time']) && empty($hasRes['crop_yield'])){
|
||||
return $this->fail('该土地已种植');
|
||||
}
|
||||
//添加数据
|
||||
Db::transaction(function () use($params) {
|
||||
$landCropId = Db::name('farmer_land_crop')->insertGetId([
|
||||
'user_id' => $params['user_id'],
|
||||
'land_id' => $params['land_id'],
|
||||
'source_code' => 'NO'.time(),
|
||||
'crop_name' => $params['crop_name'],
|
||||
'crop_variety' => $params['crop_variety'],
|
||||
'crop_brand' => $params['crop_brand'],
|
||||
'seed_time' => time(),
|
||||
'crop_buy_time' => strtotime($params['crop_buy_time'])
|
||||
]);
|
||||
if(!empty($params['pic'])){
|
||||
Db::name('farmer_land_crop_pic')->insert([
|
||||
'crop_id' => $landCropId,
|
||||
'pic' => $params['pic'],
|
||||
'create_time' => time()
|
||||
]);
|
||||
}
|
||||
});
|
||||
$result = Db::name('farmer_pond_breed')->insert([
|
||||
'user_id' => $params['user_id'],
|
||||
'pond_id' => $params['pond_id'],
|
||||
'source_code' => 'NO'.time(),
|
||||
'kind' => $params['kind'],
|
||||
'breed' => $params['breed'],
|
||||
'number' => $params['number'],
|
||||
'buy_info' => $params['buy_info'],
|
||||
'buy_cert' => $params['buy_cert'],
|
||||
'create_time' => time(),
|
||||
]);
|
||||
//返回信息
|
||||
return $this->success('添加成功');
|
||||
return $result ? $this->success('添加成功') : $this->fail('添加失败');
|
||||
}
|
||||
|
||||
//标记成熟
|
||||
public function catchFish(): Json
|
||||
{
|
||||
$params = $this->request->post(['user_id','pond_id','kind','number']);
|
||||
if(empty($params['user_id']) || empty($params['pond_id']) || empty($params['kind']) || empty($params['number'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//判断是否养殖
|
||||
$hasRes = Db::name('farmer_pond_breed')->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->select();
|
||||
if($hasRes->isEmpty()){
|
||||
return $this->fail('该池塘未养殖');
|
||||
}
|
||||
//获取池塘养殖数量
|
||||
$total = Db::name('farmer_pond_breed')->where('user_id',$params['user_id'])->where('pond_id',$params['pond_id'])->sum('number');
|
||||
if($params['number'] > $total){
|
||||
return $this->fail('捕捞数量大于池塘总数');
|
||||
}
|
||||
$result = Db::name('farmer_pond_catch')->insert([
|
||||
'user_id' => $params['user_id'],
|
||||
'pond_id' => $params['pond_id'],
|
||||
'kind' => $params['kind'],
|
||||
'number' => $params['number'],
|
||||
'create_time' => time()
|
||||
]);
|
||||
return $result ? $this->success('操作成功') : $this->fail('操作失败');
|
||||
}
|
||||
|
||||
//添加水产养殖图片
|
||||
public function addFishPic(): Json
|
||||
{
|
||||
//获取参数
|
||||
$params = $this->request->post(['pond_id','pic']);
|
||||
if(empty($params['pond_id']) || empty($params['pic'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//写入数据
|
||||
$params['create_time'] = time();
|
||||
$result = Db::name('farmer_pond_pic')->insert($params);
|
||||
//返回
|
||||
return $result ? $this->success('添加成功') : $this->fail('添加失败');
|
||||
}
|
||||
|
||||
//水产养殖图片列表
|
||||
public function fishPicList(): Json
|
||||
{
|
||||
//获取参数
|
||||
$params = $this->request->get(['pond_id']);
|
||||
if(empty($params['pond_id'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
$data = Db::name('farmer_pond_pic')->where('pond_id',$params['pond_id'])->order('id desc')->select()->each(function($item){
|
||||
$item['create_time'] = date('Y-m-d H:i:s',$item['create_time']);
|
||||
return $item;
|
||||
})->toArray();
|
||||
return $this->success('请求成功',$data);
|
||||
}
|
||||
|
||||
//添加水产养殖操作记录
|
||||
public function addFishRecord(): Json
|
||||
{
|
||||
//获取参数
|
||||
$params = $this->request->post(['pond_id','action_id','action_content']);
|
||||
if(empty($params['pond_id']) || empty($params['action_id']) || empty($params['action_content'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
if(empty(json_decode($params['action_content']))) {
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//写入数据
|
||||
$params['create_time'] = time();
|
||||
$result = Db::name('farmer_pond_record')->insert($params);
|
||||
//返回
|
||||
return $result ? $this->success('添加成功') : $this->fail('添加失败');
|
||||
}
|
||||
|
||||
//删除水产养殖操作记录
|
||||
public function delFishRecord(): Json
|
||||
{
|
||||
$params = $this->request->post(['record_id']);
|
||||
if(empty($params['record_id'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
$resust = Db::name('farmer_pond_record')->where('id',$params['record_id'])->delete();
|
||||
return $resust ? $this->success('删除成功') : $this->fail('删除失败');
|
||||
}
|
||||
|
||||
//删除水产养殖操作记录
|
||||
public function ediFishRecord(): Json
|
||||
{
|
||||
$params = $this->request->post(['record_id','action_content']);
|
||||
if(empty($params['record_id']) || empty($params['action_content'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
if(empty(json_decode($params['action_content']))) {
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//修改数据
|
||||
$result = Db::name('farmer_pond_record')->where('id',$params['record_id'])->update(['action_content'=>$params['action_content']]);
|
||||
//返回
|
||||
return $result ? $this->success('修改成功') : $this->fail('修改失败');
|
||||
}
|
||||
|
||||
//水产养殖操作记录列表
|
||||
public function fishRecordList(): Json
|
||||
{
|
||||
//获取参数
|
||||
$params = $this->request->get(['pond_id','page_no','page_size']);
|
||||
if(empty($params['pond_id'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
//设置分页条件
|
||||
$pageNo = empty($params['page_no']) || $params['page_no'] < 0 ? 1 : $params['page_no'];
|
||||
$pageSize = empty($params['page_size']) || $params['page_size'] < 0 ? 10 : $params['page_size'];
|
||||
$data = Db::name('farmer_pond_record')->where('pond_id',$params['pond_id'])->page($pageNo,$pageSize)->order('create_time desc')->select()->each(function($item){
|
||||
$item['action_name'] = Db::name('farmer_action')->where('id',$item['action_id'])->findOrEmpty()['name'];
|
||||
$item['action_content'] = json_decode($item['action_content'],true);
|
||||
$item['create_time'] = date('Y-m-d H:i:s',$item['create_time']);
|
||||
return $item;
|
||||
})->toArray();
|
||||
return $this->success('请求成功',$data);
|
||||
}
|
||||
|
||||
//获取农户土地监测数据实时数据
|
||||
public function pondEnvData(): Json
|
||||
{
|
||||
$params = $this->request->get(['user_id']);
|
||||
if(empty($params['user_id'])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
$data = Db::name('farmer_pond_env_data')->where('user_id',$params['user_id'])->whereDay('create_time', date('Y-m-d',time()))->findOrEmpty();
|
||||
if(!empty($data)){
|
||||
$data['create_time'] = date('Y-m-d H:i:s',$data['create_time']);
|
||||
}
|
||||
return $this->success('请求成功',$data);
|
||||
}
|
||||
|
||||
}
|
|
@ -76,7 +76,7 @@
|
|||
$pageNo = empty($params['page_no']) || $params['page_no'] < 0 ? 1 : $params['page_no'];
|
||||
$pageSize = empty($params['page_size']) || $params['page_size'] < 0 ? 10 : $params['page_size'];
|
||||
//设置搜素条件
|
||||
$query = 'user_id = '.$params['user_id'];
|
||||
$query = 'user_id = '.$params['user_id'].' and status != 5';
|
||||
if(!empty($params['keyword'])){
|
||||
$query .= ' and (code LIKE "%'.$params['keyword'].'%" or kind LIKE "%'.$params['keyword'].'%" or breed LIKE "%'.$params['keyword'].'%")';
|
||||
}
|
||||
|
@ -90,7 +90,7 @@
|
|||
public function poultryStatus(): Json
|
||||
{
|
||||
$params = $this->request->post(['poultry_id','status']);
|
||||
if(empty($params['poultry_id']) || empty($params['status']) || !in_array($params['status'],[1,2,3,4])){
|
||||
if(empty($params['poultry_id']) || empty($params['status']) || !in_array($params['status'],[1,2,3,4,5])){
|
||||
return $this->fail('参数错误');
|
||||
}
|
||||
$result = Db::name('farmer_poultry_breed')->where('id',$params['poultry_id'])->update(['status'=>$params['status']]);
|
||||
|
|
Loading…
Reference in New Issue