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

ssm营业厅宽带系统源码和论文

ssm简易版营业厅宽带系统源码和论文018

 开发工具:idea 
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:ssm 

摘  要

现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本营业厅宽带系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此营业厅宽带系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了健身房基础数据的管理,员工的管理,公告信息的发布等功能。营业厅宽带系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。

关键词:营业厅宽带系统;SSM框架;Mysql;自动化

package com.controller;import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.http.HttpServletRequest;import com.entity.KuandaileixingEntity;
import com.entity.YonghuxinxiEntity;
import com.service.KuandaileixingService;
import com.service.YonghuxinxiService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
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.entity.KuandaixinxiEntity;import com.service.KuandaixinxiService;
import com.utils.PageUtils;
import com.utils.R;/*** 宽带信息表* 后端接口* @author* @email* @date 2021-02-03
*/
@RestController
@Controller
@RequestMapping("/kuandaixinxi")
public class KuandaixinxiController {private static final Logger logger = LoggerFactory.getLogger(KuandaixinxiController.class);@Autowiredprivate KuandaixinxiService kuandaixinxiService;@Autowiredprivate YonghuxinxiService yonghuxinxiService;@Autowiredprivate KuandaileixingService kuandaileixingService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("Controller:"+this.getClass().getName()+",page方法");Object role = request.getSession().getAttribute("role");PageUtils page = null;if(role.equals("用户")){params.put("yh",request.getSession().getAttribute("userId"));page = kuandaixinxiService.queryPage(params);}else{page = kuandaixinxiService.queryPage(params);}return R.ok().put("data", page);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){logger.debug("Controller:"+this.getClass().getName()+",info方法");KuandaixinxiEntity kuandaixinxi = kuandaixinxiService.selectById(id);if(kuandaixinxi!=null){return R.ok().put("data", kuandaixinxi);}else {return R.error(511,"查不到数据");}}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody KuandaixinxiEntity kuandaixinxi, HttpServletRequest request){logger.debug("Controller:"+this.getClass().getName()+",save");Wrapper<KuandaixinxiEntity> queryWrapper = new EntityWrapper<KuandaixinxiEntity>().eq("yh_types", kuandaixinxi.getYhTypes()).eq("kd_types", kuandaixinxi.getKdTypes());logger.info("sql语句:"+queryWrapper.getSqlSegment());KuandaixinxiEntity kuandaixinxiEntity = kuandaixinxiService.selectOne(queryWrapper);kuandaixinxi.setCreateTime(new Date());kuandaixinxi.setMariadbTypes(2);YonghuxinxiEntity yonghuxinxi = yonghuxinxiService.selectById(kuandaixinxi.getYhTypes());KuandaileixingEntity kuandaileixing = kuandaileixingService.selectById(kuandaixinxi.getKdTypes());if(yonghuxinxi.getBalance() == null){yonghuxinxi.setBalance(0.0);}Double balance = yonghuxinxi.getBalance()-kuandaileixing.getMoney();if(balance != null && balance >= 0){yonghuxinxi.setBalance(balance);yonghuxinxiService.updateById(yonghuxinxi);}else{return R.error("余额不足请充值");}if(kuandaixinxiEntity==null){kuandaixinxiService.insert(kuandaixinxi);return R.ok();}else {return R.error(511,"表中有相同数据");}}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody KuandaixinxiEntity kuandaixinxi, HttpServletRequest request){logger.debug("Controller:"+this.getClass().getName()+",update");//根据字段查询是否有相同数据Wrapper<KuandaixinxiEntity> queryWrapper = new EntityWrapper<KuandaixinxiEntity>().notIn("id",kuandaixinxi.getId()).eq("yh_types", kuandaixinxi.getYhTypes()).eq("kd_types", kuandaixinxi.getKdTypes());logger.info("sql语句:"+queryWrapper.getSqlSegment());KuandaixinxiEntity kuandaixinxiEntity = kuandaixinxiService.selectOne(queryWrapper);if(kuandaixinxiEntity==null){kuandaixinxiService.updateById(kuandaixinxi);//根据id更新return R.ok();}else {return R.error(511,"表中有相同数据");}}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){logger.debug("Controller:"+this.getClass().getName()+",delete");kuandaixinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 删除*/@RequestMapping("/removeUser")public R removeUser(@RequestBody Integer id){KuandaixinxiEntity kuandaixinxi = kuandaixinxiService.selectById(id);if(kuandaixinxi.getMariadbTypes()!=3){kuandaixinxi.setMariadbTypes(3);}else{return R.error("请不要重复点击拆机按钮");}kuandaixinxiService.updateById(kuandaixinxi);return R.ok();}/*** 更换状态为已安装*/@RequestMapping("/stutat")public R stutat(@RequestBody Integer id){KuandaixinxiEntity kuandaixinxi = kuandaixinxiService.selectById(id);if(kuandaixinxi.getMariadbTypes()!=1){kuandaixinxi.setMariadbTypes(1);}else{return R.error("请不要重复点击更换状态按钮");}kuandaixinxiService.updateById(kuandaixinxi);return R.ok();}
}

 

