Ejemplo n.º 1
0
        /**
         * 通过手机号和姓名获取会员信息
         * */
        public static List <MemberInfoData> GetMembers(String MbPhone, String MbName)
        {
            String          connectStr = ConnectorInfo.connectStr;
            MySqlConnection conn       = new MySqlConnection(connectStr);

            conn.Open();

            MbPhone += "%";
            MbName  += "%";
            List <MemberInfoData> memberInfoDatas = new List <MemberInfoData>();
            String          sql             = "select * from memberinfo where MbPhone like '" + MbPhone + "' and MbName like '" + MbName + "'";
            MySqlCommand    mySqlCommand    = new MySqlCommand(sql, conn);
            MySqlDataReader mySqlDataReader = mySqlCommand.ExecuteReader();

            while (mySqlDataReader.Read())
            {
                MemberInfoData memberInfoData = new MemberInfoData(
                    mySqlDataReader.GetInt32("MbId"),
                    mySqlDataReader.GetInt32("MtId"),
                    mySqlDataReader.GetString("MbName"),
                    mySqlDataReader.GetString("MbPhone"),
                    mySqlDataReader.GetDouble("MbMoney"));
                memberInfoDatas.Add(memberInfoData);
            }
            return(memberInfoDatas);
        }
Ejemplo n.º 2
0
        /**
         * 查找数据库中所有会员
         * */
        public static List <MemberInfoData> GetMembers()
        {
            String          connectStr = ConnectorInfo.connectStr;
            MySqlConnection conn       = new MySqlConnection(connectStr);

            conn.Open();

            List <MemberInfoData> memberInfoDatas = new List <MemberInfoData>();

            String          sql             = "select * from memberinfo";
            MySqlCommand    mySqlCommand    = new MySqlCommand(sql, conn);
            MySqlDataReader mySqlDataReader = mySqlCommand.ExecuteReader();

            while (mySqlDataReader.Read())
            {
                //int mbId, int mtId, string mbName, string mbPhone, double mbMoney
                MemberInfoData memberInfoData = new MemberInfoData(
                    mySqlDataReader.GetInt32("MbId"),
                    mySqlDataReader.GetInt32("MtId"),
                    mySqlDataReader.GetString("MbName"),
                    mySqlDataReader.GetString("MbPhone"),
                    mySqlDataReader.GetDouble("MbMoney")
                    );
                memberInfoDatas.Add(memberInfoData);
            }

            return(memberInfoDatas);
        }
Ejemplo n.º 3
0
        /**
         * 对VIP账号信息进行模糊查询
         * */
        private void LoadVIP()
        {
            if (MemberPhone.Text == "" && MemberName.Text == "")
            {
                return;
            }
            String MbPhone = MemberPhone.Text;
            String MbName  = MemberName.Text;
            List <MemberInfoData> memberInfoDatas = MemberInfoConnector.GetMembers(MbPhone, MbName);

            if (memberInfoDatas.Count > 1)
            {
                return;
            }
            else if (memberInfoDatas.Count == 0)
            {
                return;
            }
            else
            {
                MemberInfo                  = memberInfoDatas[0];
                MemberMoney.Content         = "¥" + MemberInfo.MbMoney;                           //加载账户余额
                MemberType                  = MemberInfoConnector.GetMemberType(MemberInfo.MbId); //获得账户会员类型
                MemberTypeLabel.Content     = MemberType.MTitle;
                MemberDiscountLabel.Content = MemberType.MDiscount;                               //折扣
                shouldPayLabel.Content      = summaryMoney * MemberType.MDiscount;
                shouldPay = summaryMoney * MemberType.MDiscount;
                leftMoney = MemberInfo.MbMoney;
            }
        }
Ejemplo n.º 4
0
        public static void ReLoadCacheData(string cacheName)
        {
            switch (cacheName)
            {
            case "":
                MemberInfoData.CreateData();
                break;

            case "SmsCorpData":
                MemberInfoData.CreateData();
                break;
            }
        }
Ejemplo n.º 5
0
 private void CheckBox_Checked(object sender, RoutedEventArgs e)
 {
     if (IsVIP.IsChecked == true)
     {
         VIPGroup.IsEnabled = true;
     }
     else
     {
         VIPGroup.IsEnabled     = false;
         shouldPayLabel.Content = summaryMoney;
         shouldPay  = summaryMoney;
         MemberInfo = null;
         MemberType = null;
     }
 }
