Commit 2351f125 authored by wangtao's avatar wangtao

学习资料

parent bae0637f
...@@ -56,6 +56,7 @@ class Index extends AdminBase ...@@ -56,6 +56,7 @@ class Index extends AdminBase
return $this->fetch('welcome'); return $this->fetch('welcome');
} }
$business_dsh_count = Db::name('business')->where(['is_del' => '0', 'status' => 0])->count(); //企业资料待审核 $business_dsh_count = Db::name('business')->where(['is_del' => '0', 'status' => 0])->count(); //企业资料待审核
$school_dsh_count = Db::name('school')->where(['is_del' => '0', 'status' => 0])->count(); //学校资料待审核 $school_dsh_count = Db::name('school')->where(['is_del' => '0', 'status' => 0])->count(); //学校资料待审核
$course_dsh_count = Db::name('sh_course')->where(['is_del' => '0', 'status' => 1])->count(); //课程待审核 $course_dsh_count = Db::name('sh_course')->where(['is_del' => '0', 'status' => 1])->count(); //课程待审核
......
...@@ -120,13 +120,14 @@ class Course extends AdminBase ...@@ -120,13 +120,14 @@ class Course extends AdminBase
$shstatus = 2; $shstatus = 2;
} }
$updatedata['status'] = $shstatus; $updatedata['status'] = $shstatus;
$updatedata['sh_time'] = time(); $updatedata['sh_time'] = time();
$updatedata['sh_error_desc'] = $errordesc; $updatedata['sh_error_desc'] = $errordesc;
$result = $this->course->where('id', $post['id'])->update($updatedata); $result = $this->course->where('id', $post['id'])->update($updatedata);
if ($result) { if ($result) {
$courseinfo = Db::name('course')->where('id', $post['id'])->field('id,title,user_id')->find(); $courseinfo = $this->course->where('id', $post['id'])->field('id,title,user_id')->find();
if ($post['shstatus'] == 1) { if ($post['shstatus'] == 1) {
event('Course', ['course_id' => $post['id'], 'tasktype' => 'course', 'action' => 'shstatus']); event('Course', ['course_id' => $post['id'], 'tasktype' => 'course', 'action' => 'shstatus']);
Mail::createmail($courseinfo['user_id'], "您的课程【" . $courseinfo['title'] . "】已审核通过"); Mail::createmail($courseinfo['user_id'], "您的课程【" . $courseinfo['title'] . "】已审核通过");
......
...@@ -136,12 +136,13 @@ class Course extends BaseController ...@@ -136,12 +136,13 @@ class Course extends BaseController
$data = $request->param(); $data = $request->param();
$token = $request->header('token'); $token = $request->header('token');
$userId = TokenService::verifyToken($token)['user_id'] ?? 0; $userId = TokenService::verifyToken($token)['user_id'] ?? 0;
$data = (new CourseModel()) $data2 = (new CourseModel())
// ->with(['getTeacher','getSections'=>['getCourseClass'],'getCourseClass']) // ->with(['getTeacher','getSections'=>['getCourseClass'],'getCourseClass'])
->getCourseDetail($data['course_id'],$userId); ->getCourseDetail($data['course_id'],$userId);
CourseModel::where('id',$request->param('course_id'))->inc('click')->update([]); CourseModel::where('id',$request->param('course_id'))->inc('click')->update([]);
event('Course', ['course_id' => $data['course_id'], 'tasktype' => 'course', 'action' => 'courseupdateclick']); //同步数据 event('Course', ['course_id' => $data['course_id'], 'tasktype' => 'course', 'action' => 'courseupdateclick']); //同步数据
return $this->returnMsg('success',1,$data); return $this->returnMsg('success',1,$data2);
} }
......
...@@ -227,14 +227,18 @@ class User extends BaseController ...@@ -227,14 +227,18 @@ class User extends BaseController
if (!$user) { if (!$user) {
return $this->returnMsg('用户不存在', 0); return $this->returnMsg('用户不存在', 0);
} }
// 验证重置令牌 // 验证重置令牌
$storedToken = cache('reset_token_' . $user['id']); $storedToken = cache('reset_token_' . $user['id']);
if (!$storedToken || $storedToken !== $data['reset_token']) { if (!$storedToken || $storedToken !== $data['reset_token']) {
return $this->returnMsg('无效的重置令牌或已过期', 0); return $this->returnMsg('无效的重置令牌或已过期', 0);
} }
$update['password'] = md5($data['password'] . $user['salt']); $update['password'] = md5($data['password'] . $user['salt']);
if($update['password'] == $user['password']){
return $this->returnMsg('与原密码一样');
}
userModel::where(['id' => $user['id']])->update($update); userModel::where(['id' => $user['id']])->update($update);
// 清除重置令牌 // 清除重置令牌
......
...@@ -67,6 +67,7 @@ class Student extends BaseController ...@@ -67,6 +67,7 @@ class Student extends BaseController
'password' => $password, 'password' => $password,
'salt' => $salt, 'salt' => $salt,
'school_user_id' => \request()->userId, 'school_user_id' => \request()->userId,
'headico' => vconfig('default_user') ?? null,
]; ];
$userinfo = User::create($datauser); $userinfo = User::create($datauser);
$user_id = $userinfo->id; $user_id = $userinfo->id;
...@@ -105,6 +106,7 @@ class Student extends BaseController ...@@ -105,6 +106,7 @@ class Student extends BaseController
$pageSize = $request->param('pageSize', 10); $pageSize = $request->param('pageSize', 10);
$list = StudentModel::where($where)->where($map) $list = StudentModel::where($where)->where($map)
->order('createtime desc') ->order('createtime desc')
->with(['userprofile'])
->append(['sex_text', 'birthday_text']) ->append(['sex_text', 'birthday_text'])
->paginate([ ->paginate([
'page' => $page, 'page' => $page,
......
...@@ -53,8 +53,7 @@ class User extends BaseController ...@@ -53,8 +53,7 @@ class User extends BaseController
} }
$user['info_status'] = $info_status; $user['info_status'] = $info_status;
if ($user['role'] == 1) if ($user['role'] == 1) {
{
// 获取当前月份和上个月的起始和结束时间戳 // 获取当前月份和上个月的起始和结束时间戳
$currentMonthStart = strtotime(date('Y-m-01 00:00:00')); $currentMonthStart = strtotime(date('Y-m-01 00:00:00'));
$currentMonthEnd = strtotime(date('Y-m-t 23:59:59')); $currentMonthEnd = strtotime(date('Y-m-t 23:59:59'));
...@@ -64,33 +63,33 @@ class User extends BaseController ...@@ -64,33 +63,33 @@ class User extends BaseController
// 本月收入 (类型为0-项目结算和2-后台手动增加) // 本月收入 (类型为0-项目结算和2-后台手动增加)
$currentMonthIncome = UserMoneyLog::where('user_id', $user['id']) $currentMonthIncome = UserMoneyLog::where('user_id', $user['id'])
->whereIn('type', [0, 2]) ->whereIn('type', [0, 2])
->where('money_type',0) ->where('money_type', 0)
->whereBetween('createtime', [$currentMonthStart, $currentMonthEnd]) ->whereBetween('createtime', [$currentMonthStart, $currentMonthEnd])
->sum('money'); ->sum('money');
$user['financial']['current_month_income'] = number_format($currentMonthIncome,2); $user['financial']['current_month_income'] = number_format($currentMonthIncome, 2);
// 本月支出 (类型为1-提现) // 本月支出 (类型为1-提现)
$currentMonthExpense = abs(UserMoneyLog::where('user_id', $user['id']) $currentMonthExpense = abs(UserMoneyLog::where('user_id', $user['id'])
->whereIn('type', [1]) ->whereIn('type', [1])
->where('money_type',0) ->where('money_type', 0)
->whereBetween('createtime', [$currentMonthStart, $currentMonthEnd]) ->whereBetween('createtime', [$currentMonthStart, $currentMonthEnd])
->sum('money')); ->sum('money'));
$user['financial']['current_month_expense'] = number_format($currentMonthExpense,2); $user['financial']['current_month_expense'] = number_format($currentMonthExpense, 2);
// 上月收入 // 上月收入
$lastMonthIncome = UserMoneyLog::where('user_id', $user['id']) $lastMonthIncome = UserMoneyLog::where('user_id', $user['id'])
->whereIn('type', [0, 2]) ->whereIn('type', [0, 2])
->where('money_type',0) ->where('money_type', 0)
->whereBetween('createtime', [$lastMonthStart, $lastMonthEnd]) ->whereBetween('createtime', [$lastMonthStart, $lastMonthEnd])
->sum('money'); ->sum('money');
$user['financial']['lastMonthIncome'] = number_format($lastMonthIncome,2); $user['financial']['lastMonthIncome'] = number_format($lastMonthIncome, 2);
// 上月支出 // 上月支出
$lastMonthExpense = abs(UserMoneyLog::where('user_id', $user['id']) $lastMonthExpense = abs(UserMoneyLog::where('user_id', $user['id'])
->whereIn('type', [1]) ->whereIn('type', [1])
->where('money_type',0) ->where('money_type', 0)
->whereBetween('createtime', [$lastMonthStart, $lastMonthEnd]) ->whereBetween('createtime', [$lastMonthStart, $lastMonthEnd])
->sum('money')); ->sum('money'));
$user['financial']['lastMonthExpense'] = number_format($lastMonthExpense,2); $user['financial']['lastMonthExpense'] = number_format($lastMonthExpense, 2);
// 计算较上月百分比 // 计算较上月百分比
...@@ -131,15 +130,17 @@ class User extends BaseController ...@@ -131,15 +130,17 @@ class User extends BaseController
// if (UserAccount::where(['user_id' => $request->userId, 'is_del' => 0])->count()) { // if (UserAccount::where(['user_id' => $request->userId, 'is_del' => 0])->count()) {
// return $this->returnMsg('请勿重复提交'); // return $this->returnMsg('请勿重复提交');
// } // }
$data = $request->param(); $data = $request->param();
$zfbinfo = UserAccount::where(['user_id' => $request->userId, 'is_del' => 0])->find();
$data['type'] = 0; $data['type'] = 0;
$data['account'] = $data['zfb']; $data['account'] = $data['zfb'];
$data['user_id'] = $request->userId; $data['user_id'] = $request->userId;
unset($data['zfb']); unset($data['zfb']);
if($zfbinfo){
$res = UserAccount::create($data); $res = UserAccount::where('user_id', $request->userId)->update($data);
}else{
$res = UserAccount::create($data);
}
return $this->returnMsg('操作成功', 1, $res); return $this->returnMsg('操作成功', 1, $res);
...@@ -160,26 +161,65 @@ class User extends BaseController ...@@ -160,26 +161,65 @@ class User extends BaseController
return $this->returnMsg('验证码错误'); return $this->returnMsg('验证码错误');
} }
$is_exit = userModel::where(['mobile' => $data['mobile']])->where('is_del', 0)->count();
if ($is_exit) {
return $this->returnMsg('手机号已存在');
}
$res = UserService::updateUserInfo('mobile', $data['mobile']); $res = UserService::updateUserInfo('mobile', $data['mobile']);
return $this->returnMsg('操作成功', 1, $res); return $this->returnMsg('操作成功', 1, $res);
} }
public function realUser(Request $request) //第一步验证手机
public function editMobileone(Request $request)
{ {
$vo = (new UserValidate())->goCheck(['realname', 'idcard', 'idcard_q', 'idcard_h']); $vo = (new UserValidate())->goCheck(['code']);
if ($vo !== true) { if ($vo !== true) {
return $vo; return $vo;
} }
if (UserSmrz::where(['user_id' => $request->userId, 'is_del' => 0])->count()) {
return $this->returnMsg('请勿重复提交');
}
$data = $request->param(); $data = $request->param();
$userInfo = UserModel::where(['id' => $request->userId, 'is_del' => 0])->field('id,mobile')->find();
//check sms
$checkSmsCode = UtilService::checkSmsCode($userInfo['mobile'], $data['code']);
if (!$checkSmsCode) {
return $this->returnMsg('验证码错误');
}
return $this->returnMsg('操作成功', 1);
$data['user_id'] = $request->userId; }
public function realUser(Request $request)
{
$vo = (new UserValidate())->goCheck(['realname', 'idcard', 'idcard_q', 'idcard_h']);
if ($vo !== true) {
return $vo;
}
$data = $request->param();
$smrzinfo = UserSmrz::where(['user_id' => $request->userId])->find();
if ($smrzinfo) {
if ($smrzinfo['status'] == 2) {
return $this->returnMsg('已认证');
}
$data['status'] = 2;
$res = UserSmrz::update($data, ['user_id' => $request->userId]);
} else {
$data['user_id'] = $request->userId;
$data['status'] = 2;
$res = UserSmrz::create($data);
}
$res = UserSmrz::create($data); // if (UserSmrz::where(['user_id' => $request->userId, 'is_del' => 0, 'status' => 2])->count()) {
// return $this->returnMsg('请勿重复提交');
// }
//
// $data = $request->param();
//
// $data['user_id'] = $request->userId;
//
// $res = UserSmrz::create($data);
return $this->returnMsg('操作成功', 1, $res); return $this->returnMsg('操作成功', 1, $res);
...@@ -200,6 +240,10 @@ class User extends BaseController ...@@ -200,6 +240,10 @@ class User extends BaseController
return $this->returnMsg('余额不足'); return $this->returnMsg('余额不足');
} }
$smrzstatus = UserSmrz::where(['user_id' => $request->userId])->value('status');
if ($smrzstatus != 2) {
return $this->returnMsg('请先实名认证');
}
$count = UserMoneyLog::where(['user_id' => $userId, 'type' => 1]) $count = UserMoneyLog::where(['user_id' => $userId, 'type' => 1])
->whereBetween('createtime', [strtotime('today'), strtotime('tomorrow') - 1]) ->whereBetween('createtime', [strtotime('today'), strtotime('tomorrow') - 1])
...@@ -239,7 +283,7 @@ class User extends BaseController ...@@ -239,7 +283,7 @@ class User extends BaseController
$page = $request->param('page/d', 1); $page = $request->param('page/d', 1);
$pageSize = $request->param('pageSize/d', 10); $pageSize = $request->param('pageSize/d', 10);
$list = Mail::where('user_id',$request->userId)->order('createtime', 'desc') $list = Mail::where('user_id', $request->userId)->order('createtime', 'desc')
->paginate([ ->paginate([
'page' => $page, 'page' => $page,
'list_rows' => $pageSize 'list_rows' => $pageSize
...@@ -358,9 +402,10 @@ class User extends BaseController ...@@ -358,9 +402,10 @@ class User extends BaseController
$data['old_password'] = md5($data['old_password'] . $user['salt']); $data['old_password'] = md5($data['old_password'] . $user['salt']);
if ($data['old_password'] != $user['password']) { if ($data['old_password'] != $user['password']) {
return $this->returnMsg('密码不正确'); return $this->returnMsg('旧密码密码不正确');
} }
userModel::where('id', $userId)->update(['password' => md5($data['password'] . $user['salt'])]); userModel::where('id', $userId)->update(['password' => md5($data['password'] . $user['salt'])]);
return $this->returnMsg('success', 1); return $this->returnMsg('success', 1);
......
...@@ -22,7 +22,7 @@ class ProjectPut extends BaseController ...@@ -22,7 +22,7 @@ class ProjectPut extends BaseController
public function projectPut(Request $request) public function projectPut(Request $request)
{ {
$vo = (new ProjectValidate())->goCheck(['project_id','user_desc','file_id_str']); $vo = (new ProjectValidate())->goCheck(['project_id','user_desc']);
if ($vo !== true) { if ($vo !== true) {
return $vo; return $vo;
} }
......
...@@ -9,13 +9,13 @@ class UserValidate extends BaseValidate ...@@ -9,13 +9,13 @@ class UserValidate extends BaseValidate
protected $rule = [ protected $rule = [
'name' => 'require', 'name' => 'require',
'mobile' => 'require|mobile', 'mobile' => 'require|mobile',
'password'=>'require', 'password'=>'require|length:6,16',
'code'=>'require', 'code'=>'require',
'token'=>'require', 'token'=>'require',
'str'=>'require', 'str'=>'require',
'confirm_password' => 'require|checkPasswordEqual', 'confirm_password' => 'require|checkPasswordEqual',
'password2' => 'require|checkPasswordEqual', 'password2' => 'require|checkPasswordEqual',
'updateField'=>'require|in:username,realname,sex,headico,description,email,qq,wechat', 'updateField'=>'require|in:username,realname,sex,headico,description,email,qq,wechat|updateFieldchange',
'updateValue'=>'require', 'updateValue'=>'require',
'zfb'=>'require', 'zfb'=>'require',
'realname'=>'require', 'realname'=>'require',
...@@ -37,6 +37,7 @@ class UserValidate extends BaseValidate ...@@ -37,6 +37,7 @@ class UserValidate extends BaseValidate
'mobile.require' => '手机号不能为空', 'mobile.require' => '手机号不能为空',
'mobile.mobile' => '手机号格式不正确', 'mobile.mobile' => '手机号格式不正确',
'password.require' => '密码必须', 'password.require' => '密码必须',
'password.length' => '密码长度必须是6-16位',
'code.require' => '验证码必须', 'code.require' => '验证码必须',
'token.require' => 'token必须', 'token.require' => 'token必须',
'str.require' => '必填项不能为空', 'str.require' => '必填项不能为空',
...@@ -44,6 +45,7 @@ class UserValidate extends BaseValidate ...@@ -44,6 +45,7 @@ class UserValidate extends BaseValidate
'password2.checkPasswordEqual' => '两次输入的密码不一致', 'password2.checkPasswordEqual' => '两次输入的密码不一致',
'updateField.require' => '必填项不能为空', 'updateField.require' => '必填项不能为空',
'updateField.in' => '范围不合法', 'updateField.in' => '范围不合法',
'updateField.updateFieldchange' => '提交信息长度或者格式错误',
'amount.require' => '金额不能为空', 'amount.require' => '金额不能为空',
'amount.chenckAmount' => '金额不合法', 'amount.chenckAmount' => '金额不合法',
]; ];
...@@ -75,4 +77,34 @@ class UserValidate extends BaseValidate ...@@ -75,4 +77,34 @@ class UserValidate extends BaseValidate
return true; return true;
} }
protected function updateFieldchange($value, $rule, $data)
{
if($value == 'email'){
if (!filter_var($data['updateValue'], FILTER_VALIDATE_EMAIL)) {
return false;
}
}elseif($value == 'username'){
$len = mb_strlen($data['updateValue'], 'UTF-8');
if($len > 20){
return false;
}
}elseif($value == 'realname'){
$len = mb_strlen($data['updateValue'], 'UTF-8');
if($len > 10){
return false;
}
}elseif($value == 'description'){
$len = mb_strlen($data['updateValue'], 'UTF-8');
if($len > 100){
return false;
}
}elseif($value == 'qq'){
$len = mb_strlen($data['updateValue'], 'UTF-8');
if($len > 11){
return false;
}
}
return true;
}
} }
\ No newline at end of file
...@@ -67,9 +67,7 @@ class Jobtask ...@@ -67,9 +67,7 @@ class Jobtask
$courseinfo = ShCourse::where('id', $data['course_id'])->find(); $courseinfo = ShCourse::where('id', $data['course_id'])->find();
$is_cz = CourseModel::where('id', $data['course_id'])->count(); $is_cz = CourseModel::where('id', $data['course_id'])->count();
if ($is_cz > 0) { if ($is_cz > 0) {
unset($courseinfo['click']); CourseModel::update($courseinfo,['id' => $data['course_id']]);
unset($courseinfo['tvclick']);
CourseModel::update($courseinfo);
} else { } else {
CourseModel::create($courseinfo); //添加课程 CourseModel::create($courseinfo); //添加课程
} }
...@@ -125,9 +123,8 @@ class Jobtask ...@@ -125,9 +123,8 @@ class Jobtask
} elseif ($data['action'] == 'courseupdateclick') { } elseif ($data['action'] == 'courseupdateclick') {
//更新销量阅读量 //更新销量阅读量
$courseinfo = CourseModel::field('id,click,tvclick')->where('id', $data['course_id'])->find(); $courseinfo = Db::name('course')->field('click,tvclick')->where('id', $data['course_id'])->find();
ShCourse::update($courseinfo); Db::name('sh_course')->where('id',$data['course_id'])->update($courseinfo);
} }
......
...@@ -22,6 +22,15 @@ use think\Model; ...@@ -22,6 +22,15 @@ use think\Model;
class Course extends Model class Course extends Model
{ {
// protected $type = [
// 'is_hot'=>'integer',
// 'tvclick'=>'integer',
// 'click'=>'integer',
// 'is_sell'=>'integer',
// 'is_tj'=>'integer',
// 'is_zb'=>'integer'
// ];
/**获取推荐课程列表 /**获取推荐课程列表
*/ */
public function getRecommendList($category_id,$page,$pageSize) public function getRecommendList($category_id,$page,$pageSize)
......
...@@ -21,6 +21,14 @@ use think\Model; ...@@ -21,6 +21,14 @@ use think\Model;
class ShCourse extends Model class ShCourse extends Model
{ {
// protected $type = [
// 'is_hot'=>'integer',
// 'tvclick'=>'integer',
// 'click'=>'integer',
// 'is_sell'=>'integer',
// 'is_tj'=>'integer',
// 'is_zb'=>'integer'
// ];
public function getCreatetimeAttr($value) public function getCreatetimeAttr($value)
{ {
......
...@@ -47,6 +47,7 @@ class User extends Model ...@@ -47,6 +47,7 @@ class User extends Model
{ {
return $this->hasOne(UserSmrz::class, 'user_id', 'id') return $this->hasOne(UserSmrz::class, 'user_id', 'id')
->where('is_del',0) ->where('is_del',0)
->where('status',2)
->field('id,realname,user_id,idcard'); ->field('id,realname,user_id,idcard');
} }
//获取头像 //获取头像
...@@ -110,7 +111,7 @@ class User extends Model ...@@ -110,7 +111,7 @@ class User extends Model
//实名信息 //实名信息
public function userReal() public function userReal()
{ {
return $this->hasOne(UserSmrz::class, 'user_id', 'id')->where('is_del',0); return $this->hasOne(UserSmrz::class, 'user_id', 'id')->where('is_del',0)->where('status',2);
} }
......
...@@ -43,9 +43,7 @@ class course ...@@ -43,9 +43,7 @@ class course
$courseinfo = ShCourse::where('id', $data['course_id'])->find(); $courseinfo = ShCourse::where('id', $data['course_id'])->find();
$is_cz = CourseModel::where('id', $data['course_id'])->count(); $is_cz = CourseModel::where('id', $data['course_id'])->count();
if ($is_cz > 0) { if ($is_cz > 0) {
unset($courseinfo['click']); CourseModel::update($courseinfo,['id' => $data['course_id']]);
unset($courseinfo['tvclick']);
CourseModel::update($courseinfo);
} else { } else {
CourseModel::create($courseinfo); //添加课程 CourseModel::create($courseinfo); //添加课程
} }
...@@ -101,8 +99,9 @@ class course ...@@ -101,8 +99,9 @@ class course
} elseif ($data['action'] == 'courseupdateclick') { } elseif ($data['action'] == 'courseupdateclick') {
//更新销量阅读量 //更新销量阅读量
$courseinfo = CourseModel::field('id,click,tvclick')->where('id', $data['course_id'])->find(); $courseinfo = Db::name('course')->field('click,tvclick')->where('id', $data['course_id'])->find();
ShCourse::update($courseinfo); Db::name('sh_course')->where('id',$data['course_id'])->update($courseinfo);
} }
......
...@@ -158,9 +158,18 @@ trait Units ...@@ -158,9 +158,18 @@ trait Units
} }
$seconds = (int) $value; $seconds = (int) $value;
// $microseconds = (int) round(
// (abs($value) - abs($seconds)) * ($value < 0 ? -1 : 1) * static::MICROSECONDS_PER_SECOND,
// );
// 确保所有值都是数值类型
$value = is_numeric($value) ? (float)$value : 0.0;
$seconds = is_numeric($seconds) ? (float)$seconds : 0.0;
$microseconds = (int) round( $microseconds = (int) round(
(abs($value) - abs($seconds)) * ($value < 0 ? -1 : 1) * static::MICROSECONDS_PER_SECOND, (abs($value) - abs($seconds)) * ($value < 0 ? -1 : 1) * static::MICROSECONDS_PER_SECOND
); );
$date = $this->setTimestamp($this->getTimestamp() + $seconds); $date = $this->setTimestamp($this->getTimestamp() + $seconds);
return $microseconds ? $date->addUTCUnit('microsecond', $microseconds) : $date; return $microseconds ? $date->addUTCUnit('microsecond', $microseconds) : $date;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment