//dataGrid自适应

$(window).resize(function() {

$('#dgUser').datagrid('resize')

});

var businessTypes = [{ "value": "1","text": "电音" }, { "value": "2","text": "管乐器" }, { "value": "3","text": "吉他" }, { "value": "4","text": "钢琴" }];

var authoritys = [{ "value": "2","text": "管理者" }, { "value": "3","text": "技术" }, { "value": "5","text": "YAMAHA技术" }];

function businessTypeValue(value) {

varvalues = new Array();

values =value.split(',');

varbusinessType = "";

for(vari = 0; i < businessTypes.length; i++) {

if(values.length > 0) {

for(varj = 0; j < values.length; j++) {

if (businessTypes[i].value ==values[j]) {

businessType += businessTypes[i].text + ",";

}

}

}

if(businessTypes[i].value == value) {

returnbusinessTypes[i].text;

}

}

businessType = businessType.substring(0, businessType.length - 1);

returnbusinessType;

}

function authorityValue(value) {

varvalues = new Array();

values =value.split(',');

varauthority = "";

for(vari = 0; i < authoritys.length; i++) {

if(values.length > 0) {

for(varj = 0; j < values.length; j++) {

if (authoritys[i].value == values[j]) {

authority += authoritys[i].text + ",";

}

}

}

if(authoritys[i].value == value) {

returnauthoritys[i].text;

}

}

authority= authority.substring(0, authority.length - 1);

returnauthority;

}

$(function () {

if($('#statusBF').val() == 1) {

$('#zc').combobox({ selected: true});

}

if($('#statusBF').val() == 2) {

$('#hmd').combobox({ selected: true});

}

if($('#statusBF').val() == 3) {

$('#cx').combobox({ selected: true});

}

if($('#busTypes').val() == 1)

{

$('#P').show();

$("#gqs").attr("checked",true);

}

if($('#busTypes').val() == 2) {

$('#W').show();

$("#gyqs").attr("checked",true);

}

if($('#busTypes').val() == 3) {

$('#GT').show();

$("#gts").attr("checked",true);

}

if($('#busTypes').val() == 4) {

$('#DY').show();

$("#dys").attr("checked",true);

}

//绑定用户管理数据

$("#dgUser").datagrid({

method: 'get',

queryParams: queryParams,

url:locationAddress + "/SysUser/UserList?rand="+ Math.random(),//加载的URL

pagination:true,//显示分页

pageSize: 15,//分页大小

singleSelect: true,//只允许选择单行

pageList: [5, 10, 15, 20],//每页的个数

fit: false,//自动补全

fitColumns: true,

iconCls: "icon-save",//图标

title: "用户信息",

loadMsg:"正在加载,请稍等...",

rownumbers: true,//行号

autoRowHeight: true,//定义是否设置基于该行内容的行高度

striped: true,//设置为 true,则把行条纹化。(即奇偶行使用不同背景色)

columns: [[      //每个列具体内容

{

field: 'UserId', title: 'ID', width:100

},

{

field: 'UserName', title: '姓名', width: 100

},

{

field: 'Password', title: '密码', width: 100

},

{

field: 'AsId', title: '公司', width: 100

},

{

field: 'BusinessType', title: '分类', width:100, formatter: businessTypeValue, editor: { type: 'combobox',options: { data: businessTypes, valueField: "value",textField: "text", panelHeight: 'auto', multiple: true } }

},

{

field: 'RoleID', title: '权限', width: 100, formatter: authorityValue,editor: { type: 'combobox', options: { data: authoritys,valueField: "value",textField: "text", panelHeight: 'auto' } }

},

{

field: 'Mail', title: '邮件地址', width: 100

},

{

field: 'id', title: '操作', width: 88, align: "center",

formatter: function(value, row, index) {

varhtml = "<a href='javascript:void(0)' οnclick=\"editeUser('"+ row.UserId + "','" + row.UserName + "','" + row.Password + "','"+ row.AsId + "','" + row.BusinessType + "','" + row.RoleID + "','"+ row.Mail + "','" + row.Remark + "')\">修改</a>&nbsp;&nbsp;&nbsp;";

html += "<a href='javascript:void(0)'   οnclick=\"deleUser('" + row.UserId + "')\">删除</a>";

returnhtml;

}

}

]],

loadFilter: function (data) {

return data;

}

});

varqueryParams = $('#dgUser').datagrid('options').queryParams;

//设置分页控件

varp = $('#dgUser').datagrid('getPager');

$(p).pagination({

beforePageText: '第',//页数文本框前显示的汉字

afterPageText: '页    共 {pages} 页',

displayMsg: '当前显示 {from} - {to} 条记录   共 {total} 条记录',

});

//查询按钮

$("#selectUser").click(function() {

$("#dgUser").datagrid("reload");

queryParams["Cauthority"] = $("#cauthority").combobox('getValue');

queryParams["BusinessType"] = $("#businessType").combobox('getValue');

queryParams["UserId"] = $("input[name=userId]").val();

$('#dgUser').datagrid('options').queryParams= queryParams;

$('#dgUser').datagrid("reload");

});

//修改弹窗初始关闭

$('#editUserDialog').dialog('close');

$("#menuDialog").dialog("close");

});

//删除单条数据

function deleUser(id, UserId) {

$.messager.confirm("删除操作", "是否继续删除操作?", function (r) {

if(r) {

$.get(locationAddress + "/SysUser/DeleteUser?rand="+ Math.random(), { userId: id }, function (data){

if (data == 0)

$.messager.alert("删除操作", "删除失败");

else {

$.messager.alert("删除操作", "删除成功");

$("#dgUser").datagrid("reload");

}

})

}

});

}

//修改单条数据

functionediteUser(userId,userName,password,asId, businessType, roleID, mail, remark) {

$("#userId").val(userId);

$("#userName").val(userName);

$("#password").val(password);

$("#asId").val(asId);

$("#mail").val(mail);

$("#remark").val(remark);

$('#roleID').combobox('setValue',roleID);

varopts = businessType.split(',');

for(vari = 0; i < businessTypes.length; i++) {

if(opts.length > 0) {

for(varj = 0; j < opts.length; j++) {

if (businessTypes[i].value == opts[j]){

if (businessTypes[i].value == "1")

$("#dy").attr("checked",true);

if (businessTypes[i].value == "2")

$("#gyq").attr("checked",true);

if (businessTypes[i].value == "3")

$("#jt").attr("checked",true);

if (businessTypes[i].value == "4")

$("#gq").attr("checked",true);

}

}

}

}

$('#editUserDialog').dialog({

title: '修改用户信息',

width: 300,

height: 500,

closed: false,

cache: false,

modal: true,

buttons: [{

text: '确认修改',

handler: function () {

var userIdValue = $('#userId').val();

var userNameValue = $('#userName').val();

varpasswordValue = $('#password').val();

var asIdValue = $('#asId').val();

var roleIDValue = $('#roleID').combobox('getValue');

var businessTypeValue = "";

var obj = document.getElementsByName("businessType");

for (vari = 0; i < obj.length; i++) {

if (obj[i].checked) {

businessTypeValue +=obj[i].value + ",";

}

}

businessTypeValue = businessTypeValue.substring(0,businessTypeValue.length - 1);

var mailValue = $('#mail').val();

var remarkValue = $('#remark').val();

if (passwordValue == '')

$.messager.alert("操作提示", "密码不能为空");

{

$.post(locationAddress + "/SysUser/UpdateUser?rand="+ Math.random(), {userId:userIdValue, userName:userNameValue,password:passwordValue,asId:asIdValue,roleID:roleIDValue,businessType: businessTypeValue, mail: mailValue, remark: remarkValue},

function(data) {

if(data > 0) {

$.messager.alert("操作提示", "修改成功");

$('#addUserDialog').dialog('close');

$("#dgUser").datagrid("reload");

}

else

$.messager.alert("操作提示", "修改失败");

});

}

}

}, {

text: '关闭',

handler: function () { $("input[name='businessType']").attr("checked", false);$('#editUserDialog').dialog('close'); }

}]

});

}

@model Model.M00111

@{

ViewBag.Title = "AsArchivesInput";

}

<script src="~/Scripts/AsArchivesManagement/AsArchivesInput.js"></script>

<div class="yamahaDiv">

<div class="yamahaStyle">维修站信息</div>

<div style="padding:10px10px10px10px;">

<form method="post">

<table border="0">

<tr>

<td style="margin:5px0px0px20px;float:right;">名称</td>

<td>

<input class="easyui-validatebox"type="text"size="25"value="@Model.AsFullName"/>

</td>

<td style="margin:5px0px0px70px;float:right;">简称</td>

<td>

<!--<input type="text" name="name"disabled="disabled" size="25" id="jname"/></td>-->

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.AsName" id="jname"/>

</td>

<td id="discount1"style="margin:5px0px0px82px;float:right;">省份</td>

<td width="110px">

<select class="easyui-combobox"style="padding-right:60px;width:162px;"panelheight="auto"id="province">

<option value="0">@Model.Province</option>

<option value="province">请选择所在省份</option>

<option value="zxs">直辖市 </option>

<option value="jss">江苏省 </option>

<option value="fjs">福建省 </option>

<option value="gds">广东省 </option>

<option value="gss">甘肃省 </option>

</select>

</td>

<td style="margin:5px0px0px20px;float:right;">城市</td>

<td>

<select class="easyui-combobox"id="city"style="padding-right:60px;width:162px;"panelheight="auto">

<option value="0">@Model.City</option>

<option value="city">请选择所在城市 </option>

</select>

</td>

</tr>

<tr>

<td style="margin:5px0px0px50px;float:right;">状态</td>

<td>

<select class="easyui-combobox"id="status"style="padding-right:60px;width:162px;"panelheight="auto">

<option value="1"id="zc">正常</option>

<option value="2"id="hmd">黑名单</option>

<option value="3"id="cx">撤消</option>

</select>

<input type="text"id="statusBF"value="@Model.Status" style="display:none;"/>

</td>

<td style="margin:5px0px0px70px;float:right;">公司代码</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"id="jehj3"value="@Model.AsId" />

</td>

<td style="margin:5px0px0px60px;float:right;">类别</td>

<td>

<select class="easyui-combobox"name="language"style="padding-right:60px;width:162px;"panelheight="auto"id="asType">

<option value="1">经销商</option>

<option value="2">维修站</option>

<option value="3">YAMAHA本社</option>

</select>

</td>

</tr>

<tr>

<td style="margin:5px0px0px49px;float:right;">开户行</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"id="jehj"value="@Model.Bank" />

</td>

<td style="margin:5px0px0px70px;float:right;">账号</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"id="dd"value="@Model.BankAccount"/>

</td>

<td style="margin:5px0px0px60px;float:right;">税号</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"id="kpje"value="@Model.TaxNo" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px49px;float:right;">黑名单原因</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="79"id="wxbz"value="@Model.BlacklistReasons"/>

</td>

<td style="margin:5px0px0px60px;float:right;">业务种类</td>

<td colspan="3">

<input type="checkbox"name="businessTypes"value="1"id="dys"style="float:left;margin-top:7px;"/><span style="padding-top:5px;padding-right:4px;float:left;">电音</span>

<input type="checkbox"name="businessTypes"value="2"id="gyqs"style="float:left;margin-top:7px;"/><span style="padding-top:5px;padding-right:4px;float:left;">管乐器</span>

<input type="checkbox"name="businessTypes"value="3"id="jts"style="float:left;margin-top:7px;"/><span style="padding-top:5px;padding-right:4px;float:left;">吉他</span>

<input type="checkbox"name="businessTypes"value="4"id="gqs"style="float:left;margin-top:7px;"/><span style="padding-top:5px;padding-right:4px;float:left;">钢琴</span>

</td>

<td><input type="text"id="busTypes"value="@Model.BusinessType"  style="display:none;"/></td>

</tr>

<tr>

<td style="margin:5px0px0px50px;float:right;">备注</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"data-options="required:true"size="79"id="jehj2"value="@Model.Remark" />

</td>

</tr>

</table>

</form>

</div>

</div>

<div class="yamahaDiv"id="P"hidden="hidden">

<div class="yamahaStyle">钢琴</div>

<div style="padding:10px10px10px10px;">

<table border="0">

<tr>

<td style="margin:5px0px0px86px;float:right;">代码</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Code" />

</td>

<td style="margin:5px0px0px105px;float:right;">类别</td>

<td>

<select class="easyui-combobox"name="language"style="padding-right:60px;width:162px;"data-options="multiple:true,disabled:true"panelheight="auto">

<option value="W">管乐器</option>

<option value="DY">电音</option>

<option value="P"selected="selected">钢琴</option>

<option value="GT">吉他</option>

</select>

</td>

<td style="margin:5px0px0px78px;float:right;">建站日期</td>

<td width="110px">

<input class="easyui-datebox"data-options=""size="25"value="@Model.EstablishmentDate"/>

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">等级</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"value="@Model.Grade" />

</td>

<td style="margin:5px0px0px0px;float:right;">状态</td>

<td>

<input class="easyui-validatebox"type="text"id="pstatus"data-options="required:true"size="25"value="@Model.Status" />

</td>

<td style="margin:5px0px0px0px;float:right;">电话</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Phone" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">地址</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="78"value="@Model.Address" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">传真</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Fax" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮编</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.ZipCode" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮件</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mail" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">经理</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Manager" />

</td>

<td style="margin:5px0px0px0px;float:right;">负责人</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.PersonInCharge"/>

</td>

<td style="margin:5px0px0px0px;float:right;">手机</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mobile" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">维修员1</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance1"/>

</td>

<td style="margin:5px0px0px0px;float:right;">维修员2</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance2"/>

</td>

</tr>

</table>

</div>

</div>

AsArchivesInput.cshtml

<div class="yamahaDiv"id="W"hidden="hidden">

<div class="yamahaStyle">管乐器</div>

<div style="padding:10px10px10px10px;">

<table border="0">

<tr>

<td style="margin:5px0px0px86px;float:right;">代码</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Code" />

</td>

<td style="margin:5px0px0px105px;float:right;">类别</td>

<td>

<select class="easyui-combobox"name="language"style="padding-right:60px;width:162px;"data-options="multiple:true,disabled:true"panelheight="auto">

<option value="W"selected="selected">管乐器</option>

<option value="DY">电音</option>

<option value="P">钢琴</option>

<option value="GT">吉他</option>

</select>

</td>

<td style="margin:5px0px0px78px;float:right;">建站日期</td>

<td width="110px">

<input class="easyui-datebox"data-options=""size="25"value="@Model.EstablishmentDate"/>

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">等级</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"value="@Model.Grade" />

</td>

<td style="margin:5px0px0px0px;float:right;">状态</td>

<td>

<input class="easyui-validatebox"type="text"id="wstatus"data-options="required:true"size="25"  value="@Model.Status"/>

</td>

<td style="margin:5px0px0px0px;float:right;">电话</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Phone" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">地址</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="78"value="@Model.Address" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">传真</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Fax" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮编</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.ZipCode" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮件</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mail" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">经理</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Manager" />

</td>

<td style="margin:5px0px0px0px;float:right;">负责人</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.PersonInCharge"/>

</td>

<td style="margin:5px0px0px0px;float:right;">手机</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mobile" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">维修员1</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance1"/>

</td>

<td style="margin:5px0px0px0px;float:right;">维修员2</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance2"/>

</td>

</tr>

</table>

</div>

</div>

<div class="yamahaDiv"id="GT"hidden="hidden">

<div class="yamahaStyle">吉他</div>

<div style="padding:10px10px10px10px;">

<table border="0">

<tr>

<td style="margin:5px0px0px86px;float:right;">代码</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Code" />

</td>

<td style="margin:5px0px0px105px;float:right;">类别</td>

<td>

<select class="easyui-combobox"name="language"style="padding-right:60px;width:162px;"data-options="multiple:true,disabled:true"panelheight="auto">

<option value="W">管乐器</option>

<option value="DY">电音</option>

<option value="P">钢琴</option>

<option value="GT"selected="selected">吉他</option>

</select>

</td>

<td style="margin:5px0px0px78px;float:right;">建站日期</td>

<td width="110px">

<input class="easyui-datebox"data-options=""size="25"value="@Model.EstablishmentDate"/>

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">等级</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"value="@Model.Grade" />

</td>

<td style="margin:5px0px0px0px;float:right;">状态</td>

<td>

<input class="easyui-validatebox"type="text"id="gtstatus"data-options="required:true"size="25"value="@Model.Status" />

</td>

<td style="margin:5px0px0px0px;float:right;">电话</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Phone" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">地址</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="78"value="@Model.Address" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">传真</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Fax" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮编</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.ZipCode" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮件</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mail" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">经理</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Manager" />

</td>

<td style="margin:5px0px0px0px;float:right;">负责人</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.PersonInCharge"/>

</td>

<td style="margin:5px0px0px0px;float:right;">手机</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mobile" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">维修员1</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance1"/>

</td>

