1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- <?php
- namespace Modules\Tuiguang\Http\Controllers;
- use Catch\Base\CatchController;
- use Illuminate\Foundation\Validation\ValidatesRequests;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\DB;
- use Modules\Common\Errors\Errors;
- use Modules\Common\Exceptions\CommonBusinessException;
- use Modules\User\Http\Controllers\UserTrait;
- class RanseConfigController extends CatchController
- {
- use UserTrait;
- use ValidatesRequests;
- /**
- * 设置染色时间
- * @param Request $request
- */
- public function setRanseDuration(Request $request) {
- $this->validate($request, [
- 'no_charge_user_duration' => 'required|integer|min:0',
- 'charge_user_duration' => 'required|integer|gte:no_charge_user_duration',
- ]);
- $uid = $this->getOptimizerUid();
- if(!$uid) {
- CommonBusinessException::throwError(Errors::NO_OPERATE_PERMISSION);
- }
- $now = date('Y-m-d H:i:s');
- DB::table('ranse_config')->where('user_id', $uid)
- ->where('is_enabled', 1)
- ->update(['is_enabled' => 0, 'updated_at' => $now]);
- DB::table('ranse_config')
- ->insert([
- 'user_id' => $uid, 'is_enabled' => 1,
- 'no_charge_user_duration' => $request->input('no_charge_user_duration'),
- 'charge_user_duration' => $request->input('charge_user_duration'),
- 'created_at' => $now, 'updated_at' => $now,
- ]);
- return 'ok';
- }
- /**
- * 获取染色时间
- * @param Request $request
- * @return array
- */
- public function getRanseDuration(Request $request) {
- $uid = $this->getOptimizerUid();
- if(!$uid) {
- CommonBusinessException::throwError(Errors::NO_OPERATE_PERMISSION);
- }
- $config = DB::table('ranse_config')->where('user_id', $uid)
- ->where('is_enabled', 1)
- ->first();
- if(!$config) {
- $config = DB::table('ranse_config')
- ->where([
- 'user_id' => 0, 'miniprogram_id' => 0, 'is_enabled' =>1
- ])->first();
- }
- return [
- 'charge_user_duration' => $config->charge_user_duration,
- 'no_charge_user_duration' => $config->no_charge_user_duration,
- ];
- }
- }
|