123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- <?php
- namespace App\Http\Controllers\Web\Organization;
- use Aix\Sms\Contracts\Smser;
- use App\Http\Controllers\Web\WebBaseController;
- use App\Models\Category;
- use App\Repositories\MemberLogRepository;
- use App\Services\Common\EmailService;
- use App\Services\Common\SmsService;
- use App\Services\Company\DispensingService;
- use App\Services\Organization\OrganizationService;
- use App\Services\Organization\ServiceService;
- use App\Validators\OrganizationValidatorRequest;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Cache;
- use Illuminate\Support\Facades\DB;
- use App\Services\Auth\RegisterService;
- use App\Services\Common\MembersSetmealService;
- class OrganizationController extends WebBaseController
- {
- protected $organizationService;
- protected $serviceService;
- protected $smsService;
- protected $memberLogRepository;
- protected $emailService;
- protected $dispensingService;
- private $registerService;
- private $membersSetmealService;
- public function __construct(OrganizationService $organizationService,ServiceService $serviceService,SmsService $smsService,MemberLogRepository $memberLogRepository,EmailService $emailService,DispensingService $dispensingService, RegisterService $registerService, MembersSetmealService $membersSetmealService)
- {
- $this->organizationService = $organizationService;
- $this->serviceService = $serviceService;
- $this->smsService = $smsService;
- $this->memberLogRepository = $memberLogRepository;
- $this->emailService = $emailService;
- $this->dispensingService = $dispensingService;
- $this->registerService = $registerService;
- $this->membersSetmealService = $membersSetmealService;
- }
- public function index()
- {
- $user = auth('web-organization')->user();
- $service_list = $this->serviceService->list($user);
- $service_total = $this->serviceService->total($user->id);
- $trade = Category::categoryType('AIX_trade');
- return view('app.organization.index',['service_list'=>$service_list,'service_total'=>$service_total,'trade'=>$trade]);
- }
- /**
- * 机构信息
- */
- public function organizationInfo()
- {
- $user = auth('web-organization')->user();
- $organizationInfo = $this->organizationService->organizationInfo($user);
- return view('app.organization.company_info', $organizationInfo);
- }
- public function serviceAdd(Request $request)
- {
- if(request()->method()=='POST'){
- $data = $request->except('_method', '_token');
- return $this->serviceService->save($data,auth('web-organization')->user());
- }else{
- return view('app.organization.service_add');
- }
- }
- public function serviceEdit(Request $request){
- if(request()->method()=='POST'){
- $data = $request->except('_method', '_token');
- return $this->serviceService->save($data,auth('web-organization')->user());
- }else{
- $id = $request->input('id');
- $user = auth('web-organization')->user();
- $where['id'] = $id;
- $where['uid'] = $user->id;
- $serviceInfo = $this->serviceService->serviceInfo($where);
- if(!$serviceInfo){
- return $this->showMessage('没有这个需求!', route('org.index'), true);
- }
- $trade = Category::categoryType('AIX_trade');
- return view('app.organization.service_edit',['serviceInfo'=>$serviceInfo,'trade'=>$trade]);
- }
- }
- public function serviceDel(Request $request)
- {
- $id = $request->id;
- $user = auth('web-organization')->user();
- return $this->serviceService->serviceDel($id, $user);
- }
- public function orgSecurity()
- {
- $user = auth('web-organization')->user();
- $orgInfo = $this->organizationService->orgSecurity($user);
- return view('app.organization.org_security', $orgInfo);
- }
- public function loginLog()
- {
- $user = auth('web-organization')->user();
- $loginLog = $this->organizationService->orgLoginLog($user);
- $orgInfo = $user;
- $orgInfo['loginLog'] = $loginLog;
- return view('app.organization.login_log', ['organizationInfo'=>$orgInfo]);
- }
- public function modifyPwd()
- {
- return view('app.organization.ajax.ajax_modify_pwd');
- }
- public function savePwd(OrganizationValidatorRequest $request)
- {
- $user = auth('web-organization')->user();
- if (!$this->organizationService->savePwd($user, $request->oldpassword, $request->password, $request->password1)) {
- return $this->sendErrorResponse('密码修改失败!');
- }
- if ($user->mobile) {
- $this->smsService->sendSms($user->mobile, Smser::TEMPLATE_SMS_EDITPWD, ['sitename'=>subsite_config('aix.system.site.site.site_name'),'newpassword'=>$request->password]);
- }
- return $this->sendSuccessResponse('密码修改成功!');
- }
- public function authEmail()
- {
- $user = auth('web-organization')->user();
- if (!$email = $this->organizationService->authEmail($user)) {
- return response()->json(['status'=>0,'msg'=>'参数错误!']);
- }
- return response()->json(['status'=>1,'msg'=>'查询成功!','data'=>view('app.organization.ajax.ajax_auth_email', $email)->render()]);
- }
- public function emailSend(OrganizationValidatorRequest $request)
- {
- $email = $request->email;
- $id = $request->id;
- if (!$this->organizationService->checkEmailAudit($id, $email)->isEmpty()) {
- return response()->json(['status'=>0, 'msg'=>'email已验证!']);
- }
- $user = auth('web-organization')->user();
- $this->memberLogRepository->createLog($user,8001,"");
- $this->emailService->setAuthTag('organization')
- ->setCallback('App\Services\Organization\OrganizationService', 'sendAuthEmailHook', [$email, auth('web-organization')->user()])
- ->sendAuthMail($email, EmailService::TEMPLATE_VALIDATION);
- return response()->json(['status'=>1]);
- }
- public function dispensingList()
- {
- $dispensingList = $this->dispensingService->list();
- return view('app.organization.org_dispensingList',['dispensing'=>$dispensingList]);
- }
- public function transfer()
- {
- $list = DB::table('organization')->whereRaw('id>9')->get()->toArray();
- $list = json_decode(json_encode($list), true);
- foreach ($list as $k => $v){
- $info = DB::table('companys')->where('companyname',$v['orgname'])->first();
- if(!$info){
- $company=$this->registerService->registerCompany1($v);
- $this->membersSetmealService->addMemberSetmeal($company, config('aix.companyset.setmeal_com.setmeal_com_set.reg_service'));
- }
- }
- }
- }
|