建工厂网站的公司_太原企业自助建站_代办理公司注册公司_关键词推广是什么意思 系统实现
  1. 用户登录的实现

用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。

登录界面如下图所示。

 

图5-1登录界面

用户登录的逻辑代码如下所示。

/**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

    1. 系统前台主要功能实现 
      1. 首页的实现

用户界面要尽量简洁大方,使用户能够方便找到需要的功能入口,浏览、购买中小学教师考勤打卡,且要易于修改和维护,同时还要保证用户合法和系统安全。

      1. 用户注册的实现

用户进入系统首页后,点击“注册”链接进入到注册页面,按照页面提示输入用户名、密码和手机号,页面进行表单验证,验证输入的用户名和手机号是否合法,表单验证通过后,点击“立即注册”按钮,利用 Ajax 技术,对用户名和手机号实现页面无刷新验证,检测数据库中是否已经存在该用户名或手机号,若数据库中不存在,则注册成功,注册成功后,自动跳转到登录页面。

用户注册界面如下所示。

 

图5-2用户注册界面

用户注册的关键代码如下。

/**

     * 注册

     * @param user

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(@RequestBody User user) {

        // 查询用户

        Map<String, String> query = new HashMap<>();

        query.put("username",user.getUsername());

        List list = service.select(query, new HashMap<>()).getResultList();

        if (list.size()>0){

            return error(30000, "用户已存在");

        }

        user.setUserId(null);

        user.setPassword(service.encryption(user.getPassword()));

        service.save(user);

        return success(1);

}

      1. 考勤信息展示的实现

考勤信息展示页是展示系统用户考勤信息的页面,通过sql语句:"select shangpinxinximingcheng,id,tupian,jiage,addtime from shangpinxinxi order by addtime desc",将所有是考勤按考勤信息列表降序排列。

考勤信息展示页面,如下图所示。

 

图5-3考勤信息展示页面

考勤信息的关键代码如下。

 @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

      1. 课程信息的实现

用户在浏览课程信息时,首先查询数据库表中是否已经存在该课程信息记录,若存在直接将课程信息导出,若不存在则创建一个新的添加对象,添加成功,数据库中的课程信息表添加一条信息。用户还可以点击“我的课程信息”查看添加到表中的课程信息,系统通过读取 session获取到用户 ID,将用户 ID 传递到后台。

教师课程信息界面如下图所示。

 

图5-4教师课程信息界面

    1. 系统后台主要功能实现 
      1. 用户管理的实现

管理员对系统用户的管理,在yhzhgl.php实现管理员用户的管理,包括录入、删除、修改,修改密码通过SESSION获取用户名,然后输入新密码,提交到mod.php中,使用sql命令更新密码。

用户管理界面如下图所示。

 

图5-5用户管理界面

用户管理关键代码如下。

 @RequestMapping("/get_list")

    public Map<String, Object> getList(HttpServletRequest request) {

        Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));

        return success(map);

}

      1. 考勤信息管理的实现

管理员可以获取系统中所有用户的考勤信息列表并对其进行编辑。管理员在添加用户考勤信息时,需要输入考勤基本信息,如时间、详情、用户信息等,还需要输入考勤信息详情描述,包括对考勤信息功能的描述以及展示图片等。添加考勤信息完成,数据库考勤信息表添加一条信息。管理员可以搜索用户考勤信息,同时可以对已经添加的用户考勤信息进行编辑。

考勤信息管理界面如下图所示。

 

图5-6考勤信息管理界面

      1. 课程管理的实现

管理员在后台管理界面点击到所有课程界面dingdan_list.php,向控制层dingdanAction发送请求,搜索当前所有课程信息,dingdanAction向课程数据访问层调用搜索全部课程的请求,向数据库的课程表搜索当前所有课程并将课程信息以对象的形式层层返回到dingdan_list.php界面,显示出当前所有课程信息。同时可以删除过期课程,确认已有课程,进行审核处理。

课程管理界面如下图所示。

 

图5-7课程管理界面

课程管理的关键代码如下。

 @RequestMapping(value = {"/avg_group", "/avg"})

public Map<String, Object> avg(HttpServletRequest request) {

        Query count = service.avg(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

  1. 系统测试
    1. 系统可靠性测试

以进入系统首页的访问速度为例展示系统的性能测试;系统的主要用户群体是购物理念较为先进的消费者,系统要在3秒钟内响应;需要完成页面的菜单栏、首页轮播图片、类目及考勤列表以及各功能模块入口等元素的显示。

    1. 系统功能性测试

功能性测试是指执行指定的工作流程,通过对一个系统的所有特性和功能都进行测试确保符合需求和规范。

系统功能性测试表如下表所示。

表6-1系统功能性测试表

编号

测试功能

测试内容

测试结果

1

用户登录

1.验证用户名与密码的正确性。

2.验证密码是否可见。

通过

2

首页展示

1.首页数据是否成功加载。

2.验证搜索功能的准确性。

3.验证是否可以异步加载。

4.验证导航栏按钮。

通过

3

个人信息修改

1.验证登录名是否可以正常更改。

2.验证联系方式是否可以更改。

3.验证收货地址可以正常修改。

4.验证密码是否可以修改。

通过

4

用户管理

1.用户是否可以生成。

2.用户信息是否准确。

通过

5

考勤管理

1.考勤信息是否与上传一致。

2.是否能完成信息修改。

3.验证信息修改。

通过

6

报名签到

1.能否正常提交报名签到。

2.处理报名签到。

通过

7

添加考勤

1.上传中考勤是否添加验证。

2.信息是否成功上传。

3.验证表单是否提交成功。

通过

    1. 系统合格性测试

集成测试后,所有的模块已经全部连接完毕,形成了一个完整的系统。合格性测试是在集成测试完毕后,进一步对系统进行综合性的检测。经过合格性测试,可以检查出系统是否符合系统的设计,能够完成需求的所有功能。本系统经过最后的测试,所有模块功能都能按预定要求工作。

    1. 测试结果

在实际测试中,经过一系列系统性的测试,使我们能够及时发现一些系统在设计中出现的疏忽和漏洞。经过严密的测试,不仅发现了模块内部的错误,也查找到模块连接后产生的错误。经过测试,对系统产生错误的地方进行优化、修改和完善,使得系统能够实现最初设计的基本功能。

">

网页制作属于哪个专业

海报在线制作免费网站、网站设计技术、永久使用、不限域名、什么是网络营销管理

搜狗推广效果好吗?

建工厂网站的公司_太原企业自助建站_代办理公司注册公司_关键词推广是什么意思

开发流程:

东莞常平招聘信息网络推广专员任职要求免费网上商城系统济南seo网站优化公司建e网3d模型免费下载移动网站系统专业团队为您服务的句子seo排名优化首页上海中小企业名录python网页版编辑器旅游网站的设计与制作html空间设计装修公司沈阳网站建设开发建筑设计网站app顺德建网站广东汕头疫情通报电商平台数据写一个网站需要什么技术界面设计案例图片个人主页链接怎么填写怎样免费推广网站高端品牌介绍有赞小程序官网设计公司品牌网站短网址生成算法网站素材图片如何制作手机版网页河北建设工程信息网官方网站在线定制手机壳网页美工设计是什么品牌宣传

猜你喜欢

  • 友情链接:
  • 软装设计培训班哪家好 产品设计考研 电子商务公司排行榜 广州市软件开发有限公司 网件路由器登录网址 电脑上免费制作ppt的软件