diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index a0f656b..722a82f 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -27,7 +27,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 788; + public static int VersionCount = 789; //public static int VersionCount = 613; /// diff --git a/AllBase/Model/Result/TemuDBProductSelect.cs b/AllBase/Model/Result/TemuDBProductSelect.cs index 58b63a6..ba0c2b7 100644 --- a/AllBase/Model/Result/TemuDBProductSelect.cs +++ b/AllBase/Model/Result/TemuDBProductSelect.cs @@ -1,4 +1,5 @@ -using System; +using AllBase.Model.Param.WXParam; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -47,6 +48,7 @@ namespace AllBase.Model.Result public string skc_id { get; set; } public int product_get_type { get; set; } public KJDDBProduct kjdDbProduct { get; set; } = null; + public WXUploadProductParam wxDraftProduct { get; set; } = null; #endregion } } diff --git a/KJDService/KJD_WebService/BLL/KJD/ProductThirdManage.cs b/KJDService/KJD_WebService/BLL/KJD/ProductThirdManage.cs index b3dd8e4..c2b6d74 100644 --- a/KJDService/KJD_WebService/BLL/KJD/ProductThirdManage.cs +++ b/KJDService/KJD_WebService/BLL/KJD/ProductThirdManage.cs @@ -838,6 +838,7 @@ namespace KJD_Web.BLL var search_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "search_sub_sa_name")?.Replace("'", "\\'"); var status = RegexUtils.GetStringQuery(ref inputData, "status")?.Replace("'", "\\'"); var operate_sub_sa_name = RegexUtils.GetStringQuery(ref inputData, "operate_sub_sa_name")?.Replace("'", "\\'"); + var search_year = RegexUtils.GetStringQuery(ref inputData, "search_year")?.Replace("'", "\\'").ParseToInt(); var search_end_time = RegexUtils.GetStringJson(ref inputData, "search_end_time")?.ParseToDateTimeNullable(); if (search_end_time == null || search_end_time.Value > DateTime.Now.Date.AddDays(1)) search_end_time = DateTime.Now.Date.AddDays(1); @@ -854,26 +855,41 @@ namespace KJD_Web.BLL string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString; MysqlUtils mySql = new MysqlUtils(conn); - string sql = "select count(s.id) from ("; - - for (int year = search_start_time.Value.Year; year <= search_end_time.Value.Year; year++) + string sql = ""; + if (search_year != null) { string dbName = "kjd"; - if (year >= 2026) + if (search_year >= 2026) dbName = "kjd_yearly"; string tableName = dbName + ".third_product_select"; - - if (year >= 2026) - tableName += "_" + year; - if (year > search_start_time.Value.Year) - sql += " UNION ALL"; - sql += " SELECT * FROM " + tableName; + if (search_year >= 2026) + tableName += "_" + search_year; + sql += " SELECT count(s.id) FROM " + tableName + " s " + + //"LEFT JOIN kjd.third_product p on s.out_product_id=p.id " + + //"LEFT JOIN kjd.user u on s.operate_sub_sa_name=u.user_name " + + "WHERE 1=1"; } + else + { + sql = "select count(s.id) from ("; + for (int year = search_start_time.Value.Year; year <= search_end_time.Value.Year; year++) + { + string dbName = "kjd"; + if (year >= 2026) + dbName = "kjd_yearly"; + string tableName = dbName + ".third_product_select"; - sql += ") s " + - "LEFT JOIN kjd.third_product p on s.out_product_id=p.id " + - "LEFT JOIN kjd.user u on s.operate_sub_sa_name=u.user_name " + - "WHERE s.add_time BETWEEN '" + search_start_time.Value.ToString("yyyy-MM-dd") + "' AND '" + search_end_time.Value.ToString("yyyy-MM-dd") + "' "; + if (year >= 2026) + tableName += "_" + year; + if (year > search_start_time.Value.Year) + sql += " UNION ALL"; + sql += " SELECT * FROM " + tableName; + } + sql += ") s " + + "LEFT JOIN kjd.third_product p on s.out_product_id=p.id " + + "LEFT JOIN kjd.user u on s.operate_sub_sa_name=u.user_name " + + "WHERE s.add_time BETWEEN '" + search_start_time.Value.ToString("yyyy-MM-dd") + "' AND '" + search_end_time.Value.ToString("yyyy-MM-dd") + "' "; + } string where = ""; if (!isAdmin) @@ -944,35 +960,83 @@ namespace KJD_Web.BLL //if (isDetail) //sql = "select * from kjd.third_product_select where 1=1"; //else - sql = "SELECT s.id,s.out_product_id,s.shop_id,s.shop_account,s.user_name," + - "s.sub_user_name,s.notes,s.user_notes,s.status,s.draft_id,s.add_times,s.add_time,s.mdy_time," + - "s.fission_product_name,s.operate_sub_sa_name,s.add_sub_sa_time," + - "p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.change_cat_id,p.change_cat_name,p.ext_code,p.product_name,p.main_img," + - "u.nick_name as operate_sub_sa_nick " + - "FROM ("; - for (int year = search_start_time.Value.Year; year <= search_end_time.Value.Year; year++) + if (search_year != null) { string dbName = "kjd"; - if (year >= 2026) + if (search_year >= 2026) dbName = "kjd_yearly"; string tableName = dbName + ".third_product_select"; + if (search_year >= 2026) + tableName += "_" + search_year; - if (year >= 2026) - tableName += "_" + year; - if (year > search_start_time.Value.Year) - sql += " UNION ALL"; - sql += " SELECT * FROM " + tableName; + sql = "SELECT s.id,s.out_product_id,s.shop_id,s.shop_account,s.user_name," + + "s.sub_user_name,s.notes,s.user_notes,s.status,s.draft_id,s.add_times,s.add_time,s.mdy_time," + + "s.fission_product_name,s.operate_sub_sa_name,s.add_sub_sa_time," + + "p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.change_cat_id,p.change_cat_name,p.ext_code,p.product_name,p.main_img," + + "u.nick_name as operate_sub_sa_nick " + + "FROM " + tableName + " s LEFT JOIN kjd.third_product p ON s.out_product_id=p.id " + + "LEFT JOIN kjd.user u ON u.user_name=s.operate_sub_sa_name " + + "WHERE 1=1"; + sql += where; // where子句 + sql += " order by s.add_time desc"; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + + + sql = "SELECT s1.id,s1.out_product_id,s1.shop_id,s1.shop_account,s1.user_name," + + "s1.sub_user_name,s1.notes,s1.user_notes,s1.status,s1.draft_id,s1.add_times,s1.add_time,s1.mdy_time," + + "s1.fission_product_name,s1.operate_sub_sa_name,s1.add_sub_sa_time," + + "s2.spu_id,s2.skc_id,s2.cat_id,s2.cat_name,s2.change_cat_id,s2.change_cat_name,s2.ext_code,s2.product_name,s2.main_img "; + if (operate_sub_sa_name != null || 1 == 2) + sql += ",s2.operate_sub_sa_nick"; + sql += " FROM " + tableName + " s1"; + // 子查询 + sql += " JOIN (SELECT s.id," + + "p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.change_cat_id,p.change_cat_name,p.ext_code,p.product_name,p.main_img "; + if (operate_sub_sa_name != null || 1 == 2) + sql += ",u.nick_name as operate_sub_sa_nick "; + sql += " FROM " + tableName + " s LEFT JOIN kjd.third_product p ON s.out_product_id=p.id "; + if (operate_sub_sa_name != null || 1 == 2) + sql += "LEFT JOIN kjd.user u ON u.user_name=s.operate_sub_sa_name "; + sql += "WHERE 1=1"; + sql += where; // where子句 + sql += " order by s.add_time desc"; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + sql += ") as s2 ON s1.id = s2.id"; } + else + { + sql = "SELECT s.id,s.out_product_id,s.shop_id,s.shop_account,s.user_name," + + "s.sub_user_name,s.notes,s.user_notes,s.status,s.draft_id,s.add_times,s.add_time,s.mdy_time," + + "s.fission_product_name,s.operate_sub_sa_name,s.add_sub_sa_time," + + "p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.change_cat_id,p.change_cat_name,p.ext_code,p.product_name,p.main_img," + + "u.nick_name as operate_sub_sa_nick " + + "FROM ("; - sql += ") s LEFT JOIN kjd.third_product p ON s.out_product_id=p.id " + - "LEFT JOIN kjd.user u ON u.user_name=s.operate_sub_sa_name " + - "WHERE 1=1"; + for (int year = search_start_time.Value.Year; year <= search_end_time.Value.Year; year++) + { + string dbName = "kjd"; + if (year >= 2026) + dbName = "kjd_yearly"; + string tableName = dbName + ".third_product_select"; - sql += where; // where子句 + if (year >= 2026) + tableName += "_" + year; + if (year > search_start_time.Value.Year) + sql += " UNION ALL"; + sql += " SELECT * FROM " + tableName; + } - sql += " order by s.add_time desc"; - sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + sql += ") s LEFT JOIN kjd.third_product p ON s.out_product_id=p.id " + + "LEFT JOIN kjd.user u ON u.user_name=s.operate_sub_sa_name " + + "WHERE s.add_time BETWEEN '" + search_start_time.Value.ToString("yyyy-MM-dd") + "' AND '" + search_end_time.Value.ToString("yyyy-MM-dd") + "' "; + + + sql += where; // where子句 + + sql += " order by s.add_time desc"; + sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size; + } dt = mySql.ExecuteDataTable(sql, paramLst.ToArray()); } @@ -1008,12 +1072,15 @@ namespace KJD_Web.BLL skc_id = row["skc_id"].ToString(), spu_id = row["spu_id"].ToString(), operate_sub_sa_name = row["operate_sub_sa_name"].ToString(), - operate_sub_sa_nick = row["operate_sub_sa_nick"].ToString(), fission_product_name = row["fission_product_name"].ToString(), user_notes = row["user_notes"].ToString(), //product_json = row["product_json"].ToString(), //size_json = row["size_json"].ToString(), }; + if (operate_sub_sa_name != null || 1 == 2) + { + prodSelect.operate_sub_sa_nick = row["operate_sub_sa_nick"].ToString(); + } prodSelect.add_sub_sa_time = row["add_sub_sa_time"] as DateTime?; productLst.Add(prodSelect); } diff --git a/KJDService/KJD_WebService/KJD_WebService.csproj.user b/KJDService/KJD_WebService/KJD_WebService.csproj.user index 1b87364..4bcdc04 100644 --- a/KJDService/KJD_WebService/KJD_WebService.csproj.user +++ b/KJDService/KJD_WebService/KJD_WebService.csproj.user @@ -8,7 +8,7 @@ - Debug|Any CPU + Release|Any CPU ShowAllFiles diff --git a/TEMUKJD/BaseForms/LRBaseForm.cs b/TEMUKJD/BaseForms/BaseGeneralForm.cs similarity index 99% rename from TEMUKJD/BaseForms/LRBaseForm.cs rename to TEMUKJD/BaseForms/BaseGeneralForm.cs index c58ef9c..7d73c59 100644 --- a/TEMUKJD/BaseForms/LRBaseForm.cs +++ b/TEMUKJD/BaseForms/BaseGeneralForm.cs @@ -11,7 +11,7 @@ using System.Windows.Forms; namespace TemuKJD.BaseForms { - public partial class LRBaseForm : BaseForm + public partial class BaseGeneralForm : BaseForm { const int WM_NCHITTEST = 0x0084; const int HTLEFT = 10; //左边界 @@ -95,7 +95,7 @@ namespace TemuKJD.BaseForms } } - public LRBaseForm() + public BaseGeneralForm() { InitializeComponent(); this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); diff --git a/TEMUKJD/BaseForms/LRBaseForm.designer.cs b/TEMUKJD/BaseForms/BaseGeneralForm.designer.cs similarity index 99% rename from TEMUKJD/BaseForms/LRBaseForm.designer.cs rename to TEMUKJD/BaseForms/BaseGeneralForm.designer.cs index ff32c41..e858171 100644 --- a/TEMUKJD/BaseForms/LRBaseForm.designer.cs +++ b/TEMUKJD/BaseForms/BaseGeneralForm.designer.cs @@ -1,6 +1,6 @@ namespace TemuKJD.BaseForms { - partial class LRBaseForm + partial class BaseGeneralForm { /// /// Required designer variable. diff --git a/TEMUKJD/BaseForms/LRBaseForm.resx b/TEMUKJD/BaseForms/BaseGeneralForm.resx similarity index 100% rename from TEMUKJD/BaseForms/LRBaseForm.resx rename to TEMUKJD/BaseForms/BaseGeneralForm.resx diff --git a/TEMUKJD/BaseForms/BaseMsgForm.cs b/TEMUKJD/BaseForms/BaseMsgForm.cs index fae9852..0e44739 100644 --- a/TEMUKJD/BaseForms/BaseMsgForm.cs +++ b/TEMUKJD/BaseForms/BaseMsgForm.cs @@ -11,7 +11,7 @@ using System.Windows.Forms; namespace TemuKJD.BaseForms { - public partial class BaseMsgForm : LRBaseForm + public partial class BaseMsgForm : BaseGeneralForm { public BaseMsgForm() { diff --git a/TEMUKJD/BaseForms/BaseTalkForm.cs b/TEMUKJD/BaseForms/BaseTalkForm.cs new file mode 100644 index 0000000..e368531 --- /dev/null +++ b/TEMUKJD/BaseForms/BaseTalkForm.cs @@ -0,0 +1,375 @@ +using AllBase; +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 TemuKJD.BaseForms +{ + public partial class BaseTalkForm : BaseForm + { + const int WM_NCHITTEST = 0x0084; + const int HTLEFT = 10; //左边界 + const int HTRIGHT = 11; //右边界 + const int HTTOP = 12; //上边界 + const int HTTOPLEFT = 13; //左上角 + const int HTTOPRIGHT = 14; //右上角 + const int HTBOTTOM = 15; //下边界 + const int HTBOTTOMLEFT = 0x10; //左下角 + const int HTBOTTOMRIGHT = 17; //右下角 + + public bool Dragable { get; set; } = true; + + protected override void WndProc(ref Message m) + { + switch (m.Msg) + { + case WM_NCHITTEST: + base.WndProc(ref m); + Point vPoint = new Point((int)m.LParam & 0xFFFF, + (int)m.LParam >> 16 & 0xFFFF); + vPoint = PointToClient(vPoint); + if (vPoint.X <= 5) + if (vPoint.Y <= 5) + m.Result = (IntPtr)HTTOPLEFT; + else if (vPoint.Y >= ClientSize.Height - 5) + m.Result = (IntPtr)HTBOTTOMLEFT; + else m.Result = (IntPtr)HTLEFT; + else if (vPoint.X >= ClientSize.Width - 5) + if (vPoint.Y <= 5) + m.Result = (IntPtr)HTTOPRIGHT; + else if (vPoint.Y >= ClientSize.Height - 5) + m.Result = (IntPtr)HTBOTTOMRIGHT; + else m.Result = (IntPtr)HTRIGHT; + else if (vPoint.Y <= 5) + m.Result = (IntPtr)HTTOP; + else if (vPoint.Y >= ClientSize.Height - 5) + m.Result = (IntPtr)HTBOTTOM; + break; + default: + try + { + base.WndProc(ref m); + } + catch + { + } + break; + } + + this.Resize += LRBaseForm_Resize; + } + + private void LRBaseForm_Resize(object sender, EventArgs e) + { + if (WindowState == FormWindowState.Maximized) + { + pbMaxBase.Visible = false; + pbNormalBase.Visible = true; + if (showMinimizedBox) + pbMinBase.Visible = true; + } + else if (WindowState == FormWindowState.Minimized) + { + } + else + { + if (showMaximizeBox) + pbMaxBase.Visible = true; + pbNormalBase.Visible = false; + if (showMinimizedBox) + pbMinBase.Visible = true; + } + + if (!showMinimizedBox) + this.pbMinBase.Visible = false; + if (!showMaximizeBox) + { + this.pbMaxBase.Visible = false; + this.pbNormalBase.Visible = false; + } + } + + public BaseTalkForm() + { + InitializeComponent(); + this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); + } + + private void LcBaseForm_Load(object sender, EventArgs e) + { + if (BaseClass.Ico != null) + Iconx = Icon = BaseClass.Ico; + else + Iconx = this.Icon = BaseClass.Ico = ImageBuild.ConvertToIcon(global::TemuKJD.Properties.Resources.icon); + + if (!this.ShowIcon) + { + this.pbLogo.Visible = false; + this.lbTitle.Location = new Point(this.pbLogo.Location.X, this.lbTitle.Location.Y); + } + this.pbLogo.Image = BaseClass.LogoImage; + + if (this.ShowMaximizeBox) + { + if (this.WindowState == FormWindowState.Maximized) + { + this.pbMaxBase.Visible = false; + this.pbNormalBase.Visible = true; + } + else + { + this.pbMaxBase.Visible = true; + this.pbNormalBase.Visible = false; + } + } + + lblVersionInfo.Text = BaseClass.ToolName + " V" + BaseClass.Varsion + " - " + BaseClass.NickName; + + SetPanelVisible(this.TopLevel || DesignMode); + } + + public void SetPanelVisible(bool visible) + { + if (visible) + { + this.Padding = new Padding(1); + this.panel1.Visible = true; + } + else + { + this.Padding = new Padding(0); + this.panel1.Visible = false; + } + } + + private void PictureBox2_Click(object sender, EventArgs e) + { + WindowState = FormWindowState.Minimized; + } + + public virtual void PictureBox1_Click(object sender, EventArgs e) + { + //pictureBox3.Image?.Dispose(); + Close(); + } + + private Icon _iconx; + public Icon Iconx + { + set + { + _iconx = value; + if (_iconx == null) return; + pbLogo.Image = _iconx.ToBitmap(); + } + } + + private bool showMinimizedBox = true; + [Browsable(true), Description("显示最小化按钮"), Category("自定义分组")] + public bool ShowMinimizedBox + { + get + { + return showMinimizedBox; + } + set + { + this.showMinimizedBox = value; + } + } + + private bool showMaximizeBox = false; + [Browsable(true), Description("显示最大化按钮"), Category("自定义分组")] + public bool ShowMaximizeBox + { + get { return showMaximizeBox; } + set + { + showMaximizeBox = value; + if (showMaximizeBox) + { + if (this.WindowState == FormWindowState.Maximized) + { + this.pbMaxBase.Visible = false; + this.pbNormalBase.Visible = true; + } + else + { + this.pbMaxBase.Visible = true; + this.pbNormalBase.Visible = false; + } + } + else + { + this.pbMaxBase.Visible = false; + this.pbNormalBase.Visible = false; + } + } + } + + public string TitleText + { + get + { + return Text; + } + set + { + lbTitle.Text = Text = value; + } + } + private Point mouseOffset;//记录鼠标指针的坐标 + private bool isMouseDown;//记录鼠标左键是否按下 + private void Panel1_MouseMove(object sender, MouseEventArgs e) + { + if (isMouseDown && Dragable) + { + //获取鼠标的位置 + Point mousePos = MousePosition; + mousePos.Offset(mouseOffset.X, mouseOffset.Y); + Location = mousePos; + } + } + + private void Panel1_MouseDown(object sender, MouseEventArgs e) + { + if (e.Button == MouseButtons.Left) + { + mouseOffset = new Point(-e.X, -e.Y); + isMouseDown = true; + } + } + + private void Panel1_MouseUp(object sender, MouseEventArgs e) + { + isMouseDown = false; + } + + private void PictureBox1_MouseHover(object sender, EventArgs e) + { + this.pbCloseBase.Image = global::TemuKJD.Properties.Resources.close_hover; + this.Cursor = Cursors.Hand; + + } + + private void PictureBox1_MouseLeave(object sender, EventArgs e) + { + this.pbCloseBase.Image = global::TemuKJD.Properties.Resources.close; + this.Cursor = Cursors.Default; + + } + + private void PictureBox2_MouseHover(object sender, EventArgs e) + { + this.pbMinBase.Image = global::TemuKJD.Properties.Resources.min_hover; + this.Cursor = Cursors.Hand; + + } + + private void PictureBox2_MouseLeave(object sender, EventArgs e) + { + this.pbMinBase.Image = global::TemuKJD.Properties.Resources.min; + this.Cursor = Cursors.Default; + + } + + public virtual void HideTitle() + { + this.panel1.Visible = false; + } + + #region 窗体提交数据完成事件 + public event Action SaveComplete; + protected virtual void OnSaveComplete(object param) + { + this.SaveComplete?.Invoke(param); + } + public event Action SaveCompleteWithDescribe; + protected virtual void OnSaveComplete(object param, object describe) + { + this.SaveCompleteWithDescribe?.Invoke(param, describe); + } + #endregion + + private void pbNormalBase_Click(object sender, EventArgs e) + { + WindowState = FormWindowState.Normal; + this.pbMaxBase.Visible = true; + this.pbNormalBase.Visible = false; + } + + private void pbNormalBase_MouseHover(object sender, EventArgs e) + { + this.pbNormalBase.Image = global::TemuKJD.Properties.Resources.normal_hover; + this.Cursor = Cursors.Hand; + } + + private void pbNormalBase_MouseLeave(object sender, EventArgs e) + { + this.pbNormalBase.Image = global::TemuKJD.Properties.Resources.normal; + this.Cursor = Cursors.Default; + } + + private void pbMaxBase_Click(object sender, EventArgs e) + { + WindowState = FormWindowState.Maximized; + this.pbMaxBase.Visible = false; + this.pbNormalBase.Visible = true; + } + + private void pbMaxBase_MouseHover(object sender, EventArgs e) + { + this.pbMaxBase.Image = global::TemuKJD.Properties.Resources.max_hover; + this.Cursor = Cursors.Hand; + } + + private void pbMaxBase_MouseLeave(object sender, EventArgs e) + { + this.pbMaxBase.Image = global::TemuKJD.Properties.Resources.max; + this.Cursor = Cursors.Default; + } + + private void lbTitle_MouseDown(object sender, MouseEventArgs e) + { + if (e.Button == MouseButtons.Left) + { + mouseOffset = new Point(-e.X, -e.Y); + isMouseDown = true; + } + } + + private void lbTitle_MouseMove(object sender, MouseEventArgs e) + { + if (isMouseDown && Dragable) + { + var control = sender as Control; + if (control == null) + return; + + //获取鼠标的位置 + Point mousePos = MousePosition; + var x = mouseOffset.X; + var y = mouseOffset.Y; + while (control.Parent != null && control.Parent != this) + { + x -= control.Location.X; + y -= control.Location.Y; + control = control.Parent; + } + mousePos.Offset(x, y); + Location = mousePos; + } + } + + private void lbTitle_MouseUp(object sender, MouseEventArgs e) + { + isMouseDown = false; + } + } +} diff --git a/TEMUKJD/BaseForms/BaseTalkForm.designer.cs b/TEMUKJD/BaseForms/BaseTalkForm.designer.cs new file mode 100644 index 0000000..3ddf010 --- /dev/null +++ b/TEMUKJD/BaseForms/BaseTalkForm.designer.cs @@ -0,0 +1,221 @@ +namespace TemuKJD.BaseForms +{ + partial class BaseTalkForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.panel1 = new System.Windows.Forms.Panel(); + this.panel2 = new System.Windows.Forms.Panel(); + this.pbMinBase = new System.Windows.Forms.PictureBox(); + this.pbCloseBase = new System.Windows.Forms.PictureBox(); + this.pbNormalBase = new System.Windows.Forms.PictureBox(); + this.pbMaxBase = new System.Windows.Forms.PictureBox(); + this.pbLogo = new System.Windows.Forms.PictureBox(); + this.lbTitle = new System.Windows.Forms.Label(); + this.lblVersionName = new System.Windows.Forms.Label(); + this.lblVersionInfo = new System.Windows.Forms.Label(); + this.panel1.SuspendLayout(); + this.panel2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pbMinBase)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbCloseBase)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbNormalBase)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbMaxBase)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLogo)).BeginInit(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.panel1.Controls.Add(this.lblVersionName); + this.panel1.Controls.Add(this.lblVersionInfo); + this.panel1.Controls.Add(this.panel2); + this.panel1.Controls.Add(this.pbLogo); + this.panel1.Controls.Add(this.lbTitle); + this.panel1.Dock = System.Windows.Forms.DockStyle.Top; + this.panel1.Location = new System.Drawing.Point(1, 1); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(964, 80); + this.panel1.TabIndex = 0; + this.panel1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Panel1_MouseDown); + this.panel1.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Panel1_MouseMove); + this.panel1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.Panel1_MouseUp); + // + // panel2 + // + this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.panel2.Controls.Add(this.pbMinBase); + this.panel2.Controls.Add(this.pbCloseBase); + this.panel2.Controls.Add(this.pbNormalBase); + this.panel2.Controls.Add(this.pbMaxBase); + this.panel2.Location = new System.Drawing.Point(804, 0); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(160, 32); + this.panel2.TabIndex = 1; + // + // pbMinBase + // + this.pbMinBase.Dock = System.Windows.Forms.DockStyle.Right; + this.pbMinBase.Image = global::TemuKJD.Properties.Resources.min; + this.pbMinBase.Location = new System.Drawing.Point(32, 0); + this.pbMinBase.Name = "pbMinBase"; + this.pbMinBase.Size = new System.Drawing.Size(32, 32); + this.pbMinBase.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; + this.pbMinBase.TabIndex = 1; + this.pbMinBase.TabStop = false; + this.pbMinBase.Click += new System.EventHandler(this.PictureBox2_Click); + this.pbMinBase.MouseLeave += new System.EventHandler(this.PictureBox2_MouseLeave); + this.pbMinBase.MouseHover += new System.EventHandler(this.PictureBox2_MouseHover); + // + // pbCloseBase + // + this.pbCloseBase.Dock = System.Windows.Forms.DockStyle.Right; + this.pbCloseBase.Image = global::TemuKJD.Properties.Resources.close; + this.pbCloseBase.Location = new System.Drawing.Point(64, 0); + this.pbCloseBase.Name = "pbCloseBase"; + this.pbCloseBase.Size = new System.Drawing.Size(32, 32); + this.pbCloseBase.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; + this.pbCloseBase.TabIndex = 0; + this.pbCloseBase.TabStop = false; + this.pbCloseBase.Click += new System.EventHandler(this.PictureBox1_Click); + this.pbCloseBase.MouseLeave += new System.EventHandler(this.PictureBox1_MouseLeave); + this.pbCloseBase.MouseHover += new System.EventHandler(this.PictureBox1_MouseHover); + // + // pbNormalBase + // + this.pbNormalBase.Dock = System.Windows.Forms.DockStyle.Right; + this.pbNormalBase.Image = global::TemuKJD.Properties.Resources.normal; + this.pbNormalBase.Location = new System.Drawing.Point(96, 0); + this.pbNormalBase.Name = "pbNormalBase"; + this.pbNormalBase.Size = new System.Drawing.Size(32, 32); + this.pbNormalBase.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; + this.pbNormalBase.TabIndex = 6; + this.pbNormalBase.TabStop = false; + this.pbNormalBase.Visible = false; + this.pbNormalBase.Click += new System.EventHandler(this.pbNormalBase_Click); + this.pbNormalBase.MouseLeave += new System.EventHandler(this.pbNormalBase_MouseLeave); + this.pbNormalBase.MouseHover += new System.EventHandler(this.pbNormalBase_MouseHover); + // + // pbMaxBase + // + this.pbMaxBase.Dock = System.Windows.Forms.DockStyle.Right; + this.pbMaxBase.Image = global::TemuKJD.Properties.Resources.max; + this.pbMaxBase.Location = new System.Drawing.Point(128, 0); + this.pbMaxBase.Name = "pbMaxBase"; + this.pbMaxBase.Size = new System.Drawing.Size(32, 32); + this.pbMaxBase.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage; + this.pbMaxBase.TabIndex = 5; + this.pbMaxBase.TabStop = false; + this.pbMaxBase.Visible = false; + this.pbMaxBase.Click += new System.EventHandler(this.pbMaxBase_Click); + this.pbMaxBase.MouseLeave += new System.EventHandler(this.pbMaxBase_MouseLeave); + this.pbMaxBase.MouseHover += new System.EventHandler(this.pbMaxBase_MouseHover); + // + // pbLogo + // + this.pbLogo.Location = new System.Drawing.Point(10, 10); + this.pbLogo.Name = "pbLogo"; + this.pbLogo.Size = new System.Drawing.Size(180, 60); + this.pbLogo.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pbLogo.TabIndex = 79; + this.pbLogo.TabStop = false; + // + // lbTitle + // + this.lbTitle.AutoSize = true; + this.lbTitle.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.lbTitle.ForeColor = System.Drawing.Color.White; + this.lbTitle.Location = new System.Drawing.Point(196, 7); + this.lbTitle.Name = "lbTitle"; + this.lbTitle.Size = new System.Drawing.Size(45, 17); + this.lbTitle.TabIndex = 2; + this.lbTitle.Text = "label1"; + this.lbTitle.Visible = false; + this.lbTitle.MouseDown += new System.Windows.Forms.MouseEventHandler(this.lbTitle_MouseDown); + this.lbTitle.MouseMove += new System.Windows.Forms.MouseEventHandler(this.lbTitle_MouseMove); + this.lbTitle.MouseUp += new System.Windows.Forms.MouseEventHandler(this.lbTitle_MouseUp); + // + // lblVersionName + // + this.lblVersionName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.lblVersionName.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0))))); + this.lblVersionName.Location = new System.Drawing.Point(723, 33); + this.lblVersionName.Name = "lblVersionName"; + this.lblVersionName.Size = new System.Drawing.Size(238, 23); + this.lblVersionName.TabIndex = 81; + this.lblVersionName.Text = "版本类型"; + this.lblVersionName.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + this.lblVersionName.Visible = false; + // + // lblVersionInfo + // + this.lblVersionInfo.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.lblVersionInfo.ForeColor = System.Drawing.SystemColors.ControlDark; + this.lblVersionInfo.Location = new System.Drawing.Point(723, 56); + this.lblVersionInfo.Name = "lblVersionInfo"; + this.lblVersionInfo.Size = new System.Drawing.Size(238, 23); + this.lblVersionInfo.TabIndex = 80; + this.lblVersionInfo.Text = "版本信息"; + this.lblVersionInfo.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + // + // BaseTalkForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(98)))), ((int)(((byte)(200))))); + this.ClientSize = new System.Drawing.Size(966, 535); + this.Controls.Add(this.panel1); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; + this.Name = "BaseTalkForm"; + this.Padding = new System.Windows.Forms.Padding(1); + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "LcBaseForm"; + this.Load += new System.EventHandler(this.LcBaseForm_Load); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); + this.panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.pbMinBase)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbCloseBase)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbNormalBase)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbMaxBase)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pbLogo)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.PictureBox pbMinBase; + private System.Windows.Forms.PictureBox pbCloseBase; + private System.Windows.Forms.Label lbTitle; + private System.Windows.Forms.PictureBox pbNormalBase; + private System.Windows.Forms.PictureBox pbMaxBase; + public System.Windows.Forms.PictureBox pbLogo; + private System.Windows.Forms.Panel panel2; + public System.Windows.Forms.Label lblVersionName; + private System.Windows.Forms.Label lblVersionInfo; + } +} \ No newline at end of file diff --git a/TEMUKJD/BaseForms/BaseTalkForm.resx b/TEMUKJD/BaseForms/BaseTalkForm.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/TEMUKJD/BaseForms/BaseTalkForm.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/TEMUKJD/ChangeForm.cs b/TEMUKJD/ChangeForm.cs index ec583a6..8de6247 100644 --- a/TEMUKJD/ChangeForm.cs +++ b/TEMUKJD/ChangeForm.cs @@ -12,11 +12,12 @@ using AllBase; //using TemuKJD.ChatForms; //using TemuKJD.DashBoardForms; using TemuKJD.BaseForms; +using TemuKJD.WXForms.TalkForms; using Work; namespace TemuKJD { - public partial class ChangeForm : LRBaseForm + public partial class ChangeForm : BaseGeneralForm { public MainForm mf; public ChangeForm() @@ -24,6 +25,40 @@ namespace TemuKJD InitializeComponent(); } + private void ChangeForm_Load(object sender, EventArgs e) + { + TitleText = "功能选择 - " + BaseClass.ToolName; + if (BaseClass.Ico != null) + { + Iconx = BaseClass.Ico; + Icon = BaseClass.Ico; + } + mf.Hide(); + Text += " - " + BaseClass.ToolName; + + pnlExtend.Visible = BaseClass.DarenYaoyue; + + //直接登录上货工具 + if (BaseClass.MainPath != "weixin1") + { + label1.Visible = true; + pnlChat.Visible = pnlUploadGoods.Visible = false; + Task.Run(() => + { + System.Threading.Thread.Sleep(100); + Invoke(new Action(() => + { + panel2_Click(this.pnlUploadGoods, null); + })); + }); + } + else + { + label1.Visible = false; + pnlChat.Visible = pnlUploadGoods.Visible = true; + } + } + private void panel1_Click(object sender, EventArgs e) { Process p = new Process(); @@ -73,36 +108,17 @@ namespace TemuKJD Process.GetCurrentProcess().Kill(); } - private void ChangeForm_Load(object sender, EventArgs e) - { - TitleText = "功能选择 - " + BaseClass.ToolName; - if (BaseClass.Ico != null) - { - Iconx = BaseClass.Ico; - Icon = BaseClass.Ico; - } - mf.Hide(); - Text += " - " + BaseClass.ToolName; - - pnlExtend.Visible = BaseClass.DarenYaoyue; - - //直接登录上货工具 - Task.Run(() => - { - System.Threading.Thread.Sleep(100); - Invoke(new Action(() => - { - panel2_Click(this.panel2, null); - })); - }); - } - private void pnlChat_Click(object sender, EventArgs e) { //ChatForm cf = new ChatForm(); //cf.Show(); //cf.SetTitle(); //Hide(); + + WxTalkForm cf = new WxTalkForm(); + cf.Show(); + //cf.SetTitle(); + Hide(); } private void pnlExtend_Click(object sender, EventArgs e) diff --git a/TEMUKJD/ChangeForm.designer.cs b/TEMUKJD/ChangeForm.designer.cs index 53899a8..fa0f1ae 100644 --- a/TEMUKJD/ChangeForm.designer.cs +++ b/TEMUKJD/ChangeForm.designer.cs @@ -32,7 +32,7 @@ this.panel4 = new DevComponents.DotNetBar.PanelEx(); this.panel3 = new DevComponents.DotNetBar.PanelEx(); this.label1 = new System.Windows.Forms.Label(); - this.panel2 = new DevComponents.DotNetBar.PanelEx(); + this.pnlUploadGoods = new DevComponents.DotNetBar.PanelEx(); this.panel1 = new DevComponents.DotNetBar.PanelEx(); this.panel5 = new DevComponents.DotNetBar.PanelEx(); this.pnlExtend = new DevComponents.DotNetBar.PanelEx(); @@ -44,9 +44,9 @@ // this.panel4.Cursor = System.Windows.Forms.Cursors.Hand; this.panel4.DisabledBackColor = System.Drawing.Color.Empty; - this.panel4.Location = new System.Drawing.Point(234, 215); + this.panel4.Location = new System.Drawing.Point(271, 176); this.panel4.Name = "panel4"; - this.panel4.Size = new System.Drawing.Size(172, 65); + this.panel4.Size = new System.Drawing.Size(104, 37); this.panel4.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_order; this.panel4.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; this.panel4.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); @@ -58,9 +58,9 @@ // this.panel3.Cursor = System.Windows.Forms.Cursors.Hand; this.panel3.DisabledBackColor = System.Drawing.Color.Empty; - this.panel3.Location = new System.Drawing.Point(31, 43); + this.panel3.Location = new System.Drawing.Point(15, 176); this.panel3.Name = "panel3"; - this.panel3.Size = new System.Drawing.Size(172, 65); + this.panel3.Size = new System.Drawing.Size(104, 37); this.panel3.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_buyer_blast; this.panel3.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; this.panel3.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); @@ -72,25 +72,24 @@ // this.label1.AutoSize = true; this.label1.Font = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label1.Location = new System.Drawing.Point(34, 43); + this.label1.Location = new System.Drawing.Point(28, 108); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(224, 27); this.label1.TabIndex = 54; this.label1.Text = "登录成功,正在跳转……"; // - // panel2 + // pnlUploadGoods // - this.panel2.Cursor = System.Windows.Forms.Cursors.Hand; - this.panel2.DisabledBackColor = System.Drawing.Color.Empty; - this.panel2.Location = new System.Drawing.Point(234, 43); - this.panel2.Name = "panel2"; - this.panel2.Size = new System.Drawing.Size(172, 65); - this.panel2.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_upload; - this.panel2.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; - this.panel2.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); - this.panel2.TabIndex = 1; - this.panel2.Visible = false; - this.panel2.Click += new System.EventHandler(this.panel2_Click); + this.pnlUploadGoods.Cursor = System.Windows.Forms.Cursors.Hand; + this.pnlUploadGoods.DisabledBackColor = System.Drawing.Color.Empty; + this.pnlUploadGoods.Location = new System.Drawing.Point(33, 40); + this.pnlUploadGoods.Name = "pnlUploadGoods"; + this.pnlUploadGoods.Size = new System.Drawing.Size(172, 65); + this.pnlUploadGoods.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_upload; + this.pnlUploadGoods.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; + this.pnlUploadGoods.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); + this.pnlUploadGoods.TabIndex = 1; + this.pnlUploadGoods.Click += new System.EventHandler(this.panel2_Click); // // panel1 // @@ -114,21 +113,21 @@ this.panel5.Controls.Add(this.pnlChat); this.panel5.Controls.Add(this.panel3); this.panel5.Controls.Add(this.panel4); - this.panel5.Controls.Add(this.panel2); + this.panel5.Controls.Add(this.pnlUploadGoods); this.panel5.DisabledBackColor = System.Drawing.Color.Empty; this.panel5.Dock = System.Windows.Forms.DockStyle.Fill; - this.panel5.Location = new System.Drawing.Point(1, 1); + this.panel5.Location = new System.Drawing.Point(1, 33); this.panel5.Name = "panel5"; - this.panel5.Size = new System.Drawing.Size(440, 290); + this.panel5.Size = new System.Drawing.Size(440, 258); this.panel5.TabIndex = 4; // // pnlExtend // this.pnlExtend.Cursor = System.Windows.Forms.Cursors.Hand; this.pnlExtend.DisabledBackColor = System.Drawing.Color.Empty; - this.pnlExtend.Location = new System.Drawing.Point(234, 131); + this.pnlExtend.Location = new System.Drawing.Point(142, 176); this.pnlExtend.Name = "pnlExtend"; - this.pnlExtend.Size = new System.Drawing.Size(172, 65); + this.pnlExtend.Size = new System.Drawing.Size(104, 37); this.pnlExtend.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_extend; this.pnlExtend.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; this.pnlExtend.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); @@ -140,19 +139,17 @@ // this.pnlChat.Cursor = System.Windows.Forms.Cursors.Hand; this.pnlChat.DisabledBackColor = System.Drawing.Color.Empty; - this.pnlChat.Location = new System.Drawing.Point(31, 131); + this.pnlChat.Location = new System.Drawing.Point(235, 40); this.pnlChat.Name = "pnlChat"; this.pnlChat.Size = new System.Drawing.Size(172, 65); this.pnlChat.Style.BackgroundImage = global::TemuKJD.Properties.Resources.choice_chat; this.pnlChat.StyleMouseOver.Border = DevComponents.DotNetBar.eBorderType.RaisedInner; this.pnlChat.StyleMouseOver.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(7)))), ((int)(((byte)(157)))), ((int)(((byte)(235))))); this.pnlChat.TabIndex = 16; - this.pnlChat.Visible = false; this.pnlChat.Click += new System.EventHandler(this.pnlChat_Click); // // ChangeForm // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; this.BackColor = System.Drawing.Color.White; this.ClientSize = new System.Drawing.Size(442, 292); @@ -174,7 +171,7 @@ #endregion private DevComponents.DotNetBar.PanelEx panel1; - private DevComponents.DotNetBar.PanelEx panel2; + private DevComponents.DotNetBar.PanelEx pnlUploadGoods; private DevComponents.DotNetBar.PanelEx panel3; private DevComponents.DotNetBar.PanelEx panel4; private DevComponents.DotNetBar.PanelEx panel5; diff --git a/TEMUKJD/Extension/DataGridViewExtension.cs b/TEMUKJD/Extension/DataGridViewExtension.cs index 8244329..b68a1f5 100644 --- a/TEMUKJD/Extension/DataGridViewExtension.cs +++ b/TEMUKJD/Extension/DataGridViewExtension.cs @@ -784,55 +784,59 @@ namespace TemuKJD.Extension } foreach (DataGridViewRow row in rowLst) { - if (row.Index > 1 && row.Cells[imgColumn].Displayed == false) + dgv.Invoke(new Action(() => { + if (row.Index > 1 && row.Cells[imgColumn].Displayed == false) + { + //dgv.Invoke(new Action(() => + //{ + try + { + if (row.Index > 0) + row.Cells[imgColumn].Value = defaultBitmap; + } + catch + { + } + //})); + return; + } + + if (row.Index < 0) + return; + if (row.Index >= 0 && row.Cells[imgColumn].Value != null && row.Cells[imgColumn].Value != defaultBitmap) + return; + + Image image = defaultBitmap; + if (row.Index >= 0) + { + string imgUrl = row.Cells[imgPathColumn]?.Value.ParseToString(); + if (isSetHttpsHttp == true) + imgUrl = imgUrl.Replace("https://", "http://"); + string getImgError = ""; + if (!string.IsNullOrWhiteSpace(imgUrl)) + { + image = GetHtml.GetUrlImg(imgUrl, out getImgError); + if (!string.IsNullOrEmpty(getImgError)) + //BaseMsgForm.ShowError("图片加载失败 " + getImgError); + image = TemuKJD.Properties.Resources.errpic; + } + } + try { - dgv.Invoke(new Action(() => - { - row.Cells[imgColumn].Value = defaultBitmap; - })); - } - catch - { - } - continue; - } - - if (row.Index < 0) - continue; - if (row.Index >= 0 && row.Cells[imgColumn].Value != null && row.Cells[imgColumn].Value != defaultBitmap) - continue; - - Image image = defaultBitmap; - if (row.Index >= 0) - { - string imgUrl = row.Cells[imgPathColumn]?.Value.ParseToString(); - if (isSetHttpsHttp == true) - imgUrl = imgUrl.Replace("https://", "http://"); - string getImgError = ""; - if (!string.IsNullOrWhiteSpace(imgUrl)) - { - image = GetHtml.GetUrlImg(imgUrl, out getImgError); - if (!string.IsNullOrEmpty(getImgError)) - //BaseMsgForm.ShowError("图片加载失败 " + getImgError); - image = TemuKJD.Properties.Resources.errpic; - } - } - - try - { - dgv.Invoke(new Action(() => - { + //dgv.Invoke(new Action(() => + //{ if (row.Index >= 0) { row.Cells[imgColumn].Value = image; } - })); - } - catch - { - } + //})); + } + catch + { + } + })); } }); } diff --git a/TEMUKJD/InitForm.cs b/TEMUKJD/InitForm.cs index 6b47a84..0de2ee2 100644 --- a/TEMUKJD/InitForm.cs +++ b/TEMUKJD/InitForm.cs @@ -16,7 +16,7 @@ using System.IO; namespace TemuKJD { - public partial class InitForm : LRBaseForm + public partial class InitForm : BaseGeneralForm { InitFormSettings initFormSettings = new InitFormSettings(); public InitForm() diff --git a/TEMUKJD/KJD.csproj b/TEMUKJD/KJD.csproj index 7e7e32f..1db3aca 100644 --- a/TEMUKJD/KJD.csproj +++ b/TEMUKJD/KJD.csproj @@ -114,6 +114,12 @@ + + Form + + + BaseTalkForm.cs + @@ -393,11 +399,11 @@ BaseMsgForm.cs - + Form - - LRBaseForm.cs + + BaseGeneralForm.cs Form @@ -1006,6 +1012,17 @@ SupportQrCodeForm.cs + + + + Form + + + WxTalkForm.cs + + + BaseTalkForm.cs + ChangeForm.cs @@ -1138,8 +1155,8 @@ BaseMsgForm.cs - - LRBaseForm.cs + + BaseGeneralForm.cs OrderForm.cs @@ -1416,6 +1433,9 @@ SupportQrCodeForm.cs + + WxTalkForm.cs + SettingsSingleFileGenerator diff --git a/TEMUKJD/KJD.csproj.user b/TEMUKJD/KJD.csproj.user index 7a74901..cebb4cf 100644 --- a/TEMUKJD/KJD.csproj.user +++ b/TEMUKJD/KJD.csproj.user @@ -1,7 +1,7 @@  - ShowAllFiles + ProjectFiles publish\ diff --git a/TEMUKJD/KJDForms/AdminForms/AdminShopAddSubSaForm.cs b/TEMUKJD/KJDForms/AdminForms/AdminShopAddSubSaForm.cs index 83f448c..9a035bd 100644 --- a/TEMUKJD/KJDForms/AdminForms/AdminShopAddSubSaForm.cs +++ b/TEMUKJD/KJDForms/AdminForms/AdminShopAddSubSaForm.cs @@ -15,7 +15,7 @@ using Work; namespace TemuKJD.KJDForms.AdminForms { - public partial class AdminShopAddSubSaForm : LRBaseForm + public partial class AdminShopAddSubSaForm : BaseGeneralForm { List lstShopLoginName = new List(); diff --git a/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs b/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs index 4144322..1906ba7 100644 --- a/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs +++ b/TEMUKJD/KJDForms/AdminForms/AdminShopLoginForm.cs @@ -29,7 +29,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.KJDForms.AdminForms { - public partial class AdminShopLoginForm : LRBaseForm + public partial class AdminShopLoginForm : BaseGeneralForm { public int CloseAfterSecond { get; set; } /// diff --git a/TEMUKJD/KJDForms/JITForms/JitOrderUploadFileForm.cs b/TEMUKJD/KJDForms/JITForms/JitOrderUploadFileForm.cs index b242b98..006bcfe 100644 --- a/TEMUKJD/KJDForms/JITForms/JitOrderUploadFileForm.cs +++ b/TEMUKJD/KJDForms/JITForms/JitOrderUploadFileForm.cs @@ -16,7 +16,7 @@ using Work; namespace TemuKJD.KJDForms.JITForms { - public partial class JitOrderUploadFileForm : LRBaseForm + public partial class JitOrderUploadFileForm : BaseGeneralForm { public bool isClientJit; TemuDBOrderInfo temuDBOrderInfo = null; diff --git a/TEMUKJD/KJDForms/ProductForms/ProductChangePriceForm.cs b/TEMUKJD/KJDForms/ProductForms/ProductChangePriceForm.cs index 2042362..da0d6ed 100644 --- a/TEMUKJD/KJDForms/ProductForms/ProductChangePriceForm.cs +++ b/TEMUKJD/KJDForms/ProductForms/ProductChangePriceForm.cs @@ -22,7 +22,7 @@ namespace TemuKJD.KJDForms.ProductForms /// /// 商品调价(改价) /// - public partial class ProductChangePriceForm : LRBaseForm + public partial class ProductChangePriceForm : BaseGeneralForm { public bool IsAuto = false; decimal wantPrice; diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ChangeStockForm.cs b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ChangeStockForm.cs index 54a4043..105eaa3 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ChangeStockForm.cs +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ChangeStockForm.cs @@ -15,7 +15,7 @@ using TemuKJD.BLL; namespace TemuKJD.KJDForms.ProductForms.TemuJitSubForms { - public partial class ChangeStockForm : LRBaseForm + public partial class ChangeStockForm : BaseGeneralForm { public bool IsEditSuccess = false; public bool IsAuto = false; diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ComplianceForm.cs b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ComplianceForm.cs index cc202ec..42c5c72 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ComplianceForm.cs +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ComplianceForm.cs @@ -19,7 +19,7 @@ namespace TemuKJD.KJDForms.ProductForms.TemuJitSubForms /// /// 修改合规信息 /// - public partial class ComplianceForm : LRBaseForm + public partial class ComplianceForm : BaseGeneralForm { /// /// 批量自动操作,不弹框 diff --git a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ReceiveAreaForm.cs b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ReceiveAreaForm.cs index eb18896..e2013ff 100644 --- a/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ReceiveAreaForm.cs +++ b/TEMUKJD/KJDForms/ProductForms/TemuJitSubForms/ReceiveAreaForm.cs @@ -15,7 +15,7 @@ using TemuKJD.BLL; namespace TemuKJD.KJDForms.ProductForms.TemuJitSubForms { - public partial class ReceiveAreaForm : LRBaseForm + public partial class ReceiveAreaForm : BaseGeneralForm { public bool IsSuccess = false; ShopLoginInfo shop; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductCategorySearch.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductCategorySearch.cs index 765e24a..150be61 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductCategorySearch.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductCategorySearch.cs @@ -17,7 +17,7 @@ using Work; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductCategorySearch : LRBaseForm + public partial class DbProductCategorySearch : BaseGeneralForm { ShopLoginInfo Shop; TemuDBProductSelect ProdSelect; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditDetailForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditDetailForm.cs index 6c21e7a..1860883 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditDetailForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditDetailForm.cs @@ -20,7 +20,7 @@ using Work; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductEditDetailForm : LRBaseForm + public partial class DbProductEditDetailForm : BaseGeneralForm { public ShopLoginInfo shop { get; set; } public string productDraftId { get; set; } diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditForm.cs index 15e6f89..6f7bf88 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductEditForm.cs @@ -17,7 +17,7 @@ using NaiBa.Util.Extension; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductEditForm : LRBaseForm + public partial class DbProductEditForm : BaseGeneralForm { KJDDBProduct dbProd = null; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs index 3316cac..9bde018 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductListForm.cs @@ -27,7 +27,7 @@ using Work; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductListForm : LRBaseForm + public partial class DbProductListForm : BaseGeneralForm { public bool IsClientJit { get; set; } = false; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs index 554b1ea..728f595 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectEditNotesForm.cs @@ -17,7 +17,7 @@ using NaiBa.Util.Extension; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductSelectEditNotesForm : LRBaseForm + public partial class DbProductSelectEditNotesForm : BaseGeneralForm { public EnumClientMode ClientMode { get; set; } = EnumClientMode.Admin; public ShopLoginInfo shop { get; set; } diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectListManageForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectListManageForm.cs index 5211813..6c3ab28 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectListManageForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectListManageForm.cs @@ -32,7 +32,7 @@ using NaiBa.Util; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductSelectListManageForm : LRBaseForm + public partial class DbProductSelectListManageForm : BaseGeneralForm { public EnumClientMode ClientMode { get; set; } = EnumClientMode.Admin; public CancellationTokenSource cancellationTokenSource { get; set; } = null; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectSetSubSaForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectSetSubSaForm.cs index b66221a..e9dbc4b 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectSetSubSaForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductSelectSetSubSaForm.cs @@ -21,7 +21,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms ThirdProduct, } - public partial class DbProductSelectSetSubSaForm : LRBaseForm + public partial class DbProductSelectSetSubSaForm : BaseGeneralForm { List lstProductSelectId = new List(); List lstShopSelectId = new List(); diff --git a/TEMUKJD/KJDForms/ProductSelectForms/DbProductUserSelectEditNotesForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/DbProductUserSelectEditNotesForm.cs index 5d799d5..b22469e 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/DbProductUserSelectEditNotesForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/DbProductUserSelectEditNotesForm.cs @@ -16,7 +16,7 @@ using TemuKJD.BLL; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbProductUserSelectEditNotesForm : LRBaseForm + public partial class DbProductUserSelectEditNotesForm : BaseGeneralForm { TemuDBProductSelect dbProdSelect = null; SetProductSelectType selectNotesType; diff --git a/TEMUKJD/KJDForms/ProductSelectForms/Price/DbPriceEditForm.cs b/TEMUKJD/KJDForms/ProductSelectForms/Price/DbPriceEditForm.cs index 1fb5108..3806b22 100644 --- a/TEMUKJD/KJDForms/ProductSelectForms/Price/DbPriceEditForm.cs +++ b/TEMUKJD/KJDForms/ProductSelectForms/Price/DbPriceEditForm.cs @@ -15,7 +15,7 @@ using Work; namespace TemuKJD.KJDForms.ProductSelectForms { - public partial class DbPriceEditForm : LRBaseForm + public partial class DbPriceEditForm : BaseGeneralForm { TemuDBExtCodePriceInfo priceInfo = null; public DbPriceEditForm(TemuDBExtCodePriceInfo price) diff --git a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectAddShopForm.cs b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectAddShopForm.cs index 19aab41..b0ef0ff 100644 --- a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectAddShopForm.cs +++ b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectAddShopForm.cs @@ -20,7 +20,7 @@ using Work; /// namespace TemuKJD.KJDForms.ProductThirdSelectForms { - public partial class ProductThirdSelectAddShopForm : LRBaseForm + public partial class ProductThirdSelectAddShopForm : BaseGeneralForm { public bool IsOnlyUpdateDBProduct { get; set; } = false; public List lstSelectShop = new List(); diff --git a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.Designer.cs b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.Designer.cs index b9429fd..842de0e 100644 --- a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.Designer.cs +++ b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.Designer.cs @@ -42,6 +42,7 @@ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ProductThirdSelectListManageForm)); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.cmbSearchYear = new System.Windows.Forms.ComboBox(); this.numMaxWaitSecond = new System.Windows.Forms.NumericUpDown(); this.btnForceEnable = new DevComponents.DotNetBar.PanelEx(); this.label22 = new System.Windows.Forms.Label(); @@ -156,6 +157,7 @@ this.colOpResult = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); + this.label12 = new System.Windows.Forms.Label(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -246,6 +248,20 @@ this.splitContainer1.SplitterDistance = 120; this.splitContainer1.TabIndex = 2; // + // cmbSearchYear + // + this.cmbSearchYear.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.cmbSearchYear.FormattingEnabled = true; + this.cmbSearchYear.Items.AddRange(new object[] { + "2025", + "2026"}); + this.cmbSearchYear.Location = new System.Drawing.Point(1017, 8); + this.cmbSearchYear.Margin = new System.Windows.Forms.Padding(0); + this.cmbSearchYear.Name = "cmbSearchYear"; + this.cmbSearchYear.Size = new System.Drawing.Size(55, 25); + this.cmbSearchYear.TabIndex = 808; + this.cmbSearchYear.Text = "2026"; + // // numMaxWaitSecond // this.numMaxWaitSecond.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); @@ -1066,28 +1082,31 @@ // this.tableLayoutPanel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); - this.tableLayoutPanel1.ColumnCount = 20; + this.tableLayoutPanel1.ColumnCount = 22; this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 10.0001F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.091002F)); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.999102F)); - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.090094F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 9.09091F)); + this.tableLayoutPanel1.Controls.Add(this.label12, 20, 0); + this.tableLayoutPanel1.Controls.Add(this.cmbSearchYear, 21, 0); this.tableLayoutPanel1.Controls.Add(this.cmbUserNotes, 19, 0); this.tableLayoutPanel1.Controls.Add(this.cmbNotes, 17, 0); this.tableLayoutPanel1.Controls.Add(this.label13, 16, 0); @@ -1124,10 +1143,10 @@ "全部", "重上", "已买"}); - this.cmbUserNotes.Location = new System.Drawing.Point(1008, 11); + this.cmbUserNotes.Location = new System.Drawing.Point(927, 11); this.cmbUserNotes.Margin = new System.Windows.Forms.Padding(0); this.cmbUserNotes.Name = "cmbUserNotes"; - this.cmbUserNotes.Size = new System.Drawing.Size(64, 25); + this.cmbUserNotes.Size = new System.Drawing.Size(52, 25); this.cmbUserNotes.TabIndex = 466; this.cmbUserNotes.Text = "全部"; // @@ -1141,10 +1160,10 @@ "核价成功", "核价成功(重复)", "重复"}); - this.cmbNotes.Location = new System.Drawing.Point(885, 11); + this.cmbNotes.Location = new System.Drawing.Point(813, 11); this.cmbNotes.Margin = new System.Windows.Forms.Padding(0); this.cmbNotes.Name = "cmbNotes"; - this.cmbNotes.Size = new System.Drawing.Size(61, 25); + this.cmbNotes.Size = new System.Drawing.Size(52, 25); this.cmbNotes.TabIndex = 467; this.cmbNotes.Text = "全部"; // @@ -1152,7 +1171,7 @@ // this.label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); this.label13.AutoSize = true; - this.label13.Location = new System.Drawing.Point(853, 12); + this.label13.Location = new System.Drawing.Point(781, 12); this.label13.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label13.Name = "label13"; this.label13.Size = new System.Drawing.Size(32, 17); @@ -1168,10 +1187,10 @@ "已上传", "草稿箱", "全部"}); - this.cmbStatus.Location = new System.Drawing.Point(786, 11); + this.cmbStatus.Location = new System.Drawing.Point(723, 11); this.cmbStatus.Margin = new System.Windows.Forms.Padding(0); this.cmbStatus.Name = "cmbStatus"; - this.cmbStatus.Size = new System.Drawing.Size(61, 25); + this.cmbStatus.Size = new System.Drawing.Size(52, 25); this.cmbStatus.TabIndex = 465; this.cmbStatus.Text = "待上传"; // @@ -1192,14 +1211,14 @@ this.txtShopId.Location = new System.Drawing.Point(47, 9); this.txtShopId.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtShopId.Name = "txtShopId"; - this.txtShopId.Size = new System.Drawing.Size(61, 23); + this.txtShopId.Size = new System.Drawing.Size(52, 23); this.txtShopId.TabIndex = 448; // // label7 // this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(114, 12); + this.label7.Location = new System.Drawing.Point(105, 12); this.label7.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label7.Name = "label7"; this.label7.Size = new System.Drawing.Size(56, 17); @@ -1210,7 +1229,7 @@ // this.label8.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(730, 12); + this.label8.Location = new System.Drawing.Point(667, 12); this.label8.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label8.Name = "label8"; this.label8.Size = new System.Drawing.Size(56, 17); @@ -1220,17 +1239,17 @@ // txtShopName // this.txtShopName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtShopName.Location = new System.Drawing.Point(170, 9); + this.txtShopName.Location = new System.Drawing.Point(161, 9); this.txtShopName.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtShopName.Name = "txtShopName"; - this.txtShopName.Size = new System.Drawing.Size(61, 23); + this.txtShopName.Size = new System.Drawing.Size(52, 23); this.txtShopName.TabIndex = 451; // // label5 // this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(237, 12); + this.label5.Location = new System.Drawing.Point(219, 12); this.label5.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(31, 17); @@ -1240,26 +1259,26 @@ // txtSKC // this.txtSKC.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtSKC.Location = new System.Drawing.Point(366, 9); + this.txtSKC.Location = new System.Drawing.Point(339, 9); this.txtSKC.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtSKC.Name = "txtSKC"; - this.txtSKC.Size = new System.Drawing.Size(61, 23); + this.txtSKC.Size = new System.Drawing.Size(52, 23); this.txtSKC.TabIndex = 432; // // txtSPU // this.txtSPU.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtSPU.Location = new System.Drawing.Point(268, 9); + this.txtSPU.Location = new System.Drawing.Point(250, 9); this.txtSPU.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtSPU.Name = "txtSPU"; - this.txtSPU.Size = new System.Drawing.Size(61, 23); + this.txtSPU.Size = new System.Drawing.Size(52, 23); this.txtSPU.TabIndex = 434; // // label1 // this.label1.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(335, 12); + this.label1.Location = new System.Drawing.Point(308, 12); this.label1.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(31, 17); @@ -1270,7 +1289,7 @@ // this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(433, 12); + this.label2.Location = new System.Drawing.Point(397, 12); this.label2.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(32, 17); @@ -1280,26 +1299,26 @@ // txtCat // this.txtCat.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtCat.Location = new System.Drawing.Point(465, 9); + this.txtCat.Location = new System.Drawing.Point(429, 9); this.txtCat.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtCat.Name = "txtCat"; - this.txtCat.Size = new System.Drawing.Size(61, 23); + this.txtCat.Size = new System.Drawing.Size(52, 23); this.txtCat.TabIndex = 425; // // txtExtCode // this.txtExtCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtExtCode.Location = new System.Drawing.Point(663, 9); + this.txtExtCode.Location = new System.Drawing.Point(609, 9); this.txtExtCode.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtExtCode.Name = "txtExtCode"; - this.txtExtCode.Size = new System.Drawing.Size(61, 23); + this.txtExtCode.Size = new System.Drawing.Size(52, 23); this.txtExtCode.TabIndex = 429; // // label3 // this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(532, 12); + this.label3.Location = new System.Drawing.Point(487, 12); this.label3.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(32, 17); @@ -1310,7 +1329,7 @@ // this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(631, 12); + this.label4.Location = new System.Drawing.Point(577, 12); this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(32, 17); @@ -1320,17 +1339,17 @@ // txtProdName // this.txtProdName.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); - this.txtProdName.Location = new System.Drawing.Point(564, 9); + this.txtProdName.Location = new System.Drawing.Point(519, 9); this.txtProdName.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); this.txtProdName.Name = "txtProdName"; - this.txtProdName.Size = new System.Drawing.Size(61, 23); + this.txtProdName.Size = new System.Drawing.Size(52, 23); this.txtProdName.TabIndex = 427; // // lblUserNotes // this.lblUserNotes.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); this.lblUserNotes.AutoSize = true; - this.lblUserNotes.Location = new System.Drawing.Point(952, 12); + this.lblUserNotes.Location = new System.Drawing.Point(871, 12); this.lblUserNotes.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); this.lblUserNotes.Name = "lblUserNotes"; this.lblUserNotes.Size = new System.Drawing.Size(56, 17); @@ -1813,6 +1832,17 @@ this.statusBar.Size = new System.Drawing.Size(1518, 25); this.statusBar.TabIndex = 5; // + // label12 + // + this.label12.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.label12.AutoSize = true; + this.label12.Location = new System.Drawing.Point(985, 12); + this.label12.Margin = new System.Windows.Forms.Padding(6, 0, 0, 0); + this.label12.Name = "label12"; + this.label12.Size = new System.Drawing.Size(32, 17); + this.label12.TabIndex = 836; + this.label12.Text = "年份"; + // // ProductThirdSelectListManageForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; @@ -1979,5 +2009,7 @@ private System.Windows.Forms.DataGridViewLinkColumn colEditNotes; private System.Windows.Forms.DataGridViewLinkColumn ColDelete; private System.Windows.Forms.DataGridViewTextBoxColumn colOpResult; + private System.Windows.Forms.ComboBox cmbSearchYear; + private System.Windows.Forms.Label label12; } } \ No newline at end of file diff --git a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.cs b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.cs index 8143159..0711016 100644 --- a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.cs +++ b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdSelectListManageForm.cs @@ -34,7 +34,7 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms /// /// 库存上传商品列表 /// - public partial class ProductThirdSelectListManageForm : LRBaseForm + public partial class ProductThirdSelectListManageForm : BaseGeneralForm { public EnumClientMode ClientMode { get; set; } = EnumClientMode.Admin; @@ -307,6 +307,7 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms "&search_notes=" + (cmbNotes.Text == "全部" ? "" : cmbNotes.Text) + "&search_user_notes=" + (cmbUserNotes.Text == "全部" ? "" : cmbUserNotes.Text) + "&status=" + (cmbStatus.Text == "全部" ? "" : cmbStatus.Text); + data += "&search_year=" + cmbSearchYear.Text; if (BaseClass.SaLevel > 1) data += "&operate_sub_sa_name=" + BaseClass.UserName; if (chkNoSubSa.Checked) @@ -1423,23 +1424,23 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms "\"errMsg\":\"上传停止\"}"; } - var speck = skuInfo.productSkuSpecList.FirstOrDefault(s => s.parentSpecName == "颜色"); - if (speck == null) - speck = skuInfo.productSkuSpecList.FirstOrDefault(); - if (speck != null) + var spec = skuInfo.productSkuSpecList.FirstOrDefault(s => s.parentSpecName == "颜色"); + if (spec == null) + spec = skuInfo.productSkuSpecList.FirstOrDefault(); + if (spec != null) { - skuNameDic[speck.specName] = skuHead[Randomx.GetId(skuHead.Count)] + - speck.specName + skuEnd[Randomx.GetId(skuEnd.Count)]; + skuNameDic[spec.specName] = skuHead[Randomx.GetId(skuHead.Count)] + + spec.specName + skuEnd[Randomx.GetId(skuEnd.Count)]; } else - skuNameDic[speck.specName] = speck.specName; + skuNameDic[spec.specName] = spec.specName; if (chkSkuRandomLetter.Checked) { //if (Randomx.GetId(2) == 1) - skuNameDic[speck.specName] = skuNameDic[speck.specName] + skuRandomLetterArr[Randomx.GetId(skuRandomLetterArr.Count)]; + skuNameDic[spec.specName] = skuNameDic[spec.specName] + skuRandomLetterArr[Randomx.GetId(skuRandomLetterArr.Count)]; //else - skuNameDic[speck.specName] = skuRandomLetterArr[Randomx.GetId(skuRandomLetterArr.Count)] + skuNameDic[speck.specName]; + skuNameDic[spec.specName] = skuRandomLetterArr[Randomx.GetId(skuRandomLetterArr.Count)] + skuNameDic[spec.specName]; } } #endregion @@ -1572,9 +1573,14 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms specName = skuSpecInfo.specName, vid = prodParam.productSpecPropertyReqs.FirstOrDefault(p => p.specId == skuSpecInfo.specId)?.vid, }; - //前后缀映射 - //if (skuSpecInfo.parentSpecName == "颜色" && skuNameDic[skuSpecItem.specName] != skuSpecItem.specName) - if (groupId == 1 && skuNameDic[skuSpecItem.specName] != skuSpecItem.specName) + skuParam.productSkuSpecReqs.Add(skuSpecItem); + } + { + //sku前后缀映射 + var skuSpecItem = skuParam.productSkuSpecReqs.FirstOrDefault(s => s.parentSpecName == "颜色"); + if (skuSpecItem == null) + skuSpecItem = skuParam.productSkuSpecReqs.FirstOrDefault(); + if (skuSpecItem != null && skuNameDic[skuSpecItem.specName] != skuSpecItem.specName) { skuSpecItem.specName = skuNameDic[skuSpecItem.specName]; string draftId = prodParam.productDraftId.ParseToString(); @@ -1590,8 +1596,8 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms } Thread.Sleep(Randomx.GetId(100, 500)); } - skuParam.productSkuSpecReqs.Add(skuSpecItem); } + skuParam.productSkuSuggestedPriceReq = JsonHelper.DeserializeJsonToObject( JsonHelper.SerializeObject(skuInfo.productSkuSuggestedPrice)); // 建议售价不能为空 diff --git a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdTitleForm.cs b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdTitleForm.cs index 112a8ba..54d79f0 100644 --- a/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdTitleForm.cs +++ b/TEMUKJD/KJDForms/ProductThirdSelectForms/ProductThirdTitleForm.cs @@ -15,7 +15,7 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms /// /// 库存上传标题前后缀 /// - public partial class ProductThirdTitleForm : LRBaseForm + public partial class ProductThirdTitleForm : BaseGeneralForm { public ProductThirdTitleForm() { diff --git a/TEMUKJD/KJDForms/SalesCenterForms/MarketingActivityForm.cs b/TEMUKJD/KJDForms/SalesCenterForms/MarketingActivityForm.cs index 6fe5199..7ac236c 100644 --- a/TEMUKJD/KJDForms/SalesCenterForms/MarketingActivityForm.cs +++ b/TEMUKJD/KJDForms/SalesCenterForms/MarketingActivityForm.cs @@ -21,7 +21,7 @@ using TemuKJD.BLL; namespace TemuKJD.KJDForms.SalesCenterForms { - public partial class MarketingActivityForm : LRBaseForm + public partial class MarketingActivityForm : BaseGeneralForm { public static MarketingActivityForm ActInstance { get; set; } = null; /// diff --git a/TEMUKJD/KJDForms/ShopForms/ReturnPackageDetailForm.cs b/TEMUKJD/KJDForms/ShopForms/ReturnPackageDetailForm.cs index 9ddd6fd..2a1cbd3 100644 --- a/TEMUKJD/KJDForms/ShopForms/ReturnPackageDetailForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ReturnPackageDetailForm.cs @@ -19,7 +19,7 @@ using TemuKJD.BLL; namespace TemuKJD.KJDForms.ShopForms { - public partial class ReturnPackageDetailForm : LRBaseForm + public partial class ReturnPackageDetailForm : BaseGeneralForm { public CancellationTokenSource cancellationTokenSource { get; set; } = null; ShopLoginInfo Shop = null; diff --git a/TEMUKJD/KJDForms/ShopForms/ShopAddEditForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopAddEditForm.cs index b9c0433..6ba1843 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopAddEditForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopAddEditForm.cs @@ -13,7 +13,7 @@ using System.Windows.Forms; namespace TemuKJD.KJDForms.ShopForms { - public partial class ShopAddEditForm : LRBaseForm + public partial class ShopAddEditForm : BaseGeneralForm { public bool HasChange = false; ShopLoginInfo shopLoginInfo = null; diff --git a/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs index 6d10e56..4884ab7 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopLoginForm.cs @@ -35,7 +35,7 @@ namespace TemuKJD.KJDForms.ShopForms manage, ads, // 广告登录 } - public partial class ShopLoginForm : LRBaseForm + public partial class ShopLoginForm : BaseGeneralForm { public static ShopLoginForm shopLoginInstance { get; set; } = null; diff --git a/TEMUKJD/KJDForms/ShopForms/ShopUpdateCookieForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopUpdateCookieForm.cs index 40238b5..fcd3477 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopUpdateCookieForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopUpdateCookieForm.cs @@ -24,7 +24,7 @@ namespace TemuKJD.KJDForms.ShopForms normal_user, sa, } - public partial class ShopUpdateCookieForm : LRBaseForm + public partial class ShopUpdateCookieForm : BaseGeneralForm { ShopLoginInfo shopLoginInfo = null; SetCookieFromEnum updateFrom; diff --git a/TEMUKJD/KJDForms/ShopForms/Statistics/ShopOrderStatisticsDetailForm.cs b/TEMUKJD/KJDForms/ShopForms/Statistics/ShopOrderStatisticsDetailForm.cs index 196a8ad..80aa532 100644 --- a/TEMUKJD/KJDForms/ShopForms/Statistics/ShopOrderStatisticsDetailForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/Statistics/ShopOrderStatisticsDetailForm.cs @@ -19,7 +19,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.KJDForms.ShopForms.Statistics { - public partial class ShopOrderStatisticsDetailForm : LRBaseForm + public partial class ShopOrderStatisticsDetailForm : BaseGeneralForm { public static ShopOrderStatisticsDetailForm orderStatisticsDetailInstance = null; diff --git a/TEMUKJD/KJDForms/ShopForms/Statistics/ShopSetPurchasePriceForm.cs b/TEMUKJD/KJDForms/ShopForms/Statistics/ShopSetPurchasePriceForm.cs index 022ffa5..73e15fc 100644 --- a/TEMUKJD/KJDForms/ShopForms/Statistics/ShopSetPurchasePriceForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/Statistics/ShopSetPurchasePriceForm.cs @@ -15,7 +15,7 @@ using Work; namespace TemuKJD.KJDForms.ShopForms.Statistics { - public partial class ShopSetPurchasePriceForm : LRBaseForm + public partial class ShopSetPurchasePriceForm : BaseGeneralForm { public WarehouseProductSubOrderInfo orderInfo = new WarehouseProductSubOrderInfo(); ShopLoginInfo shop = null; diff --git a/TEMUKJD/KJDForms/ShopForms/SubAccountShopEditForm.cs b/TEMUKJD/KJDForms/ShopForms/SubAccountShopEditForm.cs index a91a9b2..f8e27d1 100644 --- a/TEMUKJD/KJDForms/ShopForms/SubAccountShopEditForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/SubAccountShopEditForm.cs @@ -14,7 +14,7 @@ using Work; namespace TemuKJD.KJDForms.ShopForms { - public partial class SubAccountShopEditForm : LRBaseForm + public partial class SubAccountShopEditForm : BaseGeneralForm { ShopLoginInfo shop = null; public List AllSubAccountList { get; set; } = new List(); diff --git a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopAddSubSaForm.cs b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopAddSubSaForm.cs index f9259e5..1da9142 100644 --- a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopAddSubSaForm.cs +++ b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopAddSubSaForm.cs @@ -15,7 +15,7 @@ using Work; namespace TemuKJD.PDDForms.AdminForms { - public partial class PDDAdminShopAddSubSaForm : LRBaseForm + public partial class PDDAdminShopAddSubSaForm : BaseGeneralForm { List lstShopLoginName = new List(); diff --git a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs index f2ae579..bd12393 100644 --- a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs +++ b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs @@ -30,7 +30,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.PDDForms.AdminForms { - public partial class PDDAdminShopLoginForm : LRBaseForm + public partial class PDDAdminShopLoginForm : BaseGeneralForm { public static PDDAdminShopLoginForm adminShopLoginInstance { get; set; } = null; public int CloseAfterSecond { get; set; } diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditDetailForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditDetailForm.cs index 4a9af76..2cfaac1 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditDetailForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditDetailForm.cs @@ -24,7 +24,7 @@ using Work; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdEditDetailForm : LRBaseForm + public partial class PDDDBProdEditDetailForm : BaseGeneralForm { public KJDDBProduct DbProd { get; set; } public KJDDBProduct DbProdDetail { get; set; } diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs index 26e2450..579c201 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdEditForm.cs @@ -19,7 +19,7 @@ using Work.BLL.Tools; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdEditForm : LRBaseForm + public partial class PDDDBProdEditForm : BaseGeneralForm { KJDDBProduct dbProd = null; diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdImgListForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdImgListForm.cs index 5a2035a..72546a9 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdImgListForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdImgListForm.cs @@ -22,7 +22,7 @@ using Work; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdImgListForm : LRBaseForm + public partial class PDDDBProdImgListForm : BaseGeneralForm { public List lstProdSkuImg = new List(); public int SelectDbImgId { get; set; } = 0; diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs index b1ad326..02b62ae 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.Designer.cs @@ -87,8 +87,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms this.label1 = new System.Windows.Forms.Label(); this.btnSelect = new DevComponents.DotNetBar.PanelEx(); this.dgvDbProduct = new TemuKJD.UserComponent.DataGridViewEx(); - this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); - this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); this.colSelect = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.col_db_id = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colFromShopId = new System.Windows.Forms.DataGridViewTextBoxColumn(); @@ -119,6 +117,8 @@ namespace TemuKJD.PDDForms.ProductSelectForms this.col_edit = new System.Windows.Forms.DataGridViewLinkColumn(); this.col_delete = new System.Windows.Forms.DataGridViewLinkColumn(); this.col_select_product = new System.Windows.Forms.DataGridViewLinkColumn(); + this.ucSplitPage1 = new TemuKJD.UserControls.UcSplitPage(); + this.statusBar = new TemuKJD.UserControls.StatusBarUserControl(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); @@ -849,7 +849,7 @@ namespace TemuKJD.PDDForms.ProductSelectForms this.btnSelect.Cursor = System.Windows.Forms.Cursors.Hand; this.btnSelect.DisabledBackColor = System.Drawing.Color.Empty; this.btnSelect.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.btnSelect.Location = new System.Drawing.Point(1117, 36); + this.btnSelect.Location = new System.Drawing.Point(1344, 33); this.btnSelect.Name = "btnSelect"; this.btnSelect.Size = new System.Drawing.Size(84, 25); this.btnSelect.Style.Alignment = System.Drawing.StringAlignment.Center; @@ -927,31 +927,6 @@ namespace TemuKJD.PDDForms.ProductSelectForms this.dgvDbProduct.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvDbProduct_CellContentClick); this.dgvDbProduct.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvDbProduct_Scroll); // - // ucSplitPage1 - // - this.ucSplitPage1.CurrentPage = 1; - this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; - this.ucSplitPage1.IsShowPageSize = true; - this.ucSplitPage1.Location = new System.Drawing.Point(1024, 0); - this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); - this.ucSplitPage1.Name = "ucSplitPage1"; - this.ucSplitPage1.Padding = new System.Windows.Forms.Padding(0, 0, 1, 0); - this.ucSplitPage1.PageSize = 50; - this.ucSplitPage1.Size = new System.Drawing.Size(414, 25); - this.ucSplitPage1.TabIndex = 6; - this.ucSplitPage1.TotalPage = 1; - // - // statusBar - // - this.statusBar.BackColor = System.Drawing.Color.White; - this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill; - this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.statusBar.Location = new System.Drawing.Point(0, 0); - this.statusBar.Margin = new System.Windows.Forms.Padding(0); - this.statusBar.Name = "statusBar"; - this.statusBar.Size = new System.Drawing.Size(1438, 25); - this.statusBar.TabIndex = 5; - // // colSelect // this.colSelect.FillWeight = 26F; @@ -1184,6 +1159,31 @@ namespace TemuKJD.PDDForms.ProductSelectForms this.col_select_product.Resizable = System.Windows.Forms.DataGridViewTriState.True; this.col_select_product.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; // + // ucSplitPage1 + // + this.ucSplitPage1.CurrentPage = 1; + this.ucSplitPage1.Dock = System.Windows.Forms.DockStyle.Right; + this.ucSplitPage1.IsShowPageSize = true; + this.ucSplitPage1.Location = new System.Drawing.Point(1024, 0); + this.ucSplitPage1.Margin = new System.Windows.Forms.Padding(0); + this.ucSplitPage1.Name = "ucSplitPage1"; + this.ucSplitPage1.Padding = new System.Windows.Forms.Padding(0, 0, 1, 0); + this.ucSplitPage1.PageSize = 50; + this.ucSplitPage1.Size = new System.Drawing.Size(414, 25); + this.ucSplitPage1.TabIndex = 6; + this.ucSplitPage1.TotalPage = 1; + // + // statusBar + // + this.statusBar.BackColor = System.Drawing.Color.White; + this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill; + this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.statusBar.Location = new System.Drawing.Point(0, 0); + this.statusBar.Margin = new System.Windows.Forms.Padding(0); + this.statusBar.Name = "statusBar"; + this.statusBar.Size = new System.Drawing.Size(1438, 25); + this.statusBar.TabIndex = 5; + // // PDDDBProdListForm // this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs index 7fcf447..c9f0176 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdListForm.cs @@ -25,9 +25,9 @@ using Work; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdListForm : LRBaseForm + public partial class PDDDBProdListForm : BaseGeneralForm { - ShopLoginInfo shop = null; + ShopLoginInfo shop = null; List lstTemuDbProduct = new List(); ConcurrentList lstTitleReplaceText = new ConcurrentList(); diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectCacheForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectCacheForm.cs index 449925a..df21346 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectCacheForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectCacheForm.cs @@ -16,7 +16,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdUserSelectCacheForm : LRBaseForm + public partial class PDDDBProdUserSelectCacheForm : BaseGeneralForm { NaiBa.Util.ConcurrentList lstTemuDBProductSelect; public PDDDBProdUserSelectCacheForm(NaiBa.Util.ConcurrentList _lstTemuDBProductSelect) diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectEditNotesForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectEditNotesForm.cs index feb87d3..0711281 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectEditNotesForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDDBProdUserSelectEditNotesForm.cs @@ -17,7 +17,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.PDDForms.ProductSelectForms { - public partial class PDDDBProdUserSelectEditNotesForm : LRBaseForm + public partial class PDDDBProdUserSelectEditNotesForm : BaseGeneralForm { TemuDBProductSelect dbProdSelect = null; SetProductSelectType selectNotesType; diff --git a/TEMUKJD/PDDForms/ProductSelectForms/PDDThirdProdSelectAddShopForm.cs b/TEMUKJD/PDDForms/ProductSelectForms/PDDThirdProdSelectAddShopForm.cs index 9333658..07b8847 100644 --- a/TEMUKJD/PDDForms/ProductSelectForms/PDDThirdProdSelectAddShopForm.cs +++ b/TEMUKJD/PDDForms/ProductSelectForms/PDDThirdProdSelectAddShopForm.cs @@ -19,7 +19,7 @@ using Work; /// namespace TemuKJD.PDDForms.ProductThirdSelectForms { - public partial class PDDThirdProdSelectAddShopForm : LRBaseForm + public partial class PDDThirdProdSelectAddShopForm : BaseGeneralForm { public List lstSelectShop = new List(); List lstShop = new List(); diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopAddEditForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopAddEditForm.cs index 916b738..1b79915 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopAddEditForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopAddEditForm.cs @@ -13,7 +13,7 @@ using System.Windows.Forms; namespace TemuKJD.PDDForms.ShopForms { - public partial class PDDShopAddEditForm : LRBaseForm + public partial class PDDShopAddEditForm : BaseGeneralForm { ShopLoginInfo shopLoginInfo = null; bool isAdd = true; diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs index 74b5786..097c725 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs @@ -36,7 +36,7 @@ namespace TemuKJD.PDDForms.ShopForms manage, refresh_cookie, } - public partial class PDDShopLoginForm : LRBaseForm + public partial class PDDShopLoginForm : BaseGeneralForm { public static PDDShopLoginForm shopLoginInstance { get; set; } = null; public ProductSelectForms.PDDDBProdUserSelectForm prodUserSelectForm { get; set; } = null; diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs index 609bc9d..c46740a 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs @@ -24,7 +24,7 @@ namespace TemuKJD.PDDForms.ShopForms normal_user, sa, } - public partial class PDDShopUpdateCookieForm : LRBaseForm + public partial class PDDShopUpdateCookieForm : BaseGeneralForm { ShopLoginInfo shop = null; SetCookieFromEnum updateFrom; diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs index a19ffc1..199f433 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs @@ -22,7 +22,7 @@ using Work; namespace TemuKJD.PDDForms.ShopForms { - public partial class PDDShopUpdateFddlCookieForm : LRBaseForm + public partial class PDDShopUpdateFddlCookieForm : BaseGeneralForm { ShopLoginInfo shop = null; SetCookieFromEnum updateFrom; diff --git a/TEMUKJD/PDDForms/ShopForms/PDDSubAccountShopEditForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDSubAccountShopEditForm.cs index 758ad43..56614f6 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDSubAccountShopEditForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDSubAccountShopEditForm.cs @@ -14,7 +14,7 @@ using Work; namespace TemuKJD.PDDForms.ShopForms { - public partial class PDDSubAccountShopEditForm : LRBaseForm + public partial class PDDSubAccountShopEditForm : BaseGeneralForm { ShopLoginInfo shop = null; public List AllSubAccountList { get; set; } = new List(); diff --git a/TEMUKJD/Resources/choice_chat.png b/TEMUKJD/Resources/choice_chat.png index e29be25..d4bf0a7 100644 Binary files a/TEMUKJD/Resources/choice_chat.png and b/TEMUKJD/Resources/choice_chat.png differ diff --git a/TEMUKJD/Resources/choice_chat_old.png b/TEMUKJD/Resources/choice_chat_old.png new file mode 100644 index 0000000..e29be25 Binary files /dev/null and b/TEMUKJD/Resources/choice_chat_old.png differ diff --git a/TEMUKJD/Resources/choice_upload.png b/TEMUKJD/Resources/choice_upload.png index 3f58c2f..b1293a3 100644 Binary files a/TEMUKJD/Resources/choice_upload.png and b/TEMUKJD/Resources/choice_upload.png differ diff --git a/TEMUKJD/Resources/choice_upload_old.png b/TEMUKJD/Resources/choice_upload_old.png new file mode 100644 index 0000000..3f58c2f Binary files /dev/null and b/TEMUKJD/Resources/choice_upload_old.png differ diff --git a/TEMUKJD/TaobaoLoginForm.cs b/TEMUKJD/TaobaoLoginForm.cs index ef5c459..1e65d43 100644 --- a/TEMUKJD/TaobaoLoginForm.cs +++ b/TEMUKJD/TaobaoLoginForm.cs @@ -21,7 +21,7 @@ using NaiBa.CefHelper; namespace TemuKJD { - public partial class TaobaoLoginForm : LRBaseForm + public partial class TaobaoLoginForm : BaseGeneralForm { string Cef1Html = ""; diff --git a/TEMUKJD/ToolForms/DouBaoImgCefForm.cs b/TEMUKJD/ToolForms/DouBaoImgCefForm.cs index 924abef..c57bce3 100644 --- a/TEMUKJD/ToolForms/DouBaoImgCefForm.cs +++ b/TEMUKJD/ToolForms/DouBaoImgCefForm.cs @@ -24,7 +24,7 @@ using Work.BLL.Tools; namespace TemuKJD.ToolForms { - public partial class DouBaoImgCefForm : LRBaseForm + public partial class DouBaoImgCefForm : BaseGeneralForm { ChromiumWebBrowser cefWebBrowser = null; KJDDBProduct dbProd = null; diff --git a/TEMUKJD/ToolForms/DouBaoImgListForm.cs b/TEMUKJD/ToolForms/DouBaoImgListForm.cs index d3df33a..885963c 100644 --- a/TEMUKJD/ToolForms/DouBaoImgListForm.cs +++ b/TEMUKJD/ToolForms/DouBaoImgListForm.cs @@ -16,7 +16,7 @@ using Work.BLL.Tools; namespace TemuKJD.ToolForms { - public partial class DouBaoImgListForm : LRBaseForm + public partial class DouBaoImgListForm : BaseGeneralForm { public List LstSkuImgInfo; public DouBaoImgListForm(List lstSkuImgInfo) diff --git a/TEMUKJD/ToolForms/Old/CefForm.cs b/TEMUKJD/ToolForms/Old/CefForm.cs index acde602..4f58551 100644 --- a/TEMUKJD/ToolForms/Old/CefForm.cs +++ b/TEMUKJD/ToolForms/Old/CefForm.cs @@ -19,7 +19,7 @@ using TemuKJD.BaseForms; namespace TemuKJD.ToolForms { - public partial class CefForm : LRBaseForm + public partial class CefForm : BaseGeneralForm { ChromiumWebBrowser cefWebBrowser = null; diff --git a/TEMUKJD/ToolForms/Old/ChangeIPForm.cs b/TEMUKJD/ToolForms/Old/ChangeIPForm.cs index e64494b..14771c3 100644 --- a/TEMUKJD/ToolForms/Old/ChangeIPForm.cs +++ b/TEMUKJD/ToolForms/Old/ChangeIPForm.cs @@ -14,7 +14,7 @@ using System.Windows.Forms; namespace TemuKJD.KJDForms.ToolForms { - public partial class ChangeIPForm : LRBaseForm + public partial class ChangeIPForm : BaseGeneralForm { public ChangeIPForm() { diff --git a/TEMUKJD/ToolForms/Old/IeForm.cs b/TEMUKJD/ToolForms/Old/IeForm.cs index 00c3547..d175fd7 100644 --- a/TEMUKJD/ToolForms/Old/IeForm.cs +++ b/TEMUKJD/ToolForms/Old/IeForm.cs @@ -11,7 +11,7 @@ using NaiBa.CefHelper; namespace TemuKJD.KJDForms.ToolForms { - public partial class IeForm : LRBaseForm + public partial class IeForm : BaseGeneralForm { public string Url { get; set; } public ChromiumWebBrowser cefWebBrowser; diff --git a/TEMUKJD/ToolForms/Old/JDVerifyForm/CollectVerifyForm.cs b/TEMUKJD/ToolForms/Old/JDVerifyForm/CollectVerifyForm.cs index 1eab82b..cbf2d7b 100644 --- a/TEMUKJD/ToolForms/Old/JDVerifyForm/CollectVerifyForm.cs +++ b/TEMUKJD/ToolForms/Old/JDVerifyForm/CollectVerifyForm.cs @@ -12,7 +12,7 @@ using System.Windows.Forms; namespace TemuKJD.KJDForms.ToolForms.JDVerify { - public partial class CollectVerifyForm : LRBaseForm + public partial class CollectVerifyForm : BaseGeneralForm { ChromiumWebBrowser cefWebBrowser1 = null; public string url = ""; diff --git a/TEMUKJD/ToolForms/Old/PinDuoDuoCaptchaForm.cs b/TEMUKJD/ToolForms/Old/PinDuoDuoCaptchaForm.cs index 1e8e07e..e06c966 100644 --- a/TEMUKJD/ToolForms/Old/PinDuoDuoCaptchaForm.cs +++ b/TEMUKJD/ToolForms/Old/PinDuoDuoCaptchaForm.cs @@ -29,7 +29,7 @@ using Work.CollectClass; namespace TemuKJD.KJDForms.ToolForms { - public partial class PinDuoDuoCaptchaForm : LRBaseForm + public partial class PinDuoDuoCaptchaForm : BaseGeneralForm { public static string PersonUrl = BaseClass.NewUrl+"/personal.html"; public static string GoodsUrl = "http://yangkeduo.com/goods.html?goods_id=17252982258"; diff --git a/TEMUKJD/ToolForms/Old/PinDuoDuoLoginForm.cs b/TEMUKJD/ToolForms/Old/PinDuoDuoLoginForm.cs index 22b7f4b..f89498d 100644 --- a/TEMUKJD/ToolForms/Old/PinDuoDuoLoginForm.cs +++ b/TEMUKJD/ToolForms/Old/PinDuoDuoLoginForm.cs @@ -15,7 +15,7 @@ using System.Windows.Forms; namespace TemuKJD.KJDForms.ToolForms { - public partial class PinDuoDuoLoginForm : LRBaseForm + public partial class PinDuoDuoLoginForm : BaseGeneralForm { private ChromiumWebBrowser cefWebBrowser = null; public static string LoginUrl = "http://yangkeduo.com/login.html"; diff --git a/TEMUKJD/ToolForms/Old/ProxyForm.cs b/TEMUKJD/ToolForms/Old/ProxyForm.cs index 4f4f4b3..798388c 100644 --- a/TEMUKJD/ToolForms/Old/ProxyForm.cs +++ b/TEMUKJD/ToolForms/Old/ProxyForm.cs @@ -18,7 +18,7 @@ using Work.Api; namespace TemuKJD.KJDForms.ToolForms { - public partial class ProxyForm : LRBaseForm + public partial class ProxyForm : BaseGeneralForm { public ProxyForm() diff --git a/TEMUKJD/ToolForms/Old/TextForm.cs b/TEMUKJD/ToolForms/Old/TextForm.cs index c48c9df..7b0294e 100644 --- a/TEMUKJD/ToolForms/Old/TextForm.cs +++ b/TEMUKJD/ToolForms/Old/TextForm.cs @@ -13,7 +13,7 @@ using System.Windows.Forms; namespace TemuKJD.KJDForms.ToolForms { - public partial class TextForm : LRBaseForm + public partial class TextForm : BaseGeneralForm { public string Info { get; set; } public delegate void OnSaveComplete(string msg); diff --git a/TEMUKJD/ToolForms/Old/TokenNewForm.cs b/TEMUKJD/ToolForms/Old/TokenNewForm.cs index fab365a..0117c07 100644 --- a/TEMUKJD/ToolForms/Old/TokenNewForm.cs +++ b/TEMUKJD/ToolForms/Old/TokenNewForm.cs @@ -22,7 +22,7 @@ using Work.CollectClass; namespace TemuKJD.KJDForms.ToolForms { - public partial class TokenNewForm : LRBaseForm + public partial class TokenNewForm : BaseGeneralForm { public TokenNewForm() { diff --git a/TEMUKJD/ToolForms/ShowImgForm.cs b/TEMUKJD/ToolForms/ShowImgForm.cs index 3e56e2a..cd76092 100644 --- a/TEMUKJD/ToolForms/ShowImgForm.cs +++ b/TEMUKJD/ToolForms/ShowImgForm.cs @@ -11,7 +11,7 @@ using TemuKJD.BaseForms; namespace TemuKJD.ToolForms { - public partial class ShowImgForm : LRBaseForm + public partial class ShowImgForm : BaseGeneralForm { string currentImgUrl = null; Dictionary imgDic = new Dictionary(); diff --git a/TEMUKJD/UserForm/SupportQrCodeForm.cs b/TEMUKJD/UserForm/SupportQrCodeForm.cs index fc56574..23091d5 100644 --- a/TEMUKJD/UserForm/SupportQrCodeForm.cs +++ b/TEMUKJD/UserForm/SupportQrCodeForm.cs @@ -11,7 +11,7 @@ using TemuKJD.BaseForms; namespace TemuKJD.UserForm { - public partial class SupportQrCodeForm : LRBaseForm + public partial class SupportQrCodeForm : BaseGeneralForm { public SupportQrCodeForm() { diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminShopAddSubSaForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminShopAddSubSaForm.cs index d987c0c..43aba8f 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminShopAddSubSaForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminShopAddSubSaForm.cs @@ -15,7 +15,7 @@ using Work; namespace TemuKJD.WXForms.AdminForms { - public partial class WXAdminShopAddSubSaForm : LRBaseForm + public partial class WXAdminShopAddSubSaForm : BaseGeneralForm { List lstShopLoginName = new List(); diff --git a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs index 17be996..6ab2375 100644 --- a/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs +++ b/TEMUKJD/WXForms/AdminForms/WXAdminShopLoginForm.cs @@ -36,7 +36,7 @@ namespace TemuKJD.WXForms.AdminForms manage, refresh_cookie, } - public partial class WXAdminShopLoginForm : LRBaseForm + public partial class WXAdminShopLoginForm : BaseGeneralForm { public static WXAdminShopLoginForm shopLoginInstance { get; set; } = null; diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadCacheForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadCacheForm.cs index ddf3832..23d2125 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadCacheForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadCacheForm.cs @@ -16,7 +16,7 @@ using TemuKJD.ToolForms; namespace TemuKJD.WXForms.ProductForms { - public partial class WXDBProdUploadCacheForm : LRBaseForm + public partial class WXDBProdUploadCacheForm : BaseGeneralForm { NaiBa.Util.ConcurrentList lstTemuDBProductSelect; public WXDBProdUploadCacheForm(NaiBa.Util.ConcurrentList _lstTemuDBProductSelect) diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs index 3475015..3302743 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.Designer.cs @@ -40,7 +40,6 @@ namespace TemuKJD.WXForms.ProductForms System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.ucGroupBoxEx2 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); - this.chkUpDraft = new TemuKJD.UserComponent.UcCheckBox(this.components); this.并发上传 = new DevComponents.DotNetBar.PanelEx(); this.chkSkipUploaded = new TemuKJD.UserComponent.UcCheckBox(this.components); this.chkSameSpecPrice = new TemuKJD.UserComponent.UcCheckBox(this.components); @@ -72,6 +71,7 @@ namespace TemuKJD.WXForms.ProductForms this.label4 = new System.Windows.Forms.Label(); this.label9 = new System.Windows.Forms.Label(); this.chkStepAddPrice = new TemuKJD.UserComponent.UcCheckBox(this.components); + this.chkUpDraft = new TemuKJD.UserComponent.UcCheckBox(this.components); this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components); this.cmbWxSafe = new System.Windows.Forms.ComboBox(); this.label13 = new System.Windows.Forms.Label(); @@ -107,8 +107,6 @@ namespace TemuKJD.WXForms.ProductForms this.colUploadCount = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colRemaining = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.txtTest20981 = new System.Windows.Forms.TextBox(); - this.btnTest20981 = new DevComponents.DotNetBar.PanelEx(); this.pbLoading = new System.Windows.Forms.PictureBox(); this.label11 = new System.Windows.Forms.Label(); this.txtSinglePriceAdd = new System.Windows.Forms.TextBox(); @@ -194,7 +192,6 @@ namespace TemuKJD.WXForms.ProductForms | System.Windows.Forms.AnchorStyles.Right))); this.ucGroupBoxEx2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.ucGroupBoxEx2.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND; - this.ucGroupBoxEx2.Controls.Add(this.并发上传); this.ucGroupBoxEx2.Controls.Add(this.chkSkipUploaded); this.ucGroupBoxEx2.Controls.Add(this.chkSameSpecPrice); this.ucGroupBoxEx2.Controls.Add(this.label5); @@ -221,7 +218,6 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.Controls.Add(this.label4); this.ucGroupBoxEx2.Controls.Add(this.label9); this.ucGroupBoxEx2.Controls.Add(this.chkStepAddPrice); - this.ucGroupBoxEx2.Controls.Add(this.chkUpDraft); this.ucGroupBoxEx2.Location = new System.Drawing.Point(459, 2); this.ucGroupBoxEx2.Name = "ucGroupBoxEx2"; this.ucGroupBoxEx2.Size = new System.Drawing.Size(1062, 140); @@ -229,17 +225,6 @@ namespace TemuKJD.WXForms.ProductForms this.ucGroupBoxEx2.TabStop = false; this.ucGroupBoxEx2.Text = "商品上传"; // - // chkUpDraft - // - this.chkUpDraft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.chkUpDraft.AutoSize = true; - this.chkUpDraft.Location = new System.Drawing.Point(770, 105); - this.chkUpDraft.Name = "chkUpDraft"; - this.chkUpDraft.Size = new System.Drawing.Size(99, 21); - this.chkUpDraft.TabIndex = 769; - this.chkUpDraft.Text = "上传到草稿箱"; - this.chkUpDraft.UseVisualStyleBackColor = true; - // // 并发上传 // this.并发上传.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); @@ -247,9 +232,9 @@ namespace TemuKJD.WXForms.ProductForms this.并发上传.Cursor = System.Windows.Forms.Cursors.Hand; this.并发上传.DisabledBackColor = System.Drawing.Color.Empty; this.并发上传.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.并发上传.Location = new System.Drawing.Point(865, 104); + this.并发上传.Location = new System.Drawing.Point(1093, 30); this.并发上传.Name = "并发上传"; - this.并发上传.Size = new System.Drawing.Size(84, 23); + this.并发上传.Size = new System.Drawing.Size(118, 23); this.并发上传.Style.Alignment = System.Drawing.StringAlignment.Center; this.并发上传.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); this.并发上传.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); @@ -262,7 +247,8 @@ namespace TemuKJD.WXForms.ProductForms this.并发上传.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.并发上传.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255))))); this.并发上传.TabIndex = 768; - this.并发上传.Text = "并发上传"; + this.并发上传.Text = "测试并发上传"; + this.并发上传.Visible = false; this.并发上传.Click += new System.EventHandler(this.并发上传_Click); // // chkSkipUploaded @@ -690,6 +676,18 @@ namespace TemuKJD.WXForms.ProductForms this.chkStepAddPrice.UseVisualStyleBackColor = true; this.chkStepAddPrice.CheckedChanged += new System.EventHandler(this.chkStepAddPrice_CheckedChanged); // + // chkUpDraft + // + this.chkUpDraft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkUpDraft.AutoSize = true; + this.chkUpDraft.Location = new System.Drawing.Point(999, 31); + this.chkUpDraft.Name = "chkUpDraft"; + this.chkUpDraft.Size = new System.Drawing.Size(99, 21); + this.chkUpDraft.TabIndex = 769; + this.chkUpDraft.Text = "上传到草稿箱"; + this.chkUpDraft.UseVisualStyleBackColor = true; + this.chkUpDraft.Visible = false; + // // ucGroupBoxEx4 // this.ucGroupBoxEx4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) @@ -1020,11 +1018,11 @@ namespace TemuKJD.WXForms.ProductForms // // splitContainer2.Panel2 // - this.splitContainer2.Panel2.Controls.Add(this.txtTest20981); - this.splitContainer2.Panel2.Controls.Add(this.btnTest20981); + this.splitContainer2.Panel2.Controls.Add(this.并发上传); this.splitContainer2.Panel2.Controls.Add(this.pbLoading); this.splitContainer2.Panel2.Controls.Add(this.label11); this.splitContainer2.Panel2.Controls.Add(this.txtSinglePriceAdd); + this.splitContainer2.Panel2.Controls.Add(this.chkUpDraft); this.splitContainer2.Panel2.Controls.Add(this.dgvSelectProduct); this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0); this.splitContainer2.Size = new System.Drawing.Size(1523, 372); @@ -1160,42 +1158,6 @@ namespace TemuKJD.WXForms.ProductForms this.colMessage.Name = "colMessage"; this.colMessage.ReadOnly = true; // - // txtTest20981 - // - this.txtTest20981.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.txtTest20981.Location = new System.Drawing.Point(996, 30); - this.txtTest20981.Margin = new System.Windows.Forms.Padding(0, 2, 0, 2); - this.txtTest20981.Name = "txtTest20981"; - this.txtTest20981.Size = new System.Drawing.Size(127, 23); - this.txtTest20981.TabIndex = 650; - this.txtTest20981.Visible = false; - // - // btnTest20981 - // - this.btnTest20981.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnTest20981.CanvasColor = System.Drawing.SystemColors.Control; - this.btnTest20981.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; - this.btnTest20981.DisabledBackColor = System.Drawing.Color.Empty; - this.btnTest20981.Location = new System.Drawing.Point(1127, 30); - this.btnTest20981.Margin = new System.Windows.Forms.Padding(4, 2, 2, 2); - this.btnTest20981.Name = "btnTest20981"; - this.btnTest20981.Size = new System.Drawing.Size(84, 23); - this.btnTest20981.Style.Alignment = System.Drawing.StringAlignment.Center; - this.btnTest20981.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnTest20981.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255))))); - this.btnTest20981.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; - this.btnTest20981.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnTest20981.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText; - this.btnTest20981.Style.GradientAngle = 90; - this.btnTest20981.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center; - this.btnTest20981.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; - this.btnTest20981.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnTest20981.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); - this.btnTest20981.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; - this.btnTest20981.TabIndex = 649; - this.btnTest20981.Text = "测试20981"; - this.btnTest20981.Visible = false; - // // pbLoading // this.pbLoading.Anchor = System.Windows.Forms.AnchorStyles.None; @@ -1649,8 +1611,6 @@ namespace TemuKJD.WXForms.ProductForms private System.Windows.Forms.ComboBox cmbCateFilter; private System.Windows.Forms.Label label2; public System.Windows.Forms.Label lblWaitToUp; - private System.Windows.Forms.TextBox txtTest20981; - private DevComponents.DotNetBar.PanelEx btnTest20981; private System.Windows.Forms.DataGridViewCheckBoxColumn colCheck; private System.Windows.Forms.DataGridViewTextBoxColumn colSelectId; private System.Windows.Forms.DataGridViewTextBoxColumn colSupplierId; diff --git a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs index 6f393c2..f4471c9 100644 --- a/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs +++ b/TEMUKJD/WXForms/ProductForms/WXDBProdUploadForm.cs @@ -138,6 +138,45 @@ namespace TemuKJD.WXForms.ProductForms // dgvSelectProduct.Columns["colSkuFakeImg"].Visible = true; //#endif + upload_draft_product_lst = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_select_upload_draft_products"); + if (upload_draft_product_lst == null) + upload_draft_product_lst = new ConcurrentList(); + foreach (var selectProd in upload_draft_product_lst) + { + int rowIndex = 0; + this.dgvSelectProduct.Rows.Insert(rowIndex, + true, + selectProd.id, + selectProd.shop_id, + selectProd.shop_account, + "登录", + "进店", + selectProd.spu_id, + selectProd.skc_id, + selectProd.main_img, + null, + "", + null, + selectProd.product_name, // 用户端显示商品原名 + selectProd.cat_name, + selectProd.ext_code, + selectProd.status, + selectProd.draft_id, + selectProd.notes, + (selectProd.user_notes + " 编辑").Trim(), + "删除", + selectProd.add_time.ToString("yy-MM-dd HH:mm:ss"), + ""); + + dgvSelectProduct.Rows[rowIndex].Height = 60; + + int maxRowCount = 10000; + while (dgvSelectProduct.Rows.Count > maxRowCount) + { + dgvSelectProduct.Rows.RemoveAt(maxRowCount); + } + } + IsLoadComplate = true; } @@ -743,7 +782,7 @@ namespace TemuKJD.WXForms.ProductForms { row.Cells["colDraftId"].Value = productDraftId; // 草稿箱id row.Cells["colAddTime"].Value = DateTime.Now.ToString("yy-MM-dd HH:mm:ss"); - row.Cells["colOpResult"].Value = (selectProd.status == "已上传" ? "已成功上传" : "已上传 发生错误:") + (" " + error).TrimEnd(' ') + " " + duration.ParseToInt() + "秒"; + row.Cells["colOpResult"].Value = (selectProd.status == "已上传" ? "已成功上传" : "已上传 注意:") + (" " + error).TrimEnd(' ') + " " + duration.ParseToInt() + "秒"; row.Cells["colMsg"].Value = selectProd.status; } })); @@ -1681,9 +1720,17 @@ namespace TemuKJD.WXForms.ProductForms } upProdParam.product.productKey.productId = BaseRegex.GetLongJson(ref uploadDraftRst, "productId").ParseToString(); - upload_draft_products.Add(upProdParam); if (chkUpDraft.Checked) - return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"草稿箱\",\"errMsg\":\"上架到草稿箱\"}"; + { + selectProd.wxDraftProduct = upProdParam; + selectProd.draft_id = upProdParam.product.productKey.productId; + selectProd.status = "草稿箱"; + selectProd.add_time = DateTime.Now; + upload_draft_product_lst.Add(selectProd); + NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_select_upload_draft_products", upload_draft_product_lst); + + return "{\"success\":true,\"draftId\":" + upProdParam.product.productKey.productId + ",\"status\":\"草稿箱\",\"errMsg\":\"指定上传到草稿箱\"}"; + } // 提交商品上架 var uploadProdRst = WXUpload.upProductV2(shop, upProdParam); @@ -2004,8 +2051,14 @@ namespace TemuKJD.WXForms.ProductForms foreach (var row in rows) { if (row.Cells["colCheck"].Value.ParseToBool() == true) + { + var draft_id = row.Cells["colDraftId"].Value.ParseToString(); + upload_draft_product_lst.RemoveAll(p => p.draft_id == draft_id); + this.dgvSelectProduct.Rows.Remove(row); + } } + NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_select_upload_draft_products", upload_draft_product_lst); } private void chkAddMorePriceFirst_CheckedChanged(object sender, EventArgs e) @@ -2048,15 +2101,10 @@ namespace TemuKJD.WXForms.ProductForms private void 并发上传_Click(object sender, EventArgs e) { - var draftIdLst = dgvSelectProduct.Rows.Cast().Where(row => row.Cells["colCheck"]?.Value.ParseToBool() == true).Select(r => r.Cells["colDraftId"]?.Value.ToString()).ToList(); - // var lst = NaiBa.Util.Helper.ConfigHelper.LoadConfig>("wx_upload_draft_products"); - // if (lst == null) - // lst = new ConcurrentList(); - - var lst = upload_draft_products; + var lst = upload_draft_product_lst.Select(p => p.wxDraftProduct).ToList(); var upLst = lst.Where(l => draftIdLst.Contains(l.product.productKey.productId)).ToList(); DateTime startTime = DateTime.Now; @@ -2078,12 +2126,14 @@ namespace TemuKJD.WXForms.ProductForms tLst.Add(t); } Task.WaitAll(tLst.ToArray()); + NaiBa.Util.Helper.ConfigHelper.SaveConfig("wx_select_upload_draft_products", upload_draft_product_lst); var duration = DateTime.Now - startTime; Invoke(new Action(() => { BaseMsgForm.ShowInfo("并发上传完成,耗时:" + duration.TotalSeconds + " 秒"); })); }); } - public ConcurrentList upload_draft_products = new ConcurrentList(); + //public ConcurrentList upload_draft_products = new ConcurrentList(); + public ConcurrentList upload_draft_product_lst = new ConcurrentList(); void UploadSameTime(ShopLoginInfo shop, WXUploadProductParam upProdParam, DataGridViewCell cell) { @@ -2095,6 +2145,8 @@ namespace TemuKJD.WXForms.ProductForms uploadProdRst = WXUpload.upProductV2(shop, upProdParam); if (retryTimes >= 5) break; + if (uploadProdRst.Contains("今日提审次数已用尽,请明日再试")) + break; } if (!uploadProdRst.Contains("\"code\":0") && !uploadProdRst.Contains("\"success\":true")) { @@ -2114,7 +2166,7 @@ namespace TemuKJD.WXForms.ProductForms { if (cell != null) { - upload_draft_products.Remove(upProdParam); + upload_draft_product_lst.RemoveAll(p => p.wxDraftProduct == upProdParam); Invoke(new Action(() => { cell.Value = "商品已上传,重试次数 " + retryTimes; diff --git a/TEMUKJD/WXForms/ShopForms/WXShopAddEditForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopAddEditForm.cs index 62cba51..5e7e675 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopAddEditForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopAddEditForm.cs @@ -13,7 +13,7 @@ using System.Windows.Forms; namespace TemuKJD.WXForms.ShopForms { - public partial class WXShopAddEditForm : LRBaseForm + public partial class WXShopAddEditForm : BaseGeneralForm { ShopLoginInfo shopLoginInfo = null; bool isAdd = true; diff --git a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs index d890e32..942d5c9 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopLoginForm.cs @@ -36,7 +36,7 @@ namespace TemuKJD.WXForms.ShopForms manage, refresh_cookie, } - public partial class WXShopLoginForm : LRBaseForm + public partial class WXShopLoginForm : BaseGeneralForm { public static WXShopLoginForm shopLoginInstance { get; set; } = null; diff --git a/TEMUKJD/WXForms/ShopForms/WXShopUpdateCookieForm.cs b/TEMUKJD/WXForms/ShopForms/WXShopUpdateCookieForm.cs index 9db82a5..f412582 100644 --- a/TEMUKJD/WXForms/ShopForms/WXShopUpdateCookieForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXShopUpdateCookieForm.cs @@ -24,7 +24,7 @@ namespace TemuKJD.WXForms.ShopForms normal_user, sa, } - public partial class WXShopUpdateCookieForm : LRBaseForm + public partial class WXShopUpdateCookieForm : BaseGeneralForm { ShopLoginInfo shopLoginInfo = null; SetCookieFromEnum updateFrom; diff --git a/TEMUKJD/WXForms/ShopForms/WXSubAccountShopEditForm.cs b/TEMUKJD/WXForms/ShopForms/WXSubAccountShopEditForm.cs index c223811..d7ead82 100644 --- a/TEMUKJD/WXForms/ShopForms/WXSubAccountShopEditForm.cs +++ b/TEMUKJD/WXForms/ShopForms/WXSubAccountShopEditForm.cs @@ -14,7 +14,7 @@ using Work; namespace TemuKJD.WXForms.ShopForms { - public partial class WXSubAccountShopEditForm : LRBaseForm + public partial class WXSubAccountShopEditForm : BaseGeneralForm { ShopLoginInfo shop = null; public List AllSubAccountList { get; set; } = new List(); diff --git a/TEMUKJD/WXForms/TalkForms/TalkHelper/ChatConfig.cs b/TEMUKJD/WXForms/TalkForms/TalkHelper/ChatConfig.cs new file mode 100644 index 0000000..1e847df --- /dev/null +++ b/TEMUKJD/WXForms/TalkForms/TalkHelper/ChatConfig.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using TemuKJD.WXForms.TalkForms.TalkModel; + +namespace TemuKJD.WXForms.TalkForms.TalkHelper +{ + public class ChatConfig + { + public static ChatSettingsParam ChatSettingConfig { get; set; } + + public static void LoadChatSetting() + { + ChatConfig.ChatSettingConfig = NaiBa.Util.Helper.ConfigHelper.LoadConfig("chat_setting"); + if (ChatConfig.ChatSettingConfig == null) + ChatConfig.ChatSettingConfig = new ChatSettingsParam(); + } + + public static void SaveChatSettingParam() + { + NaiBa.Util.Helper.ConfigHelper.SaveConfig("chat_setting", ChatConfig.ChatSettingConfig); + } + } +} diff --git a/TEMUKJD/WXForms/TalkForms/TalkModel/ChatSettingsParam.cs b/TEMUKJD/WXForms/TalkForms/TalkModel/ChatSettingsParam.cs new file mode 100644 index 0000000..1c2d31e --- /dev/null +++ b/TEMUKJD/WXForms/TalkForms/TalkModel/ChatSettingsParam.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace TemuKJD.WXForms.TalkForms.TalkModel +{ + public class ChatSettingsParam + { + public bool IsAutoReLogin { get; set; } = false; + public bool IsAutoReply { get; set; } = false; + public bool IsNotShowMessageWindow { get; set; } = false; + public string MessageSound { get; set; } = "默认提示音"; + public string AutoReplayText { get; set; } = "您好"; + } +} diff --git a/TEMUKJD/WXForms/TalkForms/WxTalkForm.Designer.cs b/TEMUKJD/WXForms/TalkForms/WxTalkForm.Designer.cs new file mode 100644 index 0000000..3d4cb0c --- /dev/null +++ b/TEMUKJD/WXForms/TalkForms/WxTalkForm.Designer.cs @@ -0,0 +1,620 @@ + +namespace TemuKJD.WXForms.TalkForms +{ + partial class WxTalkForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WxTalkForm)); + this.panel3 = new System.Windows.Forms.Panel(); + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.splitContainer2 = new System.Windows.Forms.SplitContainer(); + this.chkNotShowMessageWindow = new System.Windows.Forms.CheckBox(); + this.cmbMessage = new System.Windows.Forms.ComboBox(); + this.label1 = new System.Windows.Forms.Label(); + this.pnlSet = new DevComponents.DotNetBar.PanelEx(); + this.line4 = new DevComponents.DotNetBar.Controls.Line(); + this.chkIsAutoReLogin = new System.Windows.Forms.CheckBox(); + this.txtAutoReplyText = new System.Windows.Forms.TextBox(); + this.chkIsAutoReply = new System.Windows.Forms.CheckBox(); + this.splitContainer4 = new System.Windows.Forms.SplitContainer(); + this.dgvShop = new TemuKJD.UserComponent.DataGridViewEx(); + this.colSelect = new TemuKJD.UserComponent.UcDataGridViewCheckBoxColumn(this.components); + this.colShopLoginName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopId = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colShopNotes = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.colLoginStatus = new System.Windows.Forms.DataGridViewLinkColumn(); + this.colCanUse = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.colMessage = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.pnlRefresh = new DevComponents.DotNetBar.PanelEx(); + this.ucTabControl1 = new TemuKJD.UserComponent.UcTabControl(); + this.tabPage1 = new System.Windows.Forms.TabPage(); + this.pnlTalk = new System.Windows.Forms.Panel(); + this.tabPage2 = new System.Windows.Forms.TabPage(); + this.mainPanel = new System.Windows.Forms.Panel(); + this.ColumnShopStatus = new System.Windows.Forms.DataGridViewLinkColumn(); + this.ColumnShopID = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ColumnShopName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewLinkColumn1 = new System.Windows.Forms.DataGridViewLinkColumn(); + this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewLinkColumn2 = new System.Windows.Forms.DataGridViewLinkColumn(); + ((System.ComponentModel.ISupportInitialize)(this.pbLogo)).BeginInit(); + this.panel3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.Panel2.SuspendLayout(); + this.splitContainer1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).BeginInit(); + this.splitContainer2.Panel1.SuspendLayout(); + this.splitContainer2.Panel2.SuspendLayout(); + this.splitContainer2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).BeginInit(); + this.splitContainer4.Panel1.SuspendLayout(); + this.splitContainer4.Panel2.SuspendLayout(); + this.splitContainer4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).BeginInit(); + this.ucTabControl1.SuspendLayout(); + this.tabPage1.SuspendLayout(); + this.tabPage2.SuspendLayout(); + this.SuspendLayout(); + // + // pbLogo + // + this.pbLogo.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + // + // lblVersionName + // + this.lblVersionName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.lblVersionName.Location = new System.Drawing.Point(1791, 33); + // + // panel3 + // + this.panel3.BackColor = System.Drawing.Color.White; + this.panel3.Controls.Add(this.splitContainer1); + this.panel3.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel3.Location = new System.Drawing.Point(1, 81); + this.panel3.Name = "panel3"; + this.panel3.Size = new System.Drawing.Size(1498, 618); + this.panel3.TabIndex = 1; + // + // splitContainer1 + // + this.splitContainer1.BackColor = System.Drawing.Color.White; + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Name = "splitContainer1"; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.Controls.Add(this.splitContainer2); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Controls.Add(this.ucTabControl1); + this.splitContainer1.Size = new System.Drawing.Size(1498, 618); + this.splitContainer1.SplitterDistance = 270; + this.splitContainer1.SplitterWidth = 1; + this.splitContainer1.TabIndex = 1; + // + // splitContainer2 + // + this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1; + this.splitContainer2.Location = new System.Drawing.Point(0, 0); + this.splitContainer2.Name = "splitContainer2"; + this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer2.Panel1 + // + this.splitContainer2.Panel1.Controls.Add(this.chkNotShowMessageWindow); + this.splitContainer2.Panel1.Controls.Add(this.cmbMessage); + this.splitContainer2.Panel1.Controls.Add(this.label1); + this.splitContainer2.Panel1.Controls.Add(this.pnlSet); + this.splitContainer2.Panel1.Controls.Add(this.line4); + this.splitContainer2.Panel1.Controls.Add(this.chkIsAutoReLogin); + this.splitContainer2.Panel1.Controls.Add(this.txtAutoReplyText); + this.splitContainer2.Panel1.Controls.Add(this.chkIsAutoReply); + // + // splitContainer2.Panel2 + // + this.splitContainer2.Panel2.Controls.Add(this.splitContainer4); + this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(4, 0, 0, 4); + this.splitContainer2.Size = new System.Drawing.Size(270, 618); + this.splitContainer2.SplitterDistance = 25; + this.splitContainer2.TabIndex = 0; + // + // chkNotShowMessageWindow + // + this.chkNotShowMessageWindow.AutoSize = true; + this.chkNotShowMessageWindow.Location = new System.Drawing.Point(4, 33); + this.chkNotShowMessageWindow.Name = "chkNotShowMessageWindow"; + this.chkNotShowMessageWindow.Size = new System.Drawing.Size(123, 21); + this.chkNotShowMessageWindow.TabIndex = 201; + this.chkNotShowMessageWindow.Text = "新消息不弹框提示"; + this.chkNotShowMessageWindow.UseVisualStyleBackColor = true; + // + // cmbMessage + // + this.cmbMessage.BackColor = System.Drawing.Color.White; + this.cmbMessage.Font = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.cmbMessage.FormattingEnabled = true; + this.cmbMessage.ItemHeight = 12; + this.cmbMessage.Items.AddRange(new object[] { + "默认提示音", + "1号电脑", + "2号电脑", + "3号电脑", + "4号电脑", + "5号电脑", + "6号电脑", + "7号电脑", + "8号电脑", + "9号电脑", + "10号电脑", + "11号电脑", + "12号电脑", + "13号电脑", + "14号电脑", + "15号电脑", + "16号电脑", + "17号电脑", + "18号电脑", + "19号电脑", + "20号电脑", + "无"}); + this.cmbMessage.Location = new System.Drawing.Point(71, 4); + this.cmbMessage.Name = "cmbMessage"; + this.cmbMessage.Size = new System.Drawing.Size(199, 20); + this.cmbMessage.TabIndex = 193; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(7, 6); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(68, 17); + this.label1.TabIndex = 197; + this.label1.Text = "消息提示:"; + // + // pnlSet + // + this.pnlSet.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.pnlSet.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.pnlSet.Cursor = System.Windows.Forms.Cursors.Hand; + this.pnlSet.DisabledBackColor = System.Drawing.Color.Empty; + this.pnlSet.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.pnlSet.Location = new System.Drawing.Point(230, 56); + this.pnlSet.Name = "pnlSet"; + this.pnlSet.Size = new System.Drawing.Size(40, 20); + this.pnlSet.Style.Alignment = System.Drawing.StringAlignment.Center; + this.pnlSet.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlSet.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlSet.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder; + this.pnlSet.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash; + this.pnlSet.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None; + this.pnlSet.Style.ForeColor.Color = System.Drawing.Color.White; + this.pnlSet.Style.GradientAngle = 90; + this.pnlSet.TabIndex = 184; + this.pnlSet.Text = "设 置"; + this.pnlSet.Visible = false; + // + // line4 + // + this.line4.ForeColor = System.Drawing.Color.Silver; + this.line4.Location = new System.Drawing.Point(4, 24); + this.line4.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.line4.Name = "line4"; + this.line4.Size = new System.Drawing.Size(266, 8); + this.line4.TabIndex = 180; + this.line4.Text = "line4"; + // + // chkIsAutoReLogin + // + this.chkIsAutoReLogin.AutoSize = true; + this.chkIsAutoReLogin.Location = new System.Drawing.Point(133, 33); + this.chkIsAutoReLogin.Name = "chkIsAutoReLogin"; + this.chkIsAutoReLogin.Size = new System.Drawing.Size(99, 21); + this.chkIsAutoReLogin.TabIndex = 2; + this.chkIsAutoReLogin.Text = "掉线自动重登"; + this.chkIsAutoReLogin.UseVisualStyleBackColor = true; + // + // txtAutoReplyText + // + this.txtAutoReplyText.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Right))); + this.txtAutoReplyText.Location = new System.Drawing.Point(4, 78); + this.txtAutoReplyText.Multiline = true; + this.txtAutoReplyText.Name = "txtAutoReplyText"; + this.txtAutoReplyText.Size = new System.Drawing.Size(266, 0); + this.txtAutoReplyText.TabIndex = 1; + // + // chkIsAutoReply + // + this.chkIsAutoReply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.chkIsAutoReply.AutoSize = true; + this.chkIsAutoReply.Location = new System.Drawing.Point(4, 56); + this.chkIsAutoReply.Name = "chkIsAutoReply"; + this.chkIsAutoReply.Size = new System.Drawing.Size(87, 21); + this.chkIsAutoReply.TabIndex = 0; + this.chkIsAutoReply.Text = "自动回复:"; + this.chkIsAutoReply.UseVisualStyleBackColor = true; + // + // splitContainer4 + // + this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2; + this.splitContainer4.Location = new System.Drawing.Point(4, 0); + this.splitContainer4.Name = "splitContainer4"; + this.splitContainer4.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer4.Panel1 + // + this.splitContainer4.Panel1.Controls.Add(this.dgvShop); + // + // splitContainer4.Panel2 + // + this.splitContainer4.Panel2.Controls.Add(this.pnlRefresh); + this.splitContainer4.Size = new System.Drawing.Size(266, 585); + this.splitContainer4.SplitterDistance = 555; + this.splitContainer4.TabIndex = 7; + // + // dgvShop + // + this.dgvShop.AllowUserToAddRows = false; + this.dgvShop.AllowUserToDeleteRows = false; + dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke; + this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; + this.dgvShop.AutoRowNumber = true; + this.dgvShop.BackgroundColor = System.Drawing.Color.White; + this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft; + dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control; + dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText; + dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight; + dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText; + dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False; + this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2; + this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.colSelect, + this.colShopLoginName, + this.colShopId, + this.colShopName, + this.colShopNotes, + this.colLoginStatus, + this.colCanUse, + this.colMessage}); + this.dgvShop.Dock = System.Windows.Forms.DockStyle.Fill; + this.dgvShop.Location = new System.Drawing.Point(0, 0); + this.dgvShop.Name = "dgvShop"; + this.dgvShop.ReadOnly = true; + this.dgvShop.RowHeadersWidth = 25; + this.dgvShop.RowTemplate.Height = 23; + this.dgvShop.Size = new System.Drawing.Size(266, 555); + this.dgvShop.TabIndex = 7; + // + // colSelect + // + this.colSelect.HeaderText = "全选"; + this.colSelect.Name = "colSelect"; + this.colSelect.ReadOnly = true; + this.colSelect.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colSelect.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colSelect.Width = 28; + // + // colShopLoginName + // + this.colShopLoginName.HeaderText = "店铺登录名"; + this.colShopLoginName.Name = "colShopLoginName"; + this.colShopLoginName.ReadOnly = true; + this.colShopLoginName.Visible = false; + // + // colShopId + // + this.colShopId.HeaderText = "店铺Id"; + this.colShopId.Name = "colShopId"; + this.colShopId.ReadOnly = true; + this.colShopId.Visible = false; + this.colShopId.Width = 55; + // + // colShopName + // + this.colShopName.FillWeight = 150F; + this.colShopName.HeaderText = "店铺名称"; + this.colShopName.Name = "colShopName"; + this.colShopName.ReadOnly = true; + this.colShopName.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colShopName.Width = 70; + // + // colShopNotes + // + this.colShopNotes.HeaderText = "分组"; + this.colShopNotes.Name = "colShopNotes"; + this.colShopNotes.ReadOnly = true; + this.colShopNotes.Width = 70; + // + // colLoginStatus + // + this.colLoginStatus.HeaderText = "状态"; + this.colLoginStatus.Name = "colLoginStatus"; + this.colLoginStatus.ReadOnly = true; + this.colLoginStatus.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colLoginStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colLoginStatus.Width = 38; + // + // colCanUse + // + this.colCanUse.HeaderText = "可用"; + this.colCanUse.Name = "colCanUse"; + this.colCanUse.ReadOnly = true; + this.colCanUse.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.colCanUse.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.colCanUse.Visible = false; + this.colCanUse.Width = 28; + // + // colMessage + // + this.colMessage.HeaderText = "消息"; + this.colMessage.Name = "colMessage"; + this.colMessage.ReadOnly = true; + this.colMessage.Width = 120; + // + // pnlRefresh + // + this.pnlRefresh.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.pnlRefresh.Cursor = System.Windows.Forms.Cursors.Hand; + this.pnlRefresh.DisabledBackColor = System.Drawing.Color.Empty; + this.pnlRefresh.Dock = System.Windows.Forms.DockStyle.Fill; + this.pnlRefresh.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.pnlRefresh.Location = new System.Drawing.Point(0, 0); + this.pnlRefresh.Name = "pnlRefresh"; + this.pnlRefresh.Size = new System.Drawing.Size(266, 26); + this.pnlRefresh.Style.Alignment = System.Drawing.StringAlignment.Center; + this.pnlRefresh.Style.BackColor1.Color = System.Drawing.Color.White; + this.pnlRefresh.Style.BackColor2.Color = System.Drawing.Color.White; + this.pnlRefresh.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine; + this.pnlRefresh.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlRefresh.Style.ForeColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlRefresh.Style.GradientAngle = 90; + this.pnlRefresh.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center; + this.pnlRefresh.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlRefresh.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.pnlRefresh.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White; + this.pnlRefresh.TabIndex = 188; + this.pnlRefresh.Text = "刷 新 店 铺"; + // + // ucTabControl1 + // + this.ucTabControl1.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(251)))), ((int)(((byte)(251)))), ((int)(((byte)(251))))); + this.ucTabControl1.Controls.Add(this.tabPage1); + this.ucTabControl1.Controls.Add(this.tabPage2); + this.ucTabControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.ucTabControl1.ItemSize = new System.Drawing.Size(73, 26); + this.ucTabControl1.Location = new System.Drawing.Point(0, 0); + this.ucTabControl1.Name = "ucTabControl1"; + this.ucTabControl1.SelectedIndex = 0; + this.ucTabControl1.ShowCloseButton = false; + this.ucTabControl1.Size = new System.Drawing.Size(1227, 618); + this.ucTabControl1.TabIndex = 0; + this.ucTabControl1.TabSelectColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255))))); + this.ucTabControl1.TabTextColor = System.Drawing.Color.Gray; + // + // tabPage1 + // + this.tabPage1.Controls.Add(this.pnlTalk); + this.tabPage1.Location = new System.Drawing.Point(2, 30); + this.tabPage1.Name = "tabPage1"; + this.tabPage1.Padding = new System.Windows.Forms.Padding(3); + this.tabPage1.Size = new System.Drawing.Size(1221, 584); + this.tabPage1.TabIndex = 0; + this.tabPage1.Text = "客服窗口"; + this.tabPage1.UseVisualStyleBackColor = true; + // + // pnlTalk + // + this.pnlTalk.Dock = System.Windows.Forms.DockStyle.Fill; + this.pnlTalk.Location = new System.Drawing.Point(3, 3); + this.pnlTalk.Name = "pnlTalk"; + this.pnlTalk.Size = new System.Drawing.Size(1215, 578); + this.pnlTalk.TabIndex = 1; + // + // tabPage2 + // + this.tabPage2.Controls.Add(this.mainPanel); + this.tabPage2.Location = new System.Drawing.Point(2, 30); + this.tabPage2.Name = "tabPage2"; + this.tabPage2.Padding = new System.Windows.Forms.Padding(3); + this.tabPage2.Size = new System.Drawing.Size(1221, 584); + this.tabPage2.TabIndex = 1; + this.tabPage2.Text = "店铺后台"; + this.tabPage2.UseVisualStyleBackColor = true; + // + // mainPanel + // + this.mainPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.mainPanel.Location = new System.Drawing.Point(3, 3); + this.mainPanel.Name = "mainPanel"; + this.mainPanel.Size = new System.Drawing.Size(1215, 578); + this.mainPanel.TabIndex = 1; + // + // ColumnShopStatus + // + this.ColumnShopStatus.HeaderText = "登录状态"; + this.ColumnShopStatus.Name = "ColumnShopStatus"; + this.ColumnShopStatus.ReadOnly = true; + this.ColumnShopStatus.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.ColumnShopStatus.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.ColumnShopStatus.Width = 106; + // + // ColumnShopID + // + this.ColumnShopID.HeaderText = "店铺账号"; + this.ColumnShopID.Name = "ColumnShopID"; + this.ColumnShopID.ReadOnly = true; + this.ColumnShopID.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.ColumnShopID.Width = 62; + // + // ColumnShopName + // + this.ColumnShopName.HeaderText = "店铺名称"; + this.ColumnShopName.Name = "ColumnShopName"; + this.ColumnShopName.ReadOnly = true; + this.ColumnShopName.Width = 62; + // + // dataGridViewTextBoxColumn1 + // + this.dataGridViewTextBoxColumn1.HeaderText = "店铺账号"; + this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; + this.dataGridViewTextBoxColumn1.ReadOnly = true; + this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn1.Width = 62; + // + // dataGridViewTextBoxColumn2 + // + this.dataGridViewTextBoxColumn2.HeaderText = "店铺名称"; + this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2"; + this.dataGridViewTextBoxColumn2.ReadOnly = true; + this.dataGridViewTextBoxColumn2.Width = 62; + // + // dataGridViewLinkColumn1 + // + this.dataGridViewLinkColumn1.HeaderText = "登录状态"; + this.dataGridViewLinkColumn1.Name = "dataGridViewLinkColumn1"; + this.dataGridViewLinkColumn1.ReadOnly = true; + this.dataGridViewLinkColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewLinkColumn1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.dataGridViewLinkColumn1.Width = 106; + // + // dataGridViewTextBoxColumn3 + // + this.dataGridViewTextBoxColumn3.HeaderText = "店铺账号"; + this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3"; + this.dataGridViewTextBoxColumn3.ReadOnly = true; + this.dataGridViewTextBoxColumn3.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn3.Width = 62; + // + // dataGridViewTextBoxColumn4 + // + this.dataGridViewTextBoxColumn4.HeaderText = "店铺名称"; + this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; + this.dataGridViewTextBoxColumn4.ReadOnly = true; + this.dataGridViewTextBoxColumn4.Width = 62; + // + // dataGridViewLinkColumn2 + // + this.dataGridViewLinkColumn2.HeaderText = "登录状态"; + this.dataGridViewLinkColumn2.Name = "dataGridViewLinkColumn2"; + this.dataGridViewLinkColumn2.ReadOnly = true; + this.dataGridViewLinkColumn2.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewLinkColumn2.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + this.dataGridViewLinkColumn2.Width = 106; + // + // WxTalkForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.ClientSize = new System.Drawing.Size(1500, 700); + this.Controls.Add(this.panel3); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "WxTalkForm"; + this.Text = "微信客服"; + this.TitleText = "微信客服"; + this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.WxTalkForm_FormClosed); + this.Load += new System.EventHandler(this.WxTalkForm_Load); + this.Controls.SetChildIndex(this.panel3, 0); + ((System.ComponentModel.ISupportInitialize)(this.pbLogo)).EndInit(); + this.panel3.ResumeLayout(false); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); + this.splitContainer2.Panel1.ResumeLayout(false); + this.splitContainer2.Panel1.PerformLayout(); + this.splitContainer2.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer2)).EndInit(); + this.splitContainer2.ResumeLayout(false); + this.splitContainer4.Panel1.ResumeLayout(false); + this.splitContainer4.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer4)).EndInit(); + this.splitContainer4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgvShop)).EndInit(); + this.ucTabControl1.ResumeLayout(false); + this.tabPage1.ResumeLayout(false); + this.tabPage2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel panel3; + private System.Windows.Forms.SplitContainer splitContainer1; + private System.Windows.Forms.SplitContainer splitContainer2; + private System.Windows.Forms.CheckBox chkNotShowMessageWindow; + private System.Windows.Forms.ComboBox cmbMessage; + private System.Windows.Forms.Label label1; + private DevComponents.DotNetBar.PanelEx pnlSet; + private DevComponents.DotNetBar.Controls.Line line4; + private System.Windows.Forms.CheckBox chkIsAutoReLogin; + private System.Windows.Forms.TextBox txtAutoReplyText; + private System.Windows.Forms.CheckBox chkIsAutoReply; + private System.Windows.Forms.SplitContainer splitContainer4; + private DevComponents.DotNetBar.PanelEx pnlRefresh; + private System.Windows.Forms.DataGridViewTextBoxColumn ColumnShopID; + private System.Windows.Forms.DataGridViewTextBoxColumn ColumnShopName; + private System.Windows.Forms.DataGridViewLinkColumn ColumnShopStatus; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2; + private System.Windows.Forms.DataGridViewLinkColumn dataGridViewLinkColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4; + private System.Windows.Forms.DataGridViewLinkColumn dataGridViewLinkColumn2; + private UserComponent.DataGridViewEx dgvShop; + private UserComponent.UcDataGridViewCheckBoxColumn colSelect; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopLoginName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopId; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopName; + private System.Windows.Forms.DataGridViewTextBoxColumn colShopNotes; + private System.Windows.Forms.DataGridViewLinkColumn colLoginStatus; + private System.Windows.Forms.DataGridViewCheckBoxColumn colCanUse; + private System.Windows.Forms.DataGridViewTextBoxColumn colMessage; + private UserComponent.UcTabControl ucTabControl1; + private System.Windows.Forms.TabPage tabPage1; + private System.Windows.Forms.Panel pnlTalk; + private System.Windows.Forms.TabPage tabPage2; + private System.Windows.Forms.Panel mainPanel; + } +} \ No newline at end of file diff --git a/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs b/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs new file mode 100644 index 0000000..3bdc652 --- /dev/null +++ b/TEMUKJD/WXForms/TalkForms/WxTalkForm.cs @@ -0,0 +1,585 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.Result; +using CefSharp; +using CefSharp.WinForms; +using NaiBa.CefHelper; +using NaiBa.CefHelper.Handler; +using NaiBa.Util.Extension; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Diagnostics; +using System.Drawing; +using System.Linq; +using System.Media; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.Helper; +using TemuKJD.ToolForms; +using TemuKJD.WXForms.TalkForms.TalkHelper; + +namespace TemuKJD.WXForms.TalkForms +{ + public partial class WxTalkForm : BaseTalkForm + { + public Dictionary ShopChatCount = new Dictionary(); + + public delegate void SearchResultReceivedHandler(ShopLoginInfo shop); + /// + /// 查询结果事件通知 + /// + public event SearchResultReceivedHandler SearchResultReceived; + + public delegate void InfomationReceivedHandler(string infomation); + /// + /// 消息事件通知,比如:异常等通知 + /// + /// + public event InfomationReceivedHandler InfomationReceived; + + public static ShopLoginInfo currentShop = null; + ChromiumWebBrowser mainWebBrowser = null; + + /// + /// 弹出框列表 + /// + //public static List lstChatMessageForm = new List(); + public static Dictionary dicRowColor = new Dictionary(); + + public int LocationXY = 0; + public int LocationSize = 200; + + public WxTalkForm() + { + InitializeComponent(); + } + + private void WxTalkForm_FormClosed(object sender, FormClosedEventArgs e) + { + Process.GetCurrentProcess().Kill(); + } + + private void WxTalkForm_Load(object sender, EventArgs e) + { + if (BaseClass.LogoImage != null) + pbLogo.Image = BaseClass.LogoImage; + if (BaseClass.Ico != null) + this.Icon = BaseClass.Ico; + else + this.Icon = BaseClass.Ico = ImageBuild.ConvertToIcon(Properties.Resources.icon); + + //SetTitle(); + + //this.chkIsAutoReLogin.CheckedChanged -= chkIsAutoReLogin_CheckedChanged; + //this.chkIsAutoReply.CheckedChanged -= chkIsAutoReply_CheckedChanged; + //this.txtAutoReplyText.TextChanged -= txtAutoReplyText_TextChanged; + //this.cmbMessage.SelectedIndexChanged -= cmbMessage_SelectedIndexChanged; + if (this.cmbMessage.Items.Contains(ChatConfig.ChatSettingConfig.MessageSound)) + this.cmbMessage.SelectedItem = ChatConfig.ChatSettingConfig.MessageSound; + else + this.cmbMessage.SelectedIndex = 0; + this.chkIsAutoReply.Checked = ChatConfig.ChatSettingConfig.IsAutoReply; + this.txtAutoReplyText.Text = ChatConfig.ChatSettingConfig.AutoReplayText; + this.chkIsAutoReLogin.CheckedChanged += chkIsAutoReLogin_CheckedChanged; + this.chkIsAutoReply.CheckedChanged += chkIsAutoReply_CheckedChanged; + this.txtAutoReplyText.TextChanged += txtAutoReplyText_TextChanged; + this.cmbMessage.SelectedIndexChanged += cmbMessage_SelectedIndexChanged; + + SearchResultReceived += Chat_SearchResultReceived; + InfomationReceived += Collect_InfomationReceived; + + if (mainWebBrowser == null) + { + mainWebBrowser = CEFBrowser.CreateChromiumWebBrowser("about:blank", false); + mainWebBrowser.KeyboardHandler = new KeyboardHandler(); + mainWebBrowser.Dock = DockStyle.Fill; + var lifeSpanHandler = new LifeSpanHandlerLocal(PopWindowType.NewTitleWindow); + lifeSpanHandler.parent = mainWebBrowser; + lifeSpanHandler.OnPop += MainLifeHandler_OnPop; + mainWebBrowser.LifeSpanHandler = lifeSpanHandler; + //mainWebBrowser.AddressChanged += mainWebBrowser_UrlChanged; + mainWebBrowser.FrameLoadEnd += cefWebBrowser1_FrameLoadEnd; + mainPanel.Controls.Add(mainWebBrowser); + } + Task.Run(() => + { + // 直到店铺加载完后再加载客服内容 + while (!StartUp.IsShopInit) + Thread.Sleep(100); + + SetMainBrowserUrl(GlobalConfig.ShopLoginList.FirstOrDefault()); + LoadShop(); + InitAutoExecute(); + }); + } + private void cefWebBrowser1_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e) + { + //ChromiumWebBrowser cefWebBrowser1 = (ChromiumWebBrowser)sender; + //string url = cefWebBrowser1.Address; + //if (url.Contains("/mallcenter/info/basic") && cefWebBrowser3.IsBrowserInitialized) + //{ + // Thread.Sleep(5000); + // var shop = GetShopLoginInfo.Shops.Find(s => s != null && s.ShopName == ShopName); + // string code = "document.getElementsByClassName('new-part')[1].innerHTML=\"
" + shop.Name + "?

