コード例 #1
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();

            var resultItems = await db0.Editor_L2
                              .Where(x => x.editor_l1_id == q.main_id)
                              .Select(x => new m_Editor_L2
            {
                editor_l1_id = x.editor_l1_id,
                editor_l2_id = x.editor_l2_id,
                l2_name      = x.l2_name,
                l2_content   = x.l2_content,
                sort         = x.sort,
                edit_type    = IEditType.Update,
                view_mode    = InputViewMode.view
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(resultItems));

            #endregion
        }
コード例 #2
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();

            var resultItems = await db0.ProductDetail
                              .Where(x => x.product_id == q.main_id)
                              .Select(x => new
            {
                product_id        = x.product_id,
                product_detail_id = x.product_detail_id,
                sn          = x.sn,          //料號
                pack_name   = x.pack_name,   //包裝
                weight      = x.weight,      //重量
                price       = x.price,       //單價
                stock_state = x.stock_state, //狀態 上架/缺貨中
                edit_type   = IEditType.Update,
                view_mode   = InputViewMode.view
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(resultItems));

            #endregion
        }
コード例 #3
0
        /// <summary>
        /// 用于渲染账户管理页面
        /// </summary>
        /// <param name="queryParams"></param>
        /// <returns></returns>
        public JsonResult GetUserInfo(queryParam queryParams)
        {
            OrderManageDbContext db   = new OrderManageDbContext();
            List <User>          data = db.Users.Where(u => u.Id > 0).ToList();

            //var total = data.Count;
            // var rows = data.Skip(queryParams.offset).Take(queryParams.limit).ToList();
            return(Json(data.ToList(), JsonRequestBehavior.AllowGet));
        }
コード例 #4
0
        /// <summary>
        /// 用于渲染订单页面
        /// </summary>
        /// <param name="queryParams"></param>
        /// <returns></returns>
        public JsonResult GetOrder(queryParam queryParams)
        {
            OrderManageDbContext db       = new OrderManageDbContext();
            DbSet <Order>        data     = db.Orders;
            List <Order>         dataRows = null;


            if (queryParams.sortName != null && queryParams.sortOrder != null)
            {
                dataRows = OrderByHelper <Order> .OrderBy(data, queryParams.sortName, queryParams.sortOrder).ToList();
            }
            else
            {
                dataRows = data.ToList();
            }
            var total = dataRows.Count;
            var rows  = dataRows.Skip(queryParams.offset).Take(queryParams.limit).ToList();

            return(Json(new { total = total, rows = rows }, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
        public IActionResult getGoodsInfoById(queryParam param)
        {
            DBHelper dbHelper = new DBHelper();

            try
            {
                var               res                   = new GoodsInfo();
                string            queryName             = "SELECT NAME FROM GOODS WHERE ID =:goodsId";
                OracleParameter[] parameterForQueryName =
                {
                    new OracleParameter(":goodsId", OracleDbType.Long, 10)
                };
                parameterForQueryName[0].Value = param.goodsId;
                DataTable dtForName = dbHelper.ExecuteTable(queryName, parameterForQueryName);
                if (dtForName.Rows.Count == 0)
                {
                    return(NotFound("无此周边!"));
                }
                res.name = dtForName.Rows[0]["NAME"].ToString();
                string            queryOther = "SELECT PRICE,AVAILABLE FROM SELLER_GOODS WHERE SELLER_ID=:sellerId AND GOODS_ID=:goodsId";
                OracleParameter[] parametersForQueryOther =
                {
                    new OracleParameter(":sellerId", OracleDbType.Long, 10),
                    new OracleParameter(":goodsId",  OracleDbType.Long, 10)
                };
                parametersForQueryOther[0].Value = param.sellerId;
                parametersForQueryOther[1].Value = param.goodsId;
                DataTable dtForOther = dbHelper.ExecuteTable(queryOther, parametersForQueryOther);
                if (dtForOther.Rows.Count == 0)
                {
                    return(NotFound("暂未售卖此周边!"));
                }
                res.price     = double.Parse(dtForOther.Rows[0]["PRICE"].ToString());
                res.available = long.Parse(dtForOther.Rows[0]["AVAILABLE"].ToString());
                return(Ok(new JsonResult(res)));
            }
            catch (OracleException oe)
            {
                return(BadRequest("数据库请求错误" + " 错误代码" + oe.Number));
            }
        }
コード例 #6
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <Edit>();

            if (q.name != null)
            {
                predicate = predicate.And(x => x.edit_name.Contains(q.name));
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.Edit.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await result
                              .OrderBy(x => x.edit_id)
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount
            }));

            #endregion
        }
コード例 #7
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <ProductKind>();

            if (q.name != null)
            {
                predicate = predicate.And(x => x.kind_name.Contains(q.name));
            }

            if (q.i_Hide != null)
            {
                predicate = predicate.And(x => x.i_Hide == q.i_Hide);
            }


            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.ProductKind.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <ProductKind> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderBy(x => x.product_kind_id);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.product_kind_id,
                x.kind_name,
                x.sort,
                x.i_Hide,
                x.i_InsertUserID,
                x.i_InsertDeptID,
                x.i_InsertDateTime,
                x.i_UpdateUserID,
                x.i_UpdateDeptID,
                x.i_UpdateDateTime,
                x.i_Lang,
                edit_type = IEditType.Update,
                view_mode = InputViewMode.view
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }
コード例 #8
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <News>();

            if (q.name != null)
            {
                predicate = predicate.And(x => x.news_title.Contains(q.name));
            }

            if (q.day != null)
            {
                DateTime start = (DateTime)q.day;
                DateTime end   = ((DateTime)q.day).AddDays(1);

                predicate = predicate.And(x => x.day >= start & x.day < end);
            }


            if (q.i_Hide != null)
            {
                predicate = predicate.And(x => x.i_Hide == q.i_Hide);
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.News.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <News> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderByDescending(x => x.sort);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.news_id,
                x.news_title,
                x.day,
                x.i_Hide,    //狀態
                x.no_index,  //首頁顯示
                x.sort
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }
コード例 #9
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <Customer>();

            if (q.name != null)
            {
                predicate = predicate.And(x => x.c_name.Contains(q.name) || x.email.Contains(q.name) ||
                                          x.tel.Contains(q.name) || x.mobile.Contains(q.name) ||
                                          x.zip.Contains(q.name) || x.address.Contains(q.name));
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.Customer.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <Customer> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderBy(x => x.customer_id);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.customer_id,
                x.c_name,
                x.email,
                x.tel,
                x.mobile,
                x.zip,
                x.address
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }
コード例 #10
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <Purchase>();

            if (q.keyword != null)
            {
                predicate = predicate.And(x => x.purchase_no.Contains(q.keyword) ||
                                          x.receive_name.Contains(q.keyword));
            }

            if (q.order_date != null)
            {
                DateTime start = (DateTime)q.order_date;
                DateTime end   = ((DateTime)q.order_date).AddDays(1);

                predicate = predicate.And(x => x.order_date >= start & x.order_date < end);
            }

            if (q.pay_date != null)
            {
                DateTime start = (DateTime)q.pay_date;
                DateTime end   = ((DateTime)q.pay_date).AddDays(1);

                predicate = predicate.And(x => x.remit_date >= start & x.remit_date < end);
            }

            if (q.type != null)
            {
                if (q.type == 1)
                {//pay_state
                    predicate = predicate.And(x => x.pay_state == q.type_val);
                }
                else if (q.type == 2)
                {//ship_state
                    predicate = predicate.And(x => x.ship_state == q.type_val);
                }
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.Purchase.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <Purchase> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderByDescending(x => x.order_date);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.purchase_no,
                x.customer_id,
                x.order_date,
                x.remit_date,
                x.receive_name,
                x.pay_type,    //付款方式
                x.pay_state,   //付款狀態
                x.ship_state,  //出貨狀態
                Deatil = x.PurchaseDetail.ToList()
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }