当前位置: 首页 > wzjs >正文

镇江网站关键字优化武汉seo招聘信息

镇江网站关键字优化,武汉seo招聘信息,wordpress网站主机名,wordpress 刷浏览量大家好,我是java1234_小锋老师,看到一个不错的微信小程序停车场预约管理系统(Springboot后端Vue3管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序停车场预约管理系统(Springboot后端Vue3管理端) Java毕业设计_哔哩…

大家好,我是java1234_小锋老师,看到一个不错的微信小程序停车场预约管理系统(Springboot后端+Vue3管理端)【论文+源码+SQL脚本】,分享下哈。

项目视频演示

【免费】微信小程序停车场预约管理系统(Springboot后端+Vue3管理端) Java毕业设计_哔哩哔哩_bilibili

项目介绍

当前社会,随着人们生活质量的提和思想观念的演进,加之经济全球化的推动,互联网技术正以前所未有的速度提社会综合发展的效能。这一技术正广泛渗透到各行各业,而传统管理方式已经不能对时间和地点的严格限制而显得力不从心。微信小程序作为一种创新解决方案,有效打破了传统的这些局限。

尤为重要的是,互联网与物联网技术的快速发展极大地促进了微信小程序在停车场预约小程序领域的应用当中,使之变得更加便捷、高效且智能化。在此情况下,本系统采用了先进的B/S架构模式,并借助微信开发者工具,运用Spring Boot框架构建。我们搭建了Java运行环境,部署了Tomcat服务器,并选择了MySQL这一轻量级数据库作为数据存储的核心。这些技术手段的综合运用,保证了系统的高效稳定运行,为用户带来了卓越的使用体验和高效的管理效能。

本系统旨在提升本行业的管理效率和信息化管理停车场预约小程序的设计与实现也为相关领域的研究提供了对照和参考。通过实践中的应用和优化,本系统可为用户放心使用

系统展示

部分代码

package com.cl.controller;import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.cl.annotation.IgnoreAuth;
import com.cl.annotation.SysLog;
import com.cl.entity.UsersEntity;
import com.cl.entity.view.UsersView;
import com.cl.service.TokenService;
import com.cl.service.UsersService;
import com.cl.utils.MPUtil;
import com.cl.utils.PageUtils;
import com.cl.utils.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.Date;
import java.util.Map;/*** 管理员* 后端接口** @author* @email* @date 2025-02-17 10:09:58*/
@RestController
@RequestMapping("/users")
public class UsersController {@Autowiredprivate UsersService usersService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UsersEntity u = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));if (u == null || !u.getPassword().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(u.getId(), username, "users", "管理员");return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody UsersEntity users) {//ValidatorUtils.validateEntity(users);UsersEntity u = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", users.getUsername()));if (u != null) {return R.error("注册用户已存在");}Long uId = new Date().getTime();users.setId(uId);users.setPassword(users.getPassword());usersService.insert(users);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request) {Long id = (Long) request.getSession().getAttribute("userId");return R.ok().put("data", usersService.selectView(new EntityWrapper<UsersEntity>().eq("id", id)));}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request) {UsersEntity u = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));if (u == null) {return R.error("账号不存在");}u.setPassword("123456");usersService.updateById(u);return R.ok("密码已重置为:123456");}/*** 后台列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, UsersEntity users,HttpServletRequest request) {EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();PageUtils page = usersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, users), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params, UsersEntity users,HttpServletRequest request) {EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();PageUtils page = usersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, users), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list(UsersEntity users) {EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();ew.allEq(MPUtil.allEQMapPre(users, "users"));return R.ok().put("data", usersService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(UsersEntity users) {EntityWrapper<UsersEntity> ew = new EntityWrapper<UsersEntity>();ew.allEq(MPUtil.allEQMapPre(users, "users"));UsersView usersView = usersService.selectView(ew);return R.ok("查询管理员成功").put("data", usersView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id) {UsersEntity users = usersService.selectById(id);users = usersService.selectView(new EntityWrapper<UsersEntity>().eq("id", id));return R.ok().put("data", users);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id) {UsersEntity users = usersService.selectById(id);users = usersService.selectView(new EntityWrapper<UsersEntity>().eq("id", id));return R.ok().put("data", users);}/*** 后端保存*/@RequestMapping("/save")@SysLog("新增管理员")public R save(@RequestBody UsersEntity users, HttpServletRequest request) {users.setId(new Date().getTime() + new Double(Math.floor(Math.random() * 1000)).longValue());//ValidatorUtils.validateEntity(users);UsersEntity u = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", users.getUsername()));if (u != null) {return R.error("用户已存在");}users.setId(new Date().getTime());users.setPassword(users.getPassword());usersService.insert(users);return R.ok();}/*** 前端保存*/@SysLog("新增管理员")@RequestMapping("/add")public R add(@RequestBody UsersEntity users, HttpServletRequest request) {users.setId(new Date().getTime() + new Double(Math.floor(Math.random() * 1000)).longValue());//ValidatorUtils.validateEntity(users);UsersEntity u = usersService.selectOne(new EntityWrapper<UsersEntity>().eq("username", users.getUsername()));if (u != null) {return R.error("用户已存在");}users.setId(new Date().getTime());users.setPassword(users.getPassword());usersService.insert(users);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactional@SysLog("修改管理员")public R update(@RequestBody UsersEntity users, HttpServletRequest request) {//ValidatorUtils.validateEntity(users);usersService.updateById(users);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")@SysLog("删除管理员")public R delete(@RequestBody Long[] ids) {usersService.deleteBatchIds(Arrays.asList(ids));return R.ok();}}
<template><div><div class="login_view"><div class="outTitle_view"><el-image class="outTitle_img" fit="cover"src="http://clfile.zggen.cn/20240919/adbb126f981544b496bf576a0105c615.png"></el-image><div class="outTilte">停车场预约小程序登录</div></div><el-form :model="loginForm" class="login_form"><div v-if="loginType==1" class="list_item"><div class="list_label">账号:</div><input v-model="loginForm.username" class="list_inp" name="username" placeholder="请输入账号"/></div><div v-if="loginType==1" class="list_item"><div class="list_label">密码:</div><input v-model="loginForm.password" class="list_inp" placeholder="请输入密码" type="password"@keydown.enter.native="handleLogin"/></div><div v-if="userList.length>1" class="list_type"><div class="list_label">用户类型:</div><el-select v-model="loginForm.role" placeholder="请选择用户类型"><el-option v-for="(item,index) in userList" :label="item.roleName" :value="item.roleName"></el-option></el-select></div><div v-if="loginType==1" class="remember_view"><el-checkbox v-model="rememberPassword" :false-label="false" :true-label="true" label="记住密码"size="large"/></div><div class="btn_view"><el-button v-if="loginType==1" class="login" type="success" @click="handleLogin">登录</el-button></div></el-form></div></div>
</template>
<script setup>
import {getCurrentInstance, onMounted, ref,} from "vue";
import {useStore} from 'vuex'const store = useStore()
const userList = ref([])
const menus = ref([])
const loginForm = ref({role: '',username: '',password: ''
})
const tableName = ref('')
const loginType = ref(1)
//是否记住密码
const rememberPassword = ref(true)
const context = getCurrentInstance()?.appContext.config.globalProperties;
const handleLogin = () => {if (!loginForm.value.username) {context?.$toolUtil.message('请输入用户名', 'error')return;}if (!loginForm.value.password) {context?.$toolUtil.message('请输入密码', 'error')return;}if (userList.value.length > 1) {if (!loginForm.value.role) {context?.$toolUtil.message('请选择角色', 'error')verifySlider.value.reset()return;}for (let i = 0; i < menus.value.length; i++) {if (menus.value[i].roleName == loginForm.value.role) {tableName.value = menus.value[i].pathName || menus.value[i].tableName;}}} else {tableName.value = userList.value[0].pathName || userList.value[0].tableName;loginForm.value.role = userList.value[0].roleName;}login()
}
const login = () => {context?.$http({url: `${tableName.value}/login?username=${loginForm.value.username}&password=${loginForm.value.password}`,method: 'post'}).then(res => {//是否保存当前账号密码至缓存if (rememberPassword.value) {let loginForm1 = JSON.parse(JSON.stringify(loginForm.value))delete loginForm1.codecontext?.$toolUtil.storageSet("loginForm", JSON.stringify(loginForm1));} else {context?.$toolUtil.storageRemove("loginForm")}context?.$toolUtil.storageSet("Token", res.data.token);context?.$toolUtil.storageSet("role", loginForm.value.role);context?.$toolUtil.storageSet("sessionTable", tableName.value);context?.$toolUtil.storageSet("adminName", loginForm.value.username);store.dispatch('user/getSession')	//vuex中获取用户信息并保存context?.$router.push('/')}, err => {})
}
//获取菜单
const getMenu = () => {let params = {page: 1,limit: 1,sort: 'id',}context?.$http({url: "menu/list",method: "get",params: params}).then(res => {menus.value = JSON.parse(res.data.data.list[0].menujson)for (let i = 0; i < menus.value.length; i++) {if (menus.value[i].hasBackLogin == '是') {userList.value.push(menus.value[i])}}//获取缓存是否有保存的账号密码let form = context?.$toolUtil.storageGet('loginForm')if (form) {} else {loginForm.value.role = userList.value[0].roleName}context?.$toolUtil.storageSet("menus", JSON.stringify(menus.value));})
}
//初始化
const init = () => {getMenu();//获取缓存是否有保存的账号密码let form = context?.$toolUtil.storageGet('loginForm')if (form) {loginForm.value = JSON.parse(form)}
}
onMounted(() => {init()})
</script><style lang="scss" scoped>
.login_view {background-image: url("http://clfile.zggen.cn/20240921/fb6feddfbb544df593bbf3240e3437db.webp");// 标题盒子.outTitle_view {// 标题图片.outTitle_img {}.outTilte {}}// 表单盒子.login_form {}// item盒子.list_item {// label.list_label {}// 输入框.list_inp {}}.list_type {.list_label {}// 下拉框样式:deep(.el-select) {//去掉默认样式.select-trigger {height: 100%;.el-input {height: 100%;}}}}// 记住密码样式.remember_view {// 未选中样式:deep(.el-checkbox) {// 复选框.el-checkbox__inner {}// 提示文字.el-checkbox__label {}}// 选中样式:deep(.is-checked) {//复选框.el-checkbox__inner {}// 提示文字.el-checkbox__label {}}}// 按钮盒子.btn_view {// 登录.login {}}
}</style>
<style>
.login_view {min-height: 100vh;position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center;background-position: center center;background-size: 100% 100% !important;background-repeat: no-repeat;background-attachment: fixed;background-origin: initial;background-clip: initial;background-color: initial;
}.login_view .outTitle_view img.el-image__inner {width: 78px;height: 78px;
}.login_view .outTilte {color: #FFFFFF;line-height: 26px;font-size: 26px;margin-top: 30px;
}.login_view .outTitle_view {text-align: center;
}.login_view .login_form {width: 710px;background: #F6F6F6;border-radius: 60px 60px 0px 0px;margin-top: 40px;padding: 80px 80px 30px;display: flex;flex-wrap: wrap;
}.login_view .list_item {background: #fff;display: flex;padding: 0;width: 100%;height: 50px;margin-bottom: 40px;border-radius: 5px;order: 1;
}.login_view .list_label {line-height: 50px;position: relative;margin-right: 10px;width: 90px;flex-shrink: 0;text-align: center;
}.login_view input.list_inp {height: 50px;flex: 1;border: none;
}.login_view .list_label:after, .login_view .listCode_label:after {content: '';position: absolute;right: 0;height: 30px;width: 2px;background: linear-gradient(180deg, #FFFFFF 0%, #6F9867 46%, rgba(111, 152, 103, 0) 100%);top: 10px;
}.login_view .list_type {width: 100%;background: #fff;height: 50px;display: flex;padding: 0;margin-bottom: 40px;border-radius: 5px;order: 2;
}.login_view .list_type .el-select {flex: 1;
}.login_view .listCode_view {width: 100%;height: 50px;display: flex;padding: 0;margin-bottom: 40px;order: 3;
}.login_view .listCode_label {line-height: 50px;width: 90px;text-align: center;position: relative;background: #fff;border-radius: 5px 0 0 5px;
}.login_view input.listCode_inp {background: #fff;border: none;padding-left: 10px;width: 250px;margin-right: 10px;border-radius: 0 5px 5px 0;
}.login_view .listCode_btn {flex: 1;background: var(--theme);text-align: center;line-height: 50px;border-radius: 5px;
}.login_view .btn_view {width: 100%;display: flex;flex-wrap: wrap;row-gap: 20px;justify-content: center;column-gap: 20px;order: 4;
}.login_view .el-button.login {background: var(--theme);border: none;width: 100%;color: #fff;height: 50px;order: 1;
}.login_view .remember_view {display: none;
}.login_view .el-button.register {order: 3;border: 1px solid var(--theme);background: #fff;color: var(--theme);height: 50px;width: 122px;margin-left: 0;
}.login_view .el-button.forget {width: 194px;order: 20;background: #DADEDA;height: 50px;border-radius: 5px;color: var(--theme);margin: 0;
}.login_view .face {text-align: center;width: 100%;margin-top: 30px;font-size: 16px;order: 4;
}.login_view .el-button {font-size: 16px;
}.login_view .listCode_btn span {font-size: 22px !important;
}.login_view .el-select, .login_view .el-input {border: none;
}
</style>

源码下载

链接:https://pan.baidu.com/s/1hHVU7anVoxqJUeBDe5lcoA
提取码:1234

http://www.dtcms.com/wzjs/333436.html

相关文章:

  • 杭州 网站建设公司seo工资待遇 seo工资多少
  • 百度网盘可以做网站吗链接提取视频的网站
  • 做网站找什么公司工作厦门关键词排名seo
  • 电商设计网站模板做网页
  • nginx 一个独立ip 建立2个独立网站 2个域名南京网站设计
  • 营销型网站源码三亚百度推广公司
  • 自己买服务器做视频网站网络推广网站排行榜
  • wordpress 建立第二个网站互联网营销师题库
  • 专业做网站排名多少钱淄博做网站的公司
  • 前端搜索网站引擎怎么做网站关键词优化的步骤和过程
  • 临沂企业做网站torrent种子猫
  • 给别人做网站的话术app网络推广公司
  • 深圳做h5网站网站优化招商
  • wordpress如何做seo星乐seo网站关键词排名优化
  • 株洲网站关键词优化深圳网络推广seo软件
  • 网站开发出来有后台么免费制作网站app
  • 横沥镇网站建设网站搜索引擎优化情况怎么写
  • 珠宝类网站建设关键词优化seo优化
  • wordpress默认播放器徐州新站百度快照优化
  • 亚马逊站外deal网站seo排名优化怎么样
  • 网站建设的市场分析seo外包多少钱
  • 代理游戏网站google play下载安卓
  • nas云存储做视频网站足球联赛排名
  • wordpress本地写文章seo点击优化
  • 淘宝网站seo服务seo服务销售招聘
  • wordpress 片刻主题福州seo按天收费
  • 农产品网站建设结构潍坊住房公积金
  • 厦门网红打卡地优化营商环境的措施建议
  • 什么是网站建设的三次点击原则新闻类软文营销案例
  • 做网站搜索如何显示官网软文营销的宗旨是什么