234 lines
8.3 KiB
C#
234 lines
8.3 KiB
C#
using AllBase;
|
|
using AllBase.Model.Result;
|
|
using NaiBa.Util.Extension;
|
|
using Newtonsoft.Json.Linq;
|
|
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;
|
|
using TemuKJD.BaseForms;
|
|
using TemuKJD.Extension;
|
|
using Work;
|
|
|
|
namespace TemuKJD.KJDForms.AdminForms
|
|
{
|
|
public partial class AdminCardCodeForm : Form
|
|
{
|
|
public List<JitCardCodeInfo> lstCardCodeInfo = new List<JitCardCodeInfo>();
|
|
public AdminCardCodeForm()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void AdminCardCodeForm_Load(object sender, EventArgs e)
|
|
{
|
|
this.dgvCardCode.AddSelectorColumn("colSelect");
|
|
}
|
|
|
|
bool firstLoad = true;
|
|
private void AdminCardCodeForm_VisibleChanged(object sender, EventArgs e)
|
|
{
|
|
if (this.Visible == true && firstLoad)
|
|
{
|
|
firstLoad = false;
|
|
this.pbLoading.Visible = true;
|
|
SearchCardCode(this.ucSplitPage1.CurrentPage);
|
|
}
|
|
}
|
|
private void btnSearch_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.ucSplitPage1.CurrentPage != 1)
|
|
this.ucSplitPage1.CurrentPage = 1;
|
|
else
|
|
SearchCardCode(1);
|
|
}
|
|
|
|
public void SearchCardCode(int page)
|
|
{
|
|
List<string> IdList = GetCheckedIdList();
|
|
if (InvokeRequired)
|
|
{
|
|
Invoke(new Action(() =>
|
|
{
|
|
this.pbLoading.Visible = true;
|
|
this.dgvCardCode.Rows.Clear();
|
|
lstCardCodeInfo.Clear();
|
|
}));
|
|
}
|
|
else
|
|
{
|
|
this.pbLoading.Visible = true;
|
|
this.dgvCardCode.Rows.Clear();
|
|
lstCardCodeInfo.Clear();
|
|
}
|
|
Task.Run(() =>
|
|
{
|
|
int pageCount;
|
|
var list = GetJitCardCodeLst(out pageCount, page);
|
|
lstCardCodeInfo.AddRange(list);
|
|
this.ucSplitPage1.TotalPage = pageCount;
|
|
|
|
foreach (var cardCode in lstCardCodeInfo)
|
|
{
|
|
Invoke(new Action(() =>
|
|
{
|
|
int rowIndex = this.dgvCardCode.Rows.Add(
|
|
IdList.Contains(cardCode.id.ToString()),
|
|
cardCode.id,
|
|
cardCode.card_code_id,
|
|
cardCode.add_time,
|
|
cardCode.active_time,
|
|
cardCode.expire_time,
|
|
cardCode.shop_id,
|
|
cardCode.shop_account,
|
|
cardCode.notes,
|
|
"编辑",
|
|
"删除");
|
|
}));
|
|
}
|
|
|
|
Invoke(new Action(() =>
|
|
{
|
|
this.pbLoading.Visible = false;
|
|
}));
|
|
});
|
|
}
|
|
|
|
public List<JitCardCodeInfo> GetJitCardCodeLst(out int pageCount, int page = 1, int pageSize = 50)
|
|
{
|
|
return GetJitCardCodeLst(out pageCount, txtCardCode.Text.Trim(), txtNotes.Text.Trim(),
|
|
txtShopId.Text.Trim(), txtShopName.Text.Trim(), page, pageSize);
|
|
}
|
|
|
|
public List<JitCardCodeInfo> GetJitCardCodeLst(out int pageCount, string search_card_code, string search_notes,
|
|
string search_shop_id, string search_shop_name, int page = 1, int pageSize = 50)
|
|
{
|
|
List<JitCardCodeInfo> list = new List<JitCardCodeInfo>();
|
|
pageCount = 1;
|
|
|
|
var url = BaseClass.BuildObjString("shop/get_shop_card_code_list");
|
|
var data = UserLogin.GetSignaturex() +
|
|
"&page=" + page +
|
|
"&page_size=" + pageSize +
|
|
"&search_card_code_id=" + search_card_code +
|
|
"&search_notes=" + search_notes +
|
|
"&search_shop_id=" + search_shop_id +
|
|
"&search_shop_name=" + search_shop_name;
|
|
var html = GetHtml.PostUtf8(url, data);
|
|
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
|
html = GetHtml.PostUtf8(url, data);
|
|
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
|
{
|
|
return list;
|
|
}
|
|
|
|
int count = BaseRegex.GetIntJson(ref html, "count");
|
|
pageCount = Math.Ceiling(1.0 * count / pageSize).ParseToInt();
|
|
pageCount = Math.Max(pageCount, 1);
|
|
|
|
JObject jObj = JObject.Parse(html);
|
|
return JsonHelper.DeserializeJsonToList<JitCardCodeInfo>(jObj["data"].ToString());
|
|
}
|
|
|
|
List<string> GetCheckedIdList()
|
|
{
|
|
List<string> idList = new List<string>();
|
|
for (int i = 0; i < dgvCardCode.Rows.Count; i++)
|
|
{
|
|
if (dgvCardCode.Rows[i].Cells["colSelect"].Value.ParseToBool())
|
|
{
|
|
string id = dgvCardCode.Rows[i].Cells["colId"].Value.ParseToString();
|
|
idList.Add(id);
|
|
}
|
|
}
|
|
return idList;
|
|
}
|
|
|
|
private void pnlEmpty_Click(object sender, EventArgs e)
|
|
{
|
|
txtCardCode.Text = txtShopId.Text = txtNotes.Text = txtShopName.Text = "";
|
|
}
|
|
|
|
private void btnCreate_Click(object sender, EventArgs e)
|
|
{
|
|
StringBuilder data = new StringBuilder();
|
|
data.Append(UserLogin.GetSignaturex());
|
|
data.Append("&create_count=" + txtCreateCount.Text.Trim());
|
|
string url = BaseClass.BuildObjString("shop/create_shop_card_code");
|
|
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
|
if (string.IsNullOrEmpty(html))
|
|
{
|
|
BaseMsgForm.ShowError("未知错误,请重试!", "错误");
|
|
return;
|
|
}
|
|
if (html.Contains("\"code\":200"))
|
|
{
|
|
BaseMsgForm.ShowInfo("生成成功!");
|
|
SearchCardCode(this.ucSplitPage1.CurrentPage);
|
|
}
|
|
else
|
|
{
|
|
var msg = BaseRegex.GetStringJson(ref html, "msg");
|
|
if (string.IsNullOrEmpty(msg))
|
|
msg = html;
|
|
BaseMsgForm.ShowError(msg, "错误");
|
|
}
|
|
}
|
|
|
|
private void dgvCardCode_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
if (e.ColumnIndex < 0 || e.RowIndex < 0)
|
|
return;
|
|
string headerText = dgvCardCode.Columns[e.ColumnIndex].HeaderText;
|
|
string dbId = dgvCardCode.Rows[e.RowIndex].Cells["colId"].Value.ParseToString();
|
|
string shopId = dgvCardCode.Rows[e.RowIndex].Cells["colShopId"].Value.ParseToString();
|
|
|
|
switch (headerText)
|
|
{
|
|
case "删除":
|
|
DelCardCode(dbId);
|
|
break;
|
|
case "":
|
|
dgvCardCode.Rows[e.RowIndex].Cells["colSelect"].Value = !(bool)dgvCardCode.Rows[e.RowIndex].Cells["colSelect"].Value;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void ucSplitPage1_PageChange(object obj)
|
|
{
|
|
SearchCardCode(this.ucSplitPage1.CurrentPage);
|
|
}
|
|
|
|
private void btnBatchDel_Click(object sender, EventArgs e)
|
|
{
|
|
var idLst = this.dgvCardCode.Rows.Cast<DataGridViewRow>().Where(r => r.Cells["colSelect"].Value.ParseToBool() == true).Select(r => r.Cells["colId"].Value.ParseToString());
|
|
string ids = string.Join(",", idLst);
|
|
DelCardCode(ids);
|
|
}
|
|
|
|
void DelCardCode(string ids)
|
|
{
|
|
var url = BaseClass.BuildObjString("shop/del_shop_card_code");
|
|
var data = UserLogin.GetSignaturex();
|
|
data += "&del_ids=" + ids;
|
|
var result = GetHtml.PostUtf8(url, data);
|
|
if (!result.Contains("\"code\":200"))
|
|
{
|
|
BaseMsgForm.ShowError("删除失败:" + BaseRegex.GetStringJson(ref result, "msg"));
|
|
}
|
|
else
|
|
{
|
|
BaseMsgForm.ShowInfo("删除成功!");
|
|
SearchCardCode(this.ucSplitPage1.CurrentPage);
|
|
}
|
|
}
|
|
}
|
|
}
|