dataLists(new FenceHouseLists()); } public function add() { $params = (new FenceHouseValidate())->post()->goCheck('add'); $result = FenceHouseLogic::add($params); if (true === $result) { return $this->success('添加成功', [], 1, 1); } return $this->fail(FenceHouseLogic::getError()); } /** * @notes 编辑 * @return \think\response\Json * @author likeadmin * @date 2024/01/10 15:15 */ public function edit() { $params = (new FenceHouseValidate())->post()->goCheck('edit'); $result = FenceHouseLogic::edit($params); if (true === $result) { return $this->success('编辑成功', [], 1, 1); } return $this->fail(FenceHouseLogic::getError()); } public function detail() { $params = (new FenceHouseValidate())->goCheck('detail'); $result = FenceHouseLogic::detail($params); return $this->data($result); } /** * @return Json */ public function datas(): Json { $params = ['user_id', $this->userId]; $datas = (new FenceHouseLogic())->datas($params); return $this->data($datas); } // 离栏操作 public function leave() { $params = $this->request->param(); $params['create_time'] = time(); $params['update_time'] = time(); Db::name('leave_fence_house_log')->insert($params); return $this->success('离栏成功'); } // 离栏列表 public function leaveList() { $params = $this->request->param(); $pageNo = $params['page_no'] ?? 1; $params['create_time'] = time(); $params['update_time'] = time(); $lists = Db::name('leave_fence_house_log')->where('user_id', $this->userId)->append(['fence_house_name'])->withAttr('fence_house_name',function ($value, $data){ return FenceHouse::where('id', $data['fence_house_id'])->value('fence_house_name'); })->page($pageNo, $params['page_size'])->select(); $data = [ 'lists' => $lists, 'count' => Db::name('leave_fence_house_log')->where('user_id', $this->userId)->count(), 'page_no' => $pageNo, 'page_size' => $params['page_size'], ]; return $this->success('成功', $data); } // 换栏操作 public function exchange() { $params = $this->request->param(); $params['create_time'] = time(); $params['update_time'] = time(); Db::name('change_fence_house_log')->insert($params); return $this->success('换栏成功'); } public function exchangeList() { $params = $this->request->param(); $pageNo = $params['page_no'] ?? 1; $params['create_time'] = time(); $params['update_time'] = time(); $lists = Db::name('change_fence_house_log')->where('user_id', $this->userId)->append(['old_fence_house_name', 'new_fence_house_name']) ->withAttr('old_fence_house_name',function ($value, $data){ return FenceHouse::where('id', $data['old_fence_house_id'])->value('fence_house_name'); }) ->withAttr('new_fence_house_name',function ($value, $data){ return FenceHouse::where('id', $data['new_fence_house_id'])->value('fence_house_name'); }) ->page($pageNo, $params['page_size']) ->select(); $data = [ 'lists' => $lists, 'count' => Db::name('change_fence_house_log')->where('user_id', $this->userId)->count(), 'page_no' => $pageNo, 'page_size' => $params['page_size'], ]; return $this->success('成功', $data); } }