RaUI/Source/OnLineUpgradeConfig/User/FrmBetaUsers.cs

135 lines
4.7 KiB
C#
Raw Normal View History

using Newtonsoft.Json.Linq;
using ryCommon;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Server.User
{
public partial class FrmBetaUsers : Form
{
public FrmBetaUsers()
{
InitializeComponent();
OlvTitle.AspectGetter = delegate (object x) { return ((UserGroup)x).Desc; };
OlvUserList.AspectGetter = delegate (object x) { return ((UserGroup)x).NickNameList; };
}
public void GetSetting()
{
objectListView1.ClearObjects();
try
{
List<UserGroup> list = new List<UserGroup>();
JObject jo = JObject.Parse(RyFiles.ReadAllText(Application.StartupPath + "\\UserDb\\UserSet.dat"));
JArray jarr = jo.GetJsonValue("list", new JArray());
for (int i = 0; i < jarr.Count; i++)
{
var item = jarr[i];
list.Add(new UserGroup() {
Desc= item.GetJsonValue("Desc",""),
UserList = item.GetJsonValue("UserList", ""),
NickNameList=DyAPI.API.UserAPI.GetListNickName(item.GetJsonValue("UserList", ""))
});
}
objectListView1.AddObjects(list);
}
catch { }
}
public void SaveSetting()
{
try
{
var list = objectListView1.ObjectsList;
JObject jo = new JObject();
JArray jarr = new JArray();
for (int i = 0; i < list.Count; i++)
{
var item = (UserGroup)list[i];
var jo_item = new JObject
{
{ "Desc", item.Desc },
{ "UserList", item.UserList }
};
jarr.Add(jo_item);
}
jo.Add("list", jarr);
RyFiles.WriteAllText(Application.StartupPath + "\\UserDb\\UserSet.dat", jo.ToString());
}
catch { }
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
FrmAddBetaUser frm = new FrmAddBetaUser();
frm.Icon = Icon;
if(frm.ShowDialog()==DialogResult.OK)
{
objectListView1.AddObject(new UserGroup() {Desc=frm.TxtDesc.Text, UserList=frm.DtUserList.selectId,NickNameList=frm.DtUserList.Text });
SaveSetting();
}
frm.Dispose();
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
var item = (UserGroup)objectListView1.SelectedObject;
if (item == null) { return; }
FrmAddBetaUser frm = new FrmAddBetaUser();
frm.Text = "修改更新用户组";
frm.TxtDesc.Text = item.Desc;
frm.DtUserList.selectId = item.UserList;
frm.DtUserList.Text=DyAPI.API.UserAPI.GetListNickName(item.UserList);
frm.Icon = Icon;
if (frm.ShowDialog() == DialogResult.OK)
{
item.Desc = frm.TxtDesc.Text;
item.UserList = frm.DtUserList.selectId;
item.NickNameList = frm.DtUserList.Text;
objectListView1.RefreshObject(item);
SaveSetting();
}
frm.Dispose();
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
var item = (UserGroup)objectListView1.SelectedObject;
if (item == null) { return; }
switch (MessageBox.Show("确定要删除?", "询问", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
{
case DialogResult.OK:
objectListView1.RemoveObject(item);
SaveSetting();
break;
}
}
private void FrmBetaUsers_Load(object sender, EventArgs e)
{
GetSetting();
}
private void ObjectListView1_DoubleClick(object sender, EventArgs e)
{
ToolStripMenuItem.PerformClick();
}
}
public class UserGroup
{
public string Desc { get; set; } = "";
public string UserList { get; set; } = "";
public string NickNameList { get; set; } = "";
public override string ToString()
{
if (NickNameList.Length == 0) { return Desc; }
return Desc+"("+NickNameList+")";
}
}
}