110 lines
3.3 KiB
PHP
110 lines
3.3 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\Audit;
|
|
use App\Models\ProfileMarriage;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
class MarriageController extends Controller
|
|
{
|
|
public function approve(Request $request)
|
|
{
|
|
try {
|
|
|
|
$user = auth()->user();
|
|
|
|
$desc = $request->input('desc');
|
|
$certificates = $request->input('certificates') ?: [];
|
|
|
|
if (!$desc) {
|
|
return $this->fail('简介不能为空');
|
|
}
|
|
|
|
$check = Audit::query()->where('user_id', $user->id)
|
|
->where('type', Audit::TYPE_MARRIAGE_APPROVE)
|
|
->where('status', 0)
|
|
->first();
|
|
if ($check) {
|
|
return $this->failure('已有资料正在审核中');
|
|
}
|
|
|
|
(new Audit())->createAuditData(
|
|
$user->id,
|
|
Audit::TYPE_MARRIAGE_APPROVE,
|
|
compact('desc', 'certificates')
|
|
);
|
|
|
|
return $this->success('ok');
|
|
} catch (\Exception $e) {
|
|
return $this->failure($e->getMessage());
|
|
}
|
|
}
|
|
|
|
public function updateProfile(Request $request)
|
|
{
|
|
try {
|
|
$user = auth()->user();
|
|
|
|
DB::beginTransaction();
|
|
$profile = $user->profileMarriage;
|
|
if (!$profile){
|
|
$profile = new ProfileMarriage();
|
|
$profile->user_id = $user->id;
|
|
}
|
|
|
|
$avatar = $request->input('avatar');
|
|
if ($avatar && $avatar != $user->photo){
|
|
$user->photo = $avatar;
|
|
$user->is_photo_audited = 0;
|
|
}
|
|
|
|
$nickname = $request->input('nickname');
|
|
if ($nickname && $nickname != $user->nickname){
|
|
$user->nickname = $nickname;
|
|
}
|
|
|
|
$province = $request->input('province');
|
|
if ($province && $province != $profile->province){
|
|
$profile->province = $province;
|
|
}
|
|
|
|
$city = $request->input('city');
|
|
if ($city && $city != $profile->city){
|
|
$profile->city = $city;
|
|
}
|
|
|
|
$industry = $request->input('industry');
|
|
if ($industry && $industry != $user->industry) {
|
|
$user->industry = $request->industry;
|
|
}
|
|
|
|
$industry_sub = $request->input('industry_sub');
|
|
if ($industry_sub && $industry_sub != $user->industry_sub) {
|
|
if ($industry == '其他行业' && $industry_sub != '其他行业') {
|
|
$industry_sub = $request->industry;
|
|
//自定义职位 审核记录
|
|
(new Audit())->createAuditData(
|
|
$user->id,
|
|
Audit::TYPE_INDUSTRY_SUB,
|
|
['industry_sub' => $request->industry_sub]
|
|
);
|
|
} else {
|
|
$industry_sub = $request->industry_sub;
|
|
}
|
|
$user->industry_sub = $industry_sub;
|
|
}
|
|
|
|
$user->save();
|
|
$profile->save();
|
|
|
|
DB::commit();
|
|
|
|
return $this->success('ok');
|
|
}catch (\Exception $e){
|
|
DB::rollBack();
|
|
return $this->failure($e->getMessage());
|
|
}
|
|
}
|
|
} |