基于微信小程序的高校学生健康上报系统的详细设计与实现主要是根据前面的基于微信小程序的高校学生健康上报系统的需求分析和基于微信小程序的高校学生健康上报系统的总体设计来设计页面并实现业务逻辑。主要从基于微信小程序的高校学生健康上报系统界面实现、业务逻辑实现这两部分进行介绍。
4.1用户功能模块
4.1.1 首页界面
当进入基于微信小程序的高校学生健康上报系统的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,再往下是各种各样的系统信息,其主界面展示如下图4-1所示。
图4-1?首页界面图
4.1.2 用户注册界面
不是基于微信小程序的高校学生健康上报系统中正式用户的是可以在线进行注册的,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等信息后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图4-2所示。
图4-2?前台用户注册界面图
用户注册的关键代码如下。
public function register()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 验证失败 输出错误信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
????????????????$request['password'] = md5($request['password']);
????????????????$result = $this->model->register($request, $this->table);
????????????????$data = $result;
????????????}
????????} else {
????????????$data['error'] = 30000;
????????????$data['message'] = "field的值不能为空!";
????????}
????????return json_encode($data);
????}
public function register($request=[],$table_name = ''){
????????$username = $request['username'];
????????$bol = $this->where(['username'=>$username])->find();
????????if (!$bol){
????????????$result = self::allowField(true)->save($request);
????????????if ($result) {
????????????????return ['result' => 1];
????????????} else {
????????????????return ['error' => ['code' => 3000, 'message' => '注册失败']];
????????????}
????????}else{
????????????return ['error' => ['code' => 3000, 'message' => '注册失败,账号已存在']];
????????}
????}
4.1.3 用户登录界面
基于微信小程序的高校学生健康上报系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到基于微信小程序的高校学生健康上报系统的首页中;否则将会提示相应错误信息,用户登录界面如下图4-3所示。
??????????????????
图4-3用户登录界面图
用户登录的关键代码如下。
public function login()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 验证失败 输出错误信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
????????????????$request['password'] = md5($request['password']);
????????????????$result = $this->model->login($request, $this->table);
????????????????$data = $result;
????????????}
????????} else {
????????????$data['error'] = 30000;
????????????$data['message'] = "field的值不能为空!";
????????}
????????return json_encode($data);
????}
public function login($request=[],$table_name = ''){
????????$username = $request['username'];
????????$password = $request['password'];
????????$bol = $this->where(['username'=>$username])->find();
????????if ($bol){
????????????$password = md5($password);
????????????if ($request['password']==$bol['password']) {
????????????????//添加token信息
????????????????$access_token['create_time'] = date('Y-m-d H:i:s');
????????????????$access_token['update_time'] = date('Y-m-d H:i:s');
$access_token['info'] = json_encode($bol);
????????????????// $access_token['info'] = $bol;
????????????????$access_token['token'] = md5(date('Y-m-d H:i:s'));
????????????????$bol_token = Db::name('AccessToken')->insert($access_token);
????????????????if ($bol_token){
????????????????????$data['obj'] = $bol;
????????????????????$data['obj']['token'] = $access_token['token'];
????????????????????return ['result' => $data];
????????????????}else{
????????????????????return ['error' => ['code' => 5000, 'message' => '登录失败,token生成失败']];
????????????????}
????????????} else {
????????????????return ['error' => ['code' => 5000, 'message' => '登录失败,密码不正确']];
????????????}
????????}else{
????????????return ['error' => ['code' => 5000, 'message' => '登录失败,账号不存在']];
????????}
????}
4.1.4健康上报界面
当点击导航栏上的“健康上报”的时候,就会进入对应的健康信息填写界面,学生可以将个人健康信息完善后进行上传。健康上报界面如下图4-4所示。
图4-4健康上报界面图
健康上报的关键代码如下。
public function add($request=[],$table_name = '',$table_id = ''){
????????$result = self::allowField(true)->save($request);
????????if ($result) {
????????????return ['result' => 1];
????????} else {
????????????return ['error' => ['code' => 3000, 'message' => '数据添加失败']];
????????}
????}
4.1.5?核酸上报界面
当学生点击基于微信小程序的高校学生健康上报系统中导航栏上的“核酸上报”后将会进入到核酸信息提交界面,然后填写完整后进行上传,点击提交,核酸上报界面如下图4-5所示。
图4-5核酸上报界面图
核酸上报的关键代码如下。
public function avg()
????{
????????$request = Request::param();
????????if (isset($request['field'])) {
????????????if (!empty($request['field'])) {
????????????????$result = $this->model->avg_field($request, $this->table, $this->table_id);
????????????????$data = $result;
????????????} else {
????????????????$data['error']['code'] = 30000;
????????????????$data['error']['message'] = "field的值不能为空!";
????????????}
????????} else {
????????????$data['error']['code'] = 30000;
????????????$data['error']['message'] = "field的值不能为空!";
????????}
????????return json_encode($data);
????}
4.1.6?公告资讯界面
当用户点击“公告资讯”后就可以进行公告资讯信息查看了解,公告资讯详情页面如图4-6所示。
?????????????????
图4-6?公告资讯详情界面图
公告资讯的关键代码:
public function sum()
????{
????????$request = Request::param();
????????if (isset($request['field'])) {
????????????if (!empty($request['field'])) {
????????????????$result = $this->model->sum_field($request, $this->table, $this->table_id);
????????????????$data = $result;
????????????} else {
????????????????$data['error']['code'] = 30000;
????????????????$data['error']['message'] = "field的值不能为空!";
????????????}
????????} else {
????????????$data['error']['code'] = 30000;
????????????$data['error']['message'] = "field的值不能为空!";
????????}
????????return json_encode($data);
????}
4.1.7?请假信息界面
当学生点击“请假信息”链接后就进入请假申请界面,可以进行请假信息的提交。请假信息界面如下图4-7所示。
图4-7?请假信息界面图
请假信息界面关键代码:?
public function count_group()
????{
????????$request = Request::param();
????????if (isset($request['groupby'])) {
????????????if (!empty($request['groupby'])) {
????????????????$result = $this->model->count_group($request, $this->table, $this->table_id);
????????????????$data['result'] = $result;
????????????} else {
????????????????$data['error']['code'] = 30000;
????????????????$data['error']['message'] = "groupby的值不能为空!";
????????????}
????????} else {
????????????$data['error']['code'] = 30000;
????????????$data['error']['message'] = "groupby的值不能为空!";
????????}
????????return json_encode($data);
}
4.1.8留言反馈界面
学生可以进行留言反馈提交,留言反馈界面如下图4-8所示。
?????????????????
图4-8?留言反馈界面图
留言反馈的关键代码如下。
public function add()
????{
????????if (Request::isPost()) {
????????????$request = Request::param();
????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
????????????$result = $this->validate($request, $this->validate);
????????????if (true !== $result) {
????????????????// 验证失败 输出错误信息
????????????????$data['error'] = 30000;
????????????????$data['message'] = $result;
????????????} else {
if($this->table == 'user'){
$request['password'] = md5($request['password']);
}
$res = $this->add_before($request, $this->table, $this->table_id);
if($res['code'] == 200){
$result = $this->model->add($request, $this->table, $this->table_id);
$this->add_after($this->table);
$data = $result;
}else{
$data['error'] = $res;
}
????????????}
????????} else {
????????????$data['error']['code'] = 30000;
????????????$data['error']['message'] = "field的值不能为空!";
????????}
????????return json_encode($data);
????}
4.2管理员功能模块
4.2.1 学生管理界面
基于微信小程序的高校学生健康上报系统中的管理人员在“学生管理”这一菜单中是可以对学生信息进行管控。界面如下图4-9所示。
图4-9学生管理界面图
学生管理的关键代码如下。
public function get_obj()
????{
????????$request = Request::param();
????????$result = $this->model->get_obj($request, $this->table, $this->table_id, $this->table_id);
????????$data['result'] = $result;
????????return json_encode($data);
????}
4.2.2?部门管理界面
基于微信小程序的高校学生健康上报系统中的管理人员在“部门管理”这一菜单是中可以对部门信息进行管理。部门管理界面如下图4-10所示。
图4-10部门管理界面图
部门管理关键代码:
public function count()
????{
????????$request = Request::param();
????????$result = $this->model->list_count($request, $this->table, $this->table_id);
????????$data['result'] = $result;
????????return json_encode($data);
????}
4.2.3 健康上报管理界面
基于微信小程序的高校学生健康上报系统中的管理人员在“健康上报管理”这一菜单中是可以对基于微信小程序的高校学生健康上报系统内的学生上报的健康信息进行维护和管理的,界面如下图4-11所示。
图4-11健康上报管理界面图
健康上报管理关键代码:
public function get_list()
????{
????????$request = Request::param();
????????$result['list'] = $this->model->get_list($request, $this->table, $this->table_id);
????????$result['count'] = $this->model->list_count($request, $this->table, $this->table_id);
????????$data['result'] = $result;
????????return json_encode($data);
????}
4.2.4 请假信息管理界面
基于微信小程序的高校学生健康上报系统中的管理人员在“请假信息管理”这一菜单下是可以对基于微信小程序的高校学生健康上报系统内的学生的请假申请信息进行管控的,其管理界面如下图4-12所示。
图4-12请假信息管理界面图
请假信息管理关键代码:
class AccessToken extends base
{
????protected $table = 'access_token'; ???????????????//数据表名
????protected $table_id = 'token'; ????????????//数据表名
????protected $validate = 'AccessToken'; ????????????//数据表名
????protected $model;
????public function __construct(){
????????$this->model = new Model();
????}
}
4.2.5预警通知管理界面
基于微信小程序的高校学生健康上报系统中的管理人员在“预警通知管理”这一菜单下主要可以对通知信息进行维护管理等,其界面如下图4-12所示。
图4-12预警通知管理界面图
预警通知管理关键代码:
public function del()
????{
????????$request = Request::param();
????????$result = $this->model->del_data($request, $this->table, $this->table_id);
????????$data = $result;
????????return json_encode($data);
????}
本文地址:http://fmiwue.riyuangf.com/quote/13811.html 迅易网 http://fmiwue.riyuangf.com/ , 查看更多