<td style="margin:5px0px0px0px;float:right;">维修员2</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance2"/>

</td>

</tr>

</table>

</div>

</div>

<div class="yamahaDiv"id="DY"hidden="hidden">

<div class="yamahaStyle">电音</div>

<div style="padding:10px10px10px10px;">

<table border="0">

<tr>

<td style="margin:5px0px0px86px;float:right;">代码</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Code" />

</td>

<td style="margin:5px0px0px105px;float:right;">类别</td>

<td>

<select class="easyui-combobox"name="language"style="padding-right:60px;width:162px;"data-options="multiple:true,disabled:true"panelheight="auto">

<option value="W">管乐器</option>

<option value="DY"selected="selected">电音</option>

<option value="W">钢琴</option>

<option value="GT">吉他</option>

</select>

</td>

<td style="margin:5px0px0px78px;float:right;">建站日期</td>

<td width="110px">

<input class="easyui-datebox"data-options=""size="25"value="@Model.EstablishmentDate"/>

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">等级</td>

<td>

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="25"value="@Model.Grade" />

</td>

<td style="margin:5px0px0px0px;float:right;">状态</td>

<td>

<input class="easyui-validatebox"type="text"id="dystatus"data-options="required:true"size="25"  value="@Model.Status"/>

</td>

<td style="margin:5px0px0px0px;float:right;">电话</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Phone" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">地址</td>

<td colspan="3">

<input class="easyui-validatebox"type="text"name="name"data-options="required:true"size="78"value="@Model.Address" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">传真</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Fax" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮编</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.ZipCode" />

</td>

<td style="margin:5px0px0px0px;float:right;">邮件</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mail" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">经理</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Manager" />

</td>

<td style="margin:5px0px0px0px;float:right;">负责人</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.PersonInCharge"/>

</td>

<td style="margin:5px0px0px0px;float:right;">手机</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Mobile" />

</td>

</tr>

<tr>

<td style="margin:5px0px0px0px;float:right;">维修员1</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance1"/>

</td>

<td style="margin:5px0px0px0px;float:right;">维修员2</td>

<td>

<input class="easyui-validatebox"type="text"data-options="required:true"size="25"value="@Model.Maintenance2"/>

</td>

</tr>

</table>

</div>

</div>

<div id="editUserDialog"class="easyui-dialog">

<form method="post"action="">

<table>

<tr>

<td style="margin:15px0px10px10px;float:right">ID</td>

<td><input class="easyui-textbox"  id="userId"type="text"size="31"disabled="disabled"/></td>

</tr>

<tr>

<td style="margin:15px0px10px10px;float:right">姓名</td>

<td><input class="easyui-textbox"  id="userName"type="text"size="31"/></td>

</tr>

<tr>

<td style="margin:15px0px10px10px;float:right">密码</td>

<td><input class="easyui-textbox"  id="password"type="text"size="31"/></td>

</tr>

<tr>

<td style="margin:15px0px10px10px;float:right">公司</td>

<td><input class="easyui-textbox"  id="asId"type="text"size="31"disabled="disabled"/></td>

</tr>

<tr>

<td style="padding:15px0px10px10px;float:right">分类</td>

<td>

<div class="easyui-panel" style="width:inherit;margin-top:0px;height:79px;">

<input type="checkbox"name="businessType"value="1"id="dy"/>电音<br/>

<input type="checkbox"name="businessType"value="2"id="gyq"/>管乐器<br/>

<input type="checkbox"name="businessType"value="3"id="jt"/>吉他<br/>

<input type="checkbox"name="businessType"value="4"id="gq"/>钢琴<br/>

</div>

</td>

</tr>

<tr>

<td style="padding:15px0px10px10px;float:right">权限</td>

<td>

@*data-options="multiple: true"*@

<select class="easyui-combobox"panelheight="auto"style="width:197px"id="roleID">

<option value="2"id="glz">管理者</option>

<option value="3"id="js">技术</option>

<option value="5"id="yamahajs">YAMAHA技术</option>

</select>

</td>

</tr>

<tr>

<td style="padding:15px0px10px10px;float:right">邮件地址</td>

<td><input class="easyui-textbox"name="mail"id="mail"type="text"size="31"/></td>

</tr>

<tr>

<td style="padding:15px0px10px10px;float:right">备注</td>

<td><input class="easyui-textbox"name="remark"id="remark"type="text"size="31"/></td>

</tr>

</table>

</form>

</div>

<div id="menuDialog"class="easyui-dialog">

<ul id="menuTree"></ul>

</div>

<div class="yamahaDiv">

<div class="yamahaStyle">用户</div>

<div style="padding:10px10px10px10px;">

<table id="dgUser"data-options="

rownumbers:true,

singleSelect:false,

toolbar: '#tb',

autoRowHeight:false,

pagination:false,

checkOnSelect:false,

iconCls: 'icon-edit',

checkOnSelect: false,

selectOnCheck: false,

pageSize:10">

</table>

<div id="tb"style="height:auto">

<table>

<tr>

<td>用户名</td>

<td><input class="easyui-textbox"name="userId"type="text"/></td>

<td style="float:right;padding:5px0030px">业务种类</td>

<td>

<select class="easyui-combobox"panelheight="auto"style="width:133px"id="businessType">

<option value="0">-------请选择-------</option>

<option value="1"id="cdy">电音</option>

<option value="2"id="cgyq">管乐器</option>

<option value="3"id="cjt">吉他</option>

<option value="4"id="cgq">钢琴</option>

</select>

</td>

<td style="float:right;padding:5px0030px">权限</td>

<td>

<select class="easyui-combobox"panelheight="auto"style="width:133px"id="cauthority">

<option value="0">-------请选择-------</option>

<option value="2"id="cglz">管理者</option>

<option value="3"id="cjs">技术</option>

<option value="5"id="cyamahajs">YAMAHA技术</option>

</select>

</td>

<td>

<a id="selectUser"href="javascript:void(0)"class="easyui-linkbutton"data-options="iconCls:'icon-search'">查询</a>

</td>

</tr>

</table>

</div>

</div>

</div>

AsArchivesManagementController.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text.RegularExpressions;

using System.Web;

using System.Web.Mvc;

using System.Web.Script.Serialization;

using System.Windows.Forms;

using BLL;

using DAL;

using Model;

namespace WebMVC.Controllers

{

[Authorize]

publicclassAsArchivesManagementController : Controller

{

#region

//GET: /AsArchivesManagement/

///<summary>

///AS站档案管理

///</summary>

///<returns></returns>

publicActionResult AsArchivesManagement()

{

returnView();

}

///<summary>

///AS站档案管理列表

///</summary>

///<paramname="aSType"></param>

///<paramname="code"></param>

///<paramname="productType"></param>

///<returns></returns>

publicstringAsArchivesManagementList(string aSType,stringcode, string productType)

{

intpageIndex = string.IsNullOrEmpty(Request["page"]) ? 0 : Convert.ToInt32(Request["page"]);

intpageSize = string.IsNullOrEmpty(Request["rows"]) ? 0 : Convert.ToInt32(Request["rows"]);

intcount = 0;

List<M00111>list =AsArchivesManagementBLL.PageASManage(aSType,code, productType, pageIndex, pageSize, refcount);

stringresult = string.Empty;

if(list != null)

{

var obj = new{ total = count, rows = list };

result = new JavaScriptSerializer().Serialize(obj);

result = Regex.Replace(result, @"\\/Date\((\d+)\)\\/", match =>

{

DateTime dt = newDateTime(1970, 1, 1);

dt = dt.AddMilliseconds(long.Parse(match.Groups[1].Value));

dt = dt.ToLocalTime();

return dt.ToString("yyyy-MM-ddHH:mm:ss");

});

}

returnresult;

}

///<summary>

///AS站档案管理-输入画面

///</summary>

///<returns></returns>

publicActionResult AsArchivesInput(stringasId,string businessType)

{

List<M00111>asManagement = AsArchivesInputShow(asId, businessType);

M00111 m = new M00111();

m.Address = asManagement[0].Address;

m.AsFullName = asManagement[0].AsFullName;

m.AsId = asManagement[0].AsId;

m.AsName = asManagement[0].AsName;

m.ASType = asManagement[0].ASType;

m.Bank = asManagement[0].Bank;

m.BankAccount = asManagement[0].BankAccount;

m.BlacklistReasons = asManagement[0].BlacklistReasons;

m.BusinessType = asManagement[0].BusinessType;

m.City = asManagement[0].City;

m.Code = asManagement[0].Code;

m.EstablishmentDate = asManagement[0].EstablishmentDate;

m.Fax = asManagement[0].Fax;

m.Grade = asManagement[0].Grade;

m.InvoiceType = asManagement[0].InvoiceType;

m.Mail = asManagement[0].Mail;

m.Maintenance1 = asManagement[0].Maintenance1;

m.Maintenance2 = asManagement[0].Maintenance2;

m.Manager = asManagement[0].Manager;

m.Mobile = asManagement[0].Mobile;

m.PersonInCharge = asManagement[0].PersonInCharge;

m.Phone = asManagement[0].Phone;

m.ProductType = asManagement[0].ProductType;

m.Province = asManagement[0].Province;

m.Remark = asManagement[0].Remark;

m.Status = asManagement[0].Status;

m.TaxNo = asManagement[0].TaxNo;

m.ZipCode = asManagement[0].ZipCode;

returnView(m);

}

publicList<M00111>AsArchivesInputShow(string asId,stringbusinessType)

{

intpageIndex = string.IsNullOrEmpty(Request["page"]) ? 0 : Convert.ToInt32(Request["page"]);

intpageSize = string.IsNullOrEmpty(Request["rows"]) ? 0 : Convert.ToInt32(Request["rows"]);

intcount = 0;

List<M00111>list=AsArchivesManagementBLL.PageAsShowManage(asId,businessType, pageIndex, pageSize, ref count);

stringresult = string.Empty;

if(list != null)

{

var obj = new{ total = count, rows = list };

result = new JavaScriptSerializer().Serialize(obj);

result = Regex.Replace(result, @"\\/Date\((\d+)\)\\/", match =>

{

DateTime dt = newDateTime(1970, 1, 1);

dt = dt.AddMilliseconds(long.Parse(match.Groups[1].Value));

dt = dt.ToLocalTime();

return dt.ToString("yyyy-MM-ddHH:mm:ss");

});

}

returnlist;

}

#endregion

}

}

