ASP.NET网上车辆档案管理系统

 摘  要

本文采用基于Web的Asp.net技术,并与sql server 2000数据库相结合,研发了一套车辆档案管理系统。该系统扩展性好,易于维护。简化了车辆档案设计流程,去除了冗余信息。汽车销售企业可以通过本系统完成整个销售及售后所有档案的信息化管理,轻松的完成添加,查询及维护等工作。 因此将发挥计算机的庞大的存储空间,高性能的处理能力,高度可靠的数据安全,清晰的可视化数据等这些优势让企业对车辆档案进行管理,实现了计算机资源的合理利用,真正实现了减少劳动力提高劳动质量的目的。

关键词:Asp.net,处理能力,Web,数据安全

2.1 Asp.net

ASP.NET又叫ASP+,但并不仅仅是ASP的简单升级,而是Microsoft推出的新一代Active Server Pages脚本语言。ASP.NET是微软发展的新型体系结构.NET的一部分,它的全新技术架构会让每一个人的网络生活都变得更简单。

ASP.NET 是一种建立动态Web应用程序的技术。它是.NET 框架的一部分,您可以使用任何.NET兼容的语言来编写ASP.NET应用程序。 使用Visual Basic .NET, C#, J#, ASP.NET 页面(Web Forms) 进行编译可以提供比脚本语言更出色的性能表现。Web Forms 允许您在网页基础上建立强大的窗体。当建立页面时, 您可以使用ASP.NET 服务端控件来建立常用的UI元素,并对它们编程来完成一般的任务。这些控件允许您使用内建可重用的组件和自定义组件来快速建立Web Form,使代码简单化。ASP.NET 提供了一种编程模型和结构,对比原来的Web技术来说,它能更快速、容易地建立灵活、安全和稳定的应用程序。 

ASP.NET 可以用来承载多个 Web 应用程序,其中每个应用程序由 Web 站点(Web 站点在 Web 服务器上表现为一个唯一的主机名/端口组合)内的一个唯一的 URL 前缀来标识。

 2.2 Sql server2000

SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由MicrosoftSybaseAshton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。 SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000Microsoft公司于2000年推出的最新版本。

2.3 Microsoft Office Visio 2003

Visio 2003是一个图表绘制解决方案,可以帮助人们将业务和技术概念转化为可视化图表。 使用Visio 2003 表达、记录和传达重要的信息,给您的读者留下专业化的印象。

Visio 2003 中的新增特性包括:增强的图表绘制功能、新的模板、最新的导入和导出功能、同其它应用程序进行协作的改进方法、以及众多面向开发人员和高级用户的新增高级特性。

2.4 PowerDesigner Trial

PowerDesignerSybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设计模型进行控制。它可与许多流行的数据库设计软件,例如:PowerBuilderDelphiVB等相配合使用来缩短开发时间和使系统设计更优化。

4.1登录

    当用户登录时,有普通管理员和系统管理员之分。登录界面如下所示:

                         图4-1登录界面

用户名密码不能为空,系统管理员用户名和密码均为sadmini,普通管理员均为admini。此时,系统将会连接到数据库。

连接数据库主要代码:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e System.EventArgs) Handles MyBase.Load

conn = New SqlConnection("data source=127.0.0.1;integrated security=SSPI;initial catalog=车辆档案管理")

da = New SqlDataAdapter("select * from 车辆基本信息表", conn)

da.FillSchema(ds, SchemaType.Source, "车辆基本信息表")

da.Fill(ds, "车辆基本信息表")

If Not Page.IsPostBack Then

DataGrid1.DataSource = ds

DataGrid1.DataMember = "车辆基本信息表"

DataGrid1.DataBind()

End If

End Sub

 当系统管理员登录时界面如下(普通管理员不能登录此界面):

图4-2系统管理员初始界面

在系统管理员界面中,系统管理员可以对各种用户进行管理。

4.2 车辆购车档案功能的运行

