系統演示鏈接:http://47.110.53.87 賬號:admin 密碼:1
技術要點:easyui + .NET
運行環境:谷歌瀏覽器 或者其他瀏覽器的極速模式
---------------------------------------------------------------前言-----------------------------------------------------------------
閒來無事練練手,做個簡單的後臺管理網站,如果你也想做的話那該怎麼辦呢?
只要你會某個主流語言就行 例如C# java python php 等等...,加上easyu等一些前端框架做起來就更快了。
不會怎麼辦呢.....
學 自學 花錢學,不想學又有這方面需求怎麼辦呢,那只有找人做嘍!
---------------------------------------------------------------分割-----------------------------------------------------------------
話不多說,先來兩張圖,登陸+主頁
示例沒有做太多功能,總的來說只有用戶管理和部門管理。功能簡單註釋齊全,下面貼出部分源碼
前端
//提交
function tijiao() {
var title = $('#win').panel('options').title; //獲取window窗口的標題
var rowData = $('#dg').datagrid('getSelected');//獲取選中行
var table_data = $("#table_form").serializeJson(); //表單數據json化
var url, info;
if (title == '新增用戶') {
url = 'Api/DeptUserDB.aspx?action=Update&type=add&table_data=' + JSON.stringify(table_data);
info = "新增";
}
else if (title == '修改用戶') {
url = 'Api/DeptUserDB.aspx?action=Update&type=edit&row_id=' + rowData.id + '&table_data=' + JSON.stringify(table_data);
info = "修改";
}
$('#table_form').form('submit', {
url: url,
datatype: 'json',
onSubmit: function (param) { //提交前觸發,返回 false 來阻止提交動作。
//param.code = '001'; //新增額外參數
return $(this).form('validate'); //表單驗證通過後
},
onLoadError: function (none) {
alert(none);
},
success: function (d) { //當表單提交成功時觸發。
$('#win').window('close');
$('#table_form').form('reset'); //重置表單
select();//查詢
var d = eval('(' + d + ')'); //字符串轉json對象 爲了能點出參數來
if (d.code > 0) {
$.messager.show({
title: '提示',
msg: d.code + '個用戶信息' + info + '成功!',
});
}
else if (d.code = -1) {
$.messager.show({
title: '提示',
msg: info + '失敗!請聯繫管理員!錯誤詳情:' + d.msg,
});
}
else {
$.messager.show({
title: '提示',
msg: info + '失敗!',
});
}
}
});
後端
//獲取角色類型下拉框數據
private void Getroletypecomb()
{
Hashtable h = Pub.CurrentLoginInfo;
int kkey = Convert.ToInt32(h["roletype"]);//角色類型
if (h["roletype"].ToString() != "1")//不是系統管理員的+1 使除系統管理員以外的角色無法創建同級角色
{
kkey = kkey + 1;
}
string sql = "select * from X_Dictionaries where 1 = 1 and lb = '3' and kkey >= " + kkey;
ArrayList folders = new SQLHelper().Select(sql);
Json(folders);
}
//更新用戶
private void Update()
{
ResponseData rd = new ResponseData();
try
{
X_user user = new X_user();
string table_data = Request["table_data"]; //表單數據
Hashtable h = JSON.Decode(table_data) as Hashtable; //表單數據轉化爲Hashtable
if (h["ismrsq"].ToString() != "否") //如果不等於否 說明傳的是兩個ismrsq值 是和否
{
ArrayList h_arr = h["ismrsq"] as ArrayList;
if (h_arr.Count == 2) //實際上我只要一個值 是
{
h["ismrsq"] = "是";
}
}
if (Request["type"] == "add")
{
h.Add("createpeople", Pub.num);//創建人
h.Add("createdate", DateTime.Now);//創建日期
int i = user.insert(h);
rd.code = i > 0 ? 1 : 0;
rd.msg = i > 0 ? "新增成功!" : "新增失敗!";
}
else if (Request["type"] == "edit")
{
string row_id = Request["row_id"]; //要修改的行數據ID
h.Add("id", row_id);//修改人
h.Add("updatepeople", Pub.num);//修改人
h.Add("updatedate", DateTime.Now);//修改日期
int i = user.Update(h);
rd.code = i > 0 ? 1 : 0;
rd.msg = i > 0 ? "修改成功!" : "修改失敗!";
}
Json(rd);
}
catch (Exception ex)
{
rd.code = -1;
rd.msg = ex.Message;
Json(rd);
}
}
/// <summary>
/// 根據用戶權限加載菜單
/// </summary>
public void LoadTree()
{
string parentNodeId = Request["id"] ?? null;//easyui 會每展開一個節點,往後端傳一個id
if (string.IsNullOrEmpty(parentNodeId))
{
parentNodeId = "0";
}
Hashtable userInfo = Pub.CurrentLoginInfo;
string[] menus = userInfo["roleids"].ToString().Split(',');//節點菜單ID分割給string數組
//查詢菜單表 菜單ID=員工表的節點ID , 父ID = 前臺傳入的ID
string where = string.Format(" and id in ('{0}') and tid = '{1}'", string.Join("','", menus), parentNodeId);
string sql = string.Format("select * from X_Menu where 1=1 {0}", where);
DataTable dt = new SQLHelper().ExcuteQuery(sql);
dt.Columns.Add("state");//DataTable裏放個狀態列
for (int i = 0; i < dt.Rows.Count; i++)
{
int ii = Convert.ToInt32(new SQLHelper().ExecuteScalar("select COUNT(0) from X_Menu where tId = '" + dt.Rows[i]["id"] + "'"));
if (ii > 0)//大於說明有子節點
{
dt.Rows[i]["state"] = "closed";//狀態列賦值 closed代表有子節點 open代表沒有
}
}
Json(dt);
}
想具體學習需要源碼的可以聯繫我QQ463392823 備註CSDN看到~