AsArchivesManagementBLL.cs

using Command;

using Model;

using DAL;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace BLL

{

publicclassAsArchivesManagementBLL

{

///<summary>

///分页获取档案管理信息

///</summary>

///<paramname="pageIndex"></param>

///<paramname="pageSize"></param>

///<returns></returns>

publicstaticList<M00111>PageASManage(string aSType, stringcode, string productType, intpageIndex, int pageSize, refintcount)

{

stringwheresql = string.Empty;

stringwheresql1 = string.Empty;

if(!string.IsNullOrEmpty(aSType))

wheresql1 += " and ASType like '%"+ aSType + "%'";

if(!string.IsNullOrEmpty(code))

wheresql += " and Code like '%"+ code + "%'";

if(!string.IsNullOrEmpty(productType)&& productType != "0")

wheresql += " and ProductType like '%"+ productType + "%'";

//string[]roleIDs = roleID.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries);

//默认只显示有效状态的角色信息

wheresql += " and DeleteFlg=0 ";

List<M00111>list = AsArchivesManagementDAL.Page<M00111>(aSType, code, productType, pageIndex, pageSize, refcount);

returnlist;

}

///<summary>

///显示AS档案信息

///</summary>

///<paramname="asId"></param>

///<paramname="businessType"></param>

///<paramname="pageIndex"></param>

///<paramname="pageSize"></param>

///<paramname="count"></param>

///<returns></returns>

publicstaticList<M00111>PageAsShowManage(string asId, stringbusinessType, int pageIndex, intpageSize, ref intcount)

{

List<M00111>list = null;

//默认只显示有效状态的角色信息

list = AsArchivesManagementDAL.PageShow<M00111>(asId, businessType, pageIndex, pageSize, refcount);

returnlist;

}

}

}

AsArchivesManagementDAL.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using Model;

using Command;

using System.Data;

using System.Data.SqlClient;

using System.ServiceModel.Web; //用户把json转化为实体

using System.Runtime.Serialization.Json;//用户把json转化为实体

using System.IO;

namespace DAL

