public async Task <RCustomer[]> Search(string code, string email, string mobile, string fullName, DateTime?fromBirthday, DateTime?toBirthday, EnumDefine.CustomerTypeEnum type, EnumDefine.CustomerStatusEnum status, RefSqlPaging paging) { return(await WithConnection(async (connection) => { DynamicParameters parameters = new DynamicParameters(); parameters.Add("@Code", code, DbType.String); parameters.Add("@Email", email, DbType.String); parameters.Add("@PhoneNumber", mobile, DbType.String); parameters.Add("@FullName", fullName, DbType.String); parameters.Add("@FromBirthday", fromBirthday, DbType.String); parameters.Add("@ToBirthday", toBirthday, DbType.String); parameters.Add("@Type", type.AsEnumToInt(), DbType.String); parameters.Add("@Status", status.AsEnumToInt(), DbType.String); parameters.Add("@OFFSET", paging.OffSet, DbType.String); parameters.Add("@FETCH", paging.PageSize, DbType.String); var data = await connection.QueryAsync <RCustomer>(ProcName.Customer_Search, parameters, commandType: CommandType.StoredProcedure); var dataReturn = data.ToArray(); if (dataReturn.Length > 0) { paging.TotalRow = dataReturn[0].TotalRow; } return dataReturn; })); }
public async Task <RCustomer[]> Search(string code, string email, string mobile, string fullName, DateTime?fromBirthday, DateTime?toBirthday, EnumDefine.CustomerTypeEnum type, EnumDefine.CustomerStatusEnum status, RefSqlPaging paging) { return(await _customerRepository.Search(code, email, mobile, fullName, fromBirthday, toBirthday, type, status, paging)); }