示例#1
0
        public JsonResult UploadTrialReport(Guid userId, int orderId, int pkid, string title,
                                            string content, string imgStr)
        {
            var result = ZeroActivityManager.CreateProductComment(userId, orderId, pkid, title, content, imgStr);

            return(Json(new { result = result.Item1, msg = result.Item2 }, JsonRequestBehavior.AllowGet));
        }
示例#2
0
        //0元购成功获奖的处理
        public ActionResult SucceedAward(string model, int OrderId)
        {
            var Zaa              = JsonConvert.DeserializeObject <ZeroActivityApply>(model);
            var UserID           = Zaa.UserID.ToString();
            var UserMobileNumber = Zaa.UserMobileNumber;
            var Period           = Zaa.Period;

            return(Json(ZeroActivityManager.ZeroAward(Period, UserID, UserMobileNumber, OrderId)));
        }
 /// <summary>
 /// 获取未结束的首页众测活动列表
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <IEnumerable <ZeroActivityModel> > > SelectUnfinishedZeroActivitiesForHomepageAsync(bool resetCache = false)
 {
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.SelectUnfinishedZeroActivitiesForHomepageAsync(resetCache)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <IEnumerable <ZeroActivityModel> >(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 判断用户是否已触发开测提醒
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <bool> > HasZeroActivityReminderSubmittedAsync(Guid userId, int period)
 {
     if (userId == null || userId.Equals(Guid.Empty) || period < 0)
     {
         return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.HasZeroActivityReminderSubmittedAsync(userId, period)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <bool>(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 获取众测报告详情
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <SelectedTestReportDetail> > FetchTestReportDetailAsync(int commentId)
 {
     if (commentId < 0)
     {
         return(OperationResult.FromError <SelectedTestReportDetail>(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.FetchTestReportDetailAsync(commentId)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <SelectedTestReportDetail>(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 获取已结束的首页众测活动列表
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <IEnumerable <ZeroActivityModel> > > SelectFinishedZeroActivitiesForHomepageAsync(int pageNumber)
 {
     if (pageNumber <= 0)
     {
         return(OperationResult.FromError <IEnumerable <ZeroActivityModel> >(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.SelectFinishedZeroActivitiesForHomepageAsync(pageNumber)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <IEnumerable <ZeroActivityModel> >(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 获取众测活动详情
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <ZeroActivityDetailModel> > FetchZeroActivityDetailAsync(int period)
 {
     if (period < 0)
     {
         return(OperationResult.FromError <ZeroActivityDetailModel>(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.FetchZeroActivityDetailAsync(period)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <ZeroActivityDetailModel>(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 获取特定众测活动的入选用户与其报告概况
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <IEnumerable <SelectedTestReport> > > SelectChosenUserReportsAsync(int period)
 {
     if (period < 0)
     {
         return(OperationResult.FromError <IEnumerable <SelectedTestReport> >(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.SelectChosenUserReportsAsync(period)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <IEnumerable <SelectedTestReport> >(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
 /// <summary>
 /// 获取用户众测活动申请
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <IEnumerable <MyZeroActivityApplications> > > SelectMyApplicationsAsync(Guid userId, int applicationStatus)
 {
     if (userId == null || userId.Equals(Guid.Empty))
     {
         return(OperationResult.FromError <IEnumerable <MyZeroActivityApplications> >(ErrorCode.ParameterError, "参数错误"));
     }
     try
     {
         return(await OperationResult.FromResultAsync(ZeroActivityManager.SelectMyApplicationsAsync(userId, applicationStatus)));
     }
     catch (Exception ex)
     {
         return(OperationResult.FromError <IEnumerable <MyZeroActivityApplications> >(ErrorCode.DataNotExisted, "服务端异常"));
     }
 }
        /// <summary>
        ///提交众测申请
        /// </summary>
        /// <returns></returns>
        public async Task <OperationResult <bool> > SubmitZeroActivityApplicationAsync(ZeroActivityRequest requestModel)
        {
            if (requestModel == null)
            {
                return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "传入的requestModel不能为空"));
            }
            else if (requestModel.Period < 0)
            {
                return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "period参数出错,应该大于0"));
            }
            else if (requestModel.UserId == null || requestModel.UserId == Guid.Empty)
            {
                return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "UserId参数不能为空"));
            }
            else if (string.IsNullOrWhiteSpace(requestModel.UserName))
            {
                return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "UserName参数不能为空"));
            }

            var result = await ZeroActivityManager.SubmitZeroActivityApplicationAsync(requestModel);

            if (result > 0)
            {
                return(OperationResult.FromResult(true));
            }
            else if (result == -2)
            {
                return(OperationResult.FromError <bool>("ActivityNotExisted", "该期活动不存在"));
            }
            else if (result == -3)
            {
                return(OperationResult.FromError <bool>("ActivityNotProceeding", "该期活动不在进行中"));
            }
            else if (result == -4)
            {
                return(OperationResult.FromError <bool>("ActivityNotProceeding", "该期活动的PID或ProductName为空,无法插入"));
            }
            else if (result == -1)
            {
                return(OperationResult.FromError <bool>("ApplyExisted", "您已经申请了本期活动"));
            }
            else
            {
                return(OperationResult.FromError <bool>("InsertFailure", "新建数据失败"));
            }
        }
示例#11
0
        //0元购活动配置
        public ActionResult ZAConfigure(int pageIndex = 1, int pageSize = 10)
        {
            var result    = ZeroActivityManager.SelectZeroActivityDetail();
            var totalpage = result.Count * 1.0 / pageSize;

            if (totalpage - (int)totalpage == 0)
            {
                ViewBag.TotalCount = (int)totalpage;
            }
            else
            {
                ViewBag.TotalCount = (int)totalpage + 1;
            }
            ViewBag.CurrentPage = pageIndex;
            result = result.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList();
            return(View(result));
        }
示例#12
0
        public JsonResult UpsertZeroActivity(string productId, string variantId, string des, DateTime start, DateTime end, string imgUrl, int period = 0, int successQuota = 0, int quantity = 0)
        {
            var msg = string.Empty;

            if (start != null && end != null && start > end)
            {
                return(Json(new { status = "fail", msg = "日期选择错误" }, JsonRequestBehavior.AllowGet));
            }
            var details = ZeroActivityManager.SelectZeroActivityDetail();

            if (start > details.Where(o => !o.Period.Equals(period)).OrderByDescending(_ => _.EndDateTime).Select(x => x.EndDateTime).FirstOrDefault())
            {
                return(Json(new { status = "fail", msg = "活动时间有间断" }, JsonRequestBehavior.AllowGet));
            }

            ZeroActivityDetail data = new ZeroActivityDetail()
            {
                Period        = period,
                ProductID     = productId,
                VariantID     = variantId,
                Description   = des,
                StartDateTime = start,
                EndDateTime   = end,
                SucceedQuota  = successQuota,
                Quantity      = quantity,
                ImgUrl        = imgUrl
            };
            var result = ZeroActivityManager.ZAConfigureAct(data) > 0;

            if (result)
            {
                return(Json(new { status = "success" }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new { status = "fail", msg = "操作失败" }, JsonRequestBehavior.AllowGet));
            }
        }
        /// <summary>
        ///触发开测提醒
        /// </summary>
        /// <returns></returns>
        public async Task <OperationResult <bool> > SubmitZeroActivityReminderAsync(Guid userId, int period)
        {
            if (userId == null || userId == Guid.Empty || period < 0)
            {
                return(OperationResult.FromError <bool>(ErrorCode.ParameterError, "参数出错"));
            }
            try
            {
                var result = await ZeroActivityManager.SubmitZeroActivityReminderAsync(userId, period);

                if (result > 0)
                {
                    return(OperationResult.FromResult(true));
                }
                else if (result == -3)
                {
                    return(OperationResult.FromError <bool>("ActivityAlreadyStarted", "该期活动已开始"));
                }
                else if (result == -2)
                {
                    return(OperationResult.FromError <bool>("ActivityNotExisted", "该期活动不存在"));
                }
                else if (result == -1)
                {
                    return(OperationResult.FromError <bool>("ApplyExisted", "您已经触发过开测提醒"));
                }
                else
                {
                    return(OperationResult.FromError <bool>("InsertFailure", "新建数据失败"));
                }
            }
            catch (Exception ex)
            {
                return(OperationResult.FromError <bool>("ExceptionOccurred", "服务端异常"));
            }
        }
 /// <summary>
 ///刷新众测活动配置缓存
 /// </summary>
 /// <returns></returns>
 public Task <OperationResult <bool> > RefreshZeroActivityCacheAsync()
 => OperationResult.FromResultAsync(ZeroActivityManager.RefreshZeroActivityCache());
 /// <summary>
 ///  获取 APP 首页 0元众测 列表
 /// </summary>
 /// <returns></returns>
 public async Task <OperationResult <List <ZeroActivitySimpleRespnseModel> > > SelectHomePageModuleShowZeroActivityAsync()
 {
     return(OperationResult.FromResult(await ZeroActivityManager.SelectHomePageModuleShowZeroActivityAsync()));
 }
示例#16
0
        //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));
            }
        }
示例#17
0
 public ActionResult ZAConfigureDelete(int period)
 {
     return(Json(ZeroActivityManager.ZAConfigureDelete(period)));
 }
示例#18
0
 public ActionResult UpdateStatusByPeriod(int period)
 {
     return(Json(ZeroActivityManager.UpdateStatusByPeriod(period)));
 }