当前状态不支持修改店铺名,您可一键开新店铺

\""; + // cefWebBrowser3.GetBrowser().MainFrame.ExecuteJavaScriptAsync(code); + //} + } + + [DllImport("winmm.dll")] + public static extern uint mciSendString(string lpstrCommand, string lpstrReturnString, uint uReturnLength, uint hWndCallback); + /// + /// 播放提示音 + /// + public void playSound() + { + string musicname = "默认提示音"; + if (!string.IsNullOrEmpty(ChatConfig.ChatSettingConfig.MessageSound)) + musicname = ChatConfig.ChatSettingConfig.MessageSound; + if (musicname == "无") + return; + if (musicname == "默认提示音") + musicname = "9527.wav"; + else + musicname = musicname + ".mp3"; + + if (musicname.Contains("wav")) + { + try + { + SoundPlayer sound = new SoundPlayer("temp/" + musicname); + sound.Play(); + } + catch + { + + } + } + if (musicname.Contains("mp3")) + { + try + { + mciSendString(@"close ""temp/" + musicname + @"""", null, 0, 0); + mciSendString(@"open ""temp/" + musicname + @"""", null, 0, 0); + mciSendString(@"play ""temp/" + musicname + @"""", null, 0, 0); + } + catch + { } + } + } + + + public void ShowChat(ShopLoginInfo shop) + { + while (shop.Chat?.IsBrowserInitialized != true) + { + Thread.Sleep(50); + } + // 设置cef cookie + if (shop.Chat != null && shop.Chat.IsBrowserInitialized) + { + var cookieManager = shop.Chat.GetCookieManager(null); + + cookieManager.DeleteCookies("qq.com", null); + CEFBrowser.SetCookieAsync("jinritemai.com", shop.Cookies, shop.Chat.GetCookieManager(null)); + + if (shop.LoginStatus == "登录成功") + shop.Chat.Load("https://store.weixin.qq.com/shop/kf"); + } + } + + + public void LoadShop(List shopList = null) + { + if (shopList == null) + shopList = new List(); + if (shopList.Count == 0) + shopList.AddRange(GlobalConfig.ShopLoginList); + + for (int i = 0; i < shopList.Count; i++) + { + var shop = shopList[i]; + ShopLoginInfo result = new ShopLoginInfo(); + result.ShopId = shop.ShopId; + result.ShopAccount = shop.ShopAccount; + result.LoginStatus = shop.LoginStatus; + + var r = dgvShop.Rows.Cast().FirstOrDefault(x => x.Cells["columnShopId"].Value.ToString() == shop.ShopId); + this.Invoke(new Action(() => + { + int iGrid = 0; + if (r == null) + iGrid = dgvShop.Rows.Add(); + else + iGrid = r.Index; + + dgvShop.Rows[iGrid].Cells["ColumnShopID"].Value = shop.ShopId; // 店铺ID + dgvShop.Rows[iGrid].Cells["ColumnShopName"].Value = shop.ShopAccount; // 店铺名称 + dgvShop.Rows[iGrid].Cells["ColumnShopStatus"].Value = shop.LoginStatus == "未登录" ? "未登录 点击登录" : shop.LoginStatus; // 登录状态 + dicRowColor[dgvShop.Rows[iGrid]] = dgvShop.Rows[iGrid].DefaultCellStyle.BackColor; + + if (shop.Chat == null) + { + LocationXY += 5; + shop.X = LocationXY % LocationSize; + shop.Y = LocationXY / LocationSize; + RequestContextSettings requestContextSettings = new RequestContextSettings(); + requestContextSettings.PersistSessionCookies = false; + //requestContextSettings.PersistUserPreferences = false; + try + { + var cefWebBrowser = CEFBrowser.CreateChromiumWebBrowser("about:blank", false); + //new ChromiumWebBrowser("https://store.weixin.qq.com/shop/kf); + + CustomResourceRequestHandler resourceRequestHandler = new CustomResourceRequestHandler(); + resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; + cefWebBrowser.RequestHandler = new CustomRequestHandler(resourceRequestHandler); + cefWebBrowser.KeyboardHandler = new KeyboardHandler(); + + var lifeHandler = new LifeSpanHandlerLocal(PopWindowType.NewTitleWindow); + lifeHandler.OnPop += LifeHandler_OnPop; + lifeHandler.parent = cefWebBrowser; + cefWebBrowser.LifeSpanHandler = lifeHandler; + + cefWebBrowser.RequestContext = new RequestContext(requestContextSettings); + cefWebBrowser.Dock = DockStyle.Fill; //DockStyle.None; + cefWebBrowser.Location = new Point(shop.X, shop.Y); + shop.Chat = cefWebBrowser; + pnlTalk.Controls.Add(shop.Chat); + + if (i == 0) + currentShop = shop; + + Task.Run(() => + { + ShowChat(shop); + }); + } + catch (Exception ex) + { + return; + } + } + })); + } + } + + private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData) + { + if (responseData.Contains("你好")) + { + Task.Run(() => + { + }); + } + } + + private void MainLifeHandler_OnPop(object sender, PopData e) + { + var targetUrl = e.Url; + var lifeHandler = sender as LifeSpanHandlerLocal; + + Task.Run(() => + { + if (lifeHandler.parent != null) + { + var cookies = CEFBrowser.GetCookieList("", lifeHandler.parent.GetCookieManager(null)); + Invoke(new Action(() => + { + CefForm cefForm = new CefForm(targetUrl, cookies); + cefForm.Show(); + })); + } + }); + } + + private void LifeHandler_OnPop(object sender, PopData e) + { + var targetUrl = e.Url; + var lifeHandler = sender as LifeSpanHandlerLocal; + + Task.Run(() => + { + //if (e.Url.StartsWith("https://haohuo.jinritemai.com/views/product/item")) + //{ + // var productId = BaseRegex.GetMatchRegexString(ref targetUrl, "&id=(\\d{5,30})"); + // if (!string.IsNullOrEmpty(productId)) + // { + // long product_id = productId.ParseToLong(); + // if (product_id > 0) + // { + // string urlx = BaseClass.LoginApiUrl + "?obj=upshopid/upid_dd&act=get"; + // string datax = "&pid=" + product_id + "&table=" + (product_id % 1024); + // string htmlx = GetHtml.PostUtf8(urlx, UserLogin.GetSignaturex("", "") + datax); + // string id = BaseRegex.GetMatchRegexString(htmlx, @"([\d]+)"); + // if (htmlx.StartsWith("tb")) + // targetUrl = "https://item.taobao.com/item.htm?id=" + id; + // if (htmlx.StartsWith("pd")) + // targetUrl = "https://mobile.yangkeduo.com/goods.html?goods_id=" + id; + // if (htmlx.StartsWith("al")) + // targetUrl = "https://detail.1688.com/offer/" + id + ".html"; + // if (htmlx.StartsWith("dy")) + // targetUrl = "https://weidian.com/item.html?itemID=" + id; + // } + // } + //} + //if (lifeHandler.parent != null) + //{ + // var cookies = CEFBrowser.GetCookieList("", lifeHandler.parent.GetCookieManager(null)); + // Invoke(new Action(() => + // { + // CefForm cefForm = new CefForm(targetUrl, cookies); + // cefForm.Show(); + // })); + //} + }); + } + + + /// + /// 更新店铺后台首页 + /// + /// + private void SetMainBrowserUrl(ShopLoginInfo shop) + { + if (shop == null) + return; + + var cookieLst = JsonHelper.DeserializeJsonToList(shop.Cookies.ParseToString()); + if (cookieLst == null) + cookieLst = new List(); + + var cookieManager = mainWebBrowser.GetCookieManager(null); + cookieManager.DeleteCookiesAsync("qq.com", null).Wait(); + foreach (var cook in cookieLst) + { + var t = CEFBrowser.SetCookieAsync(cook.Domain, cook.Name + "=" + cook.Value + ";", cookieManager); + t.Wait(5000); + } + + mainWebBrowser.Load("https://store.weixin.qq.com/shop/home"); + } + + /// + /// 自动回复等 + /// + public void InitAutoExecute() + { + //Task.Run(() => + //{ + // while (true) + // { + // foreach (var shop in GlobalConfig.DouShopLoginList) + // { + // try + // { + // Thread.Sleep(new Random(DateTime.Now.Millisecond).Next(300, 500)); + // bool needReLogin = AutoCheckShopLoginStatus(shop); + // if (ChatConfig.ChatSettingConfig.IsAutoReLogin && needReLogin) + // AutoReLogin(shop); + + // if (shop.LoginStatus != "登录成功") + // continue; + + // Thread.Sleep(new Random(DateTime.Now.Millisecond).Next(300, 500)); + // AutoReConnect(shop); + + // Thread.Sleep(new Random(DateTime.Now.Millisecond).Next(300, 500)); + // AutoCloseMaskWindow(shop); + + + // Thread.Sleep(new Random(DateTime.Now.Millisecond).Next(300, 500)); + // var isNewMessage = AutoGetNewMessage(shop); + // while (isNewMessage && ChatConfig.ChatSettingConfig.IsAutoReply) + // { + // AutoReplyWithJs(shop); + // Thread.Sleep(new Random(DateTime.Now.Millisecond).Next(300, 500)); + // isNewMessage = AutoGetNewMessage(shop); + // } + // } + // catch (Exception ex) + // { + // } + // } + // } + //}); + + //Task.Run(() => + //{ + // var sleepTime = 1000; + // while (true) + // { + // Thread.Sleep(sleepTime); + // var jsStr = "function getVideo() {\r\n" + + // " var videos = document.getElementsByTagName('video')\r\n" + + // " if (videos && videos.length > 0) {\r\n" + + // " var src = videos[0].src;\r\n" + + // " videos[0].parentElement.parentElement.click();\r\n" + + // " return src;\r\n" + + // " //return '';\r\n" + + // " }\r\n" + + // " return '';\r\n" + + // "}" + + // "getVideo();\r\n"; + // if (currentShop?.Chat != null && currentShop.Chat.IsBrowserInitialized) + // { + // var t = currentShop.Chat.GetMainFrame().EvaluateScriptAsync(jsStr); + // t.Wait(); + // if (!string.IsNullOrEmpty(t.Result?.Result?.ToString())) + // { + // Invoke(new Action(() => + // { + // AllBase.GetHtml.OpenUrl(t.Result.Result.ToString()); + // })); + // } + // } + // } + //}); + + //Task.Run(() => + //{ + // var sleepTime = 2500; + // while (true) + // { + // try + // { + // Thread.Sleep(sleepTime); + // var jsStr1 = "function ClosePopWindow() {\r\n" + + // " var result = 'no_pop'\r\n" + + // " var item = document.getElementsByClassName('anticon-close-circle');\r\n" + + // " for(i = 0; i < item.length; i++) {\r\n" + + // " item[i].click();\r\n" + + // " result = 'success'\r\n" + + // " }\r\n" + + // " return result;\r\n" + + // "}\r\n" + + // "ClosePopWindow();\r\n"; + // var jsStr2 = "function clickPopWindow() {\r\n" + // + "var child = document.body.firstElementChild;\r\n" + // + "var element1 = null;\r\n" + // + " while (child) {\r\n" + // + " if (child.innerHTML.indexOf('知道了') >= 0) {\r\n" + // + " element1 = child;\r\n" + // + " if (child.firstElementChild) {\r\n" + // + " child = child.firstElementChild; continue;\r\n" + // + " } else break;\r\n" + // + " }\r\n" + // + " child = child.nextElementSibling;\r\n" + // + " }\r\n" + // + " if (element1) {\r\n" + // + " element1.click(); return 'success';\r\n" + // + " } else return 'no_pop';\r\n" + // + "}\r\n" + // + "clickPopWindow();\r\n"; + // if (mainWebBrowser.IsBrowserInitialized) + // { + // var t1 = mainWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr1); + // t1.Wait(); + // var t2 = mainWebBrowser.GetMainFrame().EvaluateScriptAsync(jsStr2); + // t2.Wait(); + // if (t1.Result?.Result?.ToString() == "success" || t2.Result?.Result?.ToString() == "success") + // sleepTime = Randomx.GetId(550, 650); + // else + // sleepTime = Randomx.GetId(2500, 3000); + // } + // } + // catch (Exception ex) { } + // } + //}); + } + + private void chkIsAutoReLogin_CheckedChanged(object sender, EventArgs e) + { + ChatConfig.ChatSettingConfig.IsAutoReLogin = chkIsAutoReLogin.Checked; + ChatConfig.SaveChatSettingParam(); + + //GlobalConfig.DouShopSettingParam.IsAutoDragLogin = chkIsAutoReLogin.Checked; + } + + private void chkIsAutoReply_CheckedChanged(object sender, EventArgs e) + { + ChatConfig.ChatSettingConfig.IsAutoReply = chkIsAutoReply.Checked; + ChatConfig.SaveChatSettingParam(); + } + + private void txtAutoReplyText_TextChanged(object sender, EventArgs e) + { + ChatConfig.ChatSettingConfig.AutoReplayText = txtAutoReplyText.Text; + ChatConfig.SaveChatSettingParam(); + } + + private void cmbMessage_SelectedIndexChanged(object sender, EventArgs e) + { + ChatConfig.ChatSettingConfig.MessageSound = this.cmbMessage.SelectedItem.ToString(); + ChatConfig.SaveChatSettingParam(); + } + + private void Chat_SearchResultReceived(ShopLoginInfo shop) + { + var r = dgvShop.Rows.Cast().FirstOrDefault(x => x.Cells["columnShopId"].Value.ToString() == shop.ShopId); + if (r != null) + { + for (int i = 0; i < dgvShop.Rows.Count; i++) + { + var row = dgvShop.Rows[i]; + + if (row.Cells[0].Value.ToString() == shop.ShopId && shop != currentShop) + { + if (ShopChatCount.ContainsKey(shop.ShopId) && ShopChatCount[shop.ShopId] > 0) + { + Task.Run(() => + { + for (int j = 0; j < 4; j++) + { + Invoke(new Action(() => { row.DefaultCellStyle.BackColor = Color.White; })); + Thread.Sleep(100); + Invoke(new Action(() => { row.DefaultCellStyle.BackColor = Color.FromArgb(245, 95, 50); })); + Thread.Sleep(100); + Invoke(new Action(() => { row.DefaultCellStyle.BackColor = Color.FromArgb(245, 45, 10); })); + Thread.Sleep(100); + } + }); + } + else if (row.DefaultCellStyle.BackColor != Color.White) + { + row.DefaultCellStyle.BackColor = Color.White; + } + break; + } + } + } + } + private void Collect_InfomationReceived(string infomation) + { + //try + //{ + // this.Invoke(new Action(() => + // { + // lblMsg.Text = infomation; + // var data = infomation.Split(new string[] { ":" }, StringSplitOptions.RemoveEmptyEntries); + // if (data.Length == 2) + // { + // if (data[1] == FastCarCollect.FASTCAR_QUOTA_FINISH) + // { + // var shop = gridShop.Rows.Cast().FirstOrDefault(x => x.Cells["columnShopName"].Value.ToString() == data[0]); + // if (shop != null) + // { + // shop.Cells["columnMsg"].Value = data[1]; + // } + // } + // } + // if (infomation == "修改出价结束") + // this.btnStart.Enabled = true; + // if (infomation == "暂停推广结束") + // this.btnStop.Enabled = true; + // })); + //} + //catch { } + } + } +} diff --git a/TEMUKJD/WXForms/TalkForms/WxTalkForm.resx b/TEMUKJD/WXForms/TalkForms/WxTalkForm.resx new file mode 100644 index 0000000..1a1053b --- /dev/null +++ b/TEMUKJD/WXForms/TalkForms/WxTalkForm.resx @@ -0,0 +1,337 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + + \ No newline at end of file diff --git a/Work/Initialization.cs b/Work/Initialization.cs index ae6d476..d60d96c 100644 --- a/Work/Initialization.cs +++ b/Work/Initialization.cs @@ -691,6 +691,16 @@ offCountPara,false;offProductPara,100;IrregularitiesPara,true;noNeerPara,true;no if (!FileBase.Exists("FiddlerCore4.dll")) if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "FiddlerCore4.dll", "FiddlerCore4.dll" + ".bak")) FileBase.Move("FiddlerCore4.dll" + ".bak", "FiddlerCore4.dll"); + if (!FileBase.Exists("temp\\9527.wav")) + if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/Sound/" + "9527.wav", "temp\\9527.wav" + ".bak")) + FileBase.Move("temp\\9527.wav" + ".bak", "temp\\9527.wav"); + for (int i = 1; i<= 20; i++) + { + string fileName = "temp\\" + i + "号电脑.mp3"; + if (!FileBase.Exists(fileName)) + if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/Sound/" + "9527.wav", fileName + ".bak")) + FileBase.Move(fileName + ".bak", fileName); + } /* List files = new List();