Ejemplo n.º 6
0
        private IEnumerable<PocoMemberPlan> GetPocoMembers(MapperCollection mapper, ColumnInfo[] columnInfos, List<MemberInfo> memberInfos, string prefix = null)
        {
            var capturedMembers = memberInfos.ToArray();
            var capturedPrefix = prefix;
            foreach (var columnInfo in columnInfos)
            {
                if (columnInfo.IgnoreColumn)
                    continue;

                var memberInfoType = columnInfo.MemberInfo.GetMemberInfoType();
                if (columnInfo.ReferenceType == ReferenceType.Many)
                {
                    var genericArguments = memberInfoType.GetGenericArguments();
                    memberInfoType = genericArguments.Any()
                        ? genericArguments.First()
                        : memberInfoType.GetTypeWithGenericTypeDefinitionOf(typeof(IList<>)).GetGenericArguments().First();
                }

                var childrenPlans = new PocoMemberPlan[0];
                TableInfoPlan childTableInfoPlan = null;
                var members = new List<MemberInfo>(capturedMembers) { columnInfo.MemberInfo };

                if (columnInfo.ComplexMapping || columnInfo.ReferenceType != ReferenceType.None)
                {
                    if (capturedMembers.GroupBy(x => x.GetMemberInfoType()).Any(x => x.Count() >= 2))
                    {
                        continue;
                    }

                    var childColumnInfos = GetColumnInfos(memberInfoType);

                    if (columnInfo.ReferenceType != ReferenceType.None)
                    {
                        childTableInfoPlan = GetTableInfo(memberInfoType, childColumnInfos, members);
                    }

                    var newPrefix = JoinStrings(capturedPrefix, columnInfo.ReferenceType != ReferenceType.None ? "" : (columnInfo.ComplexPrefix ?? columnInfo.MemberInfo.Name));

                    childrenPlans = GetPocoMembers(mapper, childColumnInfos, members, newPrefix).ToArray();
                }

                MemberInfo capturedMemberInfo = columnInfo.MemberInfo;
                ColumnInfo capturedColumnInfo = columnInfo;

                var accessors = GetMemberAccessors(members);
                var memberType = capturedMemberInfo.GetMemberInfoType();
                var isList = IsList(capturedMemberInfo);
                var listType = GetListType(memberType, isList);
                var isDynamic = capturedMemberInfo.IsDynamic();
                var fastCreate = GetFastCreate(memberType, mapper, isList, isDynamic);
                var columnName = GetColumnName(capturedPrefix, capturedColumnInfo.ColumnName ?? capturedMemberInfo.Name);
                var memberInfoData = new MemberInfoData(capturedMemberInfo);

                yield return tableInfo =>
                {
                    var pc = new PocoColumn
                    {
                        ReferenceType = capturedColumnInfo.ReferenceType,
                        TableInfo = tableInfo,
                        MemberInfoData = memberInfoData,
                        MemberInfoChain = members,
                        ColumnName = columnName,
                        ResultColumn = capturedColumnInfo.ResultColumn,
                        ForceToUtc = capturedColumnInfo.ForceToUtc,
                        ComputedColumn = capturedColumnInfo.ComputedColumn,
                        ComputedColumnType = capturedColumnInfo.ComputedColumnType,
                        ColumnType = capturedColumnInfo.ColumnType,
                        ColumnAlias = capturedColumnInfo.ColumnAlias,
                        VersionColumn = capturedColumnInfo.VersionColumn,
                        VersionColumnType = capturedColumnInfo.VersionColumnType,
                        SerializedColumn = capturedColumnInfo.SerializedColumn
                    };

                    pc.SetMemberAccessors(accessors);

                    var childrenTableInfo = childTableInfoPlan == null ? tableInfo : childTableInfoPlan();
                    var children = childrenPlans.Select(plan => plan(childrenTableInfo)).ToList();

                    // Cascade ResultColumn down
                    foreach (var child in children.Where(child => child.PocoColumn != null && pc.ResultColumn))
                    {
                        child.PocoColumn.ResultColumn = true;
                    }

                    var pocoMember = new PocoMember()
                    {
                        MemberInfoData = memberInfoData,
                        MemberInfoChain = members,
                        IsList = isList,
                        IsDynamic = isDynamic,
                        PocoColumn = capturedColumnInfo.ComplexMapping ? null : pc,
                        ReferenceType = capturedColumnInfo.ReferenceType,
                        ReferenceMemberName = capturedColumnInfo.ReferenceMemberName,
                        PocoMemberChildren = children,
                    };

                    pocoMember.SetMemberAccessor(accessors[accessors.Count - 1], fastCreate, listType);

                    return pocoMember;
                };
            }
        }
Ejemplo n.º 7
0
        internal static string GetMemberInfo(string scriptFile, int caret, bool collapseOverloads)
        {
            // Complete API for N++

            Output.WriteLine("GetMemberInfo");
            //Console.WriteLine("hint: " + hint);

            var    script = new SourceInfo(scriptFile);
            string result = null;

            if (script.Content.IsEmpty())
            {
                throw new Exception("The file containing code is empty");
            }

            void loockupDirective(string directive)
            {
                var css_directive = CssCompletionData.AllDirectives
                                    .FirstOrDefault(x => x.DisplayText == directive);

                if (css_directive != null)
                {
                    result = $"Directive: {css_directive.DisplayText}\n{css_directive.Description}";
                    result = result.NormalizeLineEnding().Replace("\r\n\r\n", "\r\n").TrimEnd();
                }
            };

            ParseAsCssDirective(script.Content, caret,
                                loockupDirective,
                                (directive, arg, extensions) =>
            {
                if (LookopDirectivePath(script, caret, directive, arg) is string file)
                {
                    result = $"File: {file}";
                }
                else
                {
                    loockupDirective(directive);
                }
            });

            if (result.HasText())
            {
                return(MemberInfoData.Serialize(new MemberInfoData {
                    Info = result
                }));
            }

            if (!script.RawFile.EndsWith(".g.cs"))
            {
                CSScriptHelper.DecorateIfRequired(ref script.Content, ref caret);
            }

            Project project = CSScriptHelper.GenerateProjectFor(script);
            var     sources = project.Files
                              .Where(f => f != script.File)
                              .Select(f => new Tuple <string, string>(File.ReadAllText(f), f))
                              .ToArray();

            int methodStartPosTemp;
            var items = Autocompleter.GetMemberInfo(script.Content, caret, out methodStartPosTemp, project.Refs, sources, includeOverloads: !collapseOverloads);

            if (collapseOverloads)
            {
                items = items.Take(1);
            }

            result = items.Select(x => new MemberInfoData {
                Info = x, MemberStartPosition = methodStartPosTemp
            })
                     .Select(MemberInfoData.Serialize)
                     .JoinSerializedLines();

            return(result);
        }