public async Task <IActionResult> GetPageFilter(int pos, string termsearch, int pagesize, string termduan, string termcalltype, string termtaikhoan, string startdate, string enddate)
        {
            string searchterm    = termsearch.Split("=")[1];
            string duanterm      = termduan.Split("=")[1];
            string calltypeterm  = termcalltype.Split("=")[1];
            string taikhoanterm  = termtaikhoan.Split("=")[1];
            string startdateterm = startdate.Split("=")[1];
            string enddateterm   = enddate.Split("=")[1];
            string orderbyterm   = " Id desc ";
            string whereterm     = " 1=1 ";

            if (!string.IsNullOrEmpty(searchterm) || (!string.IsNullOrEmpty(duanterm) || !string.IsNullOrEmpty(calltypeterm) || !string.IsNullOrEmpty(taikhoanterm)))
            {
                whereterm += " AND Phone LIKE '%" + searchterm + "%' ";
                whereterm += " AND Project LIKE '%" + duanterm + "%' ";
                whereterm += " AND Type LIKE '%" + calltypeterm + "%' ";
                whereterm += " AND Staff LIKE '%" + taikhoanterm + "%' ";
                whereterm += " AND CreateTime >= " + long.Parse(startdateterm) + " AND CreateTime <= " + long.Parse(enddateterm) + " ";
            }

            ResultGridLogfile resultGrid = new ResultGridLogfile();

            resultGrid = await _logfileService.GetLogfilesPage(pos, pagesize, orderbyterm, whereterm);

            if (resultGrid.pageSize > 0)
            {
                return(Ok(resultGrid));
            }
            else
            {
                return(NoContent());
            }
        }
        public async Task <IActionResult> Get()
        {
            ResultGridLogfile resultGrid = new ResultGridLogfile();
            var logfiles = await _logfileService.GetLogfiles();

            int logfileSize = logfiles.Count();

            resultGrid.listLogfiles = logfiles.ToList();
            resultGrid.pageSize     = logfileSize;
            if (logfileSize > 0)
            {
                return(Ok(resultGrid));
            }
            else
            {
                return(NoContent());
            }
        }
示例#3
0
        public async Task <ResultGridLogfile> GetLogfilesPage(int pos, int pagesize, string orderterm, string whereterm)
        {
            ResultGridLogfile resultGrid = new ResultGridLogfile();

            IEnumerable <LogfileModel> logfiles;
            int logfilesTotal  = 0;
            var parametersRead = new DynamicParameters();

            parametersRead.Add("@pageSize", pagesize, DbType.Int16, ParameterDirection.Input);
            parametersRead.Add("@page", pos, DbType.Int16, ParameterDirection.Input);
            parametersRead.Add("@orderBy", orderterm, DbType.String, ParameterDirection.Input);
            parametersRead.Add("@where", whereterm, DbType.String, ParameterDirection.Input);
            var parametersReadTotal = new DynamicParameters();

            parametersReadTotal.Add("@where", whereterm, DbType.String, ParameterDirection.Input);

            using (var conn = new SqlConnection(_configuration.Value))
            {
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                try
                {
                    logfiles = await conn.QueryAsync <LogfileModel>("p_Logfile_ReadData", parametersRead, commandType : CommandType.StoredProcedure);

                    logfilesTotal = await conn.QueryFirstOrDefaultAsync <int>("p_Logfile_ReadData_Total", parametersReadTotal, commandType : CommandType.StoredProcedure);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
            }
            resultGrid.listLogfiles = logfiles.ToList();
            resultGrid.pageSize     = logfilesTotal;
            return(resultGrid);
        }