当点击车辆购车档案时,界面如下所示:在车辆购车档案中可以进行添加、查询、更新、删除的操作,用来对车辆信息表(编号,车辆名称,车型,颜色,车牌号码,发动机号,底盘号码,车架号码,座位数,载重,购车价格,购车日期,初始公里数,保修期至,客户名)的信息进行更改。

   图4-3  车辆购车档案界面

   在界面中的文本框,填入相应信息,然后点击“添加”按钮,就会在下面的dategrid中显示出添加的记录。

  例如,添加编号为4的这条记录,执行效果如下所示:

图4-4 添加实例图

添加主要代码:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles addBtn.Click, Button1.Click

Dim id, count As Integer

Dim bh, clmc, cx, ys, cphm, fdjh, dphm, cjhm, zws, zz, gcjg, gcrq, csgls, bzqz, khm As String

        bh = CStr(Trim(Me.bh.Text))

        clmc = CStr(Trim(Me.clmc.Text))

        cx = CStr(Trim(Me.cx.Text))

        ys = CStr(Trim(Me.ys.Text))

        cphm = CStr(Trim(Me.cphm.Text))

        fdjh = CStr(Trim(Me.fdjh.Text))

        dphm = CStr(Trim(Me.dphm.Text))

        cjhm = CStr(Trim(Me.cjhm.Text))

        zws = CStr(Trim(Me.zws.Text))

        zz = CStr(Trim(Me.zz.Text))

        gcjg = CStr(Trim(Me.gcjg.Text))

        gcrq = CStr(Trim(Me.gcrq.Text))

        csgls = CStr(Trim(Me.csgls.Text))

        bzqz = CStr(Trim(Me.bzqz.Text))

        khm = CStr(Trim(Me.khm.Text))

        Dim rowNew As DataRow = ds.Tables("车辆基本信息表").NewRow

        rowNew("编号") = bh

        rowNew("车辆名称") = clmc

        rowNew("车型") = cx

        rowNew("颜色") = ys

        rowNew("车牌号码") = cphm

        rowNew("发动机号") = fdjh

        rowNew("底盘号码") = dphm

        rowNew("车架号码") = cjhm

        rowNew("座位数") = zws

        rowNew("载重") = zz

        rowNew("购车价格") = gcjg

        rowNew("购车日期") = gcrq

        rowNew("初始公里数") = csgls

        rowNew("保修期至") = bzqz

        rowNew("客户名") = khm

        ds.Tables("车辆基本信息表").Rows.Add(rowNew)

        DataGrid1.DataSource = ds.Tables("车辆基本信息表")

        DataGrid1.DataBind()

        Dim myCBuilder As New SqlCommandBuilder(da)

        da.InsertCommand = myCBuilder.GetInsertCommand

        da.Update(ds, "车辆基本信息表")

End Sub

当点击“查询”按钮时,界面如下所示:

图4-5 查询页面

例如,查询客户名为“张青青”的客户名,其执行结果如下:

图4-6查询实例

查询主要代码:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim objConn As New SqlConnection

objConn = ConnectionDatabase()

Dim strSQL As String

Dim datatable1 As DataTable

strSQL = "SELECT * FROM 车辆基本信息表 where 客户名='" +TextBox1.Text+ "'"

datatable1 = CreateDataSet(strSQL, "车辆基本信息表").Tables("车辆基本信息表")

   DataGrid1.DataSource = datatable1

   DataGrid1.DataBind()

End Sub

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadConnectionDatabase()

   Dim strSQL As String

   Dim datatable1 As DataTable

   strSQL = "SELECT * FROM 车辆基本信息表 "

datatable1 = CreateDataSet(strSQL, "车辆基本信息表").Tables("车辆基本信息表")

DataGrid1.DataSource = datatable1

DataGrid1.DataBind()

End Sub

当在车辆购车档案中更新信息时,界面如下所示:

图4-7 更新页面

更新代码如下:

Private Sub datagrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs)HandlesDataGrid1.EditCommand

a = CInt(e.Item.Cells(2).Text)

DataGrid1.EditItemIndex = e.Item.ItemIndex

