基于java+ssm+vue的个人行政复议在线预约系统微信小程序

项目介绍

随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信APP被用户普遍使用,为方便用户能够可以随时进行个人行政复议在线预约系统微信小程序数据信息理,特开发了基于微信小程序的个人行政复议在线预约系统微信小程序管理系统。

个人行政复议在线预约系统微信小程序的设计主要是对系统所要实现的功能进行详细考虑,确定所要实现的功能后进行界面的设计,在这中间还要考虑如何可以更好的将功能及页面进行很好的结合,方便用户可以很容易明了的找到自己所需要的信息,还有系统平台后期的可操作性,通过对信息内容的详细了解进行技术的开发。

个人行政复议在线预约系统微信小程序的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与个人行政复议在线预约系统管理的实际需求相结合,讨论了基于微信开发的个人行政复议在线预约系统管理小程序的使用。
在这里插入图片描述

开发环境

编程语言:Java
数据库 :Mysql
系统架构:B/S
后端框架:SSM
编译工具:idea或者eclipse,微信开发者工具,jdk1.8,maven
支持定做:java/php/python/android/小程序vue/爬虫/c#/asp.net

系统实现

5.1 管理员功能实现
管理员通过登录窗口,进行在线填写自己的用户名和密码,信息编辑完成后核对信息无误后进行选择登录,系统核对管理员所输入的账号信息是否准确,核对信息准确无误后系统进入到操作界面,如图5-1所示。
在这里插入图片描述

图5-1登录界面图

管理员通过登录进入到系统操作界面后,可以根据需求对个人中心、用户管理、在线预约管理、管理员管理、系统管理等模块进行管理维护操作。
用户管理,管理员通过列表进行在线查看用户名、姓名、密码、性别、年龄、联系电话、电子邮箱等信息,进行查看详情、修改或删除操作,并进行新增用户操作,如图5-2所示。
在这里插入图片描述

图5-2用户管理界面图

在线预约管理:管理员通过列表可以获取预约标题、预约类型、预约图片、材料内容、申请时间、材料附件、办理地点、用户名、姓名、手机、审核回复、审核状态、审核等信息,并且根据需求信息进行查看详情或审核在线预约等操作,如图5-3所示。
在这里插入图片描述

图5-3在线预约界面图

管理员管理:管理员通过列表可以获取用户名、密码、角色等信息,进行查看详情或修改、或删除操作,并通过新增进行添加管理员信息,如图5-4所示。

在这里插入图片描述

图5-4管理员管理界面图

公告管理:管理员通过列表可以获取标题、简介、图片等信息,并且根据需求信息进行查看详情、修改或删除等操作,如图5-5所示。
在这里插入图片描述

图5-5公告信息界面图

客服中心:分:管理员通过列表可以获取新消息、状态等信息,并且根据需求信息进行查看消息并进行回复操作,如图5-6所示。
在这里插入图片描述

图5-6客服中心界面图

5.2用户功能模块
用户进入个人行政复议在线预约系统微信小程序,如果用户还不是系统会员,则需要在线注册,用户名、密码、姓名、年龄、电话、昵称等信息,信息输入完成后,核对所输入的信息是否有误,信息准确无误选择注册,如图5-7所示。可以用户登录,通过填写用户名、密码,信息输入完成后选择登录,登录完成后进入到系统主界面,如果5-8所示。
在这里插入图片描述

图5-7用户注册界面
在这里插入图片描述

图5-8用户登录界面

用户通过登录进入到系统界面,可以查看首页、在线预约、我的等功能模块,进行相对应操作,用户通过首页可以进行查看公告信息等,进行查看公告的详细信息,如图5-9所示。
在这里插入图片描述

图5-9首页界面

用户通过添加公告页面,可以进行输入标题、简介、内容等公告信息,进行添加公告操作。如图5-10所示。
在这里插入图片描述

图5-10添加公告界面

用户通过点击预约可以进行输入预约标题、预约类型、预约图片、材料内容、申请时间、材料附件、办理地点、用户名、姓名、手机、等信息,进行提交预约操作,如图5-11所示。
在这里插入图片描述

图5-11预约界面

我的:通过我的页面可以进行查看我的在线预约和客服中心两个子模块,如图5-12所示。通过点击在线预约可以进行查看预约信息,并进行修改、删除或进行新增预约操作,如图5-13所示。客服中心:通过客服中心可以进行在线和客服进行交流,如图5-14所示。

在这里插入图片描述

图5-12我的界面
在这里插入图片描述

图5-13我的预约界面
在这里插入图片描述

图5-14客房中心界面图

核心代码

package com.controller;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;

import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;

import com.entity.ZaixianyuyueEntity;
import com.entity.view.ZaixianyuyueView;

import com.service.ZaixianyuyueService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;


/**
 * 在线预约
 * 后端接口
 * @author 
 * @email 
 * @date 
 */
@RestController
@RequestMapping("/zaixianyuyue")
public class ZaixianyuyueController {
    @Autowired
    private ZaixianyuyueService zaixianyuyueService;
    


