Exemplo n.º 1
0
        private string GetLoaninfoXml(hmdshz item)
        {
            //返回的LoaninfoXML字符串
            string resultxml = string.Empty;

            //代收XML文件头模板
            string LoaninfoXmlHead = "<?xml version =\"1.0\" encoding = \"utf-8\" ?><message><field-table name = \"loaninfo\">{0}</field-table></message>";
            //代收XML文件行模板
            string LoaninfoXmlRow = "<field-row name = \"{0}\">{1}</field-row>";
            //代收XML文件行数据模板
            string LoaninfoXml = "<field name = \"loan_code\">{0}</field><field name = \"loan_date\">{1}</field><field name = \"get_cardnum\">{2}</field><field name = \"goods_money\">{3}</field><field name = \"loan_gain\">{4}</field><field name = \"loan_money\">{5}</field><field name = \"ticket_cnt\">{6}</field><field name = \"receive_code\">{7}</field><field name = \"transit_code\">{8}</field><field name = \"group_code\">{9}</field><field name = \"bank\">{10}</field><field name = \"get_people\">{11}</field>";

            int    row            = 0;
            string rowtempxml     = "";
            string rowdatatempxml = String.Format(LoaninfoXml,
                                                  item.结算单号.ToString().Trim(),
                                                  item.放款时间.ToString().Trim(),
                                                  item.银行卡号.ToString().Trim(),
                                                  item.实收货款.ToString().Trim(),
                                                  item.放款手续费.ToString().Trim(),
                                                  item.始发代收货款.ToString().Trim(),
                                                  item.放款票据份数.ToString().Trim(),
                                                  item.收货编号集合.ToString().Trim(),
                                                  item.物流公司编号.ToString().Trim(),
                                                  item.放款站点编号.ToString().Trim(),
                                                  item.放款银行编号.ToString().Trim(),
                                                  item.持卡人姓名.ToString().Trim());

            rowtempxml = rowtempxml + String.Format(LoaninfoXmlRow, row.ToString().Trim(), rowdatatempxml);
            string tempxml = String.Format(LoaninfoXmlHead, rowtempxml);

            return(resultxml);
        }
Exemplo n.º 2
0
        private string GetReceiveinfoXml(hmdshz item)
        {
            //返回的XML字符串
            string resultxml = string.Empty;

            //校验汇款单据中的运单
            VaildReceive(item);
            List <sothm> sothmlist = Tools.StringDanHaoToDataDanhaoList(item.收货编号集合);

            resultxml = Tools.WriteReceiveinfoXml(sothmlist, 50);

            return(resultxml);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 检验汇款单据中的运单号
        /// 单张运单号不存在删除汇款单
        /// 多张运单号不存在修改相关汇款单内容
        /// </summary>
        /// <param name="item">汇款单据对象</param>
        private void VaildReceive(hmdshz item)
        {
            //经过检测的运单数量
            int count = 0;
            //经过检测运单号列表
            List <string> danhaolist = new List <string>();
            //经过检测的实际代收款金额
            Decimal JinE = 0.00M;

            //开始检验运单号
            List <string> templist = new List <string>();

            templist.AddRange(item.收货编号集合.Trim().Split(",".ToCharArray()));
            //循环校验运单列表,并修改中间变量
            foreach (string danhao in templist)
            {
                var dj = newsot.sothms.Find(Convert.ToInt64(danhao));
                if (dj != null)
                {
                    count++;
                    danhaolist.Add(danhao);
                    JinE += Convert.ToDecimal(dj.代收金额);
                }
            }

            if (count == 0)
            {
                //有效运单数量为零
                hmdshz dada = newsot.hmdshzs.Find(item.id);
                //删除汇款单据
                newsot.hmdshzs.Remove(dada);
                //数据库保存
                newsot.SaveChanges();
            }
            else if (item.放款票据份数 != count)
            {
                //有效单据数量与汇款单中的运单数量不符,修改汇款单数据
                hmdshz dada = newsot.hmdshzs.Find(item.id);
                dada.放款票据份数 = count;
                dada.实收货款   = JinE;
                dada.始发代收货款 = JinE;
                dada.收货编号集合 = string.Join(",", danhaolist.ToArray());
                newsot.SaveChanges();
            }
        }