DataGrid1.DataSource = ds

DataGrid1.DataMember = "车辆基本信息表"DataGrid1.DataBind()

End Sub

Private Sub datagrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs)HandlesDataGrid1.UpdateCommand

    Dim rowChange As DataRow = ds.Tables("车辆基本信息表").Rows.Find(a)

    rowChange.BeginEdit()

    rowChange("编号") = (CType(e.Item.Cells(2).Controls(0), TextBox)).Text.Trim()

    rowChange("车辆名称") = (CType(e.Item.Cells(3).Controls(0), TextBox)).Text.Trim()

    rowChange("车型") = (CType(e.Item.Cells(4).Controls(0), TextBox)).Text.Trim()

    rowChange("颜色") = (CType(e.Item.Cells(5).Controls(0), TextBox)).Text.Trim()

    rowChange("车牌号码") = (CType(e.Item.Cells(6).Controls(0), TextBox)).Text.Trim()

 rowChange("发动机号") = (CType(e.Item.Cells(7).Controls(0), TextBox)).Text.Trim()

rowChange("底盘号码") = (CType(e.Item.Cells(8).Controls(0), TextBox)).Text.Trim()

    rowChange("车架号码") = (CType(e.Item.Cells(9).Controls(0), TextBox)).Text.Trim()

rowChange("座位数") = (CType(e.Item.Cells(10).Controls(0), TextBox)).Text.Trim()

  rowChange("载重") = (CType(e.Item.Cells(11).Controls(0), TextBox)).Text.Trim()

    rowChange("购车价格") = (CType(e.Item.Cells(12).Controls(0), TextBox)).Text.Trim()

  rowChange("购车日期") = (CType(e.Item.Cells(13).Controls(0), TextBox)).Text.Trim()

rowChange("初始公里数") = (CType(e.Item.Cells(14).Controls(0), TextBox)).Text.Trim()

rowChange("保修期至") = (CType(e.Item.Cells(15).Controls(0), TextBox)).Text.Trim()

 rowChange("客户名") = (CType(e.Item.Cells(16).Controls(0), TextBox)).Text.Trim()

    rowChange.EndEdit()

    DataGrid1.EditItemIndex = -1

    DataGrid1.DataSource = ds.Tables("车辆基本信息表")

    DataGrid1.DataBind()

    Dim myCBuilder As New SqlCommandBuilder(da)

    da.UpdateCommand = myCBuilder.GetUpdateCommandda.Update(ds, "车辆基本信息表")

End Sub

4.3车辆维修档案功能的运行

当点击维修档案时,界面如下所示:

在本界面同样可以进行添加、查询、删除、更新等工作,出现的界面同车辆购车档案雷同的界面,它主要对车辆维修表(编号,车辆,维护日期,维修时公里数,维修单位,维护原因,花费金额,完毕日期,维护结果)进行修改。

图4-8更新界面

  4.4 车辆年检档案功能的运行

当点击车辆年检档案时,界面如下所示:

在本界面同样可以进行添加、查询、删除、更新等工作,出现的界面与车辆购车档案雷同的界面,它主要对车辆年检表(编号,喇叭,车型,灯光,制动刹车,侧滑,废气,车速,是否合格)进行修改。

图4-9车辆年检档案

4.5车辆评估模块功能的运行

当点击车辆评估档案时,会出现如下界面:

这时,需要用户输入汽车原值、使用年限、使用到第几年、折旧年限、维修次数、年检不合格次数、保养次数等基本信息。然后再选择使用强度、技术含量、维修保养水平、市场供求的信息。

点击“评估车辆”按钮在页面底部就会出现该车辆的得分以及评定等级了。

图4-10车辆评估界面

     当操作完毕,点击“退出”按钮即可关闭所有窗口,退出车辆档案管理系统。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/592518.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IoTDB 入门教程 基础篇⑦——数据库管理工具 | DBeaver 连接 IoTDB

