public string CheckDZRed(Djfp dj) { Fpxx fpxx = dj.Fpxx; string blueFpdm = fpxx.blueFpdm; string blueFphm = fpxx.blueFphm; string str3 = ""; int result = 0; if (int.TryParse(blueFphm, out result)) { blueFpxx = new FpManager().GetXxfp(this.fplx, blueFpdm, result); } else { str3 = string.Format("本张发票不能开红字发票!原因:YFP_HM有误", new object[0]); } if (blueFpxx != null) { string str4 = this.CanRedFp(fpxx.je); if (str4 != "") { str3 = string.Format("本张发票不能开红字发票!原因:{0}", str4); } return(str3); } string str5 = this.CanEmptyRedFp(blueFpdm, blueFphm, fpxx.je); if (str5 != "") { str3 = string.Format("本张发票不能开红字发票!原因:{0}", str5); } return(str3); }
private void TKfpxx(Djfp dj) { if ((((int)this.fplx == 0) || ((int)this.fplx == 2)) && (this.invoiceForm != null)) { this.invoiceForm.FillDjxx(dj); this.backgroundWorker1.ReportProgress(2, dj); this.invoiceForm.AutoImportZpfp(this, dj); for (int i = 0; i < 5; i++) { this.backgroundWorker1.ReportProgress(7, null); } } else if (((int)this.fplx == 0x33) && (this.dzinvoiceForm != null)) { if (dj.Fpxx.isRed) { this.dzinvoiceForm.FillDjxx(dj, true); } else { this.dzinvoiceForm.FillDjxx(dj, false); } this.backgroundWorker1.ReportProgress(2, dj); this.dzinvoiceForm.AutoImportDzfp(this, dj); for (int j = 0; j < 5; j++) { this.backgroundWorker1.ReportProgress(7, null); } } else if (((int)this.fplx == 11) && (this.hyInvoiceForm != null)) { this.hyInvoiceForm.FillDjxx(dj); this.backgroundWorker1.ReportProgress(2, dj); this.hyInvoiceForm.AutoImporthyfp(this, dj); for (int k = 0; k < 5; k++) { this.backgroundWorker1.ReportProgress(7, null); } } else if (((int)this.fplx == 12) && (this.jdcInvoiceForm != null)) { this.jdcInvoiceForm.FillDjxx(dj); this.backgroundWorker1.ReportProgress(2, dj); this.jdcInvoiceForm.AutoImportjdcfp(this, dj); for (int m = 0; m < 5; m++) { this.backgroundWorker1.ReportProgress(7, null); } } Thread.Sleep(0x3e8); }
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e) { int progressPercentage = e.ProgressPercentage; if (progressPercentage == 0) { this.SetProgressTip(); this.ResetProgressValue(); } else if (progressPercentage < 5) { this.SetProgress(progressPercentage); Djfp userState = e.UserState as Djfp; if (userState != null) { if (this.invoiceForm != null) { this.invoiceForm.ShowImprotFp(userState); } else if (this.dzinvoiceForm != null) { this.dzinvoiceForm.ShowImprotFp(userState); } else if (this.hyInvoiceForm != null) { this.hyInvoiceForm.ShowImprotFp(userState); } else if (this.jdcInvoiceForm != null) { this.jdcInvoiceForm.ShowImprotFp(userState); } } } else { this.SetProgress(progressPercentage - 5); } }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { foreach (string str in this.djFiles) { this.mFileName = str.Substring(str.LastIndexOf('\\') + 1); string bfFile = Path.Combine(this.bfPath, this.mFileName); int length = this.mFileName.Length; string str3 = this.mFileName.Substring(0, length - 4) + "_开票结果.TXT"; this.hxFileNamexml = this.mFileName.Substring(0, length - 4) + "_开票结果.xml"; List <string> list = this.djHelper.QueryYkdj(this.mFileName); if ((int)(int)this.fplx == 0x33) { doc = new XmlDocument(); XmlDeclaration newChild = doc.CreateXmlDeclaration("1.0", "GBK", null); doc.AppendChild(newChild); bus = doc.CreateElement("business"); doc.AppendChild(bus); } else { writer = new StreamWriter(new FileStream(Path.Combine(this.hxPath, str3), FileMode.Append, FileAccess.Write, FileShare.ReadWrite), ToolUtil.GetEncoding()); } List <Djfp> list2 = this.ParseDjFile(str); success = true; for (int i = 0; (i < list2.Count) && success; i++) { jqbh = ""; fp_dm = ""; fp_hm = ""; kprq = ""; fp_mw = ""; jym = ""; ewm = ""; bz = ""; returncode = "0000"; returnmsg = ""; Djfp dj = list2[i]; this.mDjh = dj.Djh; this.backgroundWorker1.ReportProgress(0, null); bool flag = false; if (list.Contains(this.mDjh)) { flag = false; object[] args = new object[] { base.TaxCardInstance.TaxClock.ToString("yyyy-MM-dd HH:mm:ss"), this.mDjh, 0, "该单据已成功填开过发票,不可重复开具!" }; KpResult = string.Format("[{0}] 单据号:{1},开具结果:{2},开具失败原因:{3}", args); returncode = "0001"; returnmsg = "该单据已成功填开过发票,不可重复开具!"; this.backgroundWorker1.ReportProgress(15, null); } else if (((int)(int)this.fplx == 0x33) && dj.Fpxx.isRed) { string str4 = this.CheckDZRed(dj); if (str4 != "") { flag = false; object[] objArray2 = new object[] { base.TaxCardInstance.TaxClock.ToString("yyyy-MM-dd HH:mm:ss"), this.mDjh, 0, str4 }; KpResult = string.Format("[{0}] 单据号:{1},开具结果:{2},开具失败原因:{3}", objArray2); returncode = "0001"; returnmsg = str4; this.backgroundWorker1.ReportProgress(15, null); } else { this.TKfpxx(dj); if (this.SuccessKp()) { list.Add(this.mDjh); } flag = true; } } else { this.TKfpxx(dj); if (this.SuccessKp()) { list.Add(this.mDjh); } flag = true; } if ((int)this.fplx == 0x33) { XmlNode node = doc.CreateElement("RESPONSE_COMMON_FPKJ"); bus.AppendChild(node); XmlElement element = doc.CreateElement("FPQQLSH"); if ((this.mDjh != null) && (this.mDjh != "")) { element.InnerText = this.mDjh; } node.AppendChild(element); XmlElement element2 = doc.CreateElement("JQBH"); if ((jqbh != null) && (jqbh != "")) { element2.InnerText = jqbh; } node.AppendChild(element2); XmlElement element3 = doc.CreateElement("FP_DM"); if ((fp_dm != null) && (fp_dm != "")) { element3.InnerText = fp_dm; } node.AppendChild(element3); XmlElement element4 = doc.CreateElement("FP_HM"); if ((fp_hm != null) && (fp_hm != "")) { element4.InnerText = fp_hm; } node.AppendChild(element4); XmlElement element5 = doc.CreateElement("KPRQ"); if ((kprq != "") && (kprq != null)) { DateTime time2 = Convert.ToDateTime(kprq); kprq = string.Format("{0:yyyyMMddHHmmss}", time2); element5.InnerText = kprq; } node.AppendChild(element5); XmlElement element6 = doc.CreateElement("FP_MW"); if ((fp_mw != null) && (fp_mw != "")) { element6.InnerText = fp_mw; } node.AppendChild(element6); XmlElement element7 = doc.CreateElement("JYM"); if ((jym != null) && (jym != "")) { element7.InnerText = jym; } node.AppendChild(element7); XmlElement element8 = doc.CreateElement("EWM"); if ((ewm != null) && (ewm != "")) { element8.InnerText = ewm; } node.AppendChild(element8); XmlElement element9 = doc.CreateElement("BZ"); if ((bz != null) && (bz != "")) { element9.InnerText = bz; } node.AppendChild(element9); XmlElement element10 = doc.CreateElement("RETURNCODE"); element10.InnerText = returncode; node.AppendChild(element10); XmlElement element11 = doc.CreateElement("RETURNMSG"); element11.InnerText = KpResult; node.AppendChild(element11); } else { writer.WriteLine(KpResult); } Thread.Sleep(500); if (ErrorExist) { this.CloseFile(str, bfFile); break; } if (this.backgroundWorker1.CancellationPending) { this.CloseFile(str, bfFile); this.interrupted = true; e.Cancel = true; break; } if (flag && (i != (list2.Count - 1))) { Thread.Sleep(0x2710); } Thread.Sleep(500); } if ((int)this.fplx == 0x33) { doc.Save(this.hxPath + @"\" + this.hxFileNamexml); } else { writer.Close(); writer.Dispose(); } File.Copy(str, bfFile, true); File.Delete(str); Thread.Sleep(200); } }