Card.SiDaTe.WriteGasCard C# (CSharp) Метод

WriteGasCard() публичный Метод

写卡(即购气或冲正)
public WriteGasCard ( short com, int baud, string &kmm, string kh, string dqdm, int ql, int csql, int ccsql, short cs, int ljgql, int bjql, int czsx, int tzed, string sqrq, string cssqrq, int oldprice, int newprice, string sxrq, string sxbj ) : int
com short 串口号,从0开始
baud int 波特率
kmm string 卡密码,写卡后返回新密码(未用,可以随便传个值)
kh string 设备编号,10位字符
dqdm string 地区代码,从气表管理里取(未用)
ql int 气量
csql int 上次购气量,有些表需要传(未用)
ccsql int 上上次购气量,有些表需要传(未用)
cs short 购气次数
ljgql int 当前表累计购气量(未用)
bjql int 报警气量
czsx int 充值上限,可以在气表管理中设置(未用)
tzed int 透支额度,可以在气表管理中设置(未用)
sqrq string 售气日期,格式为YYYYMMDD(未用)
cssqrq string 上次售气日期,格式为YYYYMMDD(未用)
oldprice int 旧单价,价格管理中取(未用)
newprice int 新单价,价格管理中取(未用)
sxrq string 生效日期,价格管理中取(未用)
sxbj string 生效标记,0不生效,1生效,价格管理中取(未用)
Результат int
        public int WriteGasCard(short com, int baud, ref string kmm, string kh, string dqdm, int ql, int csql, int ccsql, short cs, int ljgql, int bjql, int czsx, int tzed, string sqrq, string cssqrq, int oldprice, int newprice, string sxrq, string sxbj)
        {
            Log.Debug("com:" + com + "," + "baud:" + baud + "," + "kmm:" + kmm + "," +
                      "kh:" + kh + "," + "dqdm:" + dqdm + "," + "ql:" + ql + "," +
                      "csql:" + csql + "," + "ccsql:" + ccsql + "," + "cs:" + cs + "," +
                      "ljgql:" + ljgql + "," + "bjql:" + bjql + "," + "czsx:" + czsx + "," +
                      "tzed:" + tzed + "," + "sqrq:" + sqrq + "," + "cssqrq:" + cssqrq + "," +
                      "oldprice:" + oldprice + "," + "newprice:" + newprice + "," + "sxrq:" + sxrq + "," + "sxbj" + sxbj);
            int icdev = auto_init(com, (UInt32)baud);  //打开设备
            if (icdev <= 0)
            {
                return -10;
            }
            StringBuilder sMeterNo = new StringBuilder(kh);
            StringBuilder sPriceSetTime = new StringBuilder(sxrq);
            double dSumofCharge = (double)(ljgql);
            double dCurrPrice = (double)oldprice;
            double dSetPrice = (double)newprice;
            double dAlarmMoney = (double)bjql;
            double dMaxOverMoney = 0;
            Int16 BuyTimes = 0;
            Int16 DevT = Convert.ToInt16(dqdm);
            int ret = DoSellGas2(icdev, sMeterNo, dSumofCharge, BuyTimes, DevT, dCurrPrice, dSetPrice, sPriceSetTime, dAlarmMoney, dMaxOverMoney);
            kh = sMeterNo.ToString();
            ljgql = Convert.ToInt32(dSumofCharge);
            cs = BuyTimes;
            oldprice = Convert.ToInt32(dCurrPrice);
            newprice = Convert.ToInt32(dSetPrice);
            sxrq = sPriceSetTime.ToString();
            bjql = Convert.ToInt32(dAlarmMoney);       
            Log.Debug("com:" + com + "," + "baud:" + baud + "," + "kmm:" + kmm + "," +
                     "kh:" + kh + "," + "dqdm:" + dqdm + "," + "ql:" + ql + "," +
                     "csql:" + csql + "," + "ccsql:" + ccsql + "," + "cs:" + cs + "," +
                     "ljgql:" + ljgql + "," + "bjql:" + bjql + "," + "czsx:" + czsx + "," +
                     "tzed:" + tzed + "," + "sqrq:" + sqrq + "," + "cssqrq:" + cssqrq + "," +
                     "oldprice:" + oldprice + "," + "newprice:" + newprice + "," + "sxrq:" + sxrq + "," + "sxbj" + sxbj);
            ic_exit(icdev);
            return ret;
        }