文章目录 一、前文二、下载iotdb-jdbc三、安装DBeaver3.1 DBeaver 下载3.2 DBeaver 安装 四、安装驱动五、连接数据库六、参考 一、前文 IoTDB入门教程——导读 二、下载iotdb-jdbc 下载地址org/apache/iotdb/iotdb-jdbc:https://maven.proxy.ustclug.org/maven2/o…

微信小程序 uniapp家庭食谱菜谱食材网上商城系统小程序ko137

随着生活节奏的不断加快,越来越多的人因为工作忙而没有时间自己出去订购喜欢的菜品。随着Internet的飞速发展,网络已经成为我们日常生活中必不可少的部分,越来越多的人也接受了电子商务这种快捷、方便的交易方式。网上订餐其独有的便捷性和直…

计算机网络——Dijkstra路由算法

实验目的 实现基于 Dijkstra 算法的路由软件 实验内容 网络拓扑如图所示 实验过程 先编写开辟应该图的空间,然后给点映射数字,构建图。程序获取用户输入的学号,构建图中边的权值。接下来程序从用户输入获取最短路径的搜索起点&#xff0…

Docker 中的 Nginx 服务为什么要启用 HTTPS

一安装容器 1 安装docker-20.10.17 2 安装所需的依赖 sudo yum install -y yum-utils device-mapper-persistent-data lvm23 添加Docker官方仓库 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo4 安装Docker CE 20.10.17 s…

【React】React-redux多组件间的状态传递

效果(部分完整代码在最底部): 编写 Person 组件 上面的 Count 组件,已经在前面几篇写过了,也可以直接翻到最底部看 首先我们需要在 containers 文件夹下编写 Person 组件的容器组件 首先我们需要编写 index.jsx 文件…

STM32G474 CMAKE VSCODE 开发环境搭建

本篇博文尝试搭建 stm32g474 的开发环境 一. 工具安装 1. 关于 MinGW、OpenOCD、Zadig 这些工具的下载和安装见 JlinkOpenOCDSTM32 Vscode 下载和调试环境搭建_vscode openocd stm32 jlink-CSDN博客 2. 导出一个 STM32 的 CMAKE 工程,这里略过。 3. 安装 ninja …

QT5之windowswidget_菜单栏+工具栏_核心控件_浮动窗口_模态对话框_标准对话框/文本对话框

菜单栏工具栏 新建工程基类是QMainWindow 1、 2、 3、 点.pro文件&#xff0c;添加配置 因为之后用到lambda&#xff1b; 在.pro文件添加配置c11 CONFIG c11 #不能加分号 添加头文件 #include <QMenuBar>//菜单栏的头文件 主窗口代码mainwindow.cpp文件 #include &q…

深入理解分布式事务⑨ ---->MySQL 事务的实现原理 之 MySQL 中的XA 事务(基本原理、流程分析、事务语法、简单例子演示)详解

目录 MySQL 事务的实现原理 之 MySQL 中的XA 事务&#xff08;基本原理、流程分析、事务语法、简单例子演示&#xff09;详解MySQL 中的 XA 事务1、XA 事务的基本原理1-1&#xff1a;XA 事务模型图&#xff1a;1-2&#xff1a;XA 事务模型的两阶段提交操作&#xff1a;Prepare …

「 网络安全常用术语解读 」通用漏洞报告框架CVRF详解

1. 背景 ICASI在推进多供应商协调漏洞披露方面处于领先地位&#xff0c;引入了通用漏洞报告框架&#xff08;Common Vulnerability Reporting Format&#xff0c;CVRF&#xff09;标准&#xff0c;制定了统一安全事件响应计划&#xff08;USIRP&#xff09;的原则&#xff0c;…

mysql 指定根目录 迁移根目录

mysql 指定根目录 迁移根目录 1、问题描述2、问题分析3、解决方法3.1、初始化mysql前就手动指定mysql根目录为一个大的分区(支持动态扩容)&#xff0c;事前就根本上解决mysql根目录空间不够问题3.1.0、方法思路3.1.1、卸载mariadb3.1.2、下载Mysql安装包3.1.3、安装Mysql 8.353…

