基于javaweb+mysql的社区疫情防控人员流动管理系统

基于javaweb+mysql的社区疫情防控人员流动管理系统

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

住户、高风险住户、住户出入、访客出入、体温录入、用户等管理

技术框架

SpringBoot SpringMVC MyBatis Shiro Thymeleaf HTML JavaScript Layui……


                                                </div>
                                            </div>
                                        </div>
                                        <div class="layui-col-xs6">
                                            <div class="panel layui-bg-number">
                                                <div class="panel-body">
                                                    <div class="panel-title">
                                                        <span class="label pull-right layui-bg-green">实时</span>
                                                        <h5>地址统计</h5>
                                                    </div>
                                                    <div class="panel-content">
                                                        <h1 class="no-margins" id="addCount"></h1>
                                                        <small>当前地址总记录数</small>
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                var index = layer.open({
                    title: '添加登记信息',
                    type: 2,
                    shade: 0.2,
                    maxmin: true,
                    shadeClose: true,
                    area: ['50%', '90%'],
                    offset: 'auto',
                    content: '',
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
            } else if (obj.event === 'delete') {  // 监听删除操作,获取表格中选中的行数据
    </select>

    <select id="queryVisitorById" parameterType="integer" resultType="com.demo.dto.VistorDto">
        select vis_id, add_id, vis_name, vis_phone, vis_remark
        from tb_visitor
        where vis_id = #{visId}
          and deleted = 0
    </select>

    <insert id="addVistor" parameterType="com.demo.dto.VistorDto">

        insert into tb_visitor(add_id, vis_name, vis_phone, vis_remark)
        values (#{addId}, #{visName}, #{visPhone}, #{visRemark})

    </insert>

    <update id="updateVistor" parameterType="com.demo.dto.VistorDto">
        update tb_visitor v left join tb_address a
        on v.add_id = a.add_id and v.deleted = 0
            set
                v.vis_id = #{visId},
                v.add_id = #{addId},
                v.vis_name = #{visName},
                v.vis_phone = #{visPhone},
                v.vis_remark = #{visRemark},
                a.add_name =#{addName},
                a.add_house = #{addHouse},

        <script type="text/html" id="currentTableBar">
            <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="edit">编辑</a>
            <a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
        </script>

    </div>
</div>
<script>
    layui.use(['form', 'table','miniPage','element','laydate'], function () {
        var $ = layui.jquery,
            form = layui.form,
            table = layui.table,
            laydate = layui.laydate,
            miniPage = layui.miniPage;

        table.render({
            //渲染的表格对应ID
        return residentMapper.queryResPeril(page);
    }

    @Override
    public Result queryResCountByDate() {
        String beginTime = null;
        String endTime = null;
        int size = 0;
        Date date = new Date();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        HashMap<String, HashMap<String, Object>> map = new HashMap<>();
        HashMap<String, Object> dataMap = new HashMap<>();
        HashMap<String, Object> dateMap = new HashMap<>();
        ArrayList<Integer> list = new ArrayList<>();
        ArrayList<String> dateList = new ArrayList<>();
        calendar.add(Calendar.DATE, -6);
        beginTime = dateFormat.format(calendar.getTime());
        calendar.add(Calendar.DATE, 1);
        endTime = dateFormat.format(calendar.getTime());
        size = residentMapper.queryResCountByDate(beginTime, endTime).size();
        dateList.add(beginTime);
        list.add(size);
        if (userMapper.queryUserByAccount(account).getUserPhone().equals(userPhone) ){
            //生成验证码
            /*GenerateWord generateWord = new GenerateWord();
            verCode = generateWord.RandomNum();*/
            String verCode = RandomStringUtils.randomNumeric(4);

            HashMap<String, Object> map = new HashMap<>();
            map.put("code",verCode);
            System.out.println(verCode);
            //将生产的验证码存放到数据库中
            VercodeDto vercodeDto = new VercodeDto();
            vercodeDto.setAccount(account);
            vercodeDto.setVerCode(verCode);
            vercodeMapper.insert(vercodeDto);
            /*Boolean message = sendSms.sendMessage(userPhone,map);
            if (message){
            <tip>地址编号不可修改!</tip>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">用户账号</label>
        <div class="layui-input-block">
            <input type="text" readonly="readonly" name="account" id="account"   placeholder="请输入用户账号" autocomplete="off" class="layui-input">
            <tip>用户账号不可修改!</tip>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">密码</label>
        <div class="layui-input-block">
            <input type="password" name="password" id="password" lay-verify="required"  placeholder="请输入密码" autocomplete="off" class="layui-input">
        </div>
    </div>


    <div class="layui-form-item">
        <label class="layui-form-label required">访客姓名</label>
        <div class="layui-input-block">
            <input type="text" name="visName"  lay-verify="required" lay-reqtext="姓名不能为空" placeholder="请输入姓名" value="" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label required">联系方式</label>
        <div class="layui-input-block">
            <input type="text" name="visPhone"  lay-verify="required|phone" lay-reqtext="手机号不能为空" placeholder="请输入联系方式" value="" class="layui-input">
        </div>
    </div>
    <div class="layui-form-item" id="resId">
        <label class="layui-form-label required">小区名称</label>
        <div class="layui-input-block">
            <input type="text" name="addName"    lay-reqtext="小区名称不能为空" placeholder="请输入小区名称" value="" class="layui-input">
        </div>
    </div>

    <div class="layui-form-item" style="padding-left: 40px">
        <div class="layui-inline">
                        layer.msg("修改成功!", {
                            icon: 6,
                            time: 300
                        }, function () {
                            parent.window.location.reload();//刷新页面
                            var iframeIndex = parent.layer.getFrameIndex(window.name);
                            parent.layer.close(iframeIndex)
                        });
                    } else {
                        layer.msg("修改失败!", {icon: 2});
                    }
                }, error: function (data) {
                    layer.close(loadIndex);
                    layer.msg(data.responseJSON.msg, {icon: 2});
                }
            });
        ArrayList<TableFill> list = new ArrayList<>();
        list.add(creatTime);
        list.add(updateTime);
        strategy.setTableFillList(list);
//        驼峰命名
        strategy.setRestControllerStyle(true);
        strategy.setControllerMappingHyphenStyle(true);
        mpg.setStrategy(strategy);

        mpg.execute();//执行
    }
}
package com.demo.controller;


import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.demo.dto.ResidentDto;
import com.demo.service.ResidentService;
import com.demo.utils.JsonObject;
import com.demo.utils.Result;
    public RecordDto queryRecordById(String recId) {
        return recordMapper.queryRecordById(recId);
    }

    @Override
    public Result updateRecord(RecordDto recordDto) {
        //判断登记者类型,0为住户,1为访客
        if (recordDto.getRecPerType() == 0) {
            recordMapper.updateRecordRes(recordDto);
            return Result.ok("更新登记信息成功!");
        } else {
            recordMapper.updateRecordVis(recordDto);
            return Result.ok("更新登记信息成功!");
        }
    }

    @Override
    public Result deleteRecord(Integer[] ids) {
        //删除ID是否为空
        if (ids.length > 0) {
    }


    //整合thymeleaf shiro标签
    @Bean(name = "shiroDialect")
    public ShiroDialect shiroDialect() {
        return new ShiroDialect();
    }


}
package com.demo.service.impl;



        table.on('tool(currentTableFilter)', function (obj) {
            var data = obj.data;
            if (obj.event === 'edit') {
                //使用弹出层
                layer.open({
                    title: '修改信息',
                    type: 1,
                    shade: 0.0,
                    maxmin: true,
                    shadeClose: true,
                    area: ['50%', '80%'],
                    offset: ['100px', '20%'],
                    content: $("#updateRec")
                });
                if (data.recPerType == 0) {
                    document.getElementById("addHouse").style.display = "none";
                    document.getElementById("addUnit").style.display = "none";
                    setFormValue(obj, data);
                } else {
                    setFormValue(obj, data);
                }
                                <label class="layui-form-label">单元号</label>
                                <div class="layui-input-inline">
                                    <input type="text" name="addUnit" placeholder="搜索的单元号" autocomplete="off"
                                           class="layui-input">
                                </div>
                            </div>
                        </div>
                        <div class="layui-inline">
                            <button type="submit" class="layui-btn layui-btn-primary" lay-submit
                                    lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索
                            </button>
                        </div>


                    </div>

                </form>

            </div>
        </fieldset>

        <script type="text/html" id="toolbarDemo">
            <div class="layui-btn-container">
                <button type="submit" class="layui-btn layui-btn-sm" lay-submit lay-filter="data-all"><i
                        class="layui-icon layui-icon-home"></i>全部住户
            return Result.fail(updateUserPwd);
        }
    }

    @PostMapping("/infoSubmit")
    @ResponseBody
    public Result infoSubmit(UserDto userDto) {
        Boolean info = userService.updateUserInfo(userDto);
        System.out.println(info);
        if (info) {
            return Result.ok();
        } else {
            return Result.fail("保存个人信息失败!");
        }

    }

    //    用户注销
    @ApiOperation("用户注销方法")
/**
 * @creat 2021-01
 * <p>
 * 登录控制器
 */
@Slf4j
@Controller
@RequestMapping("/User")
@Api(value = "用户登录模块,进行个人信息管理", tags = "用户登录相关信息接口")
public class LoginController {
    @Autowired
    private UserService userService;

    @Resource

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值