/// <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);
                }
            }
        }
예제 #2
0
        /// <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);
        }