ASP.NET 两种开发模式

1》》WebForm 开发模式 1. 服务器端控件 2. 一般处理程序html静态页Ajax 3. 一般处理程序html模板 如下图 2》》MVC 太复杂的系统&#xff0c;会造成Controller 过复杂。 后来就诞生了 MVP、MVVM等模式

腾讯云CentOS7使用Docker安装ElasticSearch与Kibana详细教程

文章目录 一、安装ElasticSearch二、安装Kibana 一、安装ElasticSearch 使用Docker拉取ElasticSearch镜像 这里版本选择的是7.15.2 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.22. 查看ElasticSearch的镜像id docker images3. 创建ElasticSearch容器 …

目标跟踪—卡尔曼滤波

目标跟踪—卡尔曼滤波 卡尔曼滤波引入 滤波是将信号中特定波段频率滤除的操作&#xff0c;是抑制和防止干扰的一项重要措施。是根据观察某一随机过程的结果&#xff0c;对另一与之有关的随机过程进行估计的概率理论与方法。 历史上最早考虑的是维纳滤波&#xff0c;后来R.E.卡…

nn.GRU层输出:state与output的关系

在 GRU&#xff08;Gated Recurrent Unit&#xff09;中&#xff0c;output 和 state 都是由 GRU 层的循环计算产生的&#xff0c;它们之间有直接的关系。state 实际上是 output 中最后一个时间步的隐藏状态。 GRU 的基本公式 GRU 的核心计算包括更新门&#xff08;update gat…

从零开始学AI绘画,万字Stable Diffusion终极教程(四)

【第4期】图生图 欢迎来到SD的终极教程&#xff0c;这是我们的第四节课 这套课程分为六节课&#xff0c;会系统性的介绍sd的全部功能&#xff0c;让你打下坚实牢靠的基础 1.SD入门 2.关键词 3.Lora模型 4.图生图 5.controlnet 6.知识补充 在前面的课程中&#xff0c;我…

QT:QT窗口(一)

文章目录 菜单栏创建菜单栏在菜单栏中添加菜单创建菜单项添加分割线 工具栏创建工具栏设置停靠位置创建工具栏的同时指定停靠位置使用QToolBar类提供的setAllowedAreas函数来设置停靠位置 设置浮动属性设置移动属性 状态栏状态栏的创建在状态栏中显示实时消息在状态栏中显示永久…

数据结构-二叉树结尾+排序

一、二叉树结尾 1、如何判断一棵树是完全二叉树。 我们可以使用层序遍历的思路&#xff0c;利用一个队列&#xff0c;去完成层序遍历&#xff0c;但是这里会有些许的不同&#xff0c;我们需要让空也进队列。如果队列里到最后只剩下空那么这棵树就是完全二叉树。具体的实现如下…

工作问题记录React(持续更新中)

一、backdrop-filter:blur(20px); 毛玻璃效果&#xff0c;在安卓机上有兼容问题&#xff0c;添加兼容前缀也无效&#xff1b; 解决方案&#xff1a;让设计师调整渐变&#xff0c;不要使用该属性! 复制代码 background: radial-gradient(33% 33% at 100% 5%, #e9e5e5 0%, rgba…

本地部署大模型ollama+docker+open WebUI/Lobe Chat

文章目录 大模型工具Ollama下载安装运行Spring Ai 代码测试加依赖配置写代码 ollama的web&Desktop搭建部署Open WebUI有两种方式Docker DesktopDocker部署Open WebUIDocker部署Lobe Chat可以配置OpenAI的key也可以配置ollama 大模型的选择 本篇基于windows环境下配置 大模型…

线性数据结构-手写链表-LinkList

为什么需要手写实现数据结构&#xff1f; 其实技术的本身就是基础的积累和搭建的过程&#xff0c;基础扎实 地基平稳 万丈高楼才会久战不衰&#xff0c;做技术能一通百&#xff0c;百通千就不怕有再难得技术了。 一&#xff1a;链表的分类 主要有单向&#xff0c;双向和循环链表…
最新文章