    /**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ZaixianyuyueEntity zaixianyuyue, HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zaixianyuyue.setYonghuming((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZaixianyuyueEntity> ew = new EntityWrapper<ZaixianyuyueEntity>();
		PageUtils page = zaixianyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zaixianyuyue), params), params));
        return R.ok().put("data", page);
    }
    
    /**
     * 前端列表
     */
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ZaixianyuyueEntity zaixianyuyue, HttpServletRequest request){

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			zaixianyuyue.setYonghuming((String)request.getSession().getAttribute("username"));
		}
        EntityWrapper<ZaixianyuyueEntity> ew = new EntityWrapper<ZaixianyuyueEntity>();
		PageUtils page = zaixianyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zaixianyuyue), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( ZaixianyuyueEntity zaixianyuyue){
       	EntityWrapper<ZaixianyuyueEntity> ew = new EntityWrapper<ZaixianyuyueEntity>();
      	ew.allEq(MPUtil.allEQMapPre( zaixianyuyue, "zaixianyuyue")); 
        return R.ok().put("data", zaixianyuyueService.selectListView(ew));
    }

	 /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(ZaixianyuyueEntity zaixianyuyue){
        EntityWrapper< ZaixianyuyueEntity> ew = new EntityWrapper< ZaixianyuyueEntity>();
 		ew.allEq(MPUtil.allEQMapPre( zaixianyuyue, "zaixianyuyue")); 
		ZaixianyuyueView zaixianyuyueView =  zaixianyuyueService.selectView(ew);
		return R.ok("查询在线预约成功").put("data", zaixianyuyueView);
    }
	
    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        ZaixianyuyueEntity zaixianyuyue = zaixianyuyueService.selectById(id);
        return R.ok().put("data", zaixianyuyue);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        ZaixianyuyueEntity zaixianyuyue = zaixianyuyueService.selectById(id);
        return R.ok().put("data", zaixianyuyue);
    }
    



    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody ZaixianyuyueEntity zaixianyuyue, HttpServletRequest request){
    	zaixianyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zaixianyuyue);

        zaixianyuyueService.insert(zaixianyuyue);
        return R.ok();
    }
    
    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody ZaixianyuyueEntity zaixianyuyue, HttpServletRequest request){
    	zaixianyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
    	//ValidatorUtils.validateEntity(zaixianyuyue);
    	zaixianyuyue.setUserid((Long)request.getSession().getAttribute("userId"));

        zaixianyuyueService.insert(zaixianyuyue);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ZaixianyuyueEntity zaixianyuyue, HttpServletRequest request){
        //ValidatorUtils.validateEntity(zaixianyuyue);
        zaixianyuyueService.updateById(zaixianyuyue);//全部更新
        return R.ok();
    }
    

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        zaixianyuyueService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
    
    /**
     * 提醒接口
     */
	@RequestMapping("/remind/{columnName}/{type}")
	public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, 
						 @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
		map.put("column", columnName);
		map.put("type", type);
		
		if(type.equals("2")) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar c = Calendar.getInstance();
			Date remindStartDate = null;
			Date remindEndDate = null;
			if(map.get("remindstart")!=null) {
				Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
				c.setTime(new Date()); 
				c.add(Calendar.DAY_OF_MONTH,remindStart);
				remindStartDate = c.getTime();
				map.put("remindstart", sdf.format(remindStartDate));
			}
			if(map.get("remindend")!=null) {
				Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
				c.setTime(new Date());
				c.add(Calendar.DAY_OF_MONTH,remindEnd);
				remindEndDate = c.getTime();
				map.put("remindend", sdf.format(remindEndDate));
			}
		}
		
		Wrapper<ZaixianyuyueEntity> wrapper = new EntityWrapper<ZaixianyuyueEntity>();
		if(map.get("remindstart")!=null) {
			wrapper.ge(columnName, map.get("remindstart"));
		}
		if(map.get("remindend")!=null) {
			wrapper.le(columnName, map.get("remindend"));
		}

		String tableName = request.getSession().getAttribute("tableName").toString();
		if(tableName.equals("yonghu")) {
			wrapper.eq("yonghuming", (String)request.getSession().getAttribute("username"));
		}

		int count = zaixianyuyueService.selectCount(wrapper);
		return R.ok().put("count", count);
	}
	


}

论文参考

在这里插入图片描述

目 录
摘 要 I
Abstract II
第一章 绪 论 5
1.1选题背景 5
1.2研究现状 5
1.3研究内容 6
第二章 开发工具及关键技术介绍 7
2.1 JAVA技术 7
2.2 Mysql数据库 7
2.3 B/S结构 8
第三章 系统分析 9
3.1需求分析 9
3.2可行性分析 9
3.2.1技术可行性:技术背景 9
3.2.2经济可行性 10
3.2.3操作可行性: 10
3.3性能分析 10
3.4系统操作流程 11
3.4.1用户登录流程 11
3.4.2信息添加流程 12
3.4.3信息删除流程 12
第四章 系统设计与实现 14
4.1系统架构设计 14
4.2开发流程设计 14
4.3数据库设计 15
4.3.1实体ER图 15
4.3.2数据表 17
第五章 系统实现 20
5.1 管理员功能实现 20
5.2用户功能模块 23
第六章 系统的测试 39
6.1 测试目的 39
6.2 测试方案设计 39
6.2.1 测试策略 39
6.2.2 测试分析 40
6.3 测试结果 40
结 论 41
参考文献 42
致 谢 43

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

q_2781179521

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值