예제 #1
0
            /// Return a list for admin UI list.
            /// </summary>
            /// <param name="total"></param>
            /// <param name="current"></param>
            /// <param name="rowCount"></param>
            /// <param name="where"></param>
            /// <param name="order"></param>
            /// <returns></returns>
            public static List <CroResource> TolerantSearch(out int total, int current, int rowCount, APSqlWherePhrase where, APSqlOrderPhrase order)
            {
                var t = APDBDef.CroResource;
                var u = APDBDef.ResUser;

                var query = APQuery
                            .select(t.CrosourceId, t.Title, t.CreatedTime, t.StatePKID, t.ThemeId,
                                    t.ProvinceId, t.AreaId, t.WinLevelPKID, t.Score, t.DeliveryStatus,
                                    t.Author)
                            .from(t, u.JoinInner(t.Creator == u.UserId))
                            .where (where);

                //.order_by(t.CrosourceId.Desc)

                if (order != null)
                {
                    query.order_by_add(order);
                }
                else
                {
                    query.order_by_add(t.CrosourceId.Desc);
                }

                query.primary(t.CrosourceId)
                .skip((current - 1) * rowCount)
                .take(rowCount);

                using (APDBDef db = new APDBDef())
                {
                    total = db.ExecuteSizeOfSelect(query);
                    return(db.Query(query, t.TolerantMap).ToList());
                }
            }
예제 #2
0
            /// <summary>
            /// Return a list for admin UI list.
            /// </summary>
            /// <param name="total"></param>
            /// <param name="current"></param>
            /// <param name="rowCount"></param>
            /// <param name="where"></param>
            /// <param name="order"></param>
            /// <returns></returns>
            public static List <CroResource> TolerantSearch(out int total, int current, int rowCount, APSqlWherePhrase where, APSqlOrderPhrase order)
            {
                var t = APDBDef.CroResource;
                var u = APDBDef.ResUser;

                var query = APQuery
                            .select(t.CrosourceId, t.Title, u.RealName.As("Author")        //TODO:t.MediumTypePKID
                                    , t.CreatedTime, t.StatePKID)
                            .from(t, u.JoinInner(t.Creator == u.UserId))
                            .where (where)
                            .primary(t.CrosourceId)
                            .skip((current - 1) * rowCount)
                            .take(rowCount);

                if (order != null)
                {
                    query.order_by(order);
                }

                using (APDBDef db = new APDBDef())
                {
                    total = db.ExecuteSizeOfSelect(query);
                    return(db.Query(query, t.TolerantMap).ToList());
                }
            }
예제 #3
0
            /// <summary>
            /// Return a list for admin UI list.
            /// </summary>
            /// <param name="total"></param>
            /// <param name="current"></param>
            /// <param name="rowCount"></param>
            /// <param name="where"></param>
            /// <param name="order"></param>
            /// <returns></returns>
            public static List <ResUser> TolerantSearch(out int total, int current, int rowCount, APSqlWherePhrase where, APSqlOrderPhrase order)
            {
                var t = APDBDef.ResUser;
                var c = APDBDef.ResCompany;
                //var r = APDBDef.ResRole;
                //var ur = APDBDef.ResUserRole;

                var query = APQuery
                            .select(t.UserId, t.UserName, t.RealName, t.GenderPKID, t.Email, t.RegisterTime, t.LoginCount, t.Actived, t.UserTypePKID,
                                    t.CompanyId, t.ProvinceId, t.AreaId,
                                    c.CompanyName //,r.RoleName
                                    )
                            .from(t,
                                  c.JoinLeft(t.CompanyId == c.CompanyId)
                                  )
                            .where (where)
                            .primary(t.UserId)
                            .skip((current - 1) * rowCount)
                            .take(rowCount);

                if (order != null)
                {
                    query.order_by(order);
                }

                using (APDBDef db = new APDBDef())
                {
                    total = db.ExecuteSizeOfSelect(query);
                    return(db.Query(query, reader =>
                    {
                        return new ResUser()
                        {
                            UserId = t.UserId.GetValue(reader),
                            UserTypePKID = t.UserTypePKID.GetValue(reader),
                            UserName = t.UserName.GetValue(reader),
                            RealName = t.RealName.GetValue(reader),
                            GenderPKID = t.GenderPKID.GetValue(reader),
                            Email = t.Email.GetValue(reader),
                            RegisterTime = t.RegisterTime.GetValue(reader),
                            LoginCount = t.LoginCount.GetValue(reader),
                            Actived = t.Actived.GetValue(reader),
                            CompanyName = c.CompanyName.GetValue(reader),
                            ProvinceId = t.ProvinceId.GetValue(reader),
                            AreaId = t.AreaId.GetValue(reader)
                        };
                    }).ToList());
                }
            }