@@ -39,6 +39,15 @@ namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||||
return View(); | return View(); | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// 主页面 | |||||
/// <summary> | |||||
/// <returns></returns> | |||||
[HttpGet] | |||||
public ActionResult IndexCenter() | |||||
{ | |||||
return View(); | |||||
} | |||||
/// <summary> | |||||
/// 银行 | /// 银行 | ||||
/// <summary> | /// <summary> | ||||
/// <returns></returns> | /// <returns></returns> | ||||
@@ -11,13 +11,13 @@ | |||||
<div class="lr-form-item-title">学号<font face="宋体">*</font></div> | <div class="lr-form-item-title">学号<font face="宋体">*</font></div> | ||||
<input id="StuNo" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" /> | <input id="StuNo" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" /> | ||||
</div> | </div> | ||||
<div class="col-xs-6 lr-form-item" data-table="StuInfoBasic"> | |||||
<div class="col-xs-6 lr-form-item" data-table="StuInfoBasic" id="CodeId"> | |||||
<div class="lr-form-item-title">学籍号</div> | <div class="lr-form-item-title">学籍号</div> | ||||
<input id="StuCode" type="text" class="form-control" /> | <input id="StuCode" type="text" class="form-control" /> | ||||
</div> | </div> | ||||
<div class="col-xs-6 lr-form-item" data-table="StuInfoBasic"> | |||||
<div class="lr-form-item-title">考生号<font face="宋体">*</font></div> | |||||
<input id="ksh" type="text" class="form-control" isvalid="yes" checkexpession="NotNull" /> | |||||
<div class="col-xs-6 lr-form-item" data-table="StuInfoBasic" id="KshId"> | |||||
<div class="lr-form-item-title">考生号</div> | |||||
<input id="ksh" type="text" class="form-control" /> | |||||
</div> | </div> | ||||
<div class="col-xs-6 lr-form-item" data-table="StuInfoBasic"> | <div class="col-xs-6 lr-form-item" data-table="StuInfoBasic"> | ||||
<div class="lr-form-item-title">通知书号<font face="宋体">*</font></div> | <div class="lr-form-item-title">通知书号<font face="宋体">*</font></div> | ||||
@@ -7,6 +7,7 @@ | |||||
var acceptClick; | var acceptClick; | ||||
var keyValue = request('keyValue'); | var keyValue = request('keyValue'); | ||||
var isStudent = request('isStudent'); | var isStudent = request('isStudent'); | ||||
var Crowning = request('Crowning'); | |||||
var bootstrap = function ($, learun) { | var bootstrap = function ($, learun) { | ||||
"use strict"; | "use strict"; | ||||
var page = { | var page = { | ||||
@@ -53,6 +54,21 @@ var bootstrap = function ($, learun) { | |||||
$("#InSchoolTelephone").parent().hide(); | $("#InSchoolTelephone").parent().hide(); | ||||
$("#JoinLeagueDate").parent().hide(); | $("#JoinLeagueDate").parent().hide(); | ||||
} | } | ||||
if (Crowning == "0") { | |||||
$('#KshId').show(); | |||||
$('#ksh').attr('isvalid', 'yes'); | |||||
$('#ksh').attr('checkexpession', 'NotNull'); | |||||
$('#CodeId').hide(); | |||||
$('#StuCode').removeAttr('isvalid'); | |||||
$('#StuCode').removeAttr('NotNull'); | |||||
} else { | |||||
$('#CodeId').show(); | |||||
$('#StuCode').attr('isvalid', 'yes'); | |||||
$('#StuCode').attr('checkexpession', 'NotNull'); | |||||
$('#KshId').hide(); | |||||
$('#ksh').removeAttr('isvalid'); | |||||
$('#ksh').removeAttr('NotNull'); | |||||
} | |||||
}, | }, | ||||
bind: function () { | bind: function () { | ||||
$('#DepositBank').lrDataItemSelect({ code: 'DepositBank' }); | $('#DepositBank').lrDataItemSelect({ code: 'DepositBank' }); | ||||
@@ -199,8 +215,10 @@ var bootstrap = function ($, learun) { | |||||
if (!$('body').lrValidform()) { | if (!$('body').lrValidform()) { | ||||
return false; | return false; | ||||
} | } | ||||
var data = $('body').lrGetFormData(); | |||||
data["Crowning"] = Crowning; | |||||
var postData = { | var postData = { | ||||
strEntity: JSON.stringify($('body').lrGetFormData()) | |||||
strEntity: JSON.stringify(data) | |||||
}; | }; | ||||
$.lrSaveForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/SaveForm?keyValue=' + keyValue, postData, function (res) { | $.lrSaveForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/SaveForm?keyValue=' + keyValue, postData, function (res) { | ||||
// 保存成功后才回调 | // 保存成功后才回调 | ||||
@@ -29,7 +29,7 @@ var bootstrap = function ($, learun) { | |||||
learun.layerForm({ | learun.layerForm({ | ||||
id: 'form', | id: 'form', | ||||
title: '新增', | title: '新增', | ||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form?Crowning=' + 0, | |||||
width: 800, | width: 800, | ||||
height: 600, | height: 600, | ||||
callBack: function (id) { | callBack: function (id) { | ||||
@@ -53,7 +53,7 @@ var bootstrap = function ($, learun) { | |||||
learun.layerForm({ | learun.layerForm({ | ||||
id: 'form', | id: 'form', | ||||
title: '编辑', | title: '编辑', | ||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form?keyValue=' + keyValue, | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form?keyValue=' + keyValue + '&Crowning=' + 0, | |||||
width: 800, | width: 800, | ||||
height: 600, | height: 600, | ||||
callBack: function (id) { | callBack: function (id) { | ||||
@@ -236,7 +236,7 @@ var bootstrap = function ($, learun) { | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/GetPageList', | url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/GetPageList', | ||||
headData: [ | headData: [ | ||||
{ label: "学号", name: "StuNo", width: 100, align: "left" }, | { label: "学号", name: "StuNo", width: 100, align: "left" }, | ||||
{ label: "学籍号", name: "StuCode", width: 100, align: "left" }, | |||||
//{ label: "学籍号", name: "StuCode", width: 100, align: "left" }, | |||||
{ label: "考生号", name: "ksh", width: 100, align: "left" }, | { label: "考生号", name: "ksh", width: 100, align: "left" }, | ||||
{ label: "通知书号", name: "NoticeNo", width: 100, align: "left" }, | { label: "通知书号", name: "NoticeNo", width: 100, align: "left" }, | ||||
{ label: "姓名", name: "StuName", width: 100, align: "left" }, | { label: "姓名", name: "StuName", width: 100, align: "left" }, | ||||
@@ -543,6 +543,7 @@ var bootstrap = function ($, learun) { | |||||
}, | }, | ||||
search: function (param) { | search: function (param) { | ||||
param = param || {}; | param = param || {}; | ||||
param.Crowning = 0; | |||||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | ||||
} | } | ||||
}; | }; | ||||
@@ -0,0 +1,272 @@ | |||||
@{ | |||||
ViewBag.Title = "学生学籍"; | |||||
Layout = "~/Views/Shared/_Index.cshtml"; | |||||
} | |||||
<div class="lr-layout "> | |||||
<div class="lr-layout-center"> | |||||
<div class="lr-layout-wrap lr-layout-wrap-notitle "> | |||||
<div class="lr-layout-tool"> | |||||
<div class="lr-layout-tool-left"> | |||||
<div class="lr-layout-tool-item"> | |||||
<div id="multiple_condition_query"> | |||||
<div class="lr-query-formcontent"> | |||||
<div class="col-xs-6 lr-form-item"> | |||||
<div class="lr-form-item-title">学号</div> | |||||
<input id="StuNo" type="text" class="form-control" /> | |||||
</div> | |||||
<div class="col-xs-6 lr-form-item"> | |||||
<div class="lr-form-item-title">姓名</div> | |||||
<input id="StuName" type="text" class="form-control" /> | |||||
</div> | |||||
<div class="col-xs-12 lr-form-item"> | |||||
<div class="lr-form-item-title">系部</div> | |||||
<div id="DeptNo"></div> | |||||
</div> | |||||
<div class="col-xs-12 lr-form-item"> | |||||
<div class="lr-form-item-title">专业</div> | |||||
<div id="MajorNo"></div> | |||||
</div> | |||||
<div class="col-xs-12 lr-form-item"> | |||||
<div class="lr-form-item-title">班级</div> | |||||
<div id="ClassNo"></div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
<div class="lr-layout-tool-right"> | |||||
<div class=" btn-group btn-group-sm"> | |||||
<a id="lr_refresh" class="btn btn-default"><i class="fa fa-refresh"></i></a> | |||||
</div> | |||||
<div class=" btn-group btn-group-sm" learun-authorize="yes"> | |||||
<a id="lr_add" class="btn btn-default"><i class="fa fa-plus"></i> 录入</a> | |||||
<a id="lr_edit" class="btn btn-default"><i class="fa fa-pencil-square-o"></i> 修改</a> | |||||
<a id="lr_delete" class="btn btn-default"><i class="fa fa-trash-o"></i> 删除</a> | |||||
<a id="lr_view" class="btn btn-default"><i class="fa fa-pencil-square-o"></i> 查看</a> | |||||
<a id="lr_print" class="btn btn-default"><i class="fa fa-print"></i> 打印</a> | |||||
<a id="check" class="btn btn-default"><i class="fa fa-lock"></i> 审核</a> | |||||
<a id="uncheck" class="btn btn-default"><i class="fa fa-unlock"></i> 去审</a> | |||||
<a id="checkall" class="btn btn-default"><i class="fa fa-print"></i> 审核全部</a> | |||||
<a id="lr_more" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false"> | |||||
<i class="fa fa-reorder"></i> <span class="lrlt">更多</span><span class="caret"></span> | |||||
</a> | |||||
<ul class="dropdown-menu pull-right"> | |||||
<li id="lr_generate"><a><i class="fa fa-linode"></i> 生成帐号</a></li> | |||||
<li id="lr_update"><a><i class="fa fa-braille"></i> 更新帐号</a></li> | |||||
<li id="lr_synPhoto"><a><i class="fa fa-braille"></i> 同步照片</a></li> | |||||
<li id="lr_searchChange"><a><i class="fa fa-search"></i> 查看异动</a></li> | |||||
<li id="lr_photo"><a><i class="fa fa-search"></i> 拍照</a></li> | |||||
<li id="lr_printInfo"><a><i class="fa fa-print"></i> 学生简历表</a></li> | |||||
<li id="lr_syn"><a><i class="fa fa-plus"></i> 同步系部</a></li> | |||||
<li id="lr_synmajor"><a><i class="fa fa-plus"></i> 同步专业</a></li> | |||||
</ul> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
<div class="lr-layout-body" id="gridtable"></div> | |||||
<div style="display: none" class="tailoring-container"> | |||||
<div class="black-cloth" onclick="closeTailor(this)"></div> | |||||
<div class="tailoring-content"> | |||||
<div class="tailoring-content-one"> | |||||
<label title="上传图片" for="chooseImg" class="l2-btn choose-btn"> | |||||
<input type="file" accept="image/jpg,image/jpeg,image/png" name="file" id="chooseImg" class="hidden" onchange="selectImg(this)"> | |||||
本地上传 | |||||
</label> | |||||
<label title="拍照" class="l2-btn choose-btn" id='capture' style="margin-left: 2%;">拍照</label> | |||||
<label title="重拍" class="l2-btn choose-btn" id='takeAgain' style="margin-left: 2%;">重拍</label> | |||||
<div class="close-tailoring" onclick="closeTailor(this)">×</div> | |||||
</div> | |||||
<div class="tailoring-content-two"> | |||||
<div class="tailoring-box-parcel"> | |||||
<video id="video" width="100%" height="100%" style="float: left;"></video> | |||||
<canvas id="canvas" width="482px" height="448px" style="float: left;" hidden="hidden"></canvas> | |||||
<div id="showImg" hidden="hidden" style="width: 100%;height:100%;"> | |||||
<img id="tailoringImg"> | |||||
</div> | |||||
</div> | |||||
<div class="preview-box-parcel"> | |||||
<p>图片预览:</p> | |||||
<div class="square previewImg"></div> | |||||
<div class="circular previewImg"></div> | |||||
</div> | |||||
</div> | |||||
<div class="tailoring-content-three"> | |||||
<button class="l2-btn cropper-reset-btn">复位</button> | |||||
<button class="l2-btn cropper-rotate-btn">旋转</button> | |||||
<button class="l2-btn cropper-scaleX-btn">换向</button> | |||||
<button class="l2-btn sureCut" id="sureCut">确定</button> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
</div> | |||||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuInfoBasic/IndexCenter.js", "/Content/camera/cropper.min.js", | |||||
"/Areas/EducationalAdministration/Views/StuEnroll/LodopFuncs.js") | |||||
@Html.AppendCssFile("/Content/camera/cropper.min.css", "/Content/camera/ImgCropping.css") | |||||
<script> | |||||
//弹出框水平垂直居中 | |||||
(window.onresize = function () { | |||||
var win_height = $(window).height(); | |||||
var win_width = $(window).width(); | |||||
if (win_width <= 768) { | |||||
$(".tailoring-content").css({ | |||||
"top": (win_height - $(".tailoring-content").outerHeight()) / 2, | |||||
"left": 0 | |||||
}); | |||||
} else { | |||||
$(".tailoring-content").css({ | |||||
"top": (win_height - $(".tailoring-content").outerHeight()) / 2, | |||||
"left": (win_width - $(".tailoring-content").outerWidth()) / 2 | |||||
}); | |||||
} | |||||
})(); | |||||
//图像上传 | |||||
function selectImg(file) { | |||||
if (!file.files || !file.files[0]) { | |||||
return; | |||||
} | |||||
var reader = new FileReader(); | |||||
reader.onload = function (evt) { | |||||
var replaceSrc = evt.target.result; | |||||
//更换cropper的图片 | |||||
$('#tailoringImg').cropper('replace', replaceSrc, false);//默认false,适应高度,不失真 | |||||
} | |||||
reader.readAsDataURL(file.files[0]); | |||||
mediaStreamTrack && mediaStreamTrack.stop(); | |||||
$("#video").hide(); | |||||
$("#showImg").show(); | |||||
} | |||||
//cropper图片裁剪 | |||||
$('#tailoringImg').cropper({ | |||||
aspectRatio: 5 / 7,//默认比例 | |||||
preview: '.previewImg',//预览视图 | |||||
guides: false, //裁剪框的虚线(九宫格) | |||||
autoCropArea: 0.5, //0-1之间的数值,定义自动剪裁区域的大小,默认0.8 | |||||
movable: false, //是否允许移动图片 | |||||
dragCrop: true, //是否允许移除当前的剪裁框,并通过拖动来新建一个剪裁框区域 | |||||
movable: true, //是否允许移动剪裁框 | |||||
resizable: true, //是否允许改变裁剪框的大小 | |||||
zoomable: false, //是否允许缩放图片大小 | |||||
mouseWheelZoom: false, //是否允许通过鼠标滚轮来缩放图片 | |||||
touchDragZoom: true, //是否允许通过触摸移动来缩放图片 | |||||
rotatable: true, //是否允许旋转图片 | |||||
crop: function (e) { | |||||
// 输出结果数据裁剪图像。 | |||||
} | |||||
}); | |||||
//旋转 | |||||
$(".cropper-rotate-btn").on("click", function () { | |||||
$('#tailoringImg').cropper("rotate", 45); | |||||
}); | |||||
//复位 | |||||
$(".cropper-reset-btn").on("click", function () { | |||||
$('#tailoringImg').cropper("reset"); | |||||
}); | |||||
//换向 | |||||
var flagX = true; | |||||
$(".cropper-scaleX-btn").on("click", function () { | |||||
if (flagX) { | |||||
$('#tailoringImg').cropper("scaleX", -1); | |||||
flagX = false; | |||||
} else { | |||||
$('#tailoringImg').cropper("scaleX", 1); | |||||
flagX = true; | |||||
} | |||||
flagX != flagX; | |||||
}); | |||||
//裁剪后的处理 | |||||
$("#sureCut").on("click", function () { | |||||
var cas = $('#tailoringImg').cropper('getCroppedCanvas');//获取被裁剪后的canvas | |||||
var base64url = cas.toDataURL('image/png'); //转换为base64地址形式 | |||||
base64url = base64url.replace("\r", ""); | |||||
top.learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/IsPhoto', { stuId: StuId, base64url: base64url }, | |||||
function (res) { | |||||
//关闭裁剪框 | |||||
StuId = ""; | |||||
closeTailor(); | |||||
refreshGirdData(); | |||||
}); | |||||
}); | |||||
//关闭裁剪框 | |||||
function closeTailor() { | |||||
StuId = ""; | |||||
$(".tailoring-container").toggle(); | |||||
mediaStreamTrack && mediaStreamTrack.stop(); | |||||
} | |||||
let video = document.getElementById('video'); | |||||
let canvas = document.getElementById('canvas'); | |||||
let context = canvas.getContext('2d'); | |||||
var mediaStreamTrack; | |||||
document.getElementById('capture').addEventListener('click', | |||||
function () { | |||||
context.drawImage(video, 0, 0, 518, 420); | |||||
mediaStreamTrack && mediaStreamTrack.stop(); | |||||
$('#tailoringImg').cropper('replace', canvas.toDataURL("image/png"), false); //默认false,适应高度,不失真 | |||||
$("#video").hide(); //隐藏拍照框 | |||||
$("#showImg").show(); //将拍照结果显示 | |||||
}); | |||||
//请求拍照 | |||||
$("#takeAgain").bind("click", function () { | |||||
takePhoto(); | |||||
}); | |||||
//开始拍照 | |||||
function takeImg() { | |||||
$(".tailoring-container").toggle(); | |||||
takePhoto(); | |||||
} | |||||
//请求摄像头 | |||||
function takePhoto() { | |||||
// 老的浏览器可能根本没有实现 mediaDevices,所以我们可以先设置一个空的对象 | |||||
if (navigator.mediaDevices === undefined) { | |||||
navigator.mediaDevices = {}; | |||||
} | |||||
if (navigator.mediaDevices.getUserMedia === undefined) { | |||||
navigator.mediaDevices.getUserMedia = function (constraints) { | |||||
// 首先,如果有getUserMedia的话,就获得它 | |||||
var getUserMedia = navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia; | |||||
// 一些浏览器根本没实现它 - 那么就返回一个error到promise的reject来保持一个统一的接口 | |||||
if (!getUserMedia) { | |||||
return Promise.reject(new Error('不支持此浏览器,请更换Chrome或360浏览器')); | |||||
} | |||||
// 否则,为老的navigator.getUserMedia方法包裹一个Promise | |||||
return new Promise(function (resolve, reject) { | |||||
getUserMedia.call(navigator, constraints, resolve, reject); | |||||
}); | |||||
} | |||||
} | |||||
const constraints = { | |||||
video: true, | |||||
audio: false | |||||
}; | |||||
let videoPlaying = false; | |||||
let promise = navigator.mediaDevices.getUserMedia(constraints); | |||||
promise.then(stream => { | |||||
// 旧的浏览器可能没有srcObject | |||||
if ("srcObject" in video) { | |||||
video.srcObject = stream; | |||||
mediaStreamTrack = stream.getTracks()[0]; | |||||
} else { | |||||
// 防止再新的浏览器里使用它,应为它已经不再支持了 | |||||
video.src = window.URL.createObjectURL(stream); | |||||
} | |||||
video.onloadedmetadata = function (e) { | |||||
video.play(); | |||||
videoPlaying = true; | |||||
}; | |||||
}).catch(err => { | |||||
console.error(err.name + ": " + err.message); | |||||
}); | |||||
$("#showImg").hide();//隐藏拍照结果显示框 | |||||
//$('#showImg').html('<img id="tailoringImg" hidden="hidden">') | |||||
$("#video").show();//开启拍照框 | |||||
} | |||||
</script> |
@@ -0,0 +1,554 @@ | |||||
var refreshGirdData; | |||||
var StuId; | |||||
var bootstrap = function ($, learun) { | |||||
"use strict"; | |||||
var page = { | |||||
init: function () { | |||||
page.initGird(); | |||||
page.bind(); | |||||
}, | |||||
bind: function () { | |||||
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) { | |||||
page.search(queryJson); | |||||
}, 220, 400); | |||||
$('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' }); | |||||
$('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' }); | |||||
$('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' }); | |||||
// 刷新 | |||||
$('#lr_refresh').on('click', function () { | |||||
location.reload(); | |||||
}); | |||||
$("#lr_photo").on('click', function () { | |||||
StuId = $("#gridtable").jfGridValue('StuId'); | |||||
if (learun.checkrow(StuId)) { | |||||
takeImg(); | |||||
} | |||||
}); | |||||
// 新增 | |||||
$('#lr_add').on('click', function () { | |||||
learun.layerForm({ | |||||
id: 'form', | |||||
title: '新增', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form?Crowning=' + 1, | |||||
width: 800, | |||||
height: 600, | |||||
callBack: function (id) { | |||||
return top[id].acceptClick(refreshGirdData); | |||||
} | |||||
}); | |||||
}); | |||||
// 编辑 | |||||
$('#lr_edit').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
if (keyValue.indexOf(',') != -1) { | |||||
learun.alert.warning("只能选择一条记录进行编辑!"); | |||||
return; | |||||
} | |||||
var CheckMark = $('#gridtable').jfGridValue('CheckMark'); | |||||
if (CheckMark === "1") { | |||||
learun.alert.warning("当前项目已审核不能编辑!"); | |||||
return; | |||||
} | |||||
learun.layerForm({ | |||||
id: 'form', | |||||
title: '编辑', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Form?keyValue=' + keyValue + '&Crowning=' + 1, | |||||
width: 800, | |||||
height: 600, | |||||
callBack: function (id) { | |||||
return top[id].acceptClick(refreshGirdData); | |||||
} | |||||
}); | |||||
} | |||||
}); | |||||
// 删除 | |||||
$('#lr_delete').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
var CheckMark = $('#gridtable').jfGridValue('CheckMark'); | |||||
if (CheckMark.indexOf('1') != -1) { | |||||
learun.alert.warning("选中记录中包含已审核项目,已审核不能删除!"); | |||||
return; | |||||
} | |||||
learun.layerConfirm('是否确认删除该项!', function (res) { | |||||
if (res) { | |||||
learun.deleteForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/DeleteForm', { keyValue: keyValue }, function () { | |||||
refreshGirdData(); | |||||
}); | |||||
} | |||||
}); | |||||
} | |||||
}); | |||||
//查看 | |||||
$('#lr_view').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
if (keyValue.indexOf(',') != -1) { | |||||
learun.alert.warning("只能选择一条记录进行查看!"); | |||||
return; | |||||
} | |||||
learun.layerForm({ | |||||
id: 'form', | |||||
title: '编辑', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/FormView?keyValue=' + keyValue, | |||||
width: 1162, | |||||
height: 600, | |||||
btn: null | |||||
}); | |||||
} | |||||
}); | |||||
// 打印 | |||||
$('#lr_print').on('click', function () { | |||||
$('#gridtable').jqprintTable(); | |||||
}); | |||||
//审核 | |||||
$('#check').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
var CheckMark = $('#gridtable').jfGridValue('CheckMark'); | |||||
if (CheckMark.indexOf('1') != -1) { | |||||
learun.alert.warning("选中记录中包含已审核项目!"); | |||||
return; | |||||
} | |||||
learun.layerConfirm('是否确认审核该项?', function (res) { | |||||
if (res) { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Check', { keyValue: keyValue }, function () { | |||||
refreshGirdData(); | |||||
}); | |||||
} | |||||
}); | |||||
} | |||||
}); | |||||
//去审 | |||||
$('#uncheck').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
var CheckMark = $('#gridtable').jfGridValue('CheckMark'); | |||||
var CheckMarkArr = CheckMark.split(','); | |||||
if ($.inArray('0', CheckMarkArr) != -1 || $.inArray('', CheckMarkArr) != -1) { | |||||
learun.alert.warning("选中记录中包含未审核项目!"); | |||||
return; | |||||
} | |||||
learun.layerConfirm('是否确认取消审核该项?', function (res) { | |||||
if (res) { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/UnCheck', { keyValue: keyValue }, function () { | |||||
refreshGirdData(); | |||||
}); | |||||
} | |||||
}); | |||||
} | |||||
}); | |||||
//审核全部 | |||||
$('#checkall').on('click', function () { | |||||
learun.layerConfirm('是否确认全部审核?', function (res) { | |||||
if (res) { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/CheckAll', {}, function () { | |||||
refreshGirdData(); | |||||
}); | |||||
} | |||||
}); | |||||
}); | |||||
//生成帐号 | |||||
$('#lr_generate').on('click', function () { | |||||
learun.layerConfirm('是否确认生成帐号?', function (res) { | |||||
if (res) { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Generate', {}, function () { | |||||
refreshGirdData(); | |||||
}); | |||||
} | |||||
}); | |||||
}); | |||||
$('#lr_update').on('click', function () { | |||||
learun.layerConfirm('是否确认更新帐号?', function (res) { | |||||
if (res) { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/UpdateAccount', {}, function () { | |||||
refreshGirdData(); | |||||
}) | |||||
} | |||||
}) | |||||
}) | |||||
//查看异动 | |||||
$("#lr_searchChange").on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
if (keyValue.indexOf(',') != -1) { | |||||
learun.alert.warning("只能选择一条记录!"); | |||||
return; | |||||
} | |||||
learun.layerForm({ | |||||
id: 'form', | |||||
title: '异动记录', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_ChangeLog/Index?keyValue=' + keyValue, | |||||
width: 800, | |||||
height: 600, | |||||
btn: null | |||||
}); | |||||
} | |||||
}) | |||||
//同步照片 | |||||
$('#lr_synPhoto').on('click', function () { | |||||
learun.loading(true, '正在同步,请稍后') | |||||
learun.httpAsync('get', top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/SynPhoto', {}, function (res) { | |||||
learun.loading(false) | |||||
}) | |||||
}) | |||||
//打印简历表 | |||||
$('#lr_printInfo').on('click', function () { | |||||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||||
if (learun.checkrow(keyValue)) { | |||||
if (keyValue.indexOf(',') != -1) { | |||||
learun.alert.warning("只能选择一条记录进行查看!"); | |||||
return; | |||||
} | |||||
learun.layerForm({ | |||||
id: 'print', | |||||
title: '学生简历表', | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/Print?keyValue=' + keyValue, | |||||
width: 1100, | |||||
height: 800, | |||||
btn: null | |||||
}); | |||||
} | |||||
}); | |||||
// 同步系部 | |||||
$('#lr_syn').on('click', function () { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/SyncDept', function () { | |||||
refreshGirdData(); | |||||
}); | |||||
}); | |||||
// 同步专业 | |||||
$('#lr_synmajor').on('click', function () { | |||||
learun.postForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/SyncMajor', function () { | |||||
refreshGirdData(); | |||||
}); | |||||
}); | |||||
}, | |||||
// 初始化列表 | |||||
initGird: function () { | |||||
$('#gridtable').jfGrid({ | |||||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic/GetPageList', | |||||
headData: [ | |||||
{ label: "学号", name: "StuNo", width: 100, align: "left" }, | |||||
{ label: "学籍号", name: "StuCode", width: 100, align: "left" }, | |||||
//{ label: "考生号", name: "ksh", width: 100, align: "left" }, | |||||
{ label: "通知书号", name: "NoticeNo", width: 100, align: "left" }, | |||||
{ label: "姓名", name: "StuName", width: 100, align: "left" }, | |||||
{ | |||||
label: "性别", name: "GenderNo", width: 80, align: "left", | |||||
formatter: function (cellvalue) { | |||||
return cellvalue == true ? "男" : "女"; | |||||
} | |||||
}, | |||||
{ label: "出生日期", name: "Birthday", width: 100, align: "left" }, | |||||
{ label: "身份证号", name: "IdentityCardNo", width: 100, align: "left" }, | |||||
{ | |||||
label: "民族", name: "NationalityNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'National', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "政治面貌", name: "PartyFaceNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'BCdPartyFace', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "系所", name: "DeptNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdDeptInfo', | |||||
key: value, | |||||
keyId: 'deptno', | |||||
callback: function (_data) { | |||||
callback(_data['deptname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "专业", name: "MajorNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdMajorInfo', | |||||
key: value, | |||||
keyId: 'majorno', | |||||
callback: function (_data) { | |||||
callback(_data['majorname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "班级", name: "ClassNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'bjsj', | |||||
key: value, | |||||
keyId: 'classno', | |||||
callback: function (_data) { | |||||
callback(_data['classname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ label: "年级", name: "Grade", width: 100, align: "left" }, | |||||
{ | |||||
label: "学制", name: "EduSystem", width: 100, align: "left", formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'EduSystem', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "学习形式", name: "StudyModality", width: 100, align: "left", formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'StudyModality', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ label: "报到日期", name: "RegisterDate", width: 100, align: "left" }, | |||||
{ label: "入学年月", name: "EntranceDate", width: 100, align: "left" }, | |||||
//{ label: "余额", name: "Balance", width: 100, align: "left" }, | |||||
{ label: "通讯地址", name: "MailAddress", width: 100, align: "left" }, | |||||
{ label: "联系电话", name: "mobile", width: 100, align: "left" }, | |||||
{ label: "户口所在地", name: "FatherUnit", width: 100, align: "left" }, | |||||
{ label: "档案所在地", name: "MatherUnit", width: 100, align: "left" }, | |||||
{ label: "户籍所在地", name: "Domicile", width: 100, align: "left" }, | |||||
{ | |||||
label: "户口分类", name: "ResidenceNo", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'ResidenceNo', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "籍贯 (省)", name: "F_ProvinceId", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_PROVINCE', | |||||
key: value, | |||||
keyId: 'pcode', | |||||
callback: function (_data) { | |||||
callback(_data['pname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "籍贯 (市)", name: "F_CityId", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_CITY', | |||||
key: value, | |||||
keyId: 'ccode', | |||||
callback: function (_data) { | |||||
callback(_data['cname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "籍贯 (县)", name: "F_CountyId", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('custmerData', { | |||||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_AREA', | |||||
key: value, | |||||
keyId: 'acode', | |||||
callback: function (_data) { | |||||
callback(_data['aname']); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
//{ label: "E-mail", name: "E-mail", width: 100, align: "center" }, | |||||
{ | |||||
label: "开户银行", name: "DepositBank", width: 100, align: "center", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'DepositBank', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ label: "开户卡账号", name: "BankCard", width: 100, align: "center" }, | |||||
{ label: "开户银行位置", name: "BankLocation", width: 100, align: "center" }, | |||||
{ label: "邮政编码", name: "PostalCode", width: 100, align: "center" }, | |||||
{ | |||||
label: "是否单亲", name: "IsSingle", width: 100, align: "left", | |||||
formatter: function (value, row) { | |||||
if (value == true) { | |||||
return '是'; | |||||
} | |||||
else if (value == false) { | |||||
return '否'; | |||||
} | |||||
} | |||||
}, | |||||
{ label: "父亲姓名", name: "FatherName", width: 100, align: "center" }, | |||||
{ label: "身份证号", name: "OneIdCardNo", width: 100, align: "center" }, | |||||
{ label: "父亲电话", name: "FatherPhone", width: 100, align: "center" }, | |||||
{ label: "户籍地址", name: "OneDomicile", width: 100, align: "center" }, | |||||
{ label: "现住址", name: "OneAddress", width: 100, align: "center" }, | |||||
{ label: "母亲姓名", name: "MatherName", width: 100, align: "center" }, | |||||
{ label: "身份证号", name: "TwoIdCardNo", width: 100, align: "center" }, | |||||
{ label: "母亲电话", name: "MatherPhone", width: 100, align: "center" }, | |||||
{ label: "户籍地址", name: "TwoDomicile", width: 100, align: "center" }, | |||||
{ label: "现住址", name: "TwoAddress", width: 100, align: "center" }, | |||||
{ label: "监护人姓名", name: "GuardianName", width: 100, align: "center" }, | |||||
{ label: "身份证号", name: "GuardianIdCardNo", width: 100, align: "center" }, | |||||
{ label: "监护人电话", name: "GuardianPhone", width: 100, align: "center" }, | |||||
{ label: "户籍地址", name: "GuardianDomicile", width: 100, align: "center" }, | |||||
{ label: "现住址", name: "GuardianAddress", width: 100, align: "center" }, | |||||
{ | |||||
label: "家庭出身", name: "FamilyOriginNo", width: 100, align: "center", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'BCdFamilyOrigin', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "港澳台侨", name: "OverseasChineseNo", width: 100, align: "center", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'BCdOverseasChinese', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "本专科", name: "GraduateNo", width: 100, align: "center", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'CollegeType', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ label: "毕业证号", name: "DiplomaNo", width: 100, align: "center" }, | |||||
{ | |||||
label: "毕业日期", name: "GraduateYear", width: 100, align: "center", | |||||
formatter: function (cellvalue) { | |||||
return learun.formatDate(cellvalue, 'yyyy-MM-dd'); | |||||
} | |||||
}, | |||||
{ label: "毕业证书备注", name: "DiplomaRemark", width: 100, align: "center" }, | |||||
//{ | |||||
// label: "入党时间", name: "BankCard", width: 100, align: "center", | |||||
// formatter: function (cellvalue) { | |||||
// return learun.formatDate(cellvalue, 'yyyy-MM-dd'); | |||||
// } | |||||
//}, | |||||
//{ | |||||
// label: "入团时间", name: "BankCard", width: 100, align: "center", | |||||
// formatter: function (cellvalue) { | |||||
// return learun.formatDate(cellvalue, 'yyyy-MM-dd'); | |||||
// } | |||||
//}, | |||||
{ label: "校内地址", name: "InSchoolAddress", width: 100, align: "center" }, | |||||
{ label: "校内电话", name: "InSchoolTelephone", width: 100, align: "center" }, | |||||
{ label: "QQ", name: "QQ", width: 100, align: "center" }, | |||||
{ label: "特长", name: "GoodAt", width: 100, align: "center" }, | |||||
{ label: "备注", name: "Remark", width: 200, align: "center" }, | |||||
{ | |||||
label: "异动状态", name: "MoveStatus", width: 80, align: "center", | |||||
formatter: function (cellvalue) { | |||||
return cellvalue == "1" ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>"; | |||||
} | |||||
}, | |||||
{ | |||||
label: "异动类型", name: "MoveType", width: 100, align: "left", | |||||
formatterAsync: function (callback, value, row, op, $cell) { | |||||
learun.clientdata.getAsync('dataItem', { | |||||
key: value, | |||||
code: 'StuChangeType', | |||||
callback: function (_data) { | |||||
callback(_data.text); | |||||
} | |||||
}); | |||||
} | |||||
}, | |||||
{ | |||||
label: "审核状态", name: "CheckMark", width: 80, align: "center", | |||||
formatter: function (cellvalue) { | |||||
return cellvalue == "1" ? "<span class=\"label label-success\">已审核</span>" : "<span class=\"label label-danger\">未审核</span>"; | |||||
} | |||||
} | |||||
], | |||||
mainId: 'StuId', | |||||
isPage: true, | |||||
isMultiselect: true, | |||||
//onSelectRow: function (rowdata) { | |||||
// if (rowdata.CheckMark == "1") { | |||||
// $("#check").hide(); | |||||
// $("#uncheck").show(); | |||||
// $("#lr_edit").hide(); | |||||
// $("#lr_delete").hide(); | |||||
// } else { | |||||
// $("#uncheck").hide(); | |||||
// $("#check").show(); | |||||
// $("#lr_edit").show(); | |||||
// $("#lr_delete").show(); | |||||
// } | |||||
//} | |||||
}); | |||||
page.search(); | |||||
}, | |||||
search: function (param) { | |||||
param = param || {}; | |||||
param.Crowning = 1; | |||||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | |||||
} | |||||
}; | |||||
refreshGirdData = function () { | |||||
page.search(); | |||||
}; | |||||
page.init(); | |||||
} |
@@ -1029,6 +1029,7 @@ | |||||
<Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfStudent.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfStudent.js" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfThree.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfThree.js" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfTwo.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuFellowship\IndexOfTwo.js" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\IndexCenter.js" /> | |||||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\SoonGraduateIndex.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\SoonGraduateIndex.js" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuScoreNotPassTwo\IndexUnpassTwoOfElective.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuScoreNotPassTwo\IndexUnpassTwoOfElective.js" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuScoreNotPassTwo\InputScoreIndexOfElectiveInTeacher.js" /> | <Content Include="Areas\EducationalAdministration\Views\StuScoreNotPassTwo\InputScoreIndexOfElectiveInTeacher.js" /> | ||||
@@ -8271,6 +8272,7 @@ | |||||
<Content Include="Areas\LogisticsManagement\Views\RepairReportTeacher\EvaluateFormView.cshtml" /> | <Content Include="Areas\LogisticsManagement\Views\RepairReportTeacher\EvaluateFormView.cshtml" /> | ||||
<Content Include="Areas\LogisticsManagement\Views\RepairReportStudent\EvaluateFormView.cshtml" /> | <Content Include="Areas\LogisticsManagement\Views\RepairReportStudent\EvaluateFormView.cshtml" /> | ||||
<Content Include="Areas\PersonnelManagement\Views\ADR_Restriction\FormDay.cshtml" /> | <Content Include="Areas\PersonnelManagement\Views\ADR_Restriction\FormDay.cshtml" /> | ||||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\IndexCenter.cshtml" /> | |||||
<None Include="Properties\PublishProfiles\CustomProfile.pubxml" /> | <None Include="Properties\PublishProfiles\CustomProfile.pubxml" /> | ||||
<None Include="Properties\PublishProfiles\FolderProfile.pubxml" /> | <None Include="Properties\PublishProfiles\FolderProfile.pubxml" /> | ||||
<Content Include="Views\Login\Default-beifen.cshtml" /> | <Content Include="Views\Login\Default-beifen.cshtml" /> | ||||
@@ -799,6 +799,11 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||||
/// </summary> | /// </summary> | ||||
[Column("MOVESTATUS")] | [Column("MOVESTATUS")] | ||||
public int? MoveStatus { get; set; } | public int? MoveStatus { get; set; } | ||||
/// <summary> | |||||
/// 中职高职 0 高职 1 中职 | |||||
/// </summary> | |||||
[Column("CROWNING")] | |||||
public string Crowning { get; set; } | |||||
#endregion | #endregion | ||||
@@ -45,6 +45,11 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||||
var queryParam = queryJson.ToJObject(); | var queryParam = queryJson.ToJObject(); | ||||
// 虚拟参数 | // 虚拟参数 | ||||
var dp = new DynamicParameters(new { }); | var dp = new DynamicParameters(new { }); | ||||
if (!queryParam["Crowning"].IsEmpty()) | |||||
{ | |||||
dp.Add("Crowning", queryParam["Crowning"].ToString(), DbType.String); | |||||
strSql.Append(" AND t.Crowning = @Crowning "); | |||||
} | |||||
if (!queryParam["StuNo"].IsEmpty()) | if (!queryParam["StuNo"].IsEmpty()) | ||||
{ | { | ||||
dp.Add("StuNo", queryParam["StuNo"].ToString(), DbType.String); | dp.Add("StuNo", queryParam["StuNo"].ToString(), DbType.String); | ||||