gyhlw_dotnet/网站项目/VRS/Management/UnitManage.aspx.cs

390 lines
13 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
namespace VRS.Management
{
public partial class UnitManage : BaseListPage
{
DataService.BLL.admin_user bll = new DataService.BLL.admin_user();
DataService.BLL.admin_log log = new DataService.BLL.admin_log();
DataService.BLL.admin_user bll_user = new DataService.BLL.admin_user();
DataService.BLL.admin_unit bll_unit = new DataService.BLL.admin_unit();
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
if (!IsPostBack)
{
/*
var user = DataService.BLL.admin_user.load_login();
var userModel = bll_user.GetModel(user.user_id);
if (!bll_user.IsAdministrator(userModel))
{
HttpContext.Current.Response.Cookies["admin_user_token"].Expires = DateTime.Now.AddMinutes(-1);
Response.Redirect("~/Login.aspx");
}
*/
//excel.HRef = "~/Upload/Excel/教员管理模板.xls";
excel.HRef = "~/Upload/Excel/用户管理模板.xls";
//BindDepName(cbxDepName);
//
//BindDeviceType("sign_dep", ddlDep, "");
var user = DataService.BLL.admin_user.load_login();
var userModel = bll.GetModel(user.user_id);
if (bll.IsAdministrator(userModel))
{
tr_city.Visible = true;
BindProvince(ddp_province, "");
}
else
{
tr_city.Visible = false;
}
DataLoad();
}
}
protected void ddp_province_SelectedIndexChanged(object sender, Telerik.Web.UI.DropDownListEventArgs e)
{
BindCity(ddp_city, ddp_province.SelectedValue, "");
//ddp_unit.SelectedIndex = 0;
//ddp_unit.Items.Clear();
DataLoad();
}
protected void ddp_city_SelectedIndexChanged(object sender, Telerik.Web.UI.DropDownListEventArgs e)
{
//BindUnit(ddp_unit, ddp_city.SelectedValue, "");
DataLoad();
}
protected override void DataLoad()
{
//StringBuilder query = new StringBuilder(" 1 = 1 and id_card!='admin' "); // 过滤总管理员
var query = new StringBuilder(" 1 = 1 ");
if (!string.IsNullOrWhiteSpace(unit_name.Text.Trim()))
{
query.AppendFormat(" AND unit_name LIKE '%{0}%' ", unit_name.Text.Trim());
}
var user_login = DataService.BLL.admin_user.load_login();
var userModel = bll_user.GetModel(user_login.user_id);
if (bll.IsAdministrator(userModel))
{
if (!string.IsNullOrWhiteSpace(ddp_province.SelectedValue))
{
query.AppendFormat(" AND province_id = '{0}' ", ddp_province.SelectedValue);
}
if (!string.IsNullOrWhiteSpace(ddp_city.SelectedValue))
{
query.AppendFormat(" AND city_id = '{0}' ", ddp_city.SelectedValue);
}
}
else //老师只能看到自己的学生
{
/*
query.AppendFormat(" AND province_id = '{0}' ", userModel.province_id);
query.AppendFormat(" AND city_id = '{0}' ", userModel.city_id);
*/
}
if (!string.IsNullOrWhiteSpace(unit_addr.Text.Trim()))
{
query.AppendFormat(" AND unit_addr LIKE '%{0}%' ", unit_addr.Text.Trim());
}
var data = bll_unit.GetModelList(query.ToString());
/*
var list_result = new List<DataService.Model.admin_unit>();
foreach (var user in data)
{
if (!bll.IsAdministrator(user))
{
user.IsAdministrator = false;
if (!string.IsNullOrEmpty(user.unit_id) && string.IsNullOrEmpty(user.unit_name))
{
var unit = bll_unit.GetModel(user.unit_id);
if (null != unit)
{
user.unit_name = unit.unit_name;
user.province = unit.province;
user.city = unit.city;
}
}
list_result.Add(user);
}
else
{
user.IsAdministrator = true;
//list_result.Add(user);
}
}
dataList.DataSource = list_result;
*/
dataList.DataSource = data;
dataList.Rebind();
}
protected override void GridList_PageIndexChanged(object sender, GridPageChangedEventArgs e)
{
DataLoad();
}
protected override void GridList_PageSizeChanged(object sender, GridPageSizeChangedEventArgs e)
{
DataLoad();
}
protected override void GridList_SortCommand(object sender, GridSortCommandEventArgs e)
{
DataLoad();
}
protected override void GrdList_DeleteCommand(object sender, GridCommandEventArgs e)
{
string Id = (e.Item as GridDataItem).OwnerTableView.DataKeyValues[e.Item.ItemIndex]["Id"].ToString();
if (Id.Equals("admin"))
{
RadAjaxManager1.Alert("admin账户无法删除");
return;
}
bll.Delete(Id);
DataLoad();
}
protected override void AjaxManager_AjaxRequest(object sender, AjaxRequestEventArgs e)
{
}
protected void btnSelect_Click(object sender, EventArgs e)
{
DataLoad();
}
protected void btnDelete_Click(object sender, EventArgs e)
{
var model = bll_unit.GetModel(IdInput.Value);
if (bll_unit.Delete(IdInput.Value))
{
log.write_log("删除成功。" + "单位名称:" + model.unit_name + "ID" + IdInput.Value);
DataLoad();
}
}
/// <summary>
/// 导出excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnExportALL_Click(object sender, EventArgs e)
{
var list = dataList.SelectedItems.Count;
List<DataService.Model.admin_user> list_result = new List<DataService.Model.admin_user>();
foreach (var obj in dataList.SelectedItems)
{
GridDataItem item = obj as GridDataItem;
var result_id = item.GetDataKeyValue("user_id").ToString();
var model = bll.GetModel(result_id);
if (null != model)
{
list_result.Add(model);
}
}
int count = list_result.Count;
string filePath = Server.MapPath("~/Download/");
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
string fileName = string.Format("{0}.xls", "用户管理_" + DateTime.Now.ToString("yyyyMMddHHmmss"));
filePath = filePath + fileName;
StringBuilder query = new StringBuilder(" 1 = 1 and login_name!='admin' ");
/*
if (!string.IsNullOrWhiteSpace(login_name.Text.Trim()))
{
query.AppendFormat(" AND login_name LIKE '%{0}%' ", login_name.Text.Trim());
}
*/
/*
if (!string.IsNullOrWhiteSpace(real_name.Text.Trim()))
{
query.AppendFormat(" AND real_name LIKE '%{0}%' ", real_name.Text.Trim());
}
*/
DataTable source;
var data = bll.GetList(query.ToString());
source = data.Tables[0];
//学号 姓名 性别 身份证号 出生日期 专业 年级 手机号码 备注
var table = new DataTable();
//table.Columns.Add("账号");
table.Columns.Add("部门");
table.Columns.Add("姓名");
table.Columns.Add("性别");
table.Columns.Add("身份证号");
//table.Columns.Add("出生日期");
//table.Columns.Add("专业");
//table.Columns.Add("年级");
//table.Columns.Add("手机号码");
//table.Columns.Add("备注");
for (var i = 0; i < source.Rows.Count; i++)
{
var row = table.NewRow();
var res = source.Rows[i];
//row["账号"] = res["login_name"];
row["部门"] = res["dep_name"];
row["姓名"] = res["real_name"];
row["性别"] = res["sex"];
row["身份证号"] = res["id_card"];
/*
var dtBirth = DateTime.Now;
if (DateTime.TryParse(res["birth_date"].ToString(), out dtBirth))
{
row["出生日期"] = dtBirth.ToString("yyyy-MM-dd");
}
*/
//row["专业"] = res["major"];
//row["年级"] = res["grade"];
//row["手机号码"] = res["mobile"];
// row["备注"] = res["r1"];
table.Rows.Add(row);
}
VRS.Util.Import.DateTableToExcel(table, filePath);
FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
}
/// <summary>
/// 导出excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnExport_Click(object sender, EventArgs e)
{
var list = dataList.SelectedItems.Count;
List<DataService.Model.admin_unit> list_result = new List<DataService.Model.admin_unit>();
foreach (var obj in dataList.SelectedItems)
{
GridDataItem item = obj as GridDataItem;
var result_id = item.GetDataKeyValue("unit_id").ToString();
var model = bll_unit.GetModel(result_id);
if (null != model)
{
list_result.Add(model);
}
}
int count = list_result.Count;
if (count <= 0)
{
return;
}
string filePath = Server.MapPath("~/Download/");
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
string fileName = string.Format("{0}.xls", "单位列表_" + DateTime.Now.ToString("yyyyMMddHHmmss"));
filePath = filePath + fileName;
//学号 姓名 性别 身份证号 出生日期 专业 年级 手机号码 备注
var table = new DataTable();
table.Columns.Add("省");
table.Columns.Add("市");
table.Columns.Add("单位名称");
table.Columns.Add("单位地址");
table.Columns.Add("法人");
for (var i = 0; i < list_result.Count; i++)
{
var item = list_result[i];
var row = table.NewRow();
//row["账号"] = res["login_name"];
row["省"] = item.province;
row["市"] = item.city;
row["单位名称"] = item.unit_name;
row["单位地址"] = item.unit_addr;
row["法人"] = item.legal_person;
table.Rows.Add(row);
}
VRS.Util.Import.DateTableToExcel(table, filePath);
FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
}
}
}