509 lines
22 KiB
C#
509 lines
22 KiB
C#
using AllBase;
|
||
using AllBase.Helper;
|
||
using AllBase.Model.Result;
|
||
using NaiBa.Util.Extension;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.ComponentModel;
|
||
using System.Data;
|
||
using System.Drawing;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading;
|
||
using System.Threading.Tasks;
|
||
using System.Windows.Forms;
|
||
using TemuKJD.BaseForms;
|
||
using TemuKJD.BLL;
|
||
using TemuKJD.Extension;
|
||
using Work;
|
||
|
||
namespace TemuKJD.WXForms.ShopForms
|
||
{
|
||
public partial class WXOemAccountForm
|
||
: BaseForm
|
||
{
|
||
public static List<UserSubAccountInfo> AllUsers { get; set; } = new List<UserSubAccountInfo>();
|
||
public MainForm Mf { get; set; } = null;
|
||
public string Uid { get; set; } = "";
|
||
|
||
public WXOemAccountForm()
|
||
{
|
||
InitializeComponent();
|
||
}
|
||
|
||
private void btnOpUser_Click(object sender, EventArgs e)
|
||
{
|
||
if (txtPassword.Text != txtRePass.Text)
|
||
{
|
||
BaseMsgForm.ShowInfo("两次密码不正确", "提示");
|
||
return;
|
||
}
|
||
if (btnOpUser.Text == "添加用户" && txtPassword.Text.Length < 6)
|
||
{
|
||
BaseMsgForm.ShowInfo("密码最少6位", "提示");
|
||
return;
|
||
}
|
||
if (string.IsNullOrEmpty(txtNickName.Text) || string.IsNullOrEmpty(txtMobile.Text) ||
|
||
txtMobile.Text.Length != 11)
|
||
{
|
||
BaseMsgForm.ShowInfo("信息不正确", "提示");
|
||
return;
|
||
}
|
||
|
||
StringBuilder data = new StringBuilder();
|
||
data.Append(UserLogin.GetSignaturex());
|
||
data.Append("&add_nick_name=" + GetHtml.UrlEncodeUtf8(txtNickName.Text));
|
||
data.Append("&add_user_name=" + GetHtml.UrlEncodeUtf8(txtMobile.Text));
|
||
data.Append("&add_mobile=" + GetHtml.UrlEncodeUtf8(txtMobile.Text));
|
||
data.Append("&add_company=" + GetHtml.UrlEncodeUtf8(txtCompany.Text));
|
||
data.Append("&oem_id=" + GetHtml.UrlEncodeUtf8(BaseClass.OemId.Trim()));
|
||
if (!string.IsNullOrEmpty(txtPassword.Text))
|
||
data.Append("&add_password=" + Md5Base.GetMd5(txtPassword.Text).ToLower());
|
||
// 主账户
|
||
data.Append("&group_id=3");
|
||
string url = BaseClass.BuildObjString("user/add_user");
|
||
if (btnOpUser.Text != "添加用户" && !string.IsNullOrEmpty(Uid))
|
||
{
|
||
data.Append("&id=" + Uid);
|
||
url = BaseClass.BuildObjString("user/update_user");
|
||
}
|
||
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
||
|
||
if (!string.IsNullOrEmpty(html))
|
||
{
|
||
if (html.Contains("\"code\":200"))
|
||
{
|
||
btnOpUser.Text = "添加用户";
|
||
EmptyInput();
|
||
btnCancel.Visible = false;
|
||
GetUser();
|
||
return;
|
||
}
|
||
var msg = BaseRegex.GetStringJson(ref html, "msg");
|
||
if (string.IsNullOrEmpty(msg))
|
||
msg = html;
|
||
BaseMsgForm.ShowError(msg, "错误");
|
||
return;
|
||
}
|
||
BaseMsgForm.ShowError("出现异常,添加失败", "错误");
|
||
}
|
||
|
||
private void GetUser()
|
||
{
|
||
dgvUser.Rows.Clear();
|
||
AllUsers.Clear();
|
||
if (BaseClass.OemId.IsNullOrEmpty() || BaseClass.IsOemOwner == false)
|
||
return;
|
||
string url = BaseClass.BuildObjString("user/get_all_user");
|
||
StringBuilder data = new StringBuilder();
|
||
data.Append(UserLogin.GetSignaturex());
|
||
// 主账户
|
||
data.Append("&group_id=3");
|
||
data.Append("&oem_id=" + BaseClass.OemId);
|
||
|
||
if (!string.IsNullOrWhiteSpace(txtSearch.Text))
|
||
data.Append("&search=" + txtSearch.Text.Replace("'","'"));
|
||
string html = GetHtml.PostUtf8(url, data.ToString());
|
||
if (string.IsNullOrEmpty(html))
|
||
return;
|
||
if (html.Contains("\"data\""))
|
||
{
|
||
var userObj = Newtonsoft.Json.Linq.JObject.Parse(html);
|
||
foreach (Newtonsoft.Json.Linq.JObject obj in userObj["data"])
|
||
{
|
||
string oStr = JsonHelper.SerializeObject(obj);
|
||
UserSubAccountInfo user = new UserSubAccountInfo();
|
||
user.id = BaseRegex.GetIntJson(ref oStr, "id");
|
||
user.user_name = BaseRegex.GetStringJson(ref oStr, "user_name");
|
||
user.nick_name = BaseRegex.GetStringJson(ref oStr, "nick_name");
|
||
user.mobile = BaseRegex.GetStringJson(ref oStr, "mobile");
|
||
user.group_id = BaseRegex.GetStringJson(ref oStr, "group_id");
|
||
user.shop_count = BaseRegex.GetIntJson(ref oStr, "shop_count");
|
||
user.company_name = BaseRegex.GetStringJson(ref oStr, "company_name");
|
||
user.sa_level = BaseRegex.GetIntJson(ref oStr, "sa_level");
|
||
user.authority = BaseRegex.GetStringJson(ref oStr, "authority");
|
||
user.points = BaseRegex.GetIntJson(ref oStr, "points");
|
||
user.balance = BaseRegex.GetDecimalJson(ref oStr, "balance");
|
||
user.shop_points_per_month = BaseRegex.GetIntJson(ref oStr, "shop_points_per_month");
|
||
user.postage_per_order = BaseRegex.GetDecimalJson(ref oStr, "postage_per_order");
|
||
user.oem_id = BaseRegex.GetStringJson(ref oStr, "oem_id");
|
||
user.oem_name = BaseRegex.GetStringJson(ref oStr, "oem_name");
|
||
var parent_user_name = BaseRegex.GetStringJson(ref oStr, "parent_user_name");
|
||
|
||
AllUsers.Add(user);
|
||
dgvUser.Rows.Add(
|
||
false,
|
||
user.id,
|
||
user.nick_name,
|
||
user.user_name,
|
||
parent_user_name,
|
||
user.group_id,
|
||
user.group_name,
|
||
user.company_name,
|
||
user.shop_count,
|
||
user.sa_level,
|
||
user.sa_level_name /*+ (user.group_id == "4" ? "(客服)" : "")*/,
|
||
user.authority,
|
||
user.oem_id,
|
||
user.oem_name,
|
||
(user.authority.Contains("充值用户") && user.group_id == "3") ? (int?)user.points : null,
|
||
(user.authority.Contains("充值用户") && user.group_id == "3") ? "+" : null,
|
||
(user.authority.Contains("充值用户") && user.group_id == "3") ? (int?)user.shop_points_per_month : null,
|
||
(user.authority.Contains("充值用户") && user.group_id == "3") ? "改" : null,
|
||
user.balance.ParseToDecimal(),
|
||
"+",
|
||
Math.Max(2.2m, user.postage_per_order.ParseToDecimal()),
|
||
(user.group_id == "3") ? "改" : null,
|
||
user.group_id == "3" ? "添加店铺" : "",
|
||
"编辑",
|
||
"删除");
|
||
}
|
||
}
|
||
}
|
||
|
||
private void btnCancel_Click(object sender, EventArgs e)
|
||
{
|
||
btnOpUser.Text = "添加用户";
|
||
Uid = "";
|
||
EmptyInput();
|
||
btnCancel.Visible = false;
|
||
}
|
||
|
||
private void EmptyInput()
|
||
{
|
||
txtNickName.Clear();
|
||
txtPassword.Clear();
|
||
txtRePass.Clear();
|
||
txtMobile.Clear();
|
||
txtCompany.Clear();
|
||
}
|
||
|
||
private void btnRefresh_Click(object sender, EventArgs e)
|
||
{
|
||
GetUser();
|
||
}
|
||
|
||
private void dgvUser_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
||
{
|
||
if (e.ColumnIndex < 0 || e.RowIndex < 0)
|
||
return;
|
||
string columText = dgvUser.Columns[e.ColumnIndex].HeaderText;
|
||
string columName = dgvUser.Columns[e.ColumnIndex].Name;
|
||
string uid = dgvUser.Rows[e.RowIndex].Cells["UseridColumn"].Value.ToString();
|
||
string nickName = dgvUser.Rows[e.RowIndex].Cells["UserNickNameColumn"].Value.ToString();
|
||
string mobile = dgvUser.Rows[e.RowIndex].Cells["mobileColumn"].Value.ToString();
|
||
string groupName = dgvUser.Rows[e.RowIndex].Cells["groupNameColumn"].Value.ToString();
|
||
string company = dgvUser.Rows[e.RowIndex].Cells["colCompany"].Value.ToString();
|
||
string saLevelName = dgvUser.Rows[e.RowIndex].Cells["colSaLevelName"].Value.ToString();
|
||
string authority = dgvUser.Rows[e.RowIndex].Cells["colAuthority"].Value.ParseToString();
|
||
int shopPointsPerMonth = dgvUser.Rows[e.RowIndex].Cells["colShopPointsPerMonth"].Value.ParseToInt();
|
||
decimal postagePerOrder = dgvUser.Rows[e.RowIndex].Cells["colPostagePerOrder"].Value.ParseToDecimal();
|
||
var row = dgvUser.Rows[e.RowIndex];
|
||
if (columText == "编辑")
|
||
{
|
||
Uid = uid;
|
||
txtNickName.Text = nickName;
|
||
txtMobile.Text = mobile;
|
||
txtPassword.Text = "";
|
||
txtRePass.Text = "";
|
||
txtCompany.Text = company;
|
||
btnOpUser.Text = "保存用户";
|
||
btnCancel.Visible = true;
|
||
}
|
||
if (columText == "删除")
|
||
{
|
||
if (BaseMsgForm.ShowConfirm("是否删除,删除后无法再次添加", "提示").DialogResult == DialogResult.OK)
|
||
{
|
||
Delete(uid);
|
||
}
|
||
}
|
||
if (columText == "+")
|
||
{
|
||
if (columName == "colPlus")
|
||
{
|
||
this.lblUserInfo.Text = mobile + " - " + nickName;
|
||
this.numAddTopUp.Value = 0;
|
||
this.pnlTopUp.Tag = row;
|
||
this.pnlTopUp.Visible = true;
|
||
this.pnlTopUp.BringToFront();
|
||
}
|
||
if (columName == "colBalancePlus")
|
||
{
|
||
this.lblUserBalanceInfo.Text = mobile + " - " + nickName;
|
||
this.numAddBalance.Value = 0;
|
||
this.pnlBalance.Tag = row;
|
||
this.pnlBalance.Visible = true;
|
||
this.pnlBalance.BringToFront();
|
||
}
|
||
}
|
||
if (columText == "改")
|
||
{
|
||
if (columName == "colChangePointsPerMonth")
|
||
{
|
||
this.lblShopPointsPerMonthUserInfo.Text = mobile + " - " + nickName;
|
||
this.numShopPointsPerMonth.Value = shopPointsPerMonth;
|
||
this.pnlShopPointsPerMonth.Tag = row;
|
||
this.pnlShopPointsPerMonth.Visible = true;
|
||
this.pnlShopPointsPerMonth.BringToFront();
|
||
this.lblShopPointsPerMonthUserId.Text = uid;
|
||
}
|
||
if (columName == "colChangePostagePerOrder")
|
||
{
|
||
this.lblPostagePerOrderUserInfo.Text = mobile + " - " + nickName;
|
||
this.numPostagePerOrder.Value = postagePerOrder;
|
||
this.pnlPostagePerOrder.Tag = row;
|
||
this.pnlPostagePerOrder.Visible = true;
|
||
this.pnlPostagePerOrder.BringToFront();
|
||
this.lblPostagePerOrderUserId.Text = uid;
|
||
}
|
||
}
|
||
if (columText == "")
|
||
row.Cells["colSelect"].Value = !row.Cells["colSelect"].Value.ParseToBool();
|
||
}
|
||
|
||
public void Delete(string uid)
|
||
{
|
||
StringBuilder data = new StringBuilder();
|
||
data.Append(UserLogin.GetSignaturex());
|
||
data.Append("&id=" + uid);
|
||
string url = BaseClass.BuildObjString("user/delete_user");
|
||
string html = GetHtml.PostUtf8(url, data.ToString());
|
||
if (!string.IsNullOrEmpty(html))
|
||
{
|
||
if (html.Contains("\"code\":200"))
|
||
{
|
||
BaseMsgForm.ShowInfo("删除成功", "提示");
|
||
GetUser();
|
||
return;
|
||
}
|
||
var msg = BaseRegex.GetStringJson(ref html, "msg");
|
||
if (string.IsNullOrEmpty(msg))
|
||
msg = html;
|
||
BaseMsgForm.ShowError(msg, "错误");
|
||
return;
|
||
}
|
||
BaseMsgForm.ShowError("返回异常", "错误");
|
||
}
|
||
|
||
private void MainAccountForm_VisibleChanged(object sender, EventArgs e)
|
||
{
|
||
if (this.Visible)
|
||
{
|
||
GetUser();
|
||
}
|
||
}
|
||
|
||
private void MainAccountForm_Load(object sender, EventArgs e)
|
||
{
|
||
this.dgvUser.AddSelectorColumn("colCheck");
|
||
|
||
pnlShopPointsPerMonth.Location = new Point(pnlTopUp.Location.X, pnlTopUp.Location.Y);
|
||
pnlBalance.Location = new Point(pnlTopUp.Location.X, pnlTopUp.Location.Y);
|
||
pnlPostagePerOrder.Location = new Point(pnlTopUp.Location.X, pnlTopUp.Location.Y);
|
||
|
||
this.txtSearch.GotFocus += TxtSearch_GotFocus;
|
||
this.txtSearch.LostFocus += TxtSearch_LostFocus;
|
||
|
||
this.dgvUser.AddMergeColumn(new List<string> { "colPoints", "colPlus" });
|
||
this.dgvUser.AddMergeColumnHeader(new List<string> { "colPoints", "colPlus" }, "积分点数");
|
||
this.dgvUser.AddMergeColumn(new List<string> { "colShopPointsPerMonth", "colChangePointsPerMonth" });
|
||
this.dgvUser.AddMergeColumnHeader(new List<string> { "colShopPointsPerMonth", "colChangePointsPerMonth" }, "月费耗点");
|
||
this.dgvUser.AddMergeColumn(new List<string> { "colBalance", "colBalancePlus" });
|
||
this.dgvUser.AddMergeColumnHeader(new List<string> { "colBalance", "colBalancePlus" }, "快递余额");
|
||
this.dgvUser.AddMergeColumn(new List<string> { "colPostagePerOrder", "colChangePostagePerOrder" });
|
||
this.dgvUser.AddMergeColumnHeader(new List<string> { "colPostagePerOrder", "colChangePostagePerOrder" }, "每单快递费");
|
||
}
|
||
|
||
private void TxtSearch_LostFocus(object sender, EventArgs e)
|
||
{
|
||
if (string.IsNullOrEmpty(this.txtSearch.Text))
|
||
lblWatermark.Visible = true;
|
||
}
|
||
|
||
private void TxtSearch_GotFocus(object sender, EventArgs e)
|
||
{
|
||
lblWatermark.Visible = false;
|
||
}
|
||
|
||
private void lblWatermark_Click(object sender, EventArgs e)
|
||
{
|
||
this.txtSearch.Focus();
|
||
this.lblWatermark.Visible = false;
|
||
}
|
||
|
||
private void btnExportShopErp_Click(object sender, EventArgs e)
|
||
{
|
||
foreach (var user in AllUsers)
|
||
{
|
||
//if (user.group_id != "3")
|
||
// continue;
|
||
|
||
//string prodDataStr = "{\"userName\":\"15288888888\",\"password\":\"Andy@1984\",\"phonenumber\":\"15288888888\",\"status\": \"0\",\"remark\":\"a15288888888.\",\"roleIds\":[\"5\"]}";
|
||
//prodDataStr = "{\"userName\":\"" + user.user_name + "\",\"password\":\"" + user.user_name + "\",\"phonenumber\":\"" + user.mobile +
|
||
// "\",\"status\": \"0\",\"nickName\":\"" + user.nick_name + "\",\"roleIds\":[\"5\"]}";
|
||
|
||
//string url = "https://po.e57.cn/prod-api/api/sys-api/system/user";
|
||
//var exportRst = WXHttpResponseBLL.e57PostResponse(url, prodDataStr, "", "Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjFlODI2ZjNiLTFhMzItNDEwOS04ODlmLTIzYmEwOTUyMDYxYiJ9.L68qzzZZxaQoxrUeB8pBt4TWB7UbTwHkxlmQduzy-VEFkBI4oxtj4VrH-2yJpSD--ZdM-5Wm3VtTvy57nMaFMQ");
|
||
//Thread.Sleep(500);
|
||
//if (!exportRst.Contains("\"code\":200"))
|
||
//{
|
||
|
||
//}
|
||
}
|
||
}
|
||
|
||
private void pnlCancel_Click(object sender, EventArgs e)
|
||
{
|
||
pnlTopUp.Visible = false;
|
||
}
|
||
|
||
private void btnTopUpOK_Click(object sender, EventArgs e)
|
||
{
|
||
var userName = lblUserInfo.Text.Split('-')[0].Trim();
|
||
var userNick = lblUserInfo.Text.Split('-')[1].Trim();
|
||
string url = BaseClass.BuildObjString("user/update_user_points");
|
||
string data = UserLogin.GetSignaturex();
|
||
data += "&update_user_name=" + userName;
|
||
data += "&update_user_nick=" + userNick;
|
||
data += "&option_type=转移";
|
||
|
||
data += "&operator_type=代理商";
|
||
data += "&operator_name=" + BaseClass.UserName;
|
||
data += "&operator_nick=" + BaseClass.NickName;
|
||
data += "&delta_points=" + numAddTopUp.Value;
|
||
|
||
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
||
if (!html.Contains("\"code\":200"))
|
||
{
|
||
var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg");
|
||
BaseMsgForm.ShowError(msg);
|
||
return;
|
||
}
|
||
|
||
BaseClass.Points = BaseRegex.GetIntJson(ref html, "newOperatorPoints");
|
||
MainForm.instance.lblPoints.Text = "账户积分:" + BaseClass.Points;
|
||
var operatorRow = this.dgvUser.Rows.Cast<DataGridViewRow>().FirstOrDefault(r => r.Cells["mobileColumn"].Value.ParseToString() == BaseClass.UserName);
|
||
if (operatorRow != null)
|
||
operatorRow.Cells["colPoints"].Value = BaseClass.Points;
|
||
|
||
var newUserPoints = BaseRegex.GetIntJson(ref html, "newUserPoints");
|
||
var row = this.dgvUser.Rows.Cast<DataGridViewRow>().FirstOrDefault(r => r.Cells["mobileColumn"].Value.ParseToString() == userName);
|
||
if (row != null)
|
||
{
|
||
row.Cells["colPoints"].Value = newUserPoints;
|
||
}
|
||
pnlTopUp.Visible = false;
|
||
BaseMsgForm.ShowInfo("充值成功");
|
||
}
|
||
|
||
private void btnShopPointsPerMonth_Click(object sender, EventArgs e)
|
||
{
|
||
if (updateShopPointsPerMonth(lblShopPointsPerMonthUserId.Text))
|
||
{
|
||
pnlShopPointsPerMonth.Visible = false;
|
||
BaseMsgForm.ShowInfo("修改充值用户店铺月费金额成功");
|
||
}
|
||
}
|
||
|
||
public bool updateShopPointsPerMonth(string userDbId, bool showFailBox = true)
|
||
{
|
||
string url = BaseClass.BuildObjString("user/update_user");
|
||
string data = UserLogin.GetSignaturex();
|
||
data += "&id=" + userDbId;
|
||
data += "&shop_points_per_month=" + numShopPointsPerMonth.Value;
|
||
|
||
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
||
if (!html.Contains("\"code\":200"))
|
||
{
|
||
var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg");
|
||
if (showFailBox)
|
||
{
|
||
Invoke(new Action(() => { BaseMsgForm.ShowError(msg); }));
|
||
}
|
||
return false;
|
||
}
|
||
var row = dgvUser.Rows.Cast<DataGridViewRow>().FirstOrDefault(r => r.Cells["UserIdColumn"].Value.ParseToString() == userDbId);
|
||
if (row != null)
|
||
{
|
||
Invoke(new Action(() => { row.Cells["colShopPointsPerMonth"].Value = numShopPointsPerMonth.Value; }));
|
||
}
|
||
return true;
|
||
}
|
||
|
||
private void btnShopPointsPerMonthCancel_Click(object sender, EventArgs e)
|
||
{
|
||
pnlShopPointsPerMonth.Visible = false;
|
||
}
|
||
|
||
private void btnChangeBalanceOK_Click(object sender, EventArgs e)
|
||
{
|
||
string url = BaseClass.BuildObjString("user/update_user_balance");
|
||
string data = UserLogin.GetSignaturex();
|
||
data += "&update_user_name=" + lblUserBalanceInfo.Text.Split('-')[0].Trim();
|
||
data += "&update_user_nick=" + lblUserBalanceInfo.Text.Split('-')[1].Trim();
|
||
data += "&option_type=" + "充值";
|
||
data += "&operator_name=" + BaseClass.UserName;
|
||
data += "&delta_balance=" + numAddBalance.Value;
|
||
|
||
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
||
if (!html.Contains("\"code\":200"))
|
||
{
|
||
var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg");
|
||
BaseMsgForm.ShowError(msg);
|
||
return;
|
||
}
|
||
var row = pnlBalance.Tag as DataGridViewRow;
|
||
if (row != null)
|
||
{
|
||
row.Cells["colBalance"].Value = row.Cells["colBalance"].Value.ParseToDecimal() + numAddBalance.Value;
|
||
}
|
||
pnlBalance.Visible = false;
|
||
BaseMsgForm.ShowInfo("充值成功");
|
||
}
|
||
|
||
private void btnChangeBalanceCancel_Click(object sender, EventArgs e)
|
||
{
|
||
pnlBalance.Visible = false;
|
||
}
|
||
|
||
private void btnPostagePerOrder_Click(object sender, EventArgs e)
|
||
{
|
||
if (updatePostagePerOrder(lblPostagePerOrderUserId.Text))
|
||
{
|
||
pnlPostagePerOrder.Visible = false;
|
||
BaseMsgForm.ShowInfo("修改充值用户店铺月费金额成功");
|
||
}
|
||
}
|
||
|
||
public bool updatePostagePerOrder(string userDbId, bool showFailBox = true)
|
||
{
|
||
string url = BaseClass.BuildObjString("user/update_user");
|
||
string data = UserLogin.GetSignaturex();
|
||
data += "&id=" + userDbId;
|
||
data += "&postage_per_order=" + numPostagePerOrder.Value;
|
||
|
||
string html = GetHtml.PostUtf8(url, data.ToString()).Trim();
|
||
if (!html.Contains("\"code\":200"))
|
||
{
|
||
var msg = BaseRegex.GetStringJsonByRegs(ref html, html, "msg");
|
||
if (showFailBox)
|
||
{
|
||
Invoke(new Action(() => { BaseMsgForm.ShowError(msg); }));
|
||
}
|
||
return false;
|
||
}
|
||
var row = dgvUser.Rows.Cast<DataGridViewRow>().FirstOrDefault(r => r.Cells["UserIdColumn"].Value.ParseToString() == userDbId);
|
||
if (row != null)
|
||
{
|
||
Invoke(new Action(() => { row.Cells["colPostagePerOrder"].Value = numPostagePerOrder.Value; }));
|
||
}
|
||
return true;
|
||
}
|
||
|
||
private void btnPostagePerOrderCancel_Click(object sender, EventArgs e)
|
||
{
|
||
pnlPostagePerOrder.Visible = false;
|
||
}
|
||
}
|
||
}
|