{

publicclassAsArchivesManagementDAL

{

///<summary>

///分页获取角色权限

///</summary>

///<paramname="pageIndex"></param>

///<paramname="pageSize"></param>

///<returns></returns>

publicstaticList<M00111> Page<T>(stringaSType, string code, stringproductType, int pageIndex, intpageSize, ref intcount)

{

stringsql = "select a.*,b.* from ASStation as a joinASStation_ch as b on a.asid=b.asid";

returnSqlHelper.ExecuteList<M00111>(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

publicstaticList<M00111>PageShow<T>(string asId, stringbusinessType, int pageIndex, intpageSize, ref intcount)

{

stringsql = "select a.*,b.* from ASStation as a joinASStation_ch as b on a.asid=b.asid where b.asid='" + asId+ "'";

returnSqlHelper.ExecuteList<M00111>(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

///<summary>

///把JSON字符串还原为对象

///</summary>

///<typeparamname="T">对象类型</typeparam>

///<paramname="szJson">JSON字符串</param>

///<returns>对象实体</returns>

publicstaticM00111 ParseFormJson<M00111>(string szJson)

{

M00111 obj = Activator.CreateInstance<M00111>();

using(MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))

{

DataContractJsonSerializer dcj = newDataContractJsonSerializer(typeof(M00111));

return (M00111)dcj.ReadObject(ms);

}

}

}

}

SqlHelper.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Data;

using System.Data.SqlClient;

using System.Configuration;

using System.Reflection;

namespace Command

{

///<summary>

///基于MySQL的数据层基类

///</summary>

///<remarks>

///参考于MS Petshop 4.0

///</remarks>

publicabstractclassSqlHelper

{

#region 数据库连接字符串

//要插入的实体库地址

publicstaticreadonlystringDBConnection = System.Configuration.ConfigurationManager.ConnectionStrings["DBConnection"].ToString();

#endregion

#region PrepareCommand

///<summary>

///Command预处理

///</summary>

///<paramname="conn">SqlConnection对象</param>

///<paramname="trans">SqlTransaction对象,可为null</param>

///<paramname="cmd">SqlCommand对象</param>

///<paramname="cmdType">CommandType,存储过程或命令行</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组,可为null</param>

privatestaticvoidPrepareCommand(SqlConnection conn, SqlTransactiontrans, SqlCommand cmd, CommandTypecmdType, string cmdText, SqlParameter[]cmdParms)

{

if(conn.State != ConnectionState.Open)

conn.Open();

cmd.Connection = conn;

cmd.CommandText = cmdText;

if(trans != null)

cmd.Transaction = trans;

cmd.CommandType = cmdType;

cmd.CommandTimeout = 240;

if(cmdParms != null)

{

foreach (SqlParameterparm in cmdParms)

cmd.Parameters.Add(parm);

}

}

#endregion

#region ExecuteNonQuery

///<summary>

///执行命令

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns>返回受引响的记录行数</returns>

publicstaticintExecuteNonQuery(string connectionString, CommandType cmdType, stringcmdText, params SqlParameter[]cmdParms)

{

SqlCommand cmd = new SqlCommand();

using(SqlConnection conn = new SqlConnection(connectionString))

{

PrepareCommand(conn, null, cmd,cmdType, cmdText, cmdParms);

int val = cmd.ExecuteNonQuery();

cmd.Parameters.Clear();

return val;

}

}

///<summary>

///执行命令

///</summary>

///<paramname="conn">Connection对象</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns>返回受引响的记录行数</returns>

publicstaticintExecuteNonQuery(SqlConnection conn, CommandType cmdType, stringcmdText, params SqlParameter[]cmdParms)

{

SqlCommand cmd = new SqlCommand();

PrepareCommand(conn, null, cmd,cmdType, cmdText, cmdParms);

intval = cmd.ExecuteNonQuery();

cmd.Parameters.Clear();

returnval;

}

///<summary>

///执行事务

///</summary>

///<paramname="trans">SqlTransaction对象</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns>返回受引响的记录行数</returns>

publicstaticintExecuteNonQuery(SqlTransaction trans, CommandType cmdType, stringcmdText, params SqlParameter[]cmdParms)

{

SqlCommand cmd = new SqlCommand();

PrepareCommand(trans.Connection, trans, cmd, cmdType, cmdText,cmdParms);

intval = cmd.ExecuteNonQuery();

cmd.Parameters.Clear();

returnval;

}

#endregion

#region ExecuteScalar

///<summary>

///执行命令,返回第一行第一列的值

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns>返回Object对象</returns>

publicstaticobjectExecuteScalar(string connectionString, CommandType cmdType, stringcmdText, params SqlParameter[]cmdParms)

{

SqlCommandcmd = new SqlCommand();

using(SqlConnection connection = newSqlConnection(connectionString))

{

PrepareCommand(connection, null, cmd,cmdType, cmdText, cmdParms);

object val = cmd.ExecuteScalar();

cmd.Parameters.Clear();

return val;

}

}

///<summary>

///执行命令,返回第一行第一列的值

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns>返回Object对象</returns>

publicstaticobjectExecuteScalar(SqlConnection conn, CommandTypecmdType, string cmdText, paramsSqlParameter[] cmdParms)

{

SqlCommand cmd = new SqlCommand();

PrepareCommand(conn, null, cmd,cmdType, cmdText, cmdParms);

objectval = cmd.ExecuteScalar();

cmd.Parameters.Clear();

returnval;

}

#endregion

#region ExecuteReader

///<summary>

///执行命令或存储过程,返回SqlDataReader对象

///注意SqlDataReader对象使用完后必须Close以释放SqlConnection资源

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组</param>

///<returns></returns>

publicstaticSqlDataReader ExecuteReader(stringconnectionString, CommandTypecmdType, string cmdText, paramsSqlParameter[] cmdParms)

{

SqlCommand cmd = new SqlCommand();

SqlConnection conn = new SqlConnection(connectionString);

try

{

PrepareCommand(conn, null, cmd,cmdType, cmdText, cmdParms);

SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

cmd.Parameters.Clear();

return dr;

}

catch

{

conn.Close();

throw;

}

}

#endregion

#region ExecuteDataSet

///<summary>

///执行命令或存储过程,返回DataSet对象

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组(可为null值)</param>

///<returns></returns>

publicstaticDataSet ExecuteDataSet(stringconnectionString, CommandTypecmdType, string cmdText, paramsSqlParameter[] cmdParms)

{

SqlCommand cmd = new SqlCommand();

using(SqlConnection conn = new SqlConnection(connectionString))

{

PrepareCommand(conn, null, cmd,cmdType, cmdText, cmdParms);

SqlDataAdapter da = newSqlDataAdapter(cmd);

DataSet ds = newDataSet();

da.Fill(ds);

conn.Close();

cmd.Parameters.Clear();

return ds;

}

}

#endregion

#region ExecuteDataTable

///<summary>

///执行命令或存储过程,返回DataTable对象

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组(可为null值)</param>

///<returns></returns>

publicstaticDataTable ExecuteDataTable(stringconnectionString, CommandTypecmdType, string cmdText, paramsSqlParameter[] cmdParms)

{

DataSet dataset = ExecuteDataSet(connectionString, cmdType,cmdText, cmdParms);

if(dataset != null && dataset.Tables.Count >0)

return dataset.Tables[0];

else

return null;

}

#endregion

#region ExecuteList

///<summary>

///执行命令或存储过程,返回ExecuteList对象

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组(可为null值)</param>

///<returns></returns>

publicstaticList<T> ExecuteList<T>(stringconnectionString, CommandTypecmdType, string cmdText,

paramsSqlParameter[] cmdParms) whereT : new()

{

DataTable table = ExecuteDataTable(connectionString, cmdType,cmdText, cmdParms);

if(table != null && table.Rows.Count > 0)

return ToList<T>(table);

else

return null;

}

#endregion

#region ExecuteList

///<summary>

///执行命令或存储过程,返回ExecuteList对象

///</summary>

///<paramname="connectionString">数据库连接字符串</param>

///<paramname="cmdType">命令类型(存储过程或SQL语句)</param>

///<paramname="cmdText">SQL语句或存储过程名</param>

///<paramname="cmdParms">SqlCommand参数数组(可为null值)</param>

///<returns></returns>

publicstaticT ExecuteModel<T>(stringconnectionString, CommandTypecmdType, string cmdText,

paramsSqlParameter[] cmdParms) whereT : new()

{

List<T> list = ExecuteList<T>(connectionString,cmdType, cmdText, cmdParms);

if(list != null && list.Count > 0)

return list[0];

else

return default(T);

}

#endregion

publicstaticList<T> ToList<T>(DataTabledt) where T : new()

{

//定义集合

List<T> ts = new List<T>();

//获得此模型的类型

Type type = typeof(T);

stringtempName = "";

foreach(DataRow dr indt.Rows)

{

T t = new T();

// 获得此模型的公共属性

PropertyInfo[] propertys =t.GetType().GetProperties();

foreach (PropertyInfop in propertys)

{

tempName = p.Name;

// 检查DataTable是否包含此列

if (dt.Columns.Contains(tempName))

{

//判断此属性是否有Setter

if(!p.CanWrite) continue;

objectvalue = dr[tempName];

if(value != DBNull.Value)

{

if(p.PropertyType == typeof(string))

{

p.SetValue(t,value, null);

}

elseif(p.PropertyType == typeof(int))

{

p.SetValue(t, int.Parse(value.ToString()),null);

}

elseif(p.PropertyType == typeof(DateTime))

{

p.SetValue(t, Convert.ToDateTime(value.ToString()), null);

}

elseif(p.PropertyType == typeof(float))

{

p.SetValue(t, float.Parse(value.ToString()),null);

}

elseif(p.PropertyType == typeof(double))

{

p.SetValue(t, double.Parse(value.ToString()),null);

}

}

}

}

ts.Add(t);

}

returnts;

}

}

}

ToolsHelper.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Reflection;

using System.Text;

using System.Threading.Tasks;

using System.Data;

using System.Data.SqlClient;

namespace Command

{

publicclassToolsHelper

{

#region 根据表名获取主键名称

///<summary>

///根据表名获取主键名称

///</summary>

///<paramname="tableName">表名称</param>

///<returns>主键列名称</returns>

privatestaticstringGetPK(string tableName)

{

StringBuilder sql = new StringBuilder();

sql.Append(" SELECT SYSCOLUMNS.name ");

sql.Append(" FROMSYSCOLUMNS,SYSOBJECTS,SYSINDEXES,SYSINDEXKEYS ");

sql.Append(" WHERE SYSCOLUMNS.id = object_id('"+ tableName + "') ");//syscolumns.id为该列所属的表对象ID

sql.Append(" AND SYSOBJECTS.xtype = 'PK'");//sysobjects.xtype对象类型

sql.Append(" AND SYSOBJECTS.parent_obj = SYSCOLUMNS.id");

sql.Append(" AND SYSINDEXES.id = SYSCOLUMNS.id ");

sql.Append(" AND SYSOBJECTS.name = SYSINDEXES.name ");

sql.Append(" AND SYSINDEXKEYS.id = SYSCOLUMNS.id ");

sql.Append(" AND SYSINDEXKEYS.indid = SYSINDEXES.indid");//同一表的同一列,可能建有不同类型的索引

sql.Append(" AND SYSCOLUMNS.colid =SYSINDEXKEYS.colid");

objectobj = SqlHelper.ExecuteScalar(SqlHelper.DBConnection, CommandType.Text,sql.ToString(), null);

if(obj != null)

return obj.ToString();

else

return "";

}

#endregion

#region 获取指定表名的自增列名

///<summary>

///根据表名获取自增列名称

///</summary>

///<paramname="tableName">指定的表名</param>

///<returns></returns>

privatestaticstringGetIdentity(string tableName)

{

stringresult = string.Empty;//接收返回的自增列字段名

stringsql = "SELECT COLUMN_NAME FROMINFORMATION_SCHEMA.columns";

sql += " WHERE TABLE_NAME='" +tableName + "' AND COLUMNPROPERTY( ";

sql += " OBJECT_ID('" +tableName + "'),COLUMN_NAME,'IsIdentity')=1";

try

{

result = SqlHelper.ExecuteScalar(SqlHelper.DBConnection, CommandType.Text,sql, null).ToString();

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnresult;

}

#endregion

#region 动态把数据字典Dictionary中数据组合成SQL中Where条件字符串

///<summary>

///动态把数据字典Dictionary中数据组合成SQL中Where条件字符串

///</summary>

///<paramname="dictionary">条件数据字典</param>

///<returns>返回SQL中Where条件字符串</returns>

privatestaticstringConvertDictionaryToWhereSql(Dictionary<string,dynamic>dictionary)

{

stringwhereSql = string.Empty;

try

{

if (dictionary != null&& dictionary.Count > 0)

{

foreach (stringkey in dictionary.Keys)

{

dynamicvalue = dictionary[key];

if((value is int)|| (value is double)|| (value is float))

whereSql += " and " + key + "="+ value + " ";

elseif(value is string)

{

//如果传入的字典key中包含like表明进行模糊查询

if(key.ToUpper().Contains(("_like").ToUpper()))

whereSql += " and " + key.Replace("_like", "").Replace("_LIKE", "")+ " like '%" + value+ "%'";

else

whereSql += " and " + key + "='"+ value + "' ";

}

elseif(value is DateTime)

whereSql += " and " + key + "='"+ value + "' ";

}

}

}

catch(Exception ex)

{

LogHelper.WriteLog("方法:GetByWhereSql(Dictionary)类型转换错误:" +whereSql, ex);

}

returnwhereSql;

}

#endregion

#region 拼接判断记录是否存在sql语句

///<summary>

///拼接判断记录是否存在sql语句

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="info">实体对象</param>

///<paramname="cellNames">进行判断条件字段,如(name,age)</param>

///<returns>返回拼接后的语句</returns>

privatestaticstringGetExitSql<T>(T info, stringcellNames) where T:class,new()

{

//判断该记录是否存在

StringBuilder isExistSql = newStringBuilder();

isExistSql.Append(" if not exists (select * from" + info.GetType().Name + "where 1=1  ");

PropertyInfo[] propertys = info.GetType().GetProperties();

string[]cellArray = cellNames.Split(new char[]{ ',' }, StringSplitOptions.RemoveEmptyEntries);

foreach(PropertyInfo p inpropertys)

{

foreach (stringname in cellArray)

{

if (p.Name.ToLower() ==name.Trim().ToLower())

{

if(p.PropertyType == typeof(string)||

(p.PropertyType == typeof(DateTime) || p.PropertyType == typeof(Nullable<System.DateTime>)))

{

isExistSql.Append(" and " + name + "='"+ p.GetValue(info, null) + "'");

}

else

{

isExistSql.Append(" and " + name + "="+ p.GetValue(info, null) + "");

}

}

}

}

isExistSql.Append(" ) ");

returnisExistSql.ToString();

}

#endregion

#region 添加数据公共方法

///<summary>

///根据传入的对象动态获取插入一条的sql语句

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="info"></param>

///<returns></returns>

privatestaticstringGetInsertSql<T>(T info, string identity)whereT : new()

{

StringBuilder sqlHeader = newStringBuilder(" insert into ");

StringBuilder sqlMain = newStringBuilder(" values(");

if(info != null)

{

//如果是插入单条数据这里会传入空值

if (string.IsNullOrEmpty(identity))

identity = GetIdentity(info.GetType().Name);

sqlHeader.Append(info.GetType().Name + "(");

PropertyInfo[] propertys =info.GetType().GetProperties();

int num = 0;

foreach (PropertyInfop in propertys)

{

num += 1;

object value = p.GetValue(info, null);

if (!string.IsNullOrEmpty(identity)&& p.Name.ToUpper().Equals(identity.ToUpper()))

continue;

else

{

//if(value != DBNull.Value)

//{

if(p.PropertyType == typeof(string))

{

sqlHeader.Append(p.Name);

sqlMain.Append("'" + p.GetValue(info, null)+ "'");

}

elseif(p.PropertyType == typeof(int))

{

sqlHeader.Append(p.Name);

sqlMain.Append(p.GetValue(info, null));

}

elseif(p.PropertyType == typeof(DateTime)|| p.PropertyType == typeof(Nullable<System.DateTime>))

{

sqlHeader.Append(p.Name);

sqlMain.Append("'" + p.GetValue(info, null)+ "'");

}

elseif(p.PropertyType == typeof(float))

{

sqlHeader.Append(p.Name);

sqlMain.Append(p.GetValue(info, null));

}

elseif(p.PropertyType == typeof(double))

{

sqlHeader.Append(p.Name);

sqlMain.Append(p.GetValue(info, null));

}

//}

}

if (num ==info.GetType().GetProperties().Length)

{

sqlHeader.Append(")");

sqlMain.Append(")");

}

else

{

sqlHeader.Append(",");

sqlMain.Append(",");

}

}

}

returnsqlHeader.ToString() + sqlMain.ToString();

}

///<summary>

///向指定表插入一条记录

///</summary>

///<typeparamname="T">泛型</typeparam>

///<paramname="info">传入要进行插入的实体类</param>

///<returns>返回受影响的行数(不带返回值)</returns>

publicstaticintInsert<T>(T info) where T :class,new()

{

stringsql = string.Empty;

intresult = 0;

if(info == null)

return result;

else

{

try

{

sql =GetInsertSql<T>(info, "");

result = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch (Exceptionex)

{

LogHelper.WriteLog(sql, ex);

}

}

returnresult;

}

///<summary>

///向指定表插入一条记录(返回新插入的那条记录ID)

///</summary>

///<typeparamname="T">泛型</typeparam>

///<paramname="info">传入要进行插入的实体类</param>

///<returns>返回新插入的那条记录ID</returns>

publicstaticintInsertReturnIdentity<T>(T info) where T :class,new()

{

stringsql = string.Empty;

intresult = 0;

if(info == null)

return result;

else

{

try

{

sql = GetInsertSql<T>(info, "");

sql += " select @@identity";

object obj = SqlHelper.ExecuteScalar(SqlHelper.DBConnection, CommandType.Text,sql, null);

if (obj != null)

result = Convert.ToInt32(obj);

}

catch (Exceptionex)

{

LogHelper.WriteLog(sql, ex);

}

}

returnresult;

}

///<summary>

///向指定数据库插入多条数据信息

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="list"></param>

///<returns></returns>

publicstaticintInsertList<T>(List<T> list) whereT : class,new()

{

StringBuilder sql = new StringBuilder();

intresult = 0;

sql.Append("begin try ");

sql.Append("begin tran ");

//获取传入的泛型作为表名

Tt = new T();

stringidentity = GetIdentity(t.GetType().Name);

//拼接多条插入语句

for(inti = 0; i < list.Count; i++)

{

sql.Append(GetInsertSql<T>(list[i], identity));

}

try

{

if (list!=null&&list.Count>0)

{

sql.Append(" commit tran ");

sql.Append("end try ");

sql.Append("begin catch ");

sql.Append("rollback tran ");

sql.Append("end catch ");

result = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql.ToString(), null);

}

}

catch(Exception ex)

{

LogHelper.WriteLog(sql.ToString(), ex);

}

returnresult;

}

///<summary>

///事务提交,批量插入去除已存在的数据

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="list">要处理的实体类集合</param>

///<paramname="whereSql">进行重复限定的条件,如(and name='张三')</param>

///<returns>返回受影响行数</returns>

publicstaticintInsertList<T>(List<T> list,stringwhereSql) where T : class,new()

{

StringBuilder sql = new StringBuilder();

intresult = 1;//事物处理如果所有记录都已存在,返回-1

sql.Append("begin try ");

sql.Append("begin tran ");

try

{

//获取传入的泛型作为表名

T t = new T();

string identity =GetIdentity(t.GetType().Name);

//如果约束条件为空不进行处理

if (!string.IsNullOrEmpty(whereSql))

{

//拼接多条插入语句

for (inti = 0; i < list.Count; i++)

{

sql.Append(" "+GetExitSql<T>(list[i], whereSql.Trim()));

sql.Append(GetInsertSql<T>(list[i], identity));

}

sql.Append(" commit tran ");

sql.Append("end try ");

sql.Append("begin catch ");

sql.Append("rollback tran ");

sql.Append("end catch ");

SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql.ToString(), null);

}

}

catch(Exception ex)

{

result = -1;

LogHelper.WriteLog(sql.ToString(), ex);

}

returnresult;

}

#endregion

#region 分页查询数据

///<summary>

///分页查询单表数据,返回List集合对象

///</summary>

///<typeparamname="T">要进行操作的对象</typeparam>

///<paramname="pageIndex">当前页码</param>

///<paramname="pageSize">每页显示条数</param>

///<paramname="whereSql">如有查询条件,要拼接上,格式(andname='zhangsan' and age=20)</param>

///<paramname="orderBySql">如有要指定进行排序的字段,请拼接上,格式(namedesc,age)</param>

////// <param name="count">分页查询返回总条数</param>

///<returns>返回List集合对象</returns>

publicstaticList<T> Page<T>(intpageIndex, int pageSize, stringwhereSql, string orderBySql,refintcount)

whereT : class, new()

{

//"select top 10 * from (select row_number() over(order by id) asrownumber,* from test) A where rownumber > 40"

Tt = new T();

//获取要操作的表名

stringtableName = t.GetType().Name;

stringsql = string.Empty;

sql += " select top " +pageSize + " ";

//获取当前对象的列名

for(inti = 0; i < t.GetType().GetProperties().Length; i++)

{

if (i ==t.GetType().GetProperties().Length - 1)

sql += "a." +t.GetType().GetProperties()[i].Name;

else

sql += "a." +t.GetType().GetProperties()[i].Name + ",";

}

sql += " from (select row_number() over(order by ";

//如果有排序条件,拼接上,没有默认用id

if(!string.IsNullOrEmpty(orderBySql))

sql += orderBySql;

else

sql += " " + GetPK(tableName);

sql += " ) as rownumber,* from "+ tableName + " where 1=1 ";

if(!string.IsNullOrEmpty(whereSql))//如果有查询条件拼接上条件

sql += whereSql;

sql += ") a where a.rownumber>"+ (pageIndex - 1) * pageSize + " and 1=1 ";

//如果有排序条件,拼接上,没有默认用id

if(!string.IsNullOrEmpty(orderBySql))

sql += " order by " +orderBySql;

sql += " select count(1) from "+ tableName + " where 1=1 ";

if(!string.IsNullOrEmpty(whereSql))//如果有查询条件拼接上条件

sql += whereSql;

List<T> list = newList<T>();

try

{

DataSet dataset = SqlHelper.ExecuteDataSet(SqlHelper.DBConnection, CommandType.Text,sql, null);

if (dataset != null&& dataset.Tables.Count > 0)

{

list = SqlHelper.ToList<T>(dataset.Tables[0]);

count = Convert.ToInt32(dataset.Tables[1].Rows[0][0]);

}

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnlist;

}

///<summary>

///分页查询单表数据,返回List集合对象

///</summary>

///<typeparamname="T">要进行操作的对象</typeparam>

///<paramname="pageIndex">当前页码</param>

///<paramname="pageSize">每页显示条数</param>

///<paramname="dictionary">要筛选的条件</param>

///<paramname="orderBySql">如有要指定进行排序的字段,请拼接上,格式(namedesc,age)</param>

////// <param name="count">分页查询返回总条数</param>

///<returns>返回List集合对象</returns>

publicstaticList<T> Page<T>(intpageIndex, int pageSize, Dictionary<string,dynamic>dictionary, string orderBySql, refintcount)

whereT : class, new()

{

stringwhereSql = string.Empty;

whereSql = ConvertDictionaryToWhereSql(dictionary);

returnPage<T>(pageIndex, pageSize, whereSql, orderBySql, refcount);

}

///<summary>

///分页查询单表数据,返回List集合对象

///</summary>

///<typeparamname="T">要进行操作的对象</typeparam>

///<paramname="pageIndex">当前页码</param>

///<paramname="pageSize">每页显示条数</param>

///<paramname="count">分页查询返回总条数</param>

///<returns>返回List集合对象</returns>

publicstaticList<T> Page<T>(intpageIndex, int pageSize,refintcount)

whereT : class, new()

{

returnPage<T>(pageIndex, pageSize, "","",ref count);

}

#endregion

#region 查询单条记录

///<summary>

///查询单条记录

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="id">主键值</param>

///<paramname="type">1.主键是int型,0.主键是string型</param>

///<returns>返回实体对象</returns>

privatestaticT GetById<T>(string id,inttype) where T:class,new()

{

Tt=new T();

stringtableName = t.GetType().Name;

stringsql = string.Empty;

try

{

string pk_name = GetPK(tableName);//获取主键名称

if (!string.IsNullOrEmpty(pk_name))

{

if(type==1)

sql += "select * from " + tableName + " where " + pk_name + "="+ id;

else

sql += "select * from " + tableName + " where " + pk_name + "='"+ id+"'";

}

t = SqlHelper.ExecuteModel<T>(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnt;

}

///<summary>

///查询单条记录

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="id">主键值</param>

///<returns>返回实体对象</returns>

publicstaticT GetById<T>(string id) whereT : class,new()

{

returnGetById<T>(id,0);

}

///<summary>

///查询单条记录

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="id">主键值</param>

///<returns>返回实体对象</returns>

publicstaticT GetById<T>(int id) whereT : class,new()

{

returnGetById<T>(id.ToString(), 1);

}

#endregion

#region 根据条件查询单表或视图多条记录

///<summary>

///根据条件查询单表记录是否存在

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="whereSql">要筛选的条件,如( and name='张三')</param>

///<returns>返回bool类型标注是否存在</returns>

publicstaticboolGetExitsByWhereSql<T>(stringwhereSql) where T : class,new()

{

boolisExit = false;

Tinfo = GetByWhereSql<T>(whereSql, "");

if(info != null)

isExit=true;

returnisExit;

}

///<summary>

///根据条件查询单表或视图单条条记录

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="whereSql">要筛选的条件,如( and name='张三')</param>

///<paramname="orderSql">要进行排序的条件,如(name desc,id)</param>

///<returns>返回实体对象</returns>

publicstaticT GetByWhereSql<T>(stringwhereSql, string orderSql) whereT : class,new()

{

List<T> list = GetByWhereSqlList<T>(whereSql,orderSql);

if(list != null && list.Count > 0)

return list[0];

else

return null;

}

///<summary>

///根据条件查询单表或视图多条记录

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="whereSql">要筛选的条件,如( and name='张三')</param>

///<paramname="orderSql">要进行排序的条件,如(name desc,id)</param>

///<returns>返回实体对象集</returns>

publicstaticList<T> GetByWhereSqlList<T>(stringwhereSql, string orderSql) whereT:class,new()

{

List<T> list=new List<T>();

stringsql=string.Empty;

try

{

T t = new T();

sql = " select * from " +t.GetType().Name + " where 1=1 ";

if (!string.IsNullOrEmpty(whereSql))

sql += whereSql + " ";

if (!string.IsNullOrEmpty(orderSql))

sql +=" order by "+orderSql + " ";

list = SqlHelper.ExecuteList<T>(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnlist;

}

///<summary>

///根据条件查询单表或视图多条记录

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="dictionary">要筛选的条件</param>

///<paramname="orderSql">要进行排序的条件,如(name desc,id)</param>

///<returns>返回实体对象集</returns>

publicstaticList<T> GetByWhereSqlList<T>(Dictionary<string,dynamic>dictionary, string orderSql) whereT : class,new()

{

stringwhereSql = string.Empty;

whereSql = ConvertDictionaryToWhereSql(dictionary);

returnGetByWhereSqlList<T>(whereSql,orderSql);

}

#endregion

#region 删除数据

///<summary>

///操作主键是INT类型的表数据,删除

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="pkValue">传入要进行删除操作的主键值</param>

///<returns>返回受影响行数</returns>

publicstaticintDelete<T>(int pkValue) whereT:class, new()

{

intnum = 0;

stringsql = string.Empty;//要执行的sql

try

{

T t = new T();

string tableName = t.GetType().Name;

string pk_name = GetPK(tableName);

if (!string.IsNullOrEmpty(pk_name))

sql = "delete from " +tableName + " where " +pk_name + "=" + pkValue;

if (!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

///<summary>

///根据条件删除记录

///</summary>

///<typeparamname="T">实体类</typeparam>

///<paramname="whereSql">条件</param>

///<returns></returns>

publicstaticintDeleteByWhereSql<T>(stringwhereSql) where T : class,new()

{

intnum = 0;

stringsql = string.Empty;//要执行的sql

try

{

T t = new T();

string tableName = t.GetType().Name;

string pk_name = GetPK(tableName);

if (!string.IsNullOrEmpty(pk_name))

sql = "delete from " +tableName+" where 1=1 ";

if (!string.IsNullOrEmpty(whereSql))

{

sql = sql + whereSql;

}

if (!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

///<summary>

///操作主键是string类型的表数据,删除

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="pkValue">传入要进行删除操作的主键值</param>

///<returns>返回受影响行数</returns>

publicstaticintDelete<T>(string pkValue) whereT : class, new()

{

intnum = 0;

stringsql = string.Empty;//要执行的sql

try

{

T t = new T();

string tableName = t.GetType().Name;

string pk_name = GetPK(tableName);

if(!string.IsNullOrEmpty(pk_name))

sql = "delete from " +tableName + " where " +pk_name + "='" + pkValue + "'";

if (!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

///<summary>

///批量操作主键是string类型的表数据,删除

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="list">传入要进行删除操作的主键值集合</param>

///<returns>返回受影响行数</returns>

publicstaticintDelete<T>(List<string>list) where T : class,new()

{

intnum = 0;

stringsql = string.Empty;//要执行的sql

try

{

T t = new T();

string tableName = t.GetType().Name;

string pk_name = GetPK(tableName);

if (!string.IsNullOrEmpty(pk_name))

{

foreach (stringpkValue in list)

sql += " delete from " + tableName + " where " + pk_name + "='"+ pkValue + "' ";

}

if (!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

///<summary>

///批量操作主键是int类型的表数据,删除

///</summary>

///<typeparamname="T">实体对象</typeparam>

///<paramname="list">传入要进行删除操作的主键值集合</param>

///<returns>返回受影响行数</returns>

publicstaticintDelete<T>(List<int>list) where T : class,new()

{

intnum = 0;

stringsql = string.Empty;//要执行的sql

try

{

T t = new T();

string tableName = t.GetType().Name;

string pk_name = GetPK(tableName);

if (!string.IsNullOrEmpty(pk_name))

{

foreach (intpkValue in list)

sql += " delete from " + tableName + " where " + pk_name + "="+ pkValue;

}

if (!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

#endregion

#region 修改数据

#region 拼接单条修改语句

///<summary>

///拼接修改语句(属性为空代码不进行修改)

///</summary>

///<typeparamname="T"></typeparam>

///<paramname="t"></param>

///<returns>返回update修改语句</returns>

privatestaticstringGetUpadateSql<T>(T t) where T:class,new()

{

PropertyInfo[] propertys = t.GetType().GetProperties();

stringtableName=t.GetType().Name;//获取表名

stringpk_name = GetPK(t.GetType().Name);//获取主键名称

StringBuilder sql = new StringBuilder();

stringwhereSql = string.Empty;

intnum = 0;

sql.Append(" update "+tableName+" set ");

foreach(PropertyInfo p inpropertys)

{

num += 1;

object value = p.GetValue(t, null);

//如果字段为空不进行修改操作

if (value != DBNull.Value)

{

if (!string.IsNullOrEmpty(pk_name)&& p.Name.ToUpper().Equals(pk_name.ToUpper()))

{

if(p.PropertyType == typeof(string))

whereSql = " where " + pk_name + "='"+ p.GetValue(t, null) + "'";

elseif(p.PropertyType == typeof(int))

whereSql = " where " + pk_name + "="+ p.GetValue(t, null);

continue;

}

else

{

//if(value != DBNull.Value)

//{

if(p.PropertyType == typeof(string))

{

sql.Append(p.Name + "='" + p.GetValue(t, null)+ "' ");

}

elseif(p.PropertyType == typeof(int))

{

sql.Append(p.Name +"=" + p.GetValue(t, null)+ " ");

}

elseif(p.PropertyType == typeof(DateTime)|| p.PropertyType == typeof(Nullable<System.DateTime>))

{

sql.Append(p.Name +"='" + p.GetValue(t, null)+ "' ");

}

elseif(p.PropertyType == typeof(float))

{

sql.Append(p.Name +"=" + p.GetValue(t, null)+ " ");

}

elseif(p.PropertyType == typeof(double))

{

sql.Append(p.Name +"=" + p.GetValue(t, null)+ " ");

}

//}

}

if(num == t.GetType().GetProperties().Length)

{

sql.Append(" " + whereSql);

}

else

{

sql.Append(",");

}

}

}

returnsql.ToString();

}

#endregion

///<summary>

///修改单条记录(如果传入的对象有为空的属性则表示不进行操作)

///</summary>

///<typeparamname="T">传入的实体对象</typeparam>

///<paramname="t">传入的实体对象</param>

///<returns>返回受影响行数</returns>

publicstaticintUpdate<T>(T t) where T : class,new()

{

intnum = 0;

stringsql = GetUpadateSql<T>(t);

try

{

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog(sql, ex);

}

returnnum;

}

///<summary>

///修改多条记录(如果传入的对象有为空的属性则表示不进行操作)

///</summary>

///<typeparamname="T">传入的实体对象</typeparam>

///<paramname="list">传入的实体对象集合</param>

///<returns>返回受影响行数</returns>

publicstaticintUpdate<T>(List<T> list) whereT : class,new()

{

stringsql = string.Empty;

intnum = 0;

try

{

foreach (T info inlist)

sql+=GetUpadateSql<T>(info);

if(!string.IsNullOrEmpty(sql))

num = SqlHelper.ExecuteNonQuery(SqlHelper.DBConnection, CommandType.Text,sql, null);

}

catch(Exception ex)

{

LogHelper.WriteLog("多条修改出错:", ex);

}

returnnum;

}

#endregion

}

}

easyui增删改查全部代码相关推荐

  1. easyui增删改查前段代码

    easyui增删改查前段代码 <script>var url;//添加用户窗体 function newUser(){$('#dlg').dialog('open').dialog('se ...

  2. SSM框架搭建+easyui增删改查

    转载于:http://www.cnblogs.com/caiya928/p/4851686.html?utm_source=tuicool&utm_medium=referral 闲来无事,看 ...

  3. ssm框架搭建+easyui增删改查实现

    源码下载页面(一个完整的项目):http://download.csdn.net/detail/jinwufeiyang/9648208 数据库文件下载:http://download.csdn.ne ...

  4. 增删改查java代码_程序员:听说你正在为天天写增删改查代码而烦恼

    有相当多的一部分程序员一直都只接触业余应用的功能,天天写业务代码的程序员也被戏称为CURD程序员,CURD就是增(create).改(update).查(read).删(delete)的意思. CUR ...

  5. JDBC的DML增删改查的代码重构设计(上)

    1 设计商品对象 public class Product {private Long id;private String productName;private String brand;priva ...

  6. Mybatis的基本增删改查(代码)

    3.CRUD增删改查 3.1.namespace namespace中的包名要和Mapper接口的包名一致 3.2.select 选择.查询语句: id就是对应的namespace中的方法名: res ...

  7. sqlite 增删改查附代码

    一.进入数据库 命令行输入下列命令进入数据库 1.adb 2.adb shell 3.cd data 4.cd data 5.cd [包名] 6.创建数据库后 7.cd databases 8.sql ...

  8. Java实现增删改查系统代码(全~纯干货)

    代码结构: business 包 EmployeeManager类 data包 AccessFile类 ui包 AddFrame类 MainFrame类 vo包 Employee类 效果展示: Emp ...

  9. EasyUI 增删改查完全详细

    本实例使用EasyUI创建表格,元素,窗口,以及各种请求.增加,修改,查询及其他知识基本涵盖完全.有用到js创建和html创建. 整体概览: 多条件的分页查询 dialog对话框实现添加功能,加入验证 ...

  10. JDBC的DML增删改查的代码重构设计(下)

    JDBC的操作模板: 流程:1.创建ProductResultSetHandler对象:2.作为参数传递给query方法3.在query方法中:rsh.handler,其实调用的是ProductRes ...

最新文章

  1. 寻找Archie服务器中的文件,Archie服务
  2. 让梦露和龙妈学着你说话,只需一张静态图和一个视频 | 项目开源
  3. [Serializable]序列化一句话理解
  4. TP框架表单验证 【包含ajax方法】
  5. 各个OS关于查看磁盘和wwn号的方法
  6. Oracle存储过程快速入门
  7. java antd实现登录,AntDesign(React)学习-4 登录页面提交数据简单实现
  8. Linux C Serial串口编程
  9. 垃圾收集 java_Java 垃圾收集技术
  10. android view state,Android状态系统(二)——View状态组合
  11. linux查看进程命令wwn,在Linux下查看WWN、WWPN方法
  12. 猜姓氏c语言题目,猜姓氏游戏及其数学原理
  13. Python学习笔记(24)——Greatchao资讯网理财公告信息的selenium挖掘
  14. 共享屏幕,录屏的方法
  15. java网课|Map线程
  16. 敏捷方法:什么是软件测试中的敏捷模式?
  17. linux软raid阅读笔记,linux_软RAID阅读笔记.pdf
  18. python超市管理系统实训报告_超市管理系统实验报告范文
  19. JMockit使用总结
  20. 完整版—Android studio入门教程

热门文章

  1. 计算机开机时10声响,电脑开机报警的声音有什么含义?详细教您认识报警声音
  2. 站长必备-伪原创原创度检测软件v1.3 (支持百度/谷歌/360/搜狗/神马/微信)
  3. 提醒:使用过期Win10预览版后果很严重
  4. Firefox浏览器购物比价插件:惠惠购物助手
  5. 人工智能数学基础--概率与统计4:联合分布与边缘分布
  6. chrome浏览器Flash版本过低解决方法
  7. leetcode第12题Python版整数转罗马字符串
  8. html中居中方法,HTML中5种常见的居中方法
  9. 解除极域电子教室软件控屏的方法
  10. Multisim14 安装出错情况说明,以及解决办法