/// <summary> /// 产生对账明细 /// </summary> /// <param name="hb">行别</param> /// <param name="model">请求报文</param> /// <param name="outFileName">产生的对账文件</param> private void GenerateDuiZhangDetail(string hb, WtwyzzjcdzModel model, out string outFileName) { string fileName = ""; fileName += "11";//机构码 fileName += "G501"; fileName += "_W"; DateTime dt = new DateTime(); string strDate = dt.ToString("yyyyMMdd"); fileName += strDate; fileName += "."; fileName += "380910";//6位银行代号 outFileName = fileName; string filePath = BasicOperation.GetFilePath(hb) + fileName;//文件的完整路径 List <ZbmxzModel> list = db2Operation.GetZbmxzByJyrq(model.Qsrq, model.Zzrq); FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write); using (StreamWriter sw = new StreamWriter(fs, Encoding.GetEncoding("gb2312"))) { string summaryLine = string.Empty; summaryLine += model.Yhzh; summaryLine += ","; summaryLine += strDate; summaryLine += ","; summaryLine += model.Zje; summaryLine += ","; summaryLine += model.Zbs; summaryLine += ","; sw.WriteLine(summaryLine);//汇总行 } //明细行 for (int i = 1; i <= list.Count; i++) { string detailLine = string.Empty; detailLine += i.ToString(); detailLine += ","; detailLine += list[i].Jyrq; detailLine += ","; detailLine += list[i].Jysj; detailLine += ","; detailLine += BasicOperation.GenerateBatchCode("110000000", i);//批次号 detailLine += ","; detailLine += BasicOperation.GenerateName("李", i); detailLine += ","; detailLine += list[i].Zh; detailLine += ","; detailLine += list[i].Fse; detailLine += ","; detailLine += list[i].Yhls; //银行流水 detailLine += ","; detailLine += list[i].Jdbz; //记账标志 detailLine += ","; detailLine += list[i].Yhls; //备注中添写银行流水号 detailLine += ","; using (StreamWriter sw = new StreamWriter(filePath, true, Encoding.GetEncoding("gb2312"))) { sw.WriteLine(detailLine); } } }
/// <summary> /// 银行日记账对账--生成对账明细 /// </summary> /// <param name="whichBank">行别</param> /// <param name="transcationCode">交易码</param> /// <param name="bankCount">银行账号</param> /// <param name="qsrq">起始日期</param> /// <param name="zzrq">终止日期</param> /// <returns>对账文件名称</returns> private string GenetrateCountCheckingFile(string whichBank, string transcationCode, string bankCount, string qsrq, string zzrq) { string fileName = string.Empty; fileName += "YHDZ"; fileName += bankCount; fileName += "_"; fileName += qsrq; fileName += "_"; fileName += zzrq; //详细文件内容 List <ZbmxzModel> list = db2Operation.GetZbmxzByJyrq(model.Qsrq, model.Zzrq); string filePath = BasicOperation.GetFilePath(whichBank) + fileName;//文件的完整路径 FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write); //明细行 for (int i = 1; i <= list.Count; i++) { string detailLine = string.Empty; detailLine += "M"; detailLine += "~"; detailLine += "杭州住房公积金管理中心萧山分中心";//账户名称,需要修改 detailLine += "~"; detailLine += list[i].Zh; detailLine += "~"; detailLine += list[i].Yhls; detailLine += "~"; detailLine += list[i].Pjhm; detailLine += "~"; detailLine += list[i].Jyrq; detailLine += "~"; detailLine += list[i].Jysj; detailLine += "~"; detailLine += "划款";//摘要 detailLine += "~"; detailLine += list[i].Jdbz; detailLine += "~"; detailLine += list[i].Fse; detailLine += "~"; detailLine += list[i].Ye; detailLine += "~"; detailLine += list[i].Dfhm; detailLine += "~"; detailLine += list[i].Dfzh; detailLine += "~"; using (StreamWriter sw = new StreamWriter(filePath, true, Encoding.GetEncoding("gb2312"))) { sw.WriteLine(detailLine); } //汇总行 using (StreamWriter sw = new StreamWriter(fs, Encoding.GetEncoding("gb2312"))) { string summaryLine = string.Empty; summaryLine += "H"; summaryLine += "~"; summaryLine += Encoding.Default.GetString(modelMsg.Hzjfbs); //借方笔数 summaryLine += "~"; summaryLine += Encoding.Default.GetString(modelMsg.Hzjffsz); //借方发生额 summaryLine += "~"; summaryLine += Encoding.Default.GetString(modelMsg.Hzdfbs); //贷方笔数 summaryLine += "~"; summaryLine += Encoding.Default.GetString(modelMsg.Hzdffse); //贷方发生额 summaryLine += "~"; summaryLine += "435654"; //余额 summaryLine += "~"; sw.WriteLine(summaryLine); //汇总行 } } return(fileName); }