Beispiel #1
0
        //校验管理员密码
        public static MJson checkPsw(string psw)
        {
            Log.AddLog("TEST", psw);
            DeviceLogin();
            if (deviceLoginError != null)
            {
                return(ErrorMJ(deviceLoginError));
            }
            Log.AddLog("TEST", "1");
            //if (mjError != null)
            //{
            //    Log.AddLog("TEST", mjError.error);
            //    return mjError;
            //}

            NullToEmpty(ref psw);
            Log.AddLog("TEST", "11");
            if (isDemo())
            {
                return(null);
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["userID"]   = deviceID;
            kv["userName"] = deviceID;
            kv["password"] = psw;
            Log.AddLog("TEST", "2");
            MJson mj = getResult(kv, "UserLogin");

            return(mj);
        }
        public static bool checkIn(out string error)
        {
            error = null;
            Parameter.clear();
            Parameter.add("channelcode", iniFile.IniReadValue("USER", "CHANNELCODE"));
            Parameter.add("username", iniFile.IniReadValue("USER", "PROVINCEUSER"));
            Parameter.add("password", iniFile.IniReadValue("USER", "PROVINCEPWD"));

            string        url    = baseHttp + "/iface/user/checkLogin";
            Common        c      = new Common();
            Uri           uri    = new Uri(url);
            StringBuilder inData = Parameter.get();

            try
            {
                string jsonStr = c.RetrunJSONValueByHttps(uri, inData, ref error).ToString();
                MJson  json    = new MJson(jsonStr);

                if (json["statusCode"].ToString() == "200")
                {
                    token = json["data"].ToString();
                    return(true);
                }
                else
                {
                    error = json["message"].ToString();
                    return(false);
                }
            }
            catch (Exception e)
            {
                error = "登陆失败:请重试!";
                return(false);
            }
        }
Beispiel #3
0
        //查询所有制卡信息
        public static MJson getAllCarMakeCarMsg(string startdate, string enddate, string idno)
        {
            MJson mjError = hadLogin();

            if (mjError != null)
            {
                return(mjError);
            }
            NullToEmpty(ref startdate);
            NullToEmpty(ref enddate);
            NullToEmpty(ref idno);
            if (isDemo())
            {
                return(null);
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["startdate"] = startdate;
            kv["enddate"]   = enddate;
            kv["idno"]      = idno;
            kv["userID"]    = deviceID;
            kv["token"]     = "";
            MJson mj = getResult(kv, "GetAllRecord");

            return(mj);
        }
Beispiel #4
0
        //查询制卡数据
        public static MJson getUserData(string idcar, string name, string qrcode, string bankNo)
        {
            if (isDemo())
            {
                return(null);
            }
            NullToEmpty(ref idcar);
            NullToEmpty(ref name);
            NullToEmpty(ref qrcode);
            if ((idcar == "" || name == "") && qrcode == "")
            {
                Log.AddLog("NetData", "getUserData:身份证和二维码信息都为空");
                return(ErrorMJ("身份证和二维码信息都为空"));
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["deviceID"] = deviceID;
            kv["idcard"]   = idcar;
            kv["name"]     = name;
            kv["qrcode"]   = qrcode;
            kv["bankno"]   = bankNo;
            kv["cjwdno"]   = wdno;
            MJson mj = getResult(kv, "GetUerCardData");

            return(mj);
        }
Beispiel #5
0
        //回盘
        public static MJson dataReport(Dictionary <string, string> dic)
        {
            if (isDemo())
            {
                return(null);
            }
            MJson mj = getResult(dic, "DataReport");

            return(mj);
        }
Beispiel #6
0
        //上传
        public static MJson updateRecord(Dictionary <string, string> dic)
        {
            if (isDemo())
            {
                return(null);
            }
            dic.Add("deviceID", deviceID);
            MJson mj = getResult(dic, "UpdateRecord");

            return(mj);
        }
Beispiel #7
0
        public static MJson UpdateRecord(Dictionary <string, string> ins)
        {
            if (isDemo())
            {
                return(null);
            }
            if (ins == null || ins.Count == 0)
            {
                return(ErrorMJ("错误的入参"));
            }
            MJson mj = getResult(ins, "UpdateRecord");

            return(mj);
        }
Beispiel #8
0
        //查询成品卡信息
        public static MJson searchCarMsg(string persion, string name)
        {
            NullToEmpty(ref persion);
            NullToEmpty(ref name);
            if (isDemo())
            {
                return(null);
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["deviceID"] = deviceID;
            kv["idcard"]   = persion;
            kv["name"]     = name;
            MJson mj = getResult(kv, "GetCardInfoCP");

            return(mj);
        }
Beispiel #9
0
        //其他///////////////////////////////////////
        private static MJson getResult(Dictionary <string, string> kv, string urlKey)
        {
            MJson mjError = hadLogin();

            Log.AddLog("TEST", "3");
            if (mjError != null)
            {
                return(mjError);
            }
            string error = null;
            MJson  mj    = NetHandle.Post(kv, urlKey, out error);

            if (error != null)
            {
                return(ErrorMJ(error));
            }
            return(mj);
        }
Beispiel #10
0
        //用户登录
        public static MJson UserLogin(string userID, string userName, string password)
        {
            NullToEmpty(ref userID);
            NullToEmpty(ref userName);
            NullToEmpty(ref password);
            if (isDemo())
            {
                return(null);
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["userID"]   = userID;
            kv["userName"] = userName;
            kv["password"] = password;
            MJson mj = getResult(kv, "UserLogin");

            return(mj);
        }
Beispiel #11
0
        //上传发卡信息
        private static void UpdateRecord_Test()
        {
            Dictionary <string, string> ins = new Dictionary <string, string>();

            ins["deviceID"]  = "000001";
            ins["idcard"]    = "412201199004126586";
            ins["name"]      = "张三";
            ins["atr"]       = "atr";
            ins["ksbm"]      = "ksbm";
            ins["batchno"]   = "batchno";
            ins["status"]    = "status";
            ins["discrip"]   = "discrip";
            ins["time"]      = "time";
            ins["cardtype"]  = "cardtype";
            ins["applytype"] = "applytype";
            ins["signature"] = "signature";
            MJson mj = UpdateRecord(ins);
        }
Beispiel #12
0
        //查询成品卡库
        public static MJson getCPCarMsg(string idcar, string name)
        {
            NullToEmpty(ref idcar);
            NullToEmpty(ref name);
            if (idcar == "" || name == "")
            {
                Log.AddLog("NetData", "getCPCarMsg:身份证信息为空");
                return(ErrorMJ("身份证信息为空"));
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["deviceID"] = deviceID;
            kv["idcard"]   = idcar;
            kv["name"]     = name;
            MJson mj = getResult(kv, "GetCardInfoCP");

            return(mj);
        }
Beispiel #13
0
        public static async Task <IRestResponse <JObject> > GetRoute(string from, string to)
        {
            var city      = "Днепр";
            var locations = new JArray(getLocation(city, from), getLocation(city, to));
            //var locations = new JArray(from, to);
            var options = new MJson().Add("unit", "k").Add("locale", "ru_RU").ToString();

            var request = new Dictionary <string, string> {
                { "key", Resources.MAPQUEST_API_KEY },
                { "json", new MJson().Add("locations", locations).ToString() },
                { "options", options },
            };

            //var response = instance.SendRequestMQuest(Resources.UPL_MAPQUEST_API, request, null);

            //var param = new Dictionary<string, string> {
            //    { "key", Resources.MAPQUEST_API_KEY },
            //    { "key", Resources.MAPQUEST_API_KEY },
            //};
            return(await instance.SendRequestMQuest <JObject>(Resources.API_MQUEST_OPTIMROUT, Method.GET, request, null));

            //return JObject.Parse(res.Content);
        }
Beispiel #14
0
        //上传成品卡信息
        public static MJson updateCarMsg(string atr, string ksbm, string persionid, string name, string ch)
        {
            NullToEmpty(ref atr);
            NullToEmpty(ref ksbm);
            NullToEmpty(ref persionid);
            NullToEmpty(ref name);
            NullToEmpty(ref ch);
            if (isDemo())
            {
                return(null);
            }
            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["deviceID"] = deviceID;
            kv["atr"]      = atr;
            kv["ksbm"]     = ksbm;
            kv["shbzh"]    = persionid;
            kv["xm"]       = name;
            kv["slotno"]   = ch;
            MJson mj = getResult(kv, "UpdateCardInfoCP");

            return(mj);
        }
        public static bool checkIn(out string error)
        {
            error = null;

            Parameter.clear();
            Parameter.add("channelcode", Config.net_dic("channelcode"));
            Parameter.add("username", Config.net_dic("username"));
            Parameter.add("password", Config.net_dic("password"));

            string        url    = Config.net_dic("httpBase") + Config.net_dic("checkLogin");
            Common        c      = new Common();
            Uri           uri    = new Uri(url);
            StringBuilder inData = Parameter.get();

            try
            {
                Log.AddLog("POST", "URL:" + url);
                Log.AddLog("POST", "ARG:" + inData.ToString());
                string jsonStr = c.RetrunJSONValueByHttps(uri, inData, ref error);
                if (error != null)
                {
                    jsonStr = c.RetrunJSONValueByHttps(uri, inData, ref error);
                }
                if (error != null)
                {
                    error = "POST Error:" + error;
                    Log.AddLog("POST", error);
                    token = null;
                    return(false);
                }
                else if (jsonStr == null)
                {
                    error = "ReturnError:接口返回了null";
                    Log.AddLog("POST", error);
                    token = null;
                    return(false);
                }
                else
                {
                    Log.AddLog("POST", "Result:" + jsonStr);
                    MJson mJson = new MJson(jsonStr);
                    if (mJson["statusCode"].ToString() == "200")
                    {
                        token = mJson["data"].ToString();
                        t1    = new TimeSpan(DateTime.Now.Ticks);
                        return(true);
                    }
                    else
                    {
                        error = mJson["message"].ToString();
                        token = null;
                        return(false);
                    }
                }
            }
            catch (Exception e)
            {
                if (error == null)
                {
                    error = "POST Throw Error:" + e.ToString();
                    Log.AddLog("POST", error);
                }
                token = null;
                return(false);
            }
        }
Beispiel #16
0
        //设备登陆
        public static void DeviceLogin()
        {
            if (isDemo() || isTryingLogin)
            {
                return;
            }
            isTryingLogin = true;

            string deviceIP      = null;
            string deviceMAC     = null;
            string hardver       = null;
            string softver       = null;
            string status        = null;
            bool   isUseTestData = Config.net_dic("IsUseTestData") == "1";

            if (isUseTestData)
            {
                deviceIP  = Config.net_dic("deviceIP");
                deviceMAC = Config.net_dic("deviceMAC");
                hardver   = Config.net_dic("hardver");
                softver   = Config.net_dic("softver");
                status    = Config.net_dic("status");
            }
            else
            {
            }

            Dictionary <string, string> kv = new Dictionary <string, string>();

            kv["deviceIP"]  = deviceIP;
            kv["deviceMAC"] = deviceMAC;
            kv["hardver"]   = hardver;
            kv["softver"]   = softver;
            kv["status"]    = status;
            string error = null;

            //test
            //return;
            MJson mj = NetHandle.Post(kv, "DeviceLogin", out error);

            if (error != null)
            {
                deviceLoginError = error;
                TipWin.showTip(error, 5000, null);
            }
            else
            {
                deviceLoginError = null;
                deviceID         = mj["data"]["deviceID"].ToString();
                wdno             = mj["data"]["wdno"].ToString();
                wdmc             = mj["data"]["wdmc"].ToString();
            }
            isTryingLogin = false;
            loginTP.resetTime(6000);
            if (deviceID != null && deviceID != "")
            {
                loginTP.stop();
            }
            ////////////[TEST]///////////////////////
            //MJson ret0 = UserLogin("100001", "userName", "password");
            //MJson ret1 = getCPCarMsg("412201199004126586", "张三");
            //UpdateRecord_Test();

            /////////////////////////////////////////
        }
        public static string toWriteCar(string password, string SSSEEF05, string SSSEEF06, Dictionary <string, string> inData2, string picName)
        {
            string error0 = "";

            getART(out error0);
            //读卡
            Loading.updateTip("正在读卡信息");
            Log.AddLog(log, "正在读卡信息");
            StringBuilder pOut  = new StringBuilder(1024);
            int           ret50 = iReadCardBas(1, pOut);

            if (ret50 != 0)
            {
                ret50 = iReadCardBas(1, pOut);
                if (ret50 != 0)
                {
                    ret50 = iReadCardBas(1, pOut);
                    if (ret50 != 0)
                    {
                        Log.AddLog(log, "读卡信息失败:" + pOut.ToString());
                        return("读卡信息失败:" + pOut.ToString());
                    }
                }
            }
            Log.AddLog(log, "卡信息:" + pOut);
            CD.makeCarDic["deviceID"] = NetData.deviceID;
            //卡识别码、卡类别、规范版本、初始化机构编号、发卡日期、卡有效期、卡号、社会保障号码、姓名、性别、民族、出生地、出生日期
            ////0         1       2         3               4         5         6     7             8     9     10    11      12
            string[] array0 = pOut.ToString().Split('|');


            pictureName = picName;// ReadIDCar.persionid + "_" + System.DateTime.Now.ToString("YYYYMMddHHmmss") + "_replacecard";
            //string[] hopperNos = new string[] { "1", "2", "3", "4", "5", "6" };
            //int ret = 0;
            //Log.AddLog(log, "停止+复位");
            //Loading.updateTip("正在重置硬件状态...");
            //reset();
            ////1.料盒发卡
            //Log.AddLog(log, "准备从料盒发卡");
            //Loading.updateTip("准备从料盒发卡");
            //for (int i = 0; i < hopperNos.Length; i++)
            //{
            //    Log.AddLog(log, "尝试从料盒" + hopperNos[i] + "发卡");
            //    ret = iTranseDevputCardIn(handle, int.Parse(hopperNos[i]), 30);
            //    Log.AddLog(log, "尝试结果:" + ret);
            //    if (ret == 0)
            //        break;
            //}
            //if (ret != 0)
            //    return "准备从料盒发卡失败:" + getNowError();
            ///////////////////////////////////////////
            Log.AddLog(log, "组合数据:");
            StringBuilder data1 = new StringBuilder(1024);
            StringBuilder data2 = new StringBuilder(1024);

            string[] ssse_ef05      = SSSEEF05.Split(',');
            string[] ssse_ef06      = SSSEEF06.Split(',');
            string[] ssse_ef05Names = new string[] { "01", "02", "03", "04", "05", "06", "07" };
            string[] ssse_ef06Names = new string[] { "08", "09", "4E", "0A", "0B", "0C", "0D" };
            int      index          = 0;
            bool     hasAddName     = false;

            foreach (string str in ssse_ef05)
            {
                if (str != "")
                {
                    if (hasAddName == false)
                    {
                        hasAddName = true;
                        data1.Append("SSSEEF05|");
                        data2.Append("SSSEEF05|");
                    }
                    data1.Append(ssse_ef05Names[index] + "|");
                    data2.Append(str + "|");
                }
                index++;
            }
            if (hasAddName)
            {
                data1.Append("$");
                data2.Append("$");
            }
            index      = 0;
            hasAddName = false;
            foreach (string str in ssse_ef06)
            {
                if (str != "")
                {
                    if (hasAddName == false)
                    {
                        hasAddName = true;
                        data1.Append("SSSEEF06|");
                        data2.Append("SSSEEF06|");
                    }
                    data1.Append(ssse_ef06Names[index] + "|");
                    data2.Append(str + "|");
                }
                index++;
            }
            if (hasAddName)
            {
                data1.Append("$");
                data2.Append("$");
            }
            Log.AddLog(log, "参数2:" + data1.ToString());
            Log.AddLog(log, "参数3:" + data2.ToString());
            ///////////////////////////////////////////
            Loading.updateTip("正在写卡");
            Log.AddLog(log, "正在写卡");
            StringBuilder pOutInfo = new StringBuilder(1024);
            string        data1_   = data1.ToString();
            string        data2_   = data2.ToString();

            System.DateTime beforDT = System.DateTime.Now;
            int             ret1    = iRepairCard(1, data1_, data2_, pOutInfo);

            if (ret1 != 0)
            {
                Log.AddLog(log, "第一次失败,即将尝试第二次,错误信息:" + pOutInfo.ToString());
                ret1 = iRepairCard(1, data1_, data2_, pOutInfo);
                if (ret1 != 0)
                {
                    Log.AddLog(log, "第二次失败,即将尝试第三次,错误信息:" + pOutInfo.ToString());
                    ret1 = iRepairCard(1, data1_, data2_, pOutInfo);
                    if (ret1 != 0)
                    {
                        Log.AddLog(log, "尝试3次写入内容失败,错误信息:" + pOutInfo.ToString());
                        return("尝试3次写入内容失败" + pOutInfo.ToString());
                    }
                }
            }
            System.DateTime afterDT = System.DateTime.Now;
            TimeSpan        ts      = afterDT.Subtract(beforDT);

            Log.AddLog(log, "写入花费时间:" + ts.TotalSeconds + "秒");
            Console.WriteLine("DateTime总共花费{0}ms.", ts.TotalMilliseconds);
            ///////////////////////////////////////////
            Loading.updateTip("正在校验写入结果");
            Log.AddLog(log, "正在校验写入结果");
            StringBuilder readData = new StringBuilder(1024);

            beforDT = System.DateTime.Now;
            int ret2 = iReadCard(1, 0, null, data1_, readData);

            afterDT = System.DateTime.Now;
            ts      = afterDT.Subtract(beforDT);
            Log.AddLog(log, "校验花费时间:" + ts.TotalSeconds + "秒");
            if (ret2 != 0)
            {
                return("校验写入结果失败:" + readData);
            }
            Log.AddLog(log, "读出结果:" + readData);
            if (data2_ != readData.ToString())
            {
                return("校验失败:读出内容与写入内容不一致");
            }
            else
            {
                //修改密码
                if (password != null && password != "")
                {
                    Loading.updateTip("正在设置密码");
                    Log.AddLog(log, "正在设置密码");
                    pOutInfo.Clear();
                    int ret4 = iChangePINK(1, "123456", password, pOutInfo);
                    if (ret4 != 0)
                    {
                        Log.AddLog(log, "修改密码失败:" + pOutInfo.ToString());
                        return("修改密码失败:" + pOutInfo.ToString());
                    }
                    Log.AddLog(log, "修改密码完成");
                }
                //读卡
                Loading.updateTip("正在读卡信息");
                Log.AddLog(log, "正在读卡信息");
                pOutInfo.Clear();
                int ret5 = iReadCardBas(1, pOutInfo);
                if (ret5 != 0)
                {
                    Log.AddLog(log, "读卡信息失败:" + pOutInfo.ToString());
                    return("读卡信息失败:" + pOutInfo.ToString());
                }
                Log.AddLog(log, "卡信息:" + pOutInfo);
                CD.makeCarDic["deviceID"] = NetData.deviceID;
                //卡识别码、卡类别、规范版本、初始化机构编号、发卡日期、卡有效期、卡号、社会保障号码、姓名、性别、民族、出生地、出生日期
                ////0         1       2         3               4         5         6     7             8     9     10    11      12
                string[] array = pOutInfo.ToString().Split('|');
                //CD.makeCarDic["idcard"] = array[7];
                //CD.makeCarDic["name"] = array[8];
                //CD.makeCarDic["ksbm"] = array[0];
                //CD.makeCarDic["time"] = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                //CD.makeCarDic["cardtype"] = "0";
                //CD.makeCarDic["signature"] = "";// ImgToBase64String(CD.getBasePath() + "Autograph.bmp");
                //读ATR
                string outError = null;
                string atr      = getART(out outError);
                if (outError != null)
                {
                    Loading.updateTip("读读ATR失败:" + outError);
                    return(outError);
                }
                //读银行卡号
                StringBuilder outError2 = new StringBuilder(1024);
                int           re        = iReadBankNum(1, outError2);
                if (re != 0)
                {
                    Loading.updateTip("读取银行卡号失败:" + outError2.ToString());
                }

                //回盘
                inData2["replacecardNo"] = array0[6];
                inData2["atr"]           = atr.Substring(8, atr.Length - 8);
                inData2["ksbm"]          = array[0];
                inData2["failType"]      = "";          //失败环节
                inData2["failReason"]    = "";          //失败原因(50字节内)
                inData2["photoUrl"]      = pictureName; //照片路径
                inData2["bankAccount"]   = outError2.ToString();
                inData2["cardid"]        = array[6];
                Loading.updateTip("正在回盘");
                Log.AddLog(log, "正在回盘");
                MJson hp = Network2.Post(inData2, "replyCardInfo");
                if (hp.error != null)
                {
                    return("回盘失败:" + hp.error);
                }
                else if (hp["statusCode"].ToString() != "200")
                {
                    return("回盘失败:" + hp["message"].ToString());
                }



                //string moreError = "";
                //Loading.updateTip("正在回盘");
                //Log.AddLog(log, "正在回盘");
                //Dictionary<string, string> dic = new Dictionary<string, string>();
                //dic["deviceID"] = CD.makeCarDic["deviceID"];
                //dic["idcard"] = CD.makeCarDic["idcard"];
                //dic["name"] = CD.makeCarDic["name"];
                //dic["atr"] = CD.makeCarDic["atr"];
                //dic["ksbm"] = CD.makeCarDic["ksbm"];
                //dic["batchno"] = CD.makeCarDic["batchno"];
                //MJson mj2 = NetData.dataReport(dic);
                //if(mj2.error != null && mj2.error != "")
                //{
                //    Loading.updateTip("回盘失败");
                //    Log.AddLog(log, "回盘失败");
                //    CD.makeCarDic["status"] = "2";
                //    CD.makeCarDic["discrip"] = mj2.error;
                //    moreError = "回盘失败:" + mj2.error;
                //}
                //else
                //{
                //    CD.makeCarDic["status"] = "1";
                //    CD.makeCarDic["discrip"] = "回盘成功";
                //}
                ////上传
                //Loading.updateTip("正在上传数据");
                //Log.AddLog(log, "正在上传数据");
                //MJson mj3 = NetData.updateRecord(CD.makeCarDic);
                //if (mj3.error != null && mj3.error != "")
                //{
                //    Loading.updateTip("上传数据失败");
                //    Log.AddLog(log, "上传数据失败");
                //    moreError += "|上传数据失败:" + mj3.error;
                //}
                //if (moreError != "")
                //    return moreError;



                int ret3 = iTranseDevExportSendCard(handle, 30);
                if (ret3 != 0)
                {
                    return("写卡成功,但是出卡失败!");
                }
            }
            return(null);
        }