Ejemplo n.º 1
0
        public async Task <ActionResultDto> Execute(ContextDto context)
        {
            var _result = new ActionResultDto();

            try
            {
                /* kiểm tra input */
                var _error = validate();

                if (_error.code > 0)
                {
                    return(returnActionError(HttpStatusCode.BadRequest, _error.message));
                }

                /* convert input */
                var _TamUngId = Protector.Int(TamUngId);
                GetListTamUngByCriteraBiz biz = new GetListTamUngByCriteraBiz(context);
                biz.TamUngId    = TamUngId;
                biz.FieldsField = "A.*";
                biz.OrderClause = "A.TamUngId asc";
                var TamUng = await biz.Execute();

                if (TamUng == null)
                {
                    return(returnActionError(HttpStatusCode.BadRequest, string.Format("Không tìm thấy TamUngId '{0}'", _TamUngId)));
                }

                _result.ReturnCode = HttpStatusCode.OK;
                _result.ReturnData = new
                {
                    data = TamUng
                };

                return(_result);
            }
            catch (Exception ex)
            {
                return(returnActionError(HttpStatusCode.InternalServerError, ex.InnerException != null ? ex.InnerException.Message : ex.Message));
            }
        }
        public async Task <ActionResultDto> Execute(ContextDto context)
        {
            GetListTamUngByCriteraBiz biz = new GetListTamUngByCriteraBiz(context);
            var result = new ActionResultDto();

            try
            {
                var _draw   = Protector.Int(draw);
                var _start  = Protector.Int(start);
                var _length = Protector.Int(length);

                /* =========================
                 * fixed input
                 * ========================= */
                sortName = string.IsNullOrEmpty(sortName) ? "TamUngId" : sortName;
                sortDir  = string.IsNullOrEmpty(sortDir) ? "asc" : sortDir;
                _length  = _length < 1 ? 10 : _length;
                fields   = string.IsNullOrEmpty(fields) ? "*" : fields;
                if (search != null && search != "")
                {
                    if (search.Split('|').Length > 1)
                    {
                        try
                        {
                            if (search.Split('|')[0] != "" && search.Split('|')[0] != "__/__/____")
                            {
                                biz.TuNgay = DateTime.ParseExact(search.Split('|')[0], "dd/MM/yyyy", CultureInfo.GetCultureInfo("fr-FR")).ToString("yyyy-MM-dd");
                            }
                        }
                        catch
                        {
                            biz.TuNgay = "";
                        }
                        try
                        {
                            if (search.Split('|')[1] != "" && search.Split('|')[1] != "__/__/____")
                            {
                                biz.DenNgay = DateTime.ParseExact(search.Split('|')[1], "dd/MM/yyyy", CultureInfo.GetCultureInfo("fr-FR")).ToString("yyyy-MM-dd");
                            }
                        }
                        catch
                        {
                            biz.DenNgay = "";
                        }
                        if (search.Split('|')[2].Length > 0)
                        {
                            biz.TheLoai = search.Split('|')[2].Substring(0, search.Split('|')[2].Length - 1);
                        }
                        biz.NhanVien = search.Split('|')[3];
                    }
                }
                var orderClause = sortName + " " + sortDir;
                var total       = 0;
                biz.LoginId     = LoginId;
                biz.FieldsField = fields;
                biz.OrderClause = orderClause;
                biz.Skip        = _start;
                biz.Take        = _length;
                IEnumerable <dynamic> listTamUng = await biz.Execute();

                if (listTamUng.Count() > 0)
                {
                    var obj = listTamUng.FirstOrDefault();

                    total = Protector.Int(obj.MAXCNT);
                }

                dynamic _metaData = new System.Dynamic.ExpandoObject();
                _metaData.draw  = _draw;
                _metaData.total = total;

                return(ActionHelper.returnActionResult(HttpStatusCode.OK, listTamUng, _metaData));
            }
            catch (Exception ex)
            {
                result.ReturnCode = HttpStatusCode.InternalServerError;
                result.ReturnData = new
                {
                    error = new
                    {
                        code    = HttpStatusCode.InternalServerError,
                        type    = HttpStatusCode.InternalServerError.ToString(),
                        message = ex.InnerException != null ? ex.InnerException.Message : ex.Message
                    }
                };
                return(result);
            }
        }