相关文章:

ssm营业厅宽带系统源码和论文

ssm简易版营业厅宽带系统源码和论文018 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c…...

CSS:background 复合属性详解(用法 + 例子 + 效果)

目录 background 复合属性background-color 背景颜色&#xff08;纯&#xff09;background-image 背景图片 或者 渐变颜色background-repeat 背景是否重复background-size 设置图片大小background-position 设置背景图片显示位置background-attachment 设置背景图片是否随页面…...

django中实现事务/django实现悲观锁乐观锁案例

django中实现事务的几种方式 # 1 全局开启事务---> 全局开启事务&#xff0c;绑定的是http请求响应整个过程DATABASES {default: {#全局开启事务&#xff0c;绑定的是http请求响应整个过程ATOMIC_REQUESTS: True, }}from django.db import transaction# 局部禁用事务trans…...

自动驾驶技术:改变交通出行的未来

自动驾驶技术&#xff0c;这个让人充满期待的技术&#xff0c;正在改变我们的交通方式&#xff0c;带来一种全新的出行体验。它可以让汽车、无人机等交通工具像人类驾驶一样自主行驶&#xff0c;通过人工智能、视觉计算、雷达、监控装置和全球定位系统协同合作&#xff0c;实现…...

5.利用matlab完成 符号矩阵的转置和 符号方阵的幂运算(matlab程序)

1.简述 Matlab符号运算中的矩阵转置 转置向量或矩阵 B A. B transpose(A) 说明 B A. 返回 A 的非共轭转置&#xff0c;即每个元素的行和列索引都会互换。如果 A 包含复数元素&#xff0c;则 A. 不会影响虚部符号。例如&#xff0c;如果 A(3,2) 是 12i 且 B A.&#xff0…...

为什么要自动化Web测试?

Web自动化是更快地实现所需结果的较佳方式。自动化测试在市场上引起了巨大的轰动。此软件测试过程可以让您使用正确的自动化测试工具和技术集自动执行测试过程。我们执行它是为了检查软件应用程序是否具有完全按照我们希望它执行的方式执行的勇气。 比以往更快地获得反馈 自动化…...

Spark_RDD的容错机制_数据丢失恢复

我们都知道Spark是弹性分布式数据集&#xff0c;数据会存储在多台机器上&#xff0c;那么如何确保在分布式数据计算中&#xff0c;数据不丢失就是其中的关键的部分。本文主要讲解一下Spark中的容错机制。 Spark 主要提供了3个层面的数据容错机制。分别是 调度层&#xff0c;RDD…...

VB+SQL期刊信息管理系统设计与实现

摘 要 本次毕业设计课题为“期刊信息管理系统”,该系统在正常运营中总是面对大量的读者信息、期刊信息以及两者相互作用产生的借刊信息,还刊信息。因此需要对读者资源、期刊资源、借刊信息、还刊信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。 此次毕…...

如何在iPhone手机上修改手机定位和模拟导航?

如何在iPhone手机上修改手机定位和模拟导航&#xff1f; English 首先&#xff0c;你需要在Mac电脑上下载安装 Location Simulator/定位模拟工具 和 Runner 这两款应用程序。 完成安装后&#xff0c;打开软件&#xff0c;并用USB连接手机设备 修改iPhone手机定位和模拟导航 …...

Linux 当fork在for循环中的问题

以下代码会打印几个"A"&#xff1f; 例1.代码如下&#xff1a; int main(int argc, char* argv[],char* envp[]) { for(int i 0;i < 2; i ) { fork(); printf("A\n"); } exit(0); } 代码分析&#xff1a; //父进程for(int i …...

推断统计中非参数检验之卡方检验、列联表分析和游程检验

