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

asp.net 高校学生勤工俭学系统设计与实现

博主介绍:专注于Java(springboot  ssm 等开发框架) vue  .net  php python(flask Django)  小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作
☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟
我的博客空间发布了1700+毕设题目 方便大家学习使用
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人
文末有源码下载地址

java勤工助学信息管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

4.3 系统流程分析

4.3.1 业务流程分析

勤工俭学管理业务系统流程图如图4-1所示。

图4-1 勤工俭学管理业务系统流程图

4.3.2 数据流程分析

数据流图是目标软件系统中各处理子功能以及他们之间的数据流动的图形表示。数据流图的精化过程实际上是处理子功能和数据流的细化过程。随着这一过程的进行本系统的用户需求将会进一步精确化、一致化、完全化。本系统就是将勤工俭学管理信息这一具体方案进行数据分析,绘制成图,管理者可以根据此分析完成系统,不仅方便,简洁,一目了然,而且使用时出现任何问题都可以尽快解决。通过对勤工俭学管理信息系统的数据流程图进行分析,进一步进行功能分解,直到分解成含义明确,功能单一的模块,从而得到系统的功能模块结构图,即系统的HIPO图。本系统的HIPO如图4-2所示。

5 勤工俭学管理系统的总体设计

总体设计阶段的基本目的是用比较抽象概括的方案确定系统如何完成参定的任务,也就是说,系统设计就是全面、概括、系统的设计软件的过程。

5.1 系统架构

在仔细分析了数据流程图后,决定整个系统分为三大模块,每个模块又有若干个子模块。本系统使用的是个人PC机,Windows 7的操作系统。数据访问方法为使用字符串连接方法。系统总体框如图5-1所示。

图5-1 系统总体框图

5.2 系统设计

高校学生勤工俭学系统不单单是一个软件提高工作效率的同时方便了信息的管理,节省时间,节约开销,具有实时、高效和快捷等特点。勤工俭学管理系统的设计与实现是对软件功能的又一开发,帮助用工信息管理信息的同时,也对此系统的性能做了进一步的了解。

5.3 系统数据分析与设计

5.3.1 数据字典

1 管理员( 管理员编号,用户名,密码,姓名 )

2 用户( 用户编号,用户名,密码,姓名,联系电话,联系地址,专业,年龄 )

3 公告( 公告编号,标题,内容,发布时间 )

4 用工类型( 用工类型编号,类型 )

5 用工信息( 用工信息编号,单号,标题,类型,工作内容,发布人,发布时间,截止时间,状态,工资,人数 )

6 用工通知( 用工通知编号,用户,标题,内容,发布时间 )

7 接单( 接单编号,用工,接单人,说明,状态,接单时间,财务状态,完成时间 )

8 结算( 结算编号,用工,用户,费用,结算时间,说明 )

5.3.2 数据库系统ER图

将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。

(1) 概念结构的主要特点

 能真实充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。

‚ 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。

ƒ 易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。

描述概念模型的有力工具是E-R模型。根据以上得到的数据项和数据结构,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。


(2)系统中实体E-R图

根据高校学生勤工俭学系统的设计系统的要求,规划出了以下一些实体。

管理员信息实体,主要包括 管理员编号,用户名,密码,姓名 等信息实体。如图5.2所示:

图5.2 管理员实体属性图

用户信息实体,主要包括 用户编号,用户名,密码,姓名,联系电话,联系地址,专业,年龄 等信息实体。如图5.4所示:

图5.4用户实体属性图

公告信息实体,主要包括公告编号,标题,内容,发布 等信息实体。如图5.4所示:

图5.4 公告实体属性图

用工类型信息实体,主要包括 用工类型编号,类型 等信息实体。如图5.5所示:

图5.5 用工类型实体属性图

一个实体型转换为一个关系模式的集合。实体的属性就是关系的属性,实体的码就是关系的码。

对于实体间的联系则有以下不同的情况:

(1) 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

(2) 一个1:N联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。

(3) 一个M:N联系转换为一个关系模式,与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

(4) 三个或三个以上实体间的一个多元联系可以转换为一个关系模式,与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

