ITOO 第一个任务,新建界面
最近我们已经接手了我们传承的的ITOO项目,虽然现在还是学习阶段,但是总是还有一些可以完成的东西的。通过需求学习阶段,对照给的原型,逐渐的我们发现了各种各样的问题,有的是根据个人性格有关,有的是对需求的理解有关。而对于我们负责的新生这面来说,我看到了需求没有看到作品,最为我第一独立完成在ITOO里面的项目,很想分享一下。
需求:我们有学院报表,专业报表和新生报表。但是对于我们的新生报表,我就是认为它不是最好的,通过跟组长协商,我自己确定了一版临时的报表:
前台界面:
@{
ViewBag.Title = "Index";
} @*<h2>Index</h2>*@
<html>
<head>
<title>学生报表</title>
<script src="../../Scripts/MyScripts/FreshStudent.js"></script> </head>
<body>
<div style="margin-top:30px;margin-left:20px;">
<div class="easyui-panel" title="查询" style="width:1250px;">
<div style="margin:10px 20px;float:left">
@*加载搜索框*@
请输入要查询的内容:
<input class="easyui-textbox" id="txtSearch" name="BidProjectId" onkeydown="Enter();" maxlength="20" style="width:150px;">
<a href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-search',plain:true" onclick="stuSearch()" >查询</a>
<a id="download" href="javascript:void(0)" class="easyui-linkbutton" style="margin-left :720px";data-options="iconCls:'',plain:true" onclick="ExportScoreSummary()" >导出Excel</a>
</div>
</div> </div> <div id="ContentAreas" style="margin-top: 15px; margin-left: 20px; width: 960px;"> <table id="dt" class="easyui-datagrid" title="学生报表" style="width: 1250px; height: auto"
data-options="
iconCls: 'icon-edit',
singleSelect: true,
rownumbers:true,
toolbar: '#tb',
url: '',
method: 'get',
@*onClickRow: onClickRow*@">
<thead>
<tr>
<th data-options="field:'StudentCode',width:150,align:'center'" >学号</th>
<th data-options="field:'StudentName',width:120,align:'center'">姓名</th>
<th data-options="field:'StudentSex',width:120,align:'center'">性别</th>
<th data-options="field:'StudentScore',width:120,align:'center'">分数</th>
<th data-options="field:'Education',width:120,align:'center'">学历</th>
<th data-options="field:'MajorName',width:150,align:'center'">专业名称</th>
<th data-options="field:'DepName',width:150,align:'center'">学院名称</th>
<th data-options="field:'StudentTel',width:150,align:'center'">联系方式</th>
<th data-options="field:'IsCheck',width:120,align:'center'">是否报道</th>
</tr>
</thead>
</table>
</div> </body> </html>JavaScript:
<span style="font-size:18px;">$(function () {
$("#ContentAreas").css('display', 'block');
document.getElementById('txtSearch').value = " ";
$("#a").css({
"display": "block",
"position": "fixed",
"top": "20px",
"left": "10px",
"width": "400px",
"margin-bottom": "0px"
});
$("#footer").css('display', 'none'); $.ajax({
url: '/FreshStudent/SelectAllStu',
success: function (data) {
var array = new Array;
//alert(data.length);
if (data.length != 0) {
for (var i = 0; i < data.length; i++) {
var obj = new Object();
obj.StudentCode = data[i].StudentCode;
obj.StudentName = data[i].Name;
obj.StudentSex = data[i].strSex;
obj.StudentScore = data[i].Score;
obj.Education = data[i].Level;
obj.MajorName = data[i].FreshMajorName;
obj.DepName = data[i].FreshDepartmentName;
obj.StudentTel = data[i].TelNum;
obj.IsCheck = data[i].strCheckIn;
array.push(obj);
}
}
else {
$.messager.alert('提示', '没有搜索到学生信息!', 'warnning');
}
$('#dt').datagrid('loadData', array);
} }) }) function stuSearch() { var txtSearch = $('#txtSearch').val();
txtSearch =$.trim(txtSearch);
if (txtSearch == "" || txtSearch == null) {
//李卫中 查询所有学生
$.ajax({
url: '/FreshStudent/SelectAllStu',
success: function (data) {
var array = new Array;
//alert(data.length);
if (data.length != 0) {
for (var i = 0; i < data.length; i++) {
var obj = new Object();
obj.StudentCode = data[i].StudentCode;
obj.StudentName = data[i].Name;
obj.StudentSex = data[i].strSex;
obj.StudentScore = data[i].Score;
obj.Education = data[i].Level;
obj.MajorName = data[i].FreshMajorName;
obj.DepName = data[i].FreshDepartmentName;
obj.StudentTel = data[i].TelNum;
obj.IsCheck = data[i].strCheckIn;
array.push(obj);
}
}
else {
$.messager.alert('提示', '没有搜索到学生信息!', 'warnning');
}
$('#dt').datagrid('loadData', array);
} })
} else
{
$.ajax({
url: '/FreshStudent/SelectStu?strlike=' + txtSearch,
success: function (data) {
//alert(data.length);
var array = new Array;
//alert(data.length);
if (data.length != 0) {
for (var i = 0; i < data.length; i++) {
var obj = new Object();
obj.StudentCode = data[i].StudentCode;
obj.StudentName = data[i].Name;
obj.StudentSex = data[i].strSex;
obj.StudentScore = data[i].Score;
obj.Education = data[i].Level;
obj.MajorName = data[i].FreshMajorName;
obj.DepName = data[i].FreshDepartmentName;
obj.StudentTel = data[i].TelNum;
obj.IsCheck = data[i].strCheckIn;
array.push(obj);
}
}
else {
$.messager.alert('提示', '没有搜索到学生信息!', 'warnning');
}
$('#dt').datagrid('loadData', array);
} })
}
//$('#dg').datagrid('reload', {//重新加载表信息datagrid
// strLike: searchName //参数名称
//}); } function Enter()
{
var event = window.event || arguments.callee.caller.arguments[0];
if (event.keyCode == 13) {
stuSearch();
};
}</span>Controller:
<span style="font-size:18px;"> #region 模糊查询的结果+ProcessRequest()
/// <summary>
/// 模糊查询的结果
/// </summary>
/// <returns></returns>
public string ProcessRequest()
{ Response.ContentType = "text/plain";
string strLike = Server.UrlDecode(Request.QueryString["strLike"]); //查询结果
List<FreshStudentViewModel> SeriesResult = stuService.LoadStrLikeEntities(strLike); string[] results = { "CandidateID", "Name", "Level" }; return GetLikeStr<FreshStudentViewModel>(SeriesResult, results).ToString(); }
#endregion #region GetLikeStr+联想-获得查询出来的字符串+李卫中+2015年12月29日12:08:11
//<summary>
//模糊查询-获得查询出来的字符串
//</summary>
//<typeparam name="T">泛型</typeparam>
//<param name="lsobject">传入的具体list</param>
//<param name="results">字符串数组,起重包含要查询的字段名称</param>
//<returns>拼接的字符串</returns>
public StringBuilder GetLikeStr<T>(List<T> lsobject, string[] results)
{
StringBuilder sb = new StringBuilder(); if (lsobject.Count != 0)
{
for (int i = 0; i < lsobject.Count; i++)
{
var item = lsobject.ElementAt(i);
for (int j = 0; j < results.Length; j++)
{
System.Reflection.PropertyInfo pi = item.GetType().GetProperty(results[j]); if (pi.GetValue(item, null) != null)
{
string querryCondititon = pi.GetValue(item, null).ToString(); sb.Append(querryCondititon).Append(",");
}
}
}
sb.Remove(sb.Length - 1, 1);
}
return sb;
}
#endregion #region 学生报表查询所有学生SelectAllStu() ---李卫中--2015-12-30
/// <summary>
/// 学生报表查询所有学生
/// </summary>
/// <returns></returns>
public ActionResult SelectAllStu()
{
List<FreshStudentViewModel> stuList = new List<FreshStudentViewModel>();
stuList = stuService.SelectAllStu(); return Json(stuList,JsonRequestBehavior.AllowGet); }
#endregion #region 学生报表根据输入条件查询所有学生SelectAllStu(strlike) ---李卫中--2015-12-30
/// <summary>
/// 学生报表查询所有学生
/// </summary>
/// <returns></returns>
public ActionResult SelectStu(string strlike)
{
//strlike = Request["txtSearch"].ToString(); ;
List<FreshStudentViewModel> stuList = new List<FreshStudentViewModel>();
stuList = stuService.SelectStu(strlike); return Json(stuList, JsonRequestBehavior.AllowGet); }
#endregion
</span>至于后台的服务端的界面,就没有什么好看的了,实现了模糊查询,效果很好!(数据库原因,效果贴图,另行补发)
总结:
学习,就是这样,一步通,步步通。学习的时候不能只是看,最终还是要动手看,没有动手,就永远没有真正的发言权!
ITOO 第一个任务,新建界面的更多相关文章
- MVC5+EF6 简易版CMS(非接口) 第一章:新建项目
目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口 ...
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第一步---開始界面&关卡选择
/* 说明: **1.本次游戏实例是<cocos2d-x游戏开发之旅>上的最后一个游戏,这里用3.0重写并做下笔记 **2.我也问过木头本人啦.他说:随便写,第一别全然照搬代码:第二能够说 ...
- 【PY从0到1】第一节 安装与界面介绍
本系列是介绍如何用Python进行股票量化交易的课程. 课程内容以记录Python零基础学员从最简单的Python下载及安装开始,到最后能熟练运用Python进行量化交易的专业人员的成长历程.旨在打造 ...
- HTML写的第一个邮箱登陆界面
自己动手去写才会有收获,宁可模仿也不要全部复制粘贴 不说了,直接上代码.CSS有注释,适合新手. <!doctype html> <html> <head> < ...
- angularcli 第一篇(新建、组件、模块)
1.新建并启动项目: 1.安装: npminstall -g @angular/cli 2.新建: ng new mytest 3.进入项目:cd mytest 4.启动: ng serve 5.打开 ...
- ofbiz进击 第一节。 新建自己的webapp项目
创建一个webapp的过程更新下来项目(直接从svn上面切下来就好),要先ant clean 下,然后在重新ant下.一: start sheel here :ant create-component ...
- MFC入门(一)-- 第一个简单的windows图形化界面小程序(打开计算器,记事本,查IP)
////////////////////////////////序//////////////////////////////// 大约三年前,学过一些简单的编程语言之后其实一直挺苦恼于所写的程序总是 ...
- 我的第一个上线小程序,案例实战篇二——LayaAir游戏开始界面开发
不知不觉我的第一个小程序已经上线一周了,uv也稳定的上升着. 很多人说我的小程序没啥用,我默默一笑,心里说:“它一直敦促我学习,敦促我进步”.我的以一个小程序初衷是经验分享,目前先把经验分享到博客园, ...
- DirectUI界面编程(一)创建第一个应用
1.获取Duilib库文件 通过上一节大家对DirectUI界面设计有了初步的了解,本节开始我们一起学习Duilib界面库的使用. 首先我们需要获取Duilib库,目前最新版本为2.0,最新版本源码托 ...
随机推荐
- hdu 1002.A + B Problem II 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1002 题目意思:就是大整数加法. 两年几前做的,纯粹是整理下来的. #include <stdi ...
- 自定义View和ViewGroup
为了扫除学习中的盲点,尽可能多的覆盖Android知识的边边角角,决定对自定义View做一个稍微全面一点的使用方法总结,在内容上面并没有什么独特的地方,其他大神们的博客上面基本上都有讲这方面的内容,如 ...
- 【leetcode】 Letter Combinations of a Phone Number(middle)
Given a digit string, return all possible letter combinations that the number could represent. A map ...
- IOS-JSON & XML解析
XML & JSON 简介 •JSON –作为一种轻量级的数据交换格式,正在逐步取代XML,成为网络数据的通用格式 –基于JavaScript的一个子集 –易读性略差,编码手写难度大,数据量小 ...
- 基于SSH2的OA项目1.0_20161206_需求分析与框架搭建
1. SSH项目 OA项目,办公自动化,将公司的数据,文档,流程实现在系统中的管理. 降低人员交流过程中的成本.提高办公的效率. 2 .系统管理 主要实现系统权限的管理,不同的用户登陆后看到菜单项不一 ...
- Java自定义注解开发
一.背景 最近在自己搞一个项目时,遇到可需要开发自定义注解的需求,对于没有怎么关注这些java新特性的来说,比较尴尬,索性就拿出一些时间,来进行研究下自定义注解开发的步骤以及使用方式.今天在这里记下, ...
- python 获取启动参数
pytho软件编写过程中,会经常使用带参数的启动脚本,这里记载下如何获取输入的参数. 使用sys.argv可获取启动时输入的所有参数,这个是数组,直接使用[]就可以获取,[0]代表的是启动文件时输入的 ...
- abcd
[问题描述]有4个长度为N的数组a,b,c,d.现在需要你选择N个数构成数组e,数组e满足a[i]≤e[i]≤b[i]以及 Σe[i]*c[i]=0,并且使得Σe[i]*d[i]最大.[输入格式]输入 ...
- iOS中常见的一些宏
原文链接 1.处理NSLog事件(开发者模式打印,发布者模式不打印) #ifdef DEBUG #define NSLog(FORMAT, ...) fprintf(stderr,"%s:% ...
- DBCC常用命令小汇
DBCC是SQL Server提供的一组控制台命令,功能很强大,掌握一些必要的语句,对操作数据库有不少帮助,所以决定整理一下,发现已有不少类似的整理,减少了不少工作,归类如下: 一.DBCC 帮助类命 ...