123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?php
- /**
- * @Name
- * @Description
- * @Author 刘学玺
- * @Date 2024/9/27 12:05
- */
- namespace App\Http\Services\Frontend\Client\Member;
- use App\Http\Requests\Request;
- use App\Http\Services\Frontend\Client\Common\AuthService;
- use App\Http\Services\Service;
- use App\Models\Member\Address;
- use App\Models\Member\Benefit;
- use App\Models\Member\User;
- use Endroid\QrCode\Builder\Builder;
- use Endroid\QrCode\Writer\PngWriter;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\DB;
- class UserService extends Service
- {
- protected array $select_column = ['id', 'mobile', 'nickname', 'avatar', 'name', 'sex', 'birthday', 'mark', 'point','balance'];
- public function getUser()
- {
- $id = Auth::id();
- return User::query()->select($this->select_column)->find($id);
- }
- public function updateUser(array $data): void
- {
- $id = Auth::id();
- $user = self::toModel(['id' => $id, ...$data], User::class);
- $user->save();
- }
- public function delUser(Request $request): void
- {
- $user = User::query()->find(Auth::id());
- $user->delete();
- }
- public function address()
- {
- $id = Auth::id();
- $where = ['user_id' => $id, 'status' => 1];
- $select = ['user_name', 'mobile', 'address', 'lat', 'lng', 'status'];
- return Address::query()->where($where)->select($select)->first();
- }
- public function qrcode(): \Endroid\QrCode\Writer\Result\ResultInterface
- {
- $id = Auth::id();
- $result = Builder::create()
- ->writer(new PngWriter())
- ->data("https://h5.xiaoding.niusenyun.com?invite={$id}")
- ->size(300)
- ->margin(10)
- ->build();
- return $result;
- }
- public function getBalancePage(): array
- {
- $id = Auth::id();
- $benefitColumn = ['id','type','remark','benefit','balance','created_at'];
- $benefitPage = Benefit::query()->where('user_id',$id)->select($benefitColumn)->paginate(10);
- return ['list' => $benefitPage->items(), 'total' => $benefitPage->total()];
- }
- }
|