高校学生勤工俭学系统中,实体有管理员实体,用户实体,公告实体,用工类型实体,用工信息实体,用工通知实体,接单实体,结算实体等等,他们之间的关系如图5.14所示:

5.4 数据库设计

管理员信息数据表(gly)

其主要用来存储所有管理员的信息:管理员编号,用户名,密码,姓名等信息字段。表5.1显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

glyid

INTEGER

11

管理员编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

用户信息数据表(yonghu)

其主要用来存储所有用户的信息:用户编号,用户名,密码,姓名,联系电话,联系地址,专业,年龄等信息字段。表5.2显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

yhid

INTEGER

11

用户编号

2

yhm

VARCHAR

40

用户名

3

mm

VARCHAR

40

密码

4

xm

VARCHAR

40

姓名

5

lxdh

VARCHAR

40

联系电话

6

lxdz

VARCHAR

40

联系地址

7

zy

VARCHAR

40

专业

8

nl

VARCHAR

40

年龄

公告信息数据表(gonggao)

其主要用来存储所有公告的信息:公告编号,标题,内容,发布时间等信息字段。表5.3显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

ggid

INTEGER

11

公告编号

2

bt

VARCHAR

40

标题

3

nr

VARCHAR

40

内容

4

fbsj

VARCHAR

40

发布时间

用工类型信息数据表(yglx)

其主要用来存储所有用工类型的信息:用工类型编号,类型等信息字段。表5.4显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

yglxid

INTEGER

11

用工类型编号

2

lx

VARCHAR

40

类型

用工信息信息数据表(ygxx)

其主要用来存储所有用工信息的信息:用工信息编号,单号,标题,类型,工作内容,发布人,发布时间,截止时间,状态,工资,人数等信息字段。表5.5显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

ygxxid

INTEGER

11

用工信息编号

2

dh

VARCHAR

40

单号

3

bt

VARCHAR

40

标题

4

lx

VARCHAR

40

类型

5

gznr

VARCHAR

40

工作内容

6

fbr

VARCHAR

40

发布人

7

fbsj

VARCHAR

40

发布时间

8

jzsj

VARCHAR

40

截止时间

9

zt

VARCHAR

40

状态

10

gz

VARCHAR

40

工资

11

rs

VARCHAR

40

人数

用工通知信息数据表(ygtz)

其主要用来存储所有用工通知的信息:用工通知编号,用户,标题,内容,发布时间等信息字段。表5.6显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

ygtzid

INTEGER

11

用工通知编号

2

yh

VARCHAR

40

用户

3

bt

VARCHAR

40

标题

4

nr

VARCHAR

40

内容

5

fbsj

VARCHAR

40

发布时间

接单信息数据表(jiedan)

其主要用来存储所有接单的信息:接单编号,用工,接单人,说明,状态,接单时间,财务状态,完成时间等信息字段。表5.7显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

jdid

INTEGER

11

接单编号

2

yg

VARCHAR

40

用工

3

jdr

VARCHAR

40

接单人

4

sm

VARCHAR

40

说明

5

zt

VARCHAR

40

状态

6

jdsj

VARCHAR

40

接单时间

7

cwzt

VARCHAR

40

财务状态

8

wcsj

VARCHAR

40

完成时间

结算信息数据表(jiesuan)

其主要用来存储所有结算的信息:结算编号,用工,用户,费用,结算时间,说明等信息字段。表4.8显示了表中各个字段的数据类型、大小以及简短描述。

序号

字段名称

数据类型

长度

主键

描述

1

jsid

INTEGER

11

结算编号

2

yg

VARCHAR

40

用工

3

yh

VARCHAR

40

用户

4

fy

VARCHAR

40

费用

5

jssj

VARCHAR

40

结算时间

6

sm

VARCHAR

40

说明

6 系统的详细设计及编码实现

6.1 管理员界面的设计与实现

点击管理员管理菜单,显示添加管理员信息和管理员信息列表界面,点击添加管理员信息,右侧界面呈现出添加的管理员信息界面,包括管理员管理员编号,用户名,密码,姓名等信息,添加管理员信息完毕点击“提交”按钮,则添加管理员信息成功。点击“管理员列表”,右侧界面呈现出需要管理员的具体信息,包括管理员编号,用户名,密码,姓名等信息,可对逐条管理员信息进行查看、删除和修改,如图所示:

