From 9cd218f0bebc19b86efeca2b33abe3adf093990c Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 20 六月 2020 18:59:35 +0800
Subject: [PATCH] '完善'

---
 WindowsFormsApp1/Main.cs |  322 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 322 insertions(+), 0 deletions(-)

diff --git a/WindowsFormsApp1/Main.cs b/WindowsFormsApp1/Main.cs
index 2a8d046..d11bb9d 100644
--- a/WindowsFormsApp1/Main.cs
+++ b/WindowsFormsApp1/Main.cs
@@ -80,6 +80,8 @@
                 }
 
             });
+            //鍒濆鍖栨ā鏉跨紪杈�
+            setDocTemplateState(false);
         }
 
         //楠岃瘉鐧诲綍
@@ -354,6 +356,100 @@
                 }
             }
         }
+        //鍏ㄩ��
+        private void checkBox20_CheckedChanged(object sender, EventArgs e)
+        {
+            if (this.checkBox20.Checked)//鍏ㄩ��
+            {
+                for (int i = 0; i < dataGridView1.Rows.Count; i++)
+                {
+                    ((DataGridViewCheckBoxCell)dataGridView1.Rows[i].Cells["閫夋嫨"]).Value = true;
+                }
+            }
+            else { //鍙嶉��
+                for (int i = 0; i < dataGridView1.Rows.Count; i++)
+                {
+                    if (Convert.ToBoolean( ((DataGridViewCheckBoxCell)dataGridView1.Rows[i].Cells["閫夋嫨"]).Value)==true)
+                         ((DataGridViewCheckBoxCell)dataGridView1.Rows[i].Cells["閫夋嫨"]).Value = false;
+                }
+            }
+
+            //鍏ㄩ��
+        }
+
+
+        //榧犳爣鍙抽敭
+        private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
+        {
+            if (e.Button == MouseButtons.Right)
+            {
+                if (e.RowIndex >= 0)
+                {
+                    dataGridView1.ClearSelection();//娓呯┖閫夋嫨椤�
+                    dataGridView1.Rows[e.RowIndex].Selected = true;//鑾峰彇琚�変腑琛岀储寮�
+                    dataGridView1.CurrentCell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
+                    contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);//寮瑰嚭鎿嶄綔鑿滃崟
+                }
+            }
+        }
+
+        //鑿滃崟鐐瑰嚮
+        private void contextMenuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
+        {
+            int index = dataGridView1.CurrentRow.Index;
+            if (index >= this.infoList.Count())
+                return;
+            FirstOrderSubInfo info=  this.infoList[index];
+            //TODO 鍔犲叆鏂囨
+            if (e.ClickedItem.Name == "鍔犲叆寮曞崟搴�")
+            {
+               DocUtil.AddYDGoods(info);
+            }
+            else if (e.ClickedItem.Name == "鍔犲叆瀹炴媿搴�")
+            {
+                DocUtil.AddSPGoods(info);
+            }
+
+            String txt=   DocUtil.BuildDoc();
+            this.textBox13.Text = txt;
+            //鑾峰彇褰撳墠閫変腑鐨勯�夐」
+        }
+
+
+        //鍔犲叆瀹炴媿搴�
+        private void button17_Click(object sender, EventArgs e)
+        {
+            List<FirstOrderSubInfo> list = getCheckedGoodsItem();
+            DocUtil.AddSPGoods(list);
+            String txt = DocUtil.BuildDoc();
+            this.textBox13.Text = txt;
+        }
+        //鍔犲叆寮曞崟搴�
+        private void button18_Click(object sender, EventArgs e)
+        {
+            List<FirstOrderSubInfo> list=getCheckedGoodsItem();
+            DocUtil.AddYDGoods(list);
+            String txt = DocUtil.BuildDoc();
+            this.textBox13.Text = txt;
+        }
+
+
+        //鑾峰彇閫変腑鐨勯�夐」
+        private List<FirstOrderSubInfo> getCheckedGoodsItem() {
+            List<FirstOrderSubInfo> list = new List<FirstOrderSubInfo>();
+            if(this.infoList!=null)
+            for (int i = 0; i < this.infoList.Count(); i++)
+            {
+                if(Convert.ToBoolean(((DataGridViewCheckBoxCell)dataGridView1.Rows[i].Cells["閫夋嫨"]).Value) == true)
+                    list.Add(this.infoList[i]);
+            }
+            return list;
+        }
+
+
+
+
+
 
 
         /**
@@ -696,5 +792,231 @@
             LoginManager.ExitLogin();
             setUserInfo(null);
         }
+
+        private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
+        {
+            MessageBox.Show("鍙屽嚮");
+        }
+
+        /**
+         * 
+         * 妯℃澘鎿嶄綔寮�濮�
+         * 
+         */
+
+
+        private void ChooseDocTemplateParams(CheckBox checkBox)
+        {
+            String key = null;
+            foreach (String k in templateParams.Keys)
+            {
+                if (templateParams[k].Name == checkBox.Name)
+                    key = k;
+            }
+
+            if (checkBox.Checked)
+            {
+                string s = this.textBox13.Text;
+                int idx = this.textBox13.SelectionStart;
+                s = s.Insert(idx, key);
+                textBox13.Text = s;
+                textBox13.SelectionStart = idx + key.Length;
+                checkBox.Focus();
+            }
+            else
+            {
+                int index = this.textBox13.Text.IndexOf(key);
+                if (index > -1)
+                {
+                    string s = this.textBox13.Text;
+                    s = s.Replace(key, "");
+                    textBox13.Text = s;
+                }
+            }
+        }
+
+        Dictionary<String, CheckBox> templateParams = new Dictionary<string, CheckBox>();
+
+        private void initTemplateParams(bool isDefault)
+        {
+            templateParams.Clear();
+            templateParams.Add("{寮曞崟鍟嗗搧閾炬帴}", ydspLink_checkBox);
+            templateParams.Add("{寮曞崟绀奸噾闈㈤}", ydspLijin_checkBox);
+            templateParams.Add("{寮曞崟鏁欑▼閾炬帴}", ydCourse_checkBox);
+            templateParams.Add("{寮曞崟鍟嗗搧鍙d护}", ydToken_checkBox);
+            templateParams.Add("{瀹炴媿鍟嗗搧鍒版墜浠穧", spActualPrice_checkBox);
+            templateParams.Add("{瀹炴媿鍟嗗搧鏍囬}", spTitle_checkBox);
+            templateParams.Add("{瀹炴媿鍟嗗搧閾炬帴}", spLink_checkBox);
+            templateParams.Add("{瀹炴媿鍟嗗搧鍙d护}", spToken_checkBox);
+            //鑾峰彇妯℃澘
+           Config ownTemplate= SQLiteDataBaseUtil.getInstance().GetConfig("sdlj_doc_template_own");
+
+            String template = "";
+            if (ownTemplate != null)
+                template = ownTemplate.Value;
+            if (isDefault||StringUtil.isEmpty(template))
+                template = SQLiteDataBaseUtil.getInstance().GetConfig("sdlj_doc_template").Value;
+            foreach (String key in templateParams.Keys)
+            {
+                if (template.Contains(key))
+                {
+                    templateParams[key].Checked = true;
+                }
+            }
+            this.textBox13.Text = template;
+        }
+
+        private void ydspLink_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(ydspLink_checkBox);
+        }
+
+        private void ydspLijin_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(ydspLijin_checkBox);
+        }
+
+        private void ydCourse_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(ydCourse_checkBox);
+        }
+
+        private void ydToken_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(ydToken_checkBox);
+        }
+
+        private void spActualPrice_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(spActualPrice_checkBox);
+        }
+
+        private void spTitle_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(spTitle_checkBox);
+        }
+
+        private void spLink_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(spLink_checkBox);
+        }
+
+        private void spToken_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+            ChooseDocTemplateParams(spToken_checkBox);
+        }
+
+        private delegate void TemplateDoSuccess(bool t);
+
+        //妯℃澘缂栬緫
+        private void button30_Click(object sender, EventArgs e)
+        {
+            if (this.button12.Enabled == false)
+            {
+                ApiUtil.GetTemplate(new OnSuccess((String result) =>
+                {
+                   JObject obj= JObject.Parse(result);
+                    if (Convert.ToInt32(obj["code"]) == 0) {
+                        //璁剧疆妯℃澘
+                        String template = obj["data"]["template"].ToString();
+                        SQLiteDataBaseUtil.getInstance().AddConfig(new Config("sdlj_doc_template_own", template));
+                    }
+                    this.BeginInvoke(new TemplateDoSuccess(setDocTemplateState), true);
+                }));
+            }
+        }
+        //妯℃澘杩樺師
+        private void button12_Click(object sender, EventArgs e)
+        {
+          
+            ApiUtil.SetTemplate(true,"",new OnSuccess((String result)=> {
+
+            JObject obj = JObject.Parse(result);
+            if (Convert.ToInt32(obj["code"]) == 0)
+            {
+                    SQLiteDataBaseUtil.getInstance().AddConfig(new Config("sdlj_doc_template_own",""));
+                    this.BeginInvoke(new TemplateDoSuccess(initTemplateParams), true);
+                    MessageBox.Show("杩樺師鎴愬姛");      
+            }
+
+            }));
+
+        }
+        //淇濆瓨
+        private void button9_Click_1(object sender, EventArgs e)
+        {
+            String template=   this.textBox13.Text;
+            if (StringUtil.isEmpty(template)||!DocUtil.IsRight(template)) {
+                MessageBox.Show("妯℃澘鏍煎紡閿欒");
+                return;
+            }
+            //淇濆瓨妯℃澘
+            ApiUtil.SetTemplate(false, template, new OnSuccess((String result) => {
+                JObject obj = JObject.Parse(result);
+                if (Convert.ToInt32(obj["code"]) == 0)
+                {
+                    SQLiteDataBaseUtil.getInstance().AddConfig(new Config("sdlj_doc_template_own", template));
+                    this.BeginInvoke(new TemplateDoSuccess(setDocTemplateState), false);
+                    MessageBox.Show("淇濆瓨鎴愬姛");
+                }
+            }));
+        }
+        //澶嶅埗鏂囨
+        private void button16_Click(object sender, EventArgs e)
+        {
+
+        }
+
+        //鍚屾鍒板彂鍗曞簱
+        private void syncFaDanKu_checkBox_CheckedChanged(object sender, EventArgs e)
+        {
+
+        }
+
+        //璁剧疆鏂囨缂栬緫妯″紡
+        private void setDocTemplateState(bool edit) {
+            if (!edit)
+            {
+                this.ydCourse_checkBox.Enabled = false;
+                this.ydspLijin_checkBox.Enabled = false;
+                this.ydspLink_checkBox.Enabled = false;
+                this.ydToken_checkBox.Enabled = false;
+                this.spActualPrice_checkBox.Enabled = false;
+                this.spLink_checkBox.Enabled = false;
+                this.spTitle_checkBox.Enabled = false;
+                this.spToken_checkBox.Enabled = false;
+                this.button12.Enabled = false;
+                this.button9.Enabled = false;
+                this.button16.Enabled = true;
+                this.syncFaDanKu_checkBox.Enabled = true;
+                this.textBox13.Text = "";
+                String txt = DocUtil.BuildDoc();
+                this.textBox13.Text = txt;
+            }
+            else {
+                this.ydCourse_checkBox.Enabled = true;
+                this.ydspLijin_checkBox.Enabled = true;
+                this.ydspLink_checkBox.Enabled = true;
+                this.ydToken_checkBox.Enabled = true;
+                this.spActualPrice_checkBox.Enabled = true;
+                this.spLink_checkBox.Enabled = true;
+                this.spTitle_checkBox.Enabled = true;
+                this.spToken_checkBox.Enabled = true;
+                this.button12.Enabled = true;
+                this.button9.Enabled = true;
+                this.button16.Enabled = false;
+                this.syncFaDanKu_checkBox.Enabled = false;
+                //杞藉叆妯℃澘
+                initTemplateParams(false);
+            }
+        }
+
+
+
+        /**
+        * 
+        * 妯℃澘鎿嶄綔缁撴潫
+        * 
+        */
     }
 }

--
Gitblit v1.8.0