Exemple #1
0
        public static DataSet UserLogin(LoginInput loginO, string currAccDbName, string IPStr)
        {
            Dictionary <string, ParamObj> dic = new Dictionary <string, ParamObj>();
            ParamObj paraO1 = new ParamObj();

            paraO1.name  = "land_name";
            paraO1.size  = 40;
            paraO1.type  = SysDbType.VarChar;
            paraO1.value = loginO.username;
            ParamObj paraO2 = new ParamObj();

            paraO2.name  = "password";
            paraO2.size  = 40;
            paraO2.type  = SysDbType.VarChar;
            paraO2.value = loginO.pwd;
            ParamObj paraO3 = new ParamObj();

            paraO3.name  = "login_time";
            paraO3.type  = SysDbType.BigInt;
            paraO3.value = System.DateTime.Now.ToUniversalTime().Ticks;
            ParamObj paraO4 = new ParamObj();

            paraO4.name  = "computer_ip";
            paraO4.size  = 40;
            paraO4.type  = SysDbType.VarChar;
            paraO4.value = IPStr;
            ParamObj paraO5 = new ParamObj();

            paraO5.name  = "computer_name";
            paraO5.size  = 40;
            paraO5.type  = SysDbType.NVarChar;
            paraO5.value = loginO.ComputerName;
            ParamObj paraO6 = new ParamObj();

            paraO6.name  = "computer_mac";
            paraO6.size  = 40;
            paraO6.type  = SysDbType.VarChar;
            paraO6.value = loginO.MAC;
            ParamObj paraO7 = new ParamObj();

            paraO7.name  = "login_Id";
            paraO7.size  = 40;
            paraO7.type  = SysDbType.VarChar;
            paraO7.value = loginO.Login_Id;
            dic.Add("land_name", paraO1);
            dic.Add("password", paraO2);
            dic.Add("login_time", paraO3);
            dic.Add("computer_ip", paraO4);
            dic.Add("computer_name", paraO5);
            dic.Add("computer_mac", paraO6);
            dic.Add("login_Id", paraO7);
            SQLObj sqlObj = new SQLObj();

            sqlObj.cmdType   = System.Data.CommandType.StoredProcedure;
            sqlObj.sqlString = "ServerUserLogin";
            sqlObj.Param     = dic;
            DataSet ds = DBHelper.GetDataSet("服务器端用户登录", currAccDbName, sqlObj);

            return(ds);
        }
Exemple #2
0
        /// <summary>
        /// 获取url上的所有附加参数
        /// </summary>
        /// <param name="index"></param>
        /// <returns></returns>
        public StringBuilder GetUrlParameterString(int index)
        {
            var param   = string.Format("?{0}={1}", PageIndexName, index);
            var urlText = new StringBuilder(param);

            if (!ParamObj.IsNullOrEmpty())
            {
                IDictionary <string, object> valueDictionary = null;
                if (ParamObj is IDictionary <string, object> )
                {
                    valueDictionary = ParamObj as IDictionary <string, object>;
                }
                else
                {
                    valueDictionary = HtmlHelper.AnonymousObjectToHtmlAttributes(ParamObj);
                }
                foreach (var key in valueDictionary.Keys)
                {
                    if (key.NewEquals(PageSizeName) || key.NewEquals(PageIndexName))
                    {
                        continue;
                    }
                    urlText.AppendFormat("&{0}={1}", key, valueDictionary[key]);
                }
            }
            return(urlText);
        }
Exemple #3
0
        void addObj(string NameParam, string ValueParam)
        {
            var recordParam = new ParamObj
            {
                ParamName   = NameParam,
                ParamSector = NameOfSector,
                ParamValue  = ValueParam
            };

            ParamList.Add(recordParam, NameOfSector);
        }
Exemple #4
0
        public long StartDownLoad(string fileUrl, string savePath, int totallength, bool highPriority = false, bool erase = false)
        {
            ParamObj param = new ParamObj()
            {
                taskId = currentTaskId, m_fileUrl = fileUrl, m_savePath = savePath, m_totalLength = totallength, m_highPriority = highPriority
            };

            if (highPriority)
            {
                tobeDownloadedParamsHighP.Enqueue(param);
            }
            else
            {
                tobeDownloadedParams.Enqueue(param);
            }

            currentTaskId++;
            return(currentTaskId - 1);
        }
Exemple #5
0
        public static string UserLogin(LoginInput loginInput, string currAccDbName, string IPStr, out DataSet ds)
        {
            string errMsg = "";

            ds = new DataSet();
            #region 验证用户
            string tempUserID = BLL.DBHelper.GetSingleValue("验证用户是否存在", currAccDbName, "sys_user", "user_id", " land_name='" + loginInput.username + "' and enable_flag=1 ", "");
            if (string.IsNullOrEmpty(tempUserID))
            {
                return("登陆录号不存在或被删除");
            }
            string status = BLL.DBHelper.GetSingleValue("验证用户是否存在", currAccDbName, "sys_user", "status", " enable_flag=1 and land_name='" + loginInput.username + "' and password='******'", "");
            if (string.IsNullOrEmpty(status))
            {
                return("登录密码不正确");
            }
            if (status != DataSources.EnumStatus.Start.ToString("d"))
            {
                return("登陆录号已被停用");
            }
            #endregion

            Dictionary <string, ParamObj> dic = new Dictionary <string, ParamObj>();
            ParamObj paraO1 = new ParamObj();
            paraO1.name  = "land_name";
            paraO1.size  = 40;
            paraO1.type  = SysDbType.VarChar;
            paraO1.value = loginInput.username;
            ParamObj paraO2 = new ParamObj();
            paraO2.name  = "password";
            paraO2.size  = 40;
            paraO2.type  = SysDbType.VarChar;
            paraO2.value = loginInput.pwd;
            ParamObj paraO3 = new ParamObj();
            paraO3.name  = "login_time";
            paraO3.type  = SysDbType.BigInt;
            paraO3.value = System.DateTime.Now.ToUniversalTime().Ticks;
            ParamObj paraO4 = new ParamObj();
            paraO4.name  = "computer_ip";
            paraO4.size  = 40;
            paraO4.type  = SysDbType.VarChar;
            paraO4.value = IPStr;
            ParamObj paraO5 = new ParamObj();
            paraO5.name  = "computer_name";
            paraO5.size  = 40;
            paraO5.type  = SysDbType.NVarChar;
            paraO5.value = loginInput.ComputerName;
            ParamObj paraO6 = new ParamObj();
            paraO6.name  = "computer_mac";
            paraO6.size  = 40;
            paraO6.type  = SysDbType.VarChar;
            paraO6.value = loginInput.MAC;
            ParamObj paraO7 = new ParamObj();
            paraO7.name  = "login_Id";
            paraO7.size  = 40;
            paraO7.type  = SysDbType.VarChar;
            paraO7.value = loginInput.Login_Id;
            dic.Add("land_name", paraO1);
            dic.Add("password", paraO2);
            dic.Add("login_time", paraO3);
            dic.Add("computer_ip", paraO4);
            dic.Add("computer_name", paraO5);
            dic.Add("computer_mac", paraO6);
            dic.Add("login_Id", paraO7);
            SQLObj sqlObj = new SQLObj();
            sqlObj.cmdType   = System.Data.CommandType.StoredProcedure;
            sqlObj.sqlString = "ServerUserLogin";
            sqlObj.Param     = dic;
            ds = DBHelper.GetDataSet("服务器端用户登录", currAccDbName, sqlObj);
            return(errMsg);
        }