主要代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="glylist.aspx.cs" Inherits="gly_glylist" %>

<!DOCTYPE html>

<html>

<head>



    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <title>管理员管理</title>

    <link rel="stylesheet" href="../assets/css/layui.css">    

    <link rel="stylesheet" href="../assets/css/view.css"/>

    <link rel="stylesheet" href="../assets/css/admin.css"/>    

</head>

<body class="layui-view-body">

    <div class="layui-content">

     <!--导航-->

     <div class="mianb">

     <div class="mblf layui-col-xs6 layui-col-md6">

      <i class="layui-icon"></i>

      <p>管理员管理 > <span>管理员列表</span></p>

     </div>

    

     </div>





 <form id="form1" runat="server">

 <div class="seachadd">

                  

                      <asp:Button ID="Button1" runat="server" Text="刷新" class="layui-btn" 

                             onclick="Button1_Click" />

               </div>

     <!--导航-->

        <div class="layui-row">

            <div class="layui-card">

             <div class="table-responsive">

    <table class="layui-table" lay-skin="line" lay-size="lg" id="table">   

  <thead>

    <tr>



     

  

        <th>用户名</th>

        <th>密码</th>

        <th>姓名</th>



 <th>操作</th>

    </tr> 

  </thead>

  <tbody>

  

  

    <asp:Repeater ID="Repeater1" runat="server" >

              <ItemTemplate>

    <tr>



        <td  ><%# Eval("yhm")%></td>

       

        <td  ><%# Eval("mm")%></td>

       

        <td  ><%# Eval("xm")%></td>

       

      <td>

         <div class="layui-table-cell laytable-cell-1-0-10"> 

  <a href="glymod.aspx?id=<%# Eval("glyid")%>" class="layui-btn layui-btn-normal layui-btn-xs">修改</a>

 <a href="glydel.aspx?id=<%# Eval("glyid")%>" class="layui-btn layui-btn-danger layui-btn-xs delete"  onClick="javascript:if(confirm('是否删除')){return true;}else{return false;}">删除</a>

 <a href="glydetail.aspx?id=<%# Eval("glyid")%>" class="layui-btn layui-btn-normal layui-btn-xs">查看</a>            

      

         </div>

      </td>

    </tr>

  </ItemTemplate>

                </asp:Repeater>

  </tbody>

</table>

  </div>

                   

            <!--分页-->

            <div id="PageInfo" runat="server" class="anpager"></div>

            <!--分页-->

            </div>           

        </div>

    </div>

    <script src="../assets/jquery.min.js"></script>

    <script src="../assets/layui.all.js"></script>    

    <script>

     var element = layui.element;

     layui.use(['laypage', 'layer'], function(){

  var laypage = layui.laypage

  ,layer = layui.layer;   

  

  //页码完整功能

  laypage.render({

    elem: 'page'

    ,count: 100

    ,layout: ['count', 'prev', 'page', 'next', 'limit', 'skip']

    ,jump: function(obj){

      console.log(obj)

    }

  });  

});







 layui.use('form', function(){

  var form = layui.form;

  form.render();

});

</script>





    </form>



</body>

</html>



6.2 用户界面的设计与实现

点击用户管理菜单,显示添加用户信息和用户信息列表界面,点击添加用户信息,右侧界面呈现出添加的用户信息界面,包括用户用户编号,用户名,密码,姓名,联系电话,联系地址,专业,年龄等信息,添加用户信息完毕点击“提交”按钮,则添加用户信息成功。点击“用户列表”,右侧界面呈现出需要用户的具体信息,包括用户编号,用户名,密码,姓名,联系电话,联系地址,专业,年龄等信息,可对逐条用户信息进行查看、删除和修改,如图所示:

主要代码:

    protected void Button1_Click(object sender, EventArgs e)

    {

//添加用户信息 操作

string yhm=this.yhm.Text;//用户名

string mm=this.mm.Text;//密码

string xm=this.xm.Text;//姓名

string lxdh=this.lxdh.Text;//联系电话

string lxdz=this.lxdz.Text;//联系地址

string zy=this.zy.Text;//专业

string nl=this.nl.Text;//年龄

if(yhm.Length==0){

MessageBox.Show(this.Page,"用户名不能为空");

return ;

}

if(mm.Length==0){

MessageBox.Show(this.Page,"密码不能为空");

return ;

}

if(xm.Length==0){

MessageBox.Show(this.Page,"姓名不能为空");

return ;

}

if(lxdh.Length==0){

MessageBox.Show(this.Page,"联系电话不能为空");

return ;

}

if(lxdz.Length==0){

MessageBox.Show(this.Page,"联系地址不能为空");

return ;

}

if(zy.Length==0){

MessageBox.Show(this.Page,"专业不能为空");

return ;

}

if(nl.Length==0){

MessageBox.Show(this.Page,"年龄不能为空");

return ;

}

int num = 0;

string sql = "select count(1) as num from yonghu where yhm='" + yhm + "' ";

DataTable dt = DBHelper.GetDataSet(sql);

if (dt.Rows.Count > 0)

{

    num = int.Parse(dt.Rows[0]["num"].ToString());

}

if (num > 0)

{

    MessageBox.Show(this.Page, "用户名重复");

    return;

}

     

         sql = "insert into yonghu (yhm,mm,xm,lxdh,lxdz,zy,nl ) values ('"+yhm+"','"+mm+"','"+xm+"','"+lxdh+"','"+lxdz+"','"+zy+"','"+nl+"')";//添加用户信息的sql语句

        int row = 0;

        try

        {

            row = DBHelper.ExecuteCommand(sql);//执行添加用户

        }

        catch (Exception ex)

        {//异常捕获

            MessageBox.ShowAndRedirect(this.Page, ex.Message, "yonghuadd.aspx");

      

        }

        MessageBox.ShowAndRedirect(this.Page, "添加成功", "yonghuadd.aspx");//页面提示并跳转

    }

}

6.3 公告界面的设计与实现

点击公告管理菜单,显示添加公告信息和公告信息列表界面,点击添加公告信息,右侧界面呈现出添加的公告信息界面,包括公告公告编号,标题,内容,发布时间等信息,添加公告信息完毕点击“提交”按钮,则添加公告信息成功。点击“公告列表”,右侧界面呈现出需要公告的具体信息,包括公告编号,标题,内容,发布时间等信息,可对逐条公告信息进行查看、删除和修改,如图所示:

主要代码:

 /**

*公告信息列表页面

*/  

    protected void Page_Load(object sender, EventArgs e)

    {

 if (!IsPostBack)

        {

    chushi();

}

    }


大家点赞、收藏、关注、评论啦  其他的定制服务  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者
 
 


http://www.kler.cn/a/453853.html

相关文章:

  • CKA认证 | Day7 K8s存储
  • 【前沿 热点 顶会】AAAI 2025中与目标检测有关的论文
  • 芯片Tapeout power signoff 之IR Drop Redhawk Ploc文件格式及其意义
  • 【ES6复习笔记】集合Set(13)
  • docker mysql5.7安装
  • 蓝牙BLE开发——解决iOS设备获取MAC方式
  • 【Emscripten执行遇到】emcc command not found
  • 如何通过 Kafka 将数据导入 Elasticsearch
  • Node.js 助力前端开发:自动化操作实战
  • 【数据结构与算法】数据结构与算法的基本概念
  • Ubuntu安装Apache Airflow详细指南
  • 汽车配套行业的软件许可证资源管理实践与技术解析
  • MySQL数据库(基础篇)
  • bash 中 ${-#*i} 是什么意思?
  • Java基于SSM框架的无中介租房系统小程序【附源码、文档】
  • 【C语言】判断是不是闰年
  • 遇到duilib.dll丢失怎么办?解决duilib.dll文件丢失问题的全面指南
  • 07.string类
  • AppAgent 源码 (self_explore.py)
  • 访谈积鼎科技总经理:国产CFD软件发展与未来趋势展望
  • 【运维】文件存储公共盘升级及数据迁移
  • 分布式专题(9)之Mysql高可用方案
  • Unity中实现人物残影效果
  • YashanDB 23.2 YAC -单库多实例架构多活共享集群安装部署指南
  • 【redis面试题】缓存击穿
  • mavlink移植到单片机stm32f103c8t6,实现接收和发送数据