Ejemplo n.º 1
0
        /// <summary>
        /// 导出蓄电池覆盖区域--按品牌
        /// </summary>
        /// <param name="brand"></param>
        /// <returns></returns>
        public async Task <ActionResult> ExportData(string productType, string brand)
        {
            if (string.IsNullOrEmpty(brand))
            {
                return(Json(new { Status = false, Msg = "请选择品牌" }, JsonRequestBehavior.AllowGet));
            }
            var workbook = new XSSFWorkbook();
            var index    = 0;
            var sheet    = workbook.CreateSheet();
            var row      = sheet.CreateRow(index++);
            var cellNum  = 0;

            row.CreateCell(cellNum++).SetCellValue("省份名称");
            row.CreateCell(cellNum++).SetCellValue("城市名称");
            row.CreateCell(cellNum++).SetCellValue("区域名称");
            row.CreateCell(cellNum++).SetCellValue("品牌");
            row.CreateCell(cellNum++).SetCellValue("是否启用TRUE/FALSE");
            row.CreateCell(cellNum).SetCellValue("备注(选填)");
            cellNum = 0;
            sheet.SetColumnWidth(cellNum++, 10 * 256);
            sheet.SetColumnWidth(cellNum++, 10 * 256);
            sheet.SetColumnWidth(cellNum++, 10 * 256);
            sheet.SetColumnWidth(cellNum++, 14 * 256);
            sheet.SetColumnWidth(cellNum++, 20 * 256);
            sheet.SetColumnWidth(cellNum, 28 * 256);
            var pager = new PagerModel()
            {
                CurrentPage = 1,
                PageSize    = int.MaxValue
            };
            var manager = new VendorProductCoverAreaManager();
            var list    = (await manager.SelectVendorProductCoverArea
                               (productType, "Brand", brand, string.Empty, 0, 0, 0, pager))?.Item1;

            if (list != null && list.Any())
            {
                foreach (var item in list)
                {
                    row     = sheet.CreateRow(index++);
                    cellNum = 0;
                    row.CreateCell(cellNum++).SetCellValue(item.ProvinceName);
                    row.CreateCell(cellNum++).SetCellValue(item.CityName);
                    row.CreateCell(cellNum++).SetCellValue(item.DistrictName);
                    row.CreateCell(cellNum++).SetCellValue(item.Brand);
                    row.CreateCell(cellNum++).SetCellValue(item.IsEnabled);
                    row.CreateCell(cellNum).SetCellValue(item.Remark);
                }
            }
            var ms = new MemoryStream();

            workbook.Write(ms);
            var zhName = manager.GetZhNameByProductType(productType);

            return(File(ms.ToArray(), "application/x-xls", $"{zhName}产品{brand}品牌覆盖区域数据" +
                        $"{DateTime.Now.ToString("yyyy年MM月dd日HH时mm分ss秒")}.xlsx"));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> RemoveCache(VendorProductCoverAreaModel model)
        {
            if (string.IsNullOrEmpty(model?.ProductType) || model.CoverRegionId < 1)
            {
                return(Json(new { Status = false, Msg = "未知的对象" }, JsonRequestBehavior.AllowGet));
            }
            var manager = new VendorProductCoverAreaManager();
            var result  = await manager.RemoveCache(new List <VendorProductCoverAreaModel>(1) { model });

            return(Json(new { Status = result, Msg = $" 清除缓存{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 查询覆盖区域--按品牌
        /// </summary>
        /// <param name="brand"></param>
        /// <param name="province"></param>
        /// <param name="city"></param>
        /// <param name="district"></param>
        /// <param name="pageNum"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public async Task <JsonResult> SelectCoverArea
            (string productType, string coverType, string brand, string pid, int provinceId, int cityId,
            int districtId, int pageIndex, int pageSize = 20)
        {
            var manager = new VendorProductCoverAreaManager();
            var pager   = new PagerModel(pageIndex, pageSize);
            var result  = await manager.SelectVendorProductCoverArea(productType, coverType, brand, pid,
                                                                     provinceId, cityId, districtId, pager);

            return(Json(new { Status = result.Item1 != null, Data = result.Item1, TotalCount = result.Item2 }
                        , JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 4
0
        public JsonResult DeleteCoverArea(VendorProductCoverAreaModel model)
        {
            if (model?.PKID < 1)
            {
                return(Json(new { Status = false, Msg = "未知的删除对象" }));
            }
            bool result  = false;
            var  user    = HttpContext.User.Identity.Name;
            var  manager = new VendorProductCoverAreaManager();

            result = manager.DeleteCoverArea(model, user);
            return(Json(new { Status = result, Msg = $"删除{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 5
0
        public async Task <ActionResult> UploadExcel(string productType, string coverType)
        {
            var files = Request.Files;

            if (files.Count < 1)
            {
                return(Json(new { Status = false, Msg = "请选择文件" }));
            }
            var file = files[0];

            if (file.ContentType != "application/vnd.ms-excel" &&
                file.ContentType != "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
            {
                return(Json(new { Status = false, Msg = "请上传Excel文件" }));
            }
            var fileSize = file.ContentLength;

            if (fileSize > 200 * 1024)
            {
                return(Json(new { Status = false, Msg = "文件大小不得超过200KB(不同品牌分批上传)" }));
            }
            var convertResult = ConvertExcelToList(file);

            if (!string.IsNullOrEmpty(convertResult.Item2))
            {
                return(Json(new { Status = false, Msg = convertResult.Item2 }));
            }
            else if (convertResult.Item1 == null || !convertResult.Item1.Any())
            {
                return(Json(new { Status = false, Msg = "Excel内容为空" }));
            }
            else
            {
                var manager    = new VendorProductCoverAreaManager();
                var user       = User.Identity.Name;
                var fillResult = await manager.FillConvertCoverArea(convertResult.Item1, productType, coverType);

                if (!string.IsNullOrEmpty(fillResult.Item2))
                {
                    return(Json(new { Status = false, Msg = fillResult.Item2 }));
                }
                var result = await manager.UploadBatterCoverArea(fillResult.Item1, user);

                return(Json(new { Status = result, Msg = $"导入{(result ? "成功" : "失败")}" }));
            }
        }
Ejemplo n.º 6
0
        public JsonResult AddCoverArea(VendorProductCoverAreaModel model)
        {
            if (model?.CoverRegionId < 1 || string.IsNullOrEmpty(model.ProductType) || string.IsNullOrEmpty(model.CoverType))
            {
                return(Json(new { Status = false, Msg = "未知的添加对象" }));
            }
            var user           = HttpContext.User.Identity.Name;
            var manager        = new VendorProductCoverAreaManager();
            var validateResult = manager.ValidateVendorProductConverArea(model);

            if (!validateResult.Item1)
            {
                return(Json(new { Status = false, Msg = validateResult.Item2 }));
            }
            var result = manager.AddCoverArea(model, user);

            return(Json(new { Status = result, Msg = $"添加{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet));
        }