一、&#xff08;卡方检验&#xff09;&#xff1a;赛马比赛的赛道会影响成绩吗 这里以一个实例赛马比赛的赛道是否会影响成绩为例&#xff0c;实际就是检验获胜频数与期望频数之间有无显著性差异。 import pandas as pdstep1 调用包 from scipy.stats import chisquare impor…...

AI社交来了,百度、Soul“双向奔赴”

随着科技的飞速进步和迅猛发展&#xff0c;AI技术已经开始渗透到教育、工作、社交、娱乐和健康多个领域&#xff0c;并为人们生活中的多个场景带来了诸多的创新和可能性。甚至可以说&#xff0c;AI技术已经深刻地介入到了我们日常生活的方方面面&#xff0c;让我们的生活方式发…...

【【verilog 典型电路设计之加法器树乘法器】】

verilog 典型电路设计之加法器树乘法器 加法器树乘法器 加法器树乘法器的设计思想是“移位后加”&#xff0c;并且加法运算采用加法器树的形式。乘法运算的过程是&#xff0c;被乘数与乘数的每一位相乘并且乘以相应的权值&#xff0c;最后将所得的结果相加&#xff0c;便得到了…...

选择最适合自己的NIO, 一探流技术

目录 一、Channel1、FileChannel代码示例2、DatagramChannel代码示例3、SocketChannel 和 ServerSocketChannel代码示例 二、Buffer1、ByteBuffer示例代码2、CharBuffer示例代码3、ShortBuffer、IntBuffer、LongBuffer、FloatBuffer、DoubleBuffer 等示例代码 三、Selector1、S…...

智能家居(3)---socket网络控制线程封装

封装socket网络线程实现对智能家居中各种灯光的控制 main.Pro(主函数) #include <stdio.h> #include "controlDevice.h" #include "inputCommand.h" #include <pthread.h>struct Devices *pdeviceHead NULL; //设备工厂链表…...

ubuntu 安装 emscripten 时 install latest 安装报错问题

学习官网参考&#xff1a;Compiling a New C/C Module to WebAssembly - WebAssembly | MDN (mozilla.org) 报错信息 形如&#xff1a; Error: Downloading URL https://storage.googleapis.com/webassembly/emscripten-releases-builds/linux/b90507fcf011da61bacfca613569…...

concrt140.dll丢失怎么恢复?教你5种修复方法

首先介绍一下concrt140.dll是什么 concrt140.dll是Microsoft Visual C Redistributable for Visual Studio 2015所需的一个动态链接库文件。它是用于支持C程序运行的重要组件之一。当系统中缺少或丢失concrt140.dll文件时&#xff0c;可能会导致一些程序无法正常运行。 首先&a…...

【Vue-Router】路由入门

路由&#xff08;Routing&#xff09;是指确定网站或应用程序中特定页面的方式。在Web开发中&#xff0c;路由用于根据URL的不同部分来确定应用程序中应该显示哪个内容。 构建前端项目 npm init vuelatest //或者 npm init vitelatest安装依赖和路由 npm install npm instal…...

蓝牙耳机运动耳机哪个好、好用的运动蓝牙耳机推荐

如今的蓝牙耳机已经成为手机的最佳伴侣&#xff0c;也是运动爱好者的必备装备。然而&#xff0c;在众多蓝牙耳机中做出选择可能会让人感到困惑。其实&#xff0c;在选购运动蓝牙耳机时需要注意的事项还挺多的&#xff0c;比如舒适度、稳定性和音质等多个方面,逐一对照这些要点来…...

大数据面试题:Kafka的ISR机制

面试题来源&#xff1a; 《大数据面试题 V4.0》 大数据面试题V3.0&#xff0c;523道题&#xff0c;679页&#xff0c;46w字 可回答&#xff1a;1&#xff09;从ISR踢出去之后呢&#xff1b;2&#xff09;一般Leader怎么判断Follower挂掉&#xff1f; 参考答案&#xff1a; …...

7.4.分块查找

一.分块查找的算法思想&#xff1a; 1.实例&#xff1a; 以上述图片的顺序表为例&#xff0c; 该顺序表的数据元素从整体来看是乱序的&#xff0c;但如果把这些数据元素分成一块一块的小区间&#xff0c; 第一个区间[0,1]索引上的数据元素都是小于等于10的&#xff0c; 第二…...

R语言AI模型部署方案:精准离线运行详解

R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...