Exemple #6
0
        public IActionResult Input(string CusID, string OrderInfo)
        {
            Console.WriteLine("CusID :" + CusID);
            Console.WriteLine("OrderInfo :" + OrderInfo);
            string exp = "";
            var    cus = CusID.Split('-')[0];

            Console.WriteLine("cus :" + cus);
            var loggedInUser = HttpContext.User;
            var user_name    = loggedInUser.Identity.Name;
            var user_id      = GetUserID(user_name);
            var taxid        = "";
            var erro_no      = "000000";

            string[]       trans   = OrderInfo.Split(';');
            DbFetchOutData outdata = new DbFetchOutData();
            Dictionary <string, string> param;
            string sqlText = "INSERT INTO transactions(TAX_ID, PROD_ID, CUST_ID, USER_ID, TIMESTAMP, UNIT_PRICE, UNIT_AMOUNT, UNIT_PAY, TRANSACTION, TRANSACTION_DESC, PROD_UNIT_PRICE, UNIT_PRE_AMOUNT) values(@TAX_ID, @PROD_ID, @CUST_ID, @USER_ID, @TIMESTAMP, @UNIT_PRICE, @UNIT_AMOUNT, @UNIT_PAY, @TRANSACTION, @TRANSACTION_DESC, @PROD_UNIT_PRICE, @UNIT_PRE_AMOUNT)";

            if (trans.Length > 0)
            {
                List <ParamObj> paramPro = new List <ParamObj>();
                ParamObj        par      = new ParamObj("outtax_id", "", DbType.String, ParameterDirection.Output);
                paramPro.Add(par);
                List <ResultObj> execPro = _da.ExecuteProcedure("ProcGenTax", paramPro, ref exp);
                if (exp != "000000")
                {
                    ViewBag.Error = exp;
                    return(View("ErrorPage"));
                }
                if (execPro != null)
                {
                    taxid = execPro[0].Value;
                    Console.WriteLine("taxid :" + taxid);
                }
                else
                {
                    erro_no = "900900";
                }
            }

            if (erro_no == "000000")
            {
                for (int i = 0; i < trans.Length; i++)
                {
                    var tran   = trans[i];
                    var fields = tran.Split('~');
                    param = new Dictionary <string, string>();
                    param.Add("TAX_ID", taxid);
                    param.Add("PROD_ID", fields[1]);
                    param.Add("CUST_ID", cus);
                    param.Add("USER_ID", user_id);
                    param.Add("TIMESTAMP", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                    param.Add("UNIT_PRICE", fields[3]);
                    param.Add("UNIT_AMOUNT", fields[2]);
                    param.Add("UNIT_PAY", fields[4]);
                    param.Add("TRANSACTION", "buy");
                    param.Add("TRANSACTION_DESC", "buy");
                    param.Add("PROD_UNIT_PRICE", fields[5]);
                    param.Add("UNIT_PRE_AMOUNT", fields[6]);
                    _da.ExecuteQuery("INS", sqlText, param, ref outdata, ref exp);
                    if (exp != "000000")
                    {
                        ViewBag.Error = exp;
                        return(View("ErrorPage"));
                    }
                }
                ViewBag.Error = "SUCCESS";
            }
            else
            {
                ViewBag.Error = "Không lấy được mã hóa đơn";
            }

            sqlText = "select * from customers a;";
            param   = new Dictionary <string, string>();
            outdata = _da.FecthQuery(sqlText, param, ref exp);
            if (exp != "000000")
            {
                ViewBag.Error = exp;
                return(View("ErrorPage"));
            }
            ViewData["Customers"] = outdata;

            sqlText = "select * from products a;";
            param   = new Dictionary <string, string>();
            outdata = _da.FecthQuery(sqlText, param, ref exp);
            if (exp != "000000")
            {
                ViewBag.Error = exp;
                return(View("ErrorPage"));
            }
            ViewData["Products"]   = outdata;
            ViewBag.BackController = "WareHouse";
            ViewBag.BackAction     = "Input";

            return(View("ResponeProcess"));
        }
Exemple #7
0
        IEnumerator DownloadCoroutine()
        {
            while (true)

            {
                ParamObj param = null;
                if (tobeDownloadedParamsHighP != null && tobeDownloadedParamsHighP.Count > 0)
                {
                    param = tobeDownloadedParamsHighP.Dequeue();
                }
                else if (tobeDownloadedParams != null && tobeDownloadedParams.Count > 0)
                {
                    param = tobeDownloadedParams.Dequeue();
                }

                if (param != null)
                {
                    int failCount = 0;

                    wwwWrapperClass www = null;

                    while (failCount < retryTimes)
                    {
                        if (wwwDic.ContainsKey(param.taskId))
                        {
                            if (wwwDic[param.taskId].downloadState == 1) //下载中
                            {
                                if (param.m_highPriority)
                                {
                                    wwwDic[param.taskId].mWWW.threadPriority = UnityEngine.ThreadPriority.High;
                                }
                                break;
                            }
                            else if (wwwDic[param.taskId].downloadState == 0) //重试
                            {
                                wwwDic[param.taskId].mWWW = new WWW(param.m_fileUrl);
                                www = wwwDic[param.taskId];
                                wwwDic[param.taskId].downloadState = 1;
                            }
                            else //下载失败或者下载完成
                            {
                                break;
                            }
                        }
                        else
                        {
                            www = new wwwWrapperClass()
                            {
                                mWWW = new WWW(param.m_fileUrl), downloadState = 1
                            };
                            wwwDic.Add(param.taskId,
                                       www
                                       );
                        }
                        try
                        {
                            if (param.m_highPriority)
                            {
                                www.mWWW.threadPriority = UnityEngine.ThreadPriority.High;
                            }
                            else
                            {
                                www.mWWW.threadPriority = UnityEngine.ThreadPriority.Low;
                            }
                        }
                        catch (Exception e)
                        {
                            Debug.LogException(e);
                        }
                        while (!www.mWWW.isDone)
                        {
                            yield return(null);
                        }

                        if (string.IsNullOrEmpty(www.mWWW.error))
                        {
                            FileManager.Instance.SaveFile(www.mWWW.bytes, param.m_savePath);

                            //Debugger.LogInfo(string.Format("背景下载完成 File : {0}, Size:{1}", param.m_fileUrl, param.m_totalLength));
                            www.mWWW.Dispose();
                            www.downloadState = 2;
                            break;
                        }
                        else
                        {
                            www.mWWW.Dispose();
                            www.downloadState = 0;
                            failCount++;
                            continue;
                        }
                    }

                    if (failCount == retryTimes)
                    {
                        if (www != null)
                        {
                            www.downloadState = -1;
                        }
                    }
                }
                else
                {
                    yield return(new WaitForSeconds(1f));
                }
            }
        }
        public JsonResult ReportParameters(ParamObj data)
        {
            ViewData[Strings.ERR] = "No report selected";

            ReportParametersModel model = null;

            if (Session[Strings.REPORTID] == null || data == null)
            {
                return(Json("err", JsonRequestBehavior.AllowGet));
            }

            var currenReportId = Session[Strings.REPORTID].Cast <Guid>();
            var user           = Session[Strings.USER].Cast <UserDetail>();

            model = Session.Get <ReportParametersModel>(Strings.CachedMODELParameters, new ReportParametersModel());

            model.CurrentStep = data.Step;

            if (model.CurrentStep == "Reset")
            {
                model = new ReportParametersModel();
            }

            var ctx1   = PTFContext.Current;
            var ctx2   = PTFReportsContext.Current;
            var report = ctx2.Reports.First(r => r.ReportID == currenReportId);

            if (report == null)
            {
                Session.Remove(Strings.REPORTID);
                Session.Remove(Strings.CachedMODELParameters);
                var result1 = this.RenderPartialToString("ReportParameters", model);
                return(Json(result1, JsonRequestBehavior.AllowGet));
            }
            else
            {
                model.Name        = report.Name;
                model.Description = report.Description;
                model.Page        = report.Page;
                model.ReportID    = report.ReportID;
                model.CountryID   = user.Ud_iso_id;
                model.CompanyID   = user.Ud_ho_id;
                model.LanguageID  = user.Ud_languageId.GetValueOrDefault((int)eLanguage.English);
            }

            var permissions = CommonTools.Cached <IQueryable <Permission> >(string.Concat(user.Ud_loginName, "_Permissions"),
                                                                            () => ctx2.Permissions.Where(p => p.UserID == user.Ud_id && p.IsoID == user.Ud_iso_id));
            var companies = permissions.GroupBy(c => c.HoID);

            string result2;

            if (companies.Count() <= 1)
            {
                ShowShortParameterForm(model, report, data, permissions);
                result2 = this.RenderPartialToString("ReportParametersShort", model);
            }
            else
            {
                ShowLongParameterForm(model, report, data);
                result2 = this.RenderPartialToString("ReportParameters", model);
            }

            return(Json(result2, JsonRequestBehavior.AllowGet));
        }
        private void ShowLongParameterForm(ReportParametersModel model, Report report, ParamObj data)
        {
            var user       = Session[Strings.USER].Cast <UserDetail>();
            var repository = Session.Get <TagRepository>(Strings.TagRepository, new TagRepository());

            var ctx1 = PTFContext.Current;
            var ctx2 = PTFReportsContext.Current;

            if (model.CurrentStep == "IsoID")
            {
                model.CurrentStep = "CompanyID";
            }
            else if (model.CurrentStep == "CompanyID")
            {
                model.CurrentStep = "RetailerID";
            }
            else if (model.CurrentStep == "RetailerID")
            {
                model.CurrentStep = "FormSubmit";
            }
            else if (model.CurrentStep == "FormSubmit")
            {
                model.CurrentStep = null;
            }

            switch (model.CurrentStep)
            {
            case "":
            case null:
            {
                goto case "IsoID";
            }

            case "IsoID":
            {
                model.CurrentStep = "IsoID";
                model.SkipCountry = true;
                model.CountryID   = user.Ud_iso_id;
                goto case "CompanyID";

                //always get user country
                var list = new List <ISO_ptf>();
                list.Add(ISO_ptf.GetUserDefault(user));

                ViewData[ParamMapping.IsoID.ToString()] = new SelectList(list.OrderBy(c => c.iso_country), "iso_number", "iso_country", null);
            }
            break;

            case "CompanyID":
            {
                model.CurrentStep = "CompanyID";
                model.CompanyID   = user.Ud_ho_id;
                model.Country     = ISO_ptf.GetNameByID(model.CountryID);

                var list = new List <HeadOffice>();

                //user permissions
                var permissions = ctx2.Permissions.Where(p => p.UserID == user.Ud_id && p.IsoID == model.CountryID);
                foreach (var gp in permissions.GroupBy(c => c.HoID))
                {
                    var p = gp.First();
                    list.Add(ctx1.HeadOffices.FirstOrDefault(
                                 ho => ho.ho_iso_id == p.IsoID && ho.ho_id == p.HoID));
                }

                model.SkipCompany = list.Count < 2;

                //get user's company
                if (list.Count == 0)
                {
                    model.CompanyID = user.Ud_ho_id;
                    goto case "RetailerID";
                }

                ViewData[ParamMapping.CompanyID.ToString()] = new SelectList(list.OrderBy(ho => ho.ho_name), "ho_id", "ho_name", null);
            }
            break;

            case "RetailerID":
            {
                model.CurrentStep = "RetailerID";
                model.CompanyID   = data.CompanyID.Parse(user.Ud_ho_id);
                model.Company     = HeadOffice.GetNameByID(user.Ud_iso_id, model.CompanyID);

                // retailers
                var list = new List <Branch>();

                //user permissions
                var permissions = ctx2.Permissions.Where(p => p.UserID == user.Ud_id && p.IsoID == user.Ud_iso_id && p.HoID == model.CompanyID);

                repository.Clear();

                foreach (Permission p in permissions)
                {
                    var branch = ctx1.Branches.FirstOrDefault(
                        br => br.br_iso_id == p.IsoID &&
                        br.br_ho_id == p.HoID &&
                        br.br_id == p.RetailerID);

                    list.Add(branch);
                    repository.SetTag(branch);
                }

                //get user's retailer
                if (list.Count == 0)
                {
                    var branch = Branch.GetUserDefault(user);
                    list.Add(branch);
                    repository.SetTag(branch);
                }

                ViewData[ParamMapping.RetailerID.ToString()] =
                    new MultiSelectList(list.OrderBy(br => br.FullName2), "br_id", "FullName2", null);
            }
            break;
            }
        }
Exemple #10
0
        private void ShowShortParameterForm(ReportParametersModel model, Report report, ParamObj data, IQueryable <Permission> permissions)
        {
            var user       = Session[Strings.USER].Cast <UserDetail>();
            var repository = Session.Get <TagRepository>(Strings.TagRepository, new TagRepository());
            var ctx1       = PTFContext.Current;
            var ctx2       = PTFReportsContext.Current;

            // retailers
            var list = CommonTools.Cached <List <Branch> >(string.Concat(user.Ud_loginName, "_List<Branch>"), () => new List <Branch>());

            if (list.Count == 0)
            {
                repository.Clear();

                foreach (Permission p in permissions)
                {
                    var branch = ctx1.Branches.FirstOrDefault(
                        br => br.br_iso_id == p.IsoID &&
                        br.br_ho_id == p.HoID &&
                        br.br_id == p.RetailerID);
                    list.Add(branch);

                    repository.SetTag(branch);
                }
            }
            //get user's retailer
            if (list.Count == 0)
            {
                var branch = Branch.GetUserDefault(user);
                list.Add(branch);
                repository.SetTag(branch);
            }

            ViewData[ParamMapping.RetailerID.ToString()] =
                new MultiSelectList(list.OrderBy(br => br.FullName2), "br_id", "FullName2", null);
        }