• 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="1250px;">
                <div  style="margin:10px 20px;float:left">
                    @*加载搜索框*@
                    请输入要查询的内容:
                    <input class="easyui-textbox" id="txtSearch" name="BidProjectId" onkeydown="Enter();" maxlength="20" style="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;  960px;">
    
           
            <table id="dt" class="easyui-datagrid" title="学生报表" style=" 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',150,align:'center'" >学号</th>
                        <th data-options="field:'StudentName',120,align:'center'">姓名</th>
                        <th data-options="field:'StudentSex',120,align:'center'">性别</th>
                        <th data-options="field:'StudentScore',120,align:'center'">分数</th>
                        <th data-options="field:'Education',120,align:'center'">学历</th>
                        <th data-options="field:'MajorName',150,align:'center'">专业名称</th>
                        <th data-options="field:'DepName',150,align:'center'">学院名称</th>
                        <th data-options="field:'StudentTel',150,align:'center'">联系方式</th>
                        <th data-options="field:'IsCheck',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>

    至于后台的服务端的界面,就没有什么好看的了,实现了模糊查询,效果很好!(数据库原因,效果贴图,另行补发)



    总结:

    学习,就是这样,一步通,步步通。学习的时候不能只是看,最终还是要动手看,没有动手,就永远没有真正的发言权!


  • 相关阅读:
    zabbix 添加 微信、邮件 媒介详解
    zabbix使用之常用功能使用心得
    Nginx1.8源码包编译安装
    httpd启动显示Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName'
    apache-httpd2.4编译安装
    apache-httpd2.2编译安装
    MYSQL5.7源码包编译安装
    MYSQL常见安装错误集:[ERROR] --initialize specified but the data directory has files in it. Abort
    MYSQL启用数据库错误:ERROR 2002 (HY000)
    编译mysql时CMake Error at cmake/readline.cmake:85 (MESSAGE)
  • 原文地址:https://www.cnblogs.com/DoubleEggs/p/5747168.html
Copyright © 2020-2023  润新知