adminInfo)['user_id']; if (!empty($params['user_id'])) { $userId = $params['user_id']; } Db::startTrans(); try { Land::create([ 'user_id' => $userId, 'title' => $params['title'], 'address' => $params['address'], 'total_area' => $params['total_area'], 'residual_area' => $params['residual_area'], 'province_code' => $params['province_code'], 'province_name' => $params['province_name'], 'city_code' => $params['city_code'], 'city_name' => $params['city_name'], 'county_code' => $params['county_code'], 'county_name' => $params['county_name'], 'town_code' => $params['town_code'], 'town_name' => $params['town_name'], 'village_code' => $params['village_code'], 'village_name' => $params['village_name'], 'group_code' => $params['group_code'], 'group_name' => $params['group_name'], 'master_name' => $params['master_name'], 'master_phone' => $params['master_phone'], 'pic' => json_encode($params['pic']), ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2023/11/22 16:35 */ public static function edit(array $params): bool { $userId = (request()->adminInfo)['user_id']; if (!empty($params['user_id'])) { $userId = $params['user_id']; } Db::startTrans(); try { Land::where('id', $params['id'])->update([ 'user_id' => $userId, 'title' => $params['title'], 'address' => $params['address'], 'total_area' => $params['total_area'], 'residual_area' => $params['residual_area'], 'province_code' => $params['province_code'], 'province_name' => $params['province_name'], 'city_code' => $params['city_code'], 'city_name' => $params['city_name'], 'county_code' => $params['county_code'], 'county_name' => $params['county_name'], 'town_code' => $params['town_code'], 'town_name' => $params['town_name'], 'village_code' => $params['village_code'], 'village_name' => $params['village_name'], 'group_code' => $params['group_code'], 'group_name' => $params['group_name'], 'master_name' => $params['master_name'], 'master_phone' => $params['master_phone'], 'pic' => json_encode($params['pic']), ]); $productIdArray = Db::name('product')->alias('p') ->where('lp.land_id', $params['id']) ->leftJoin('land_product lp','lp.product_id = p.id') ->field('p.*') ->column('p.id'); Db::name('product')->whereIn('id', $productIdArray)->update(['user_id'=>$userId]); $deviceIdArray = Db::name('device')->alias('d') ->whereIn('pd.product_id', $productIdArray) ->leftJoin('product_device pd','pd.device_id = d.id') ->field('d.*') ->column('d.id'); Db::name('device')->whereIn('id', $deviceIdArray)->update(['user_id'=>$userId]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除 * @param array $params * @return bool * @author likeadmin * @date 2023/11/22 16:35 */ public static function delete(array $params): bool { return Land::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2023/11/22 16:35 */ public static function detail($params): array { return Land::findOrEmpty($params['id'])->toArray(); } public static function bind($params): bool { $userId = (request()->adminInfo)['user_id']; if (!empty($params['id'])) { $userId = Db::name('land')->where('id', $params['id'])->value('user_id'); } Db::startTrans(); try { Db::name('product')->where('id', $params['product_id'])->update([ 'user_id' => $userId, 'status' => 2 ]); Db::name('land_product')->where('land_id', $params['id'])->delete(); Db::name('land_product')->where('product_id', $params['product_id'])->delete(); Db::name('land_product')->insert([ 'land_id' => $params['id'], 'product_id' => $params['product_id'], 'create_time' => time(), 'update_time' => time() ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } }