/// <summary> /// 0元购活动申请详情 以及筛选 /// </summary> /// <param name="Period"></param> /// <param name="OrderQuantity"></param> /// <param name="Succeed"></param> /// <param name="ReportStatus"></param> /// <returns></returns> public static List <ZeroActivityApply> ZeroConditionFilter(ZeroActivityApply filtermodel, int CurrentPage, int PageSize, out int TotalCount) { using (var dbhelper = new SqlDbHelper(ConnectionHelper.GetDecryptConn("Gungnir"))) { var cmd = new SqlCommand("[Activity].dbo.[Activity_ZeroActivityApply_Filter]"); cmd.CommandType = CommandType.StoredProcedure; if (filtermodel.Period == 0) { cmd.Parameters.AddWithValue("@Period", null); } else { cmd.Parameters.AddWithValue("@Period", filtermodel.Period); } cmd.Parameters.AddWithValue("@Succeed", filtermodel.Succeed); cmd.Parameters.AddWithValue("@OrderQuantity", filtermodel.UserOrderQuantity); cmd.Parameters.AddWithValue("@ReportStatus", filtermodel.ReportStatus); cmd.Parameters.AddWithValue("@UserMobileNumber", filtermodel.UserMobileNumber); cmd.Parameters.AddWithValue("@CurrentPage", CurrentPage); cmd.Parameters.AddWithValue("@PageSize", PageSize); cmd.Parameters.Add(new SqlParameter() { ParameterName = "@TotalCount", DbType = DbType.Int32, Direction = ParameterDirection.Output }); DataTable dt = dbhelper.ExecuteDataTable(cmd); TotalCount = Convert.ToInt32(cmd.Parameters["@TotalCount"].Value); return(dbhelper.ExecuteDataTable(cmd).ConvertTo <ZeroActivityApply>().ToList()); } }
/// <summary> /// 0元购活动申请详情 以及筛选 /// </summary> /// <param name="Period"></param> /// <param name="OrderQuantity"></param> /// <param name="Succeed"></param> /// <param name="ReportStatus"></param> /// <returns></returns> public static List <ZeroActivityApply> ZeroConditionFilter(ZeroActivityApply filtermodel, int CurrentPage, int PageSize, out int TotalCount) { return(DalZeroActivity.ZeroConditionFilter(filtermodel, CurrentPage, PageSize, out TotalCount)); }
//0元购 筛选功能 public ActionResult ZeroActivity(ZeroActivityApply filtermodel, string type, int CurrentPage = 1) { var model = new List <ZeroActivityApply>(); int TotalCount = 0; if (type == "导出") { var workbook = new XSSFWorkbook(); var sheet = workbook.CreateSheet(); var row = sheet.CreateRow(0); var cell = null as ICell; var cellNum = 0; row.CreateCell(cellNum++).SetCellValue("申请渠道"); row.CreateCell(cellNum++).SetCellValue("期数"); row.CreateCell(cellNum++).SetCellValue("用户ID"); row.CreateCell(cellNum++).SetCellValue("用户名"); row.CreateCell(cellNum++).SetCellValue("用户电话号码"); row.CreateCell(cellNum++).SetCellValue("用户订单数"); row.CreateCell(cellNum++).SetCellValue("产品名称"); row.CreateCell(cellNum++).SetCellValue("产品PID"); row.CreateCell(cellNum++).SetCellValue("产品尺寸"); row.CreateCell(cellNum++).SetCellValue("申请的产品数量"); row.CreateCell(cellNum++).SetCellValue("所在省"); row.CreateCell(cellNum++).SetCellValue("所在地区"); row.CreateCell(cellNum++).SetCellValue("获得加油数"); row.CreateCell(cellNum++).SetCellValue("申请理由"); row.CreateCell(cellNum++).SetCellValue("车型"); row.CreateCell(cellNum++).SetCellValue("是否成功获奖"); row.CreateCell(cellNum++).SetCellValue("获得轮胎后的订单号"); row.CreateCell(cellNum++).SetCellValue("试用报告的状态"); row.CreateCell(cellNum++).SetCellValue("申请时间"); row.CreateCell(cellNum++).SetCellValue("更新时间"); cellNum = 0; sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); sheet.SetColumnWidth(cellNum++, 18 * 256); if (filtermodel.Period > 0) { model = ZeroActivityManager.ZeroConditionFilter(filtermodel, 1, 9999, out TotalCount); if (model != null && model.Any()) { for (var i = 0; i < model.Count; i++) { cellNum = 0; NPOI.SS.UserModel.IRow rowtemp = sheet.CreateRow(i + 1); rowtemp.CreateCell(cellNum++).SetCellValue(ConvertChannel(model[i].ApplyChannel)); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].Period.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].UserID?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].UserName?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].UserMobileNumber?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].UserOrderQuantity?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].ProductName?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].PID?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].ProductSize?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].Quantity.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].ProvinceName?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].CityName?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].SupportNumber.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].ApplyReason?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].CarName?.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].Succeed?.ToString() == "1" ? "是" : "否"); rowtemp.CreateCell(cellNum++).SetCellValue(ConvertStatus(model[i].Succeed, model[i].Status, model[i].OrderId)); rowtemp.CreateCell(cellNum++).SetCellValue(ConvertReportStatus(model[i].ReportStatus)); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].ApplyDateTime.ToString()); rowtemp.CreateCell(cellNum++).SetCellValue(model[i].LastUpdateDateTime.ToString()); } } } var ms = new MemoryStream(); workbook.Write(ms); return(File(ms.ToArray(), "application/x-xls", $"第{filtermodel?.Period}期众测申请信息.xlsx")); } else { int PageSize = 500; ViewBag.Period = filtermodel.Period; ViewBag.UserOrderQuantity = filtermodel.UserOrderQuantity; ViewBag.Succeed = filtermodel.Succeed; ViewBag.ReportStatus = filtermodel.ReportStatus; ViewBag.UserMobileNumber = filtermodel.UserMobileNumber; ViewBag.TotalCount = 0; model = ZeroActivityManager.ZeroConditionFilter(filtermodel, CurrentPage, PageSize, out TotalCount); var totalpage = TotalCount * 1.0 / PageSize; if (totalpage - (int)totalpage == 0) { ViewBag.TotalCount = (int)totalpage; } else { ViewBag.TotalCount = (int)totalpage + 1; } ViewBag.CurrentPage = CurrentPage; return(View(model)); } }