Beispiel #1
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public Maticsoft.Model.CustomerData DataRowToModel(DataRow row)
 {
     Maticsoft.Model.CustomerData model=new Maticsoft.Model.CustomerData();
     if (row != null)
     {
         if(row["PhoneNumber"]!=null)
         {
             model.PhoneNumber=row["PhoneNumber"].ToString();
         }
         if(row["CustomerName"]!=null)
         {
             model.CustomerName=row["CustomerName"].ToString();
         }
         if(row["Address"]!=null)
         {
             model.Address=row["Address"].ToString();
         }
         if(row["MiAvailable"]!=null && row["MiAvailable"].ToString()!="")
         {
             model.MiAvailable=int.Parse(row["MiAvailable"].ToString());
         }
         if(row["JingAvailable"]!=null && row["JingAvailable"].ToString()!="")
         {
             model.JingAvailable=int.Parse(row["JingAvailable"].ToString());
         }
         if(row["ZhunAvailable"]!=null && row["ZhunAvailable"].ToString()!="")
         {
             model.ZhunAvailable=int.Parse(row["ZhunAvailable"].ToString());
         }
         if(row["BaoAvaivable"]!=null && row["BaoAvaivable"].ToString()!="")
         {
             model.BaoAvaivable=int.Parse(row["BaoAvaivable"].ToString());
         }
         if(row["GiftPacks"]!=null && row["GiftPacks"].ToString()!="")
         {
             model.GiftPacks=int.Parse(row["GiftPacks"].ToString());
         }
         if(row["ProductPacks"]!=null && row["ProductPacks"].ToString()!="")
         {
             model.ProductPacks=int.Parse(row["ProductPacks"].ToString());
         }
     }
     return model;
 }
Beispiel #2
0
        public List<string> ReciveMsg(string phonenumber, string codes, Hashtable HtCustomer, Hashtable HtCode)
        {
            List<string> msg = new List<string>();

            ReciveMsgDAL dal = new ReciveMsgDAL();

            List<string> RightCodes;//正确代码
            List<string> WrongFormatCode;//格式错误代码
            List<string> ExchangedCode;//已兑换代码
            List<string> NoexistCode;//不存在代码
            List<string> ValidatedCode;//已验证代码
            checkCode(codes, HtCode, out  RightCodes, out  WrongFormatCode, out  ExchangedCode, out NoexistCode, out  ValidatedCode);
            using (System.Transactions.TransactionScope tsCope = new TransactionScope(TransactionScopeOption.RequiresNew, new TimeSpan(0, 30, 0)))
            {

                try
                {
                    if (RightCodes.Count > 0)//代码正确
                    {
                        string[] rightcode = RightCodes.ToArray();
                        for (int i = 0; i < rightcode.Length; i++)
                        {
                            //更新CodeData表
                            Maticsoft.Model.CodeData CodeDataModel = HtCode[rightcode[i]] as Maticsoft.Model.CodeData;
                            CodeDataModel.PhoneNumber = phonenumber;
                            CodeDataModel.IsValidated = true;
                            CodeDataModel.ValidatedTime = DateTime.Now;
                            CodeDatadal.Update(CodeDataModel);

                            //CustomerData存在兑奖者记录
                            if (HtCustomer.Contains(phonenumber))
                            {
                                Maticsoft.Model.CustomerData CustomerDataModel = HtCustomer[phonenumber] as Maticsoft.Model.CustomerData;
                                if (CodeDataModel.Remark == "密")
                                {
                                    CustomerDataModel.MiAvailable += 1;
                                }
                                else if (CodeDataModel.Remark == "净")
                                {
                                    CustomerDataModel.JingAvailable += 1;
                                }
                                else if (CodeDataModel.Remark == "准")
                                {
                                    CustomerDataModel.ZhunAvailable += 1;
                                }
                                else if (CodeDataModel.Remark == "宝护盖")
                                {
                                    CustomerDataModel.BaoAvaivable += 1;
                                }
                                CustomerDatadal.Update(CustomerDataModel);//更新可兑换信息
                            }
                            else //CustomerData不存在兑奖者记录
                            {
                                Maticsoft.Model.CustomerData CustomerDataModel = new Maticsoft.Model.CustomerData();
                                CustomerDataModel.PhoneNumber = phonenumber;
                                CustomerDataModel.BaoAvaivable = 0;
                                CustomerDataModel.ZhunAvailable = 0;
                                CustomerDataModel.JingAvailable = 0;
                                CustomerDataModel.MiAvailable = 0;
                                CustomerDataModel.ProductPacks = 0;
                                CustomerDataModel.GiftPacks = 0;
                                CustomerDataModel.Address = "";
                                CustomerDataModel.CustomerName = "";
                                if (CodeDataModel.Remark == "密")
                                {
                                    CustomerDataModel.MiAvailable = 1;
                                }
                                else if (CodeDataModel.Remark == "净")
                                {
                                    CustomerDataModel.JingAvailable = 1;
                                }
                                else if (CodeDataModel.Remark == "准")
                                {
                                    CustomerDataModel.ZhunAvailable = 1;
                                }
                                else if (CodeDataModel.Remark == "宝护盖")
                                {
                                    CustomerDataModel.BaoAvaivable = 1;
                                }
                                CustomerDatadal.Add(CustomerDataModel);//新增可兑换信息

                                HtCustomer.Add(phonenumber, CustomerDataModel);//新增后添加到hashtable
                            }

                        }
                    }
                    if (WrongFormatCode.Count > 0 || ExchangedCode.Count > 0 || NoexistCode.Count > 0 || ValidatedCode.Count > 0)//代码错误
                    {
                        string wrongformatcodestring = "";
                        foreach (string wrongformatcodestr in WrongFormatCode)
                        {
                            wrongformatcodestring += wrongformatcodestr + "、";
                        }

                        if (wrongformatcodestring != "")
                        {
                            wrongformatcodestring = wrongformatcodestring.TrimEnd('、');
                            string errormsg = string.Format("您提交的代码{0}格式有误,请按正确格式将9位代码上传,多个代码则用“/”分隔。如有疑问,请咨询400-820-2775。", wrongformatcodestring);
                            msg.Add(errormsg);
                        }
                        string exchangedcodestring = "";

                        foreach (string exchangedcodestr in ExchangedCode)
                        {
                            Maticsoft.Model.CodeData codedatamodel = HtCode[exchangedcodestr] as Maticsoft.Model.CodeData;
                            string str = string.Format("{0}已于{1}年{2}月{3}日兑换", exchangedcodestr, codedatamodel.ExchangeTime.Value.Year, codedatamodel.ExchangeTime.Value.Month, codedatamodel.ExchangeTime.Value.Day);
                            exchangedcodestring += str + "、";
                        }

                        if (exchangedcodestring != "")
                        {
                            exchangedcodestring = exchangedcodestring.TrimEnd('、');
                            string errormsg = string.Format("您上传的代码{0}。如有疑问,请咨询400-820-2775。", exchangedcodestring);
                            msg.Add(errormsg);
                        }
                        string noexistcodestring = "";
                        foreach (string noexistcodestr in NoexistCode)
                        {
                            noexistcodestring += noexistcodestr + "、";
                        }

                        if (noexistcodestring != "")
                        {
                            noexistcodestring = noexistcodestring.TrimEnd('、');
                            string errormsg = string.Format("您上传的代码{0}有误,请核对后重新上传。如有疑问,请咨询400-820-2775。", noexistcodestring);
                            msg.Add(errormsg);
                        }

                        string validatedtcodestring = "";
                        foreach (string validatedtcodestr in ValidatedCode)
                        {
                            Maticsoft.Model.CodeData codedatamodel = HtCode[validatedtcodestr] as Maticsoft.Model.CodeData;
                            string str = string.Format("{0}已于{1}年{2}月{3}上传", validatedtcodestr, codedatamodel.ValidatedTime.Value.Year, codedatamodel.ValidatedTime.Value.Month, codedatamodel.ValidatedTime.Value.Day);
                            validatedtcodestring += str + "、";
                        }
                        if (validatedtcodestring != "")
                        {

                            validatedtcodestring = validatedtcodestring.TrimEnd('、');
                            string errormsg = string.Format("您上传的代码{0}。如有疑问,请咨询400-820-2775。", validatedtcodestring);
                            msg.Add(errormsg);
                        }
                    }

                    //获取可兑换信息
                    if (HtCustomer.Contains(phonenumber))
                    {

                        Maticsoft.Model.CustomerData model = HtCustomer[phonenumber] as Maticsoft.Model.CustomerData;

                        int BaoNum = model.BaoAvaivable;
                        int JingNum = model.JingAvailable;
                        int MiNum = model.MiAvailable;
                        int ZhunNum = model.ZhunAvailable;
                        msg.AddRange(getMsg(BaoNum, JingNum, MiNum, ZhunNum));
                    }

                    tsCope.Complete();
                }
                catch (Exception)
                {
                    msg.Clear();
                    throw;
                }
                finally
                {
                    tsCope.Dispose();
                }
            }
            return msg;
        }
Beispiel #3
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Maticsoft.Model.CustomerData GetModel(string PhoneNumber)
        {
            StringBuilder strSql=new StringBuilder();
            strSql.Append("select  top 1 PhoneNumber,CustomerName,Address,MiAvailable,JingAvailable,ZhunAvailable,BaoAvaivable,GiftPacks,ProductPacks from CustomerData ");
            strSql.Append(" where PhoneNumber=@PhoneNumber ");
            SqlParameter[] parameters = {
                    new SqlParameter("@PhoneNumber", SqlDbType.NVarChar,50)			};
            parameters[0].Value = PhoneNumber;

            Maticsoft.Model.CustomerData model=new Maticsoft.Model.CustomerData();
            DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters);
            if(ds.Tables[0].Rows.Count>0)
            {
                return DataRowToModel(ds.Tables[0].Rows[0]);
            }
            else
            {
                return null;
            }
        }