diff --git a/ARW.Model/Dto/Business/Marketing/CouponManage/Coupons/CouponDto.cs b/ARW.Model/Dto/Business/Marketing/CouponManage/Coupons/CouponDto.cs index 8def907..6511b48 100644 --- a/ARW.Model/Dto/Business/Marketing/CouponManage/Coupons/CouponDto.cs +++ b/ARW.Model/Dto/Business/Marketing/CouponManage/Coupons/CouponDto.cs @@ -54,6 +54,8 @@ namespace ARW.Model.Dto.Business.Marketing.CouponManage.Coupons [Required(ErrorMessage = "排序不能为空")] public int CouponSort { get; set; } + public string CouponApplicableScopeConfig { get; set; } + public string CouponGoodsIds { get; set; } diff --git a/ARW.Model/Models/Business/Marketing/CouponManage/Coupons/Coupon.cs b/ARW.Model/Models/Business/Marketing/CouponManage/Coupons/Coupon.cs index 046d8b1..3e96549 100644 --- a/ARW.Model/Models/Business/Marketing/CouponManage/Coupons/Coupon.cs +++ b/ARW.Model/Models/Business/Marketing/CouponManage/Coupons/Coupon.cs @@ -134,6 +134,15 @@ namespace ARW.Model.Models.Business.Marketing.CouponManage.Coupons public string CouponApplicableScopeConfig { get; set; } + /// + /// 描述 :适用范围(指定商品的Id集) + /// 空值 : true + /// + [EpplusTableColumn(Header = "适用范围(指定商品的Id集)")] + [SugarColumn(ColumnName = "coupon_goods_ids")] + public string CouponGoodsIds { get; set; } + + /// /// 描述 :发送数量(-1不限制) /// 空值 : false diff --git a/ARW.Model/Vo/Business/GoodsManager/Goodss/AllGoodsVo.cs b/ARW.Model/Vo/Business/GoodsManager/Goodss/AllGoodsVo.cs index 32eebc3..92e1055 100644 --- a/ARW.Model/Vo/Business/GoodsManager/Goodss/AllGoodsVo.cs +++ b/ARW.Model/Vo/Business/GoodsManager/Goodss/AllGoodsVo.cs @@ -58,11 +58,16 @@ namespace ARW.Model.Vo.Business.GoodsManager.Goodss [EpplusTableColumn(Header = "划线价格")] public decimal GoodsDashedPriceLowest { get; set; } - + /// + /// 库存总量 + /// + public int GoodsTotalInventory { get; set; } + + /// /// 描述 :上下架状态(1上架 2下架) /// - [EpplusIgnore] + [EpplusIgnore] public int GoodsShelfStatus { get; set; } diff --git a/ARW.Model/Vo/Business/Marketing/CouponManage/Coupons/CouponVo.cs b/ARW.Model/Vo/Business/Marketing/CouponManage/Coupons/CouponVo.cs index 5e9ad04..9e36c42 100644 --- a/ARW.Model/Vo/Business/Marketing/CouponManage/Coupons/CouponVo.cs +++ b/ARW.Model/Vo/Business/Marketing/CouponManage/Coupons/CouponVo.cs @@ -122,5 +122,12 @@ namespace ARW.Model.Vo.Business.Marketing.CouponManage.Coupons [EpplusTableColumn(Header = "排序")] public int CouponSort { get; set; } + [EpplusIgnore] + public string CouponApplicableScopeConfig { get; set; } + + [EpplusIgnore] + public string CouponGoodsIdsArr { get; set; } + [EpplusIgnore] + public string[] CouponGoodsIds { get; set; } } } diff --git a/ARW.Service/Business/BusinessService/GoodsManager/Goodss/GoodsService.cs b/ARW.Service/Business/BusinessService/GoodsManager/Goodss/GoodsService.cs index bda764c..d2f64a0 100644 --- a/ARW.Service/Business/BusinessService/GoodsManager/Goodss/GoodsService.cs +++ b/ARW.Service/Business/BusinessService/GoodsManager/Goodss/GoodsService.cs @@ -217,6 +217,7 @@ namespace ARW.Service.Business.BusinessService.GoodsManager.Goodss GoodsDashedPriceLowest = s.GoodsDashedPriceLowest, GoodsShelfStatus = s.GoodsShelfStatus, GoodsSort = s.GoodsSort, + GoodsTotalInventory = s.GoodsTotalInventory, }); diff --git a/ARW.Service/Business/BusinessService/Marketing/CouponManage/Coupons/CouponService.cs b/ARW.Service/Business/BusinessService/Marketing/CouponManage/Coupons/CouponService.cs index 3cadd00..0296928 100644 --- a/ARW.Service/Business/BusinessService/Marketing/CouponManage/Coupons/CouponService.cs +++ b/ARW.Service/Business/BusinessService/Marketing/CouponManage/Coupons/CouponService.cs @@ -33,13 +33,13 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons this._CouponRepository = CouponRepository; } - #region 业务逻辑代码 - - - /// + #region 业务逻辑代码 + + + /// /// 查询优惠券分页列表 /// - public async Task> GetCouponList(CouponQueryDto parm) + public async Task> GetCouponList(CouponQueryDto parm) { //开始拼装查询条件d var predicate = Expressionable.Create(); @@ -52,31 +52,40 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons var query = _CouponRepository .Queryable() .Where(predicate.ToExpression()) - .OrderBy(s => s.CouponSort,OrderByType.Asc) + .OrderBy(s => s.CouponSort, OrderByType.Asc) .Select(s => new CouponVo { - CouponId = s.CouponId, - CouponGuid = s.CouponGuid, - CouponName = s.CouponName, - CouponType = s.CouponType, - CouponDeductionMoney = s.CouponDeductionMoney, - CouponDiscountRate = s.CouponDiscountRate, - CouponMinConsumeMoney = s.CouponMinConsumeMoney, - CouponExpireType = s.CouponExpireType, - CouponEffectiveDays = s.CouponEffectiveDays, - CouponFixedStartTime = s.CouponFixedStartTime, - CouponFixedEndTime = s.CouponFixedEndTime, - CouponApplicableScope = s.CouponApplicableScope, - CouponSendNumber = s.CouponSendNumber, - CouponDisplayStatus = s.CouponDisplayStatus, - CouponSort = s.CouponSort, - }); - + CouponId = s.CouponId, + CouponGuid = s.CouponGuid, + CouponName = s.CouponName, + CouponType = s.CouponType, + CouponDeductionMoney = s.CouponDeductionMoney, + CouponDiscountRate = s.CouponDiscountRate, + CouponMinConsumeMoney = s.CouponMinConsumeMoney, + CouponExpireType = s.CouponExpireType, + CouponEffectiveDays = s.CouponEffectiveDays, + CouponFixedStartTime = s.CouponFixedStartTime, + CouponFixedEndTime = s.CouponFixedEndTime, + CouponApplicableScope = s.CouponApplicableScope, + CouponSendNumber = s.CouponSendNumber, + CouponDisplayStatus = s.CouponDisplayStatus, + CouponSort = s.CouponSort, + CouponApplicableScopeConfig = s.CouponApplicableScopeConfig, + CouponGoodsIdsArr = s.CouponGoodsIds + }); - return await query.ToPageAsync(parm); + + var list = await query.ToPageAsync(parm); + + //foreach (var item in list.Result) + //{ + // item.CouponGoodsIds = item.CouponGoodsIdsArr.Split(','); + //} + + return list; } - /// + /// /// 添加或修改优惠券 /// public async Task AddOrUpdateCoupon(Coupon model) @@ -95,7 +104,7 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons } #region Excel处理 - /// + /// /// 数据导入处理 /// public async Task HandleImportData(CouponVo Coupon) @@ -107,7 +116,7 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons /// /// Excel导入 /// - public async Task ImportExcel(Coupon Coupon,int index,bool isUpdateSupport,string user) + public async Task ImportExcel(Coupon Coupon, int index, bool isUpdateSupport, string user) { try { @@ -118,7 +127,7 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons { // 判断唯一值 var model = await GetFirstAsync(s => s.CouponId == Coupon.CouponId); - + // 如果为空就新增数据 if (model == null) { @@ -146,8 +155,9 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons return editStr; } } - else{ - // 开启事务 + else + { + // 开启事务 var res = await UseTranAsync(async () => { var addRes = await AddOrUpdateCoupon(Coupon); @@ -166,7 +176,7 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons } - + /// /// Excel数据导出处理 /// @@ -176,10 +186,10 @@ namespace ARW.Service.Business.BusinessService.Marketing.CouponManage.Coupons } #endregion - -#endregion + + #endregion } } diff --git a/ARW.WebApi/Controllers/Business/GoodsManager/Goodss/GoodsController.cs b/ARW.WebApi/Controllers/Business/GoodsManager/Goodss/GoodsController.cs index cc64522..bfc525c 100644 --- a/ARW.WebApi/Controllers/Business/GoodsManager/Goodss/GoodsController.cs +++ b/ARW.WebApi/Controllers/Business/GoodsManager/Goodss/GoodsController.cs @@ -97,14 +97,6 @@ namespace ARW.WebApi.Controllers.Business.GoodsManager.Goodss [HttpGet("getAllGoodsList")] public async Task GetAllGoodsList([FromQuery] GoodsQueryDto parm) { - var user = JwtUtil.GetLoginUser(App.HttpContext); - if (user.UserId != 1) - { - var shop = await _ShopService.GetFirstAsync(s => s.ShopUserId == user.UserId); - if (shop == null) throw new Exception("当前用户没有店铺"); - parm.ShopGuid = shop.ShopGuid; - } - var res = await _GoodsService.GetAllGoodsList(parm); return SUCCESS(res); } diff --git a/ARW.WebApi/Controllers/Business/Marketing/CouponManage/Coupons/CouponController.cs b/ARW.WebApi/Controllers/Business/Marketing/CouponManage/Coupons/CouponController.cs index 19df621..af39041 100644 --- a/ARW.WebApi/Controllers/Business/Marketing/CouponManage/Coupons/CouponController.cs +++ b/ARW.WebApi/Controllers/Business/Marketing/CouponManage/Coupons/CouponController.cs @@ -66,7 +66,7 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons { if (parm == null) { throw new CustomException("请求参数错误"); } - var modal = new Coupon(); + var modal = new Coupon(); if (parm.CouponId != 0) modal = parm.Adapt().ToUpdate(HttpContext); else modal = parm.Adapt().ToCreate(HttpContext); @@ -88,8 +88,8 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons var response = _CouponService.Delete(idsArr); return SUCCESS("删除成功!"); } - - /// + + /// /// 导入优惠券 /// /// 使用IFromFile必须使用name属性否则获取不到文件 @@ -98,7 +98,7 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons [HttpPost("importData")] [Log(Title = "优惠券导入", BusinessType = BusinessType.IMPORT, IsSaveRequestData = false, IsSaveResponseData = false)] [ActionPermissionFilter(Permission = "business:coupon:import")] - public async Task ImportExcel([FromForm(Name = "file")] IFormFile formFile,bool updateSupport) + public async Task ImportExcel([FromForm(Name = "file")] IFormFile formFile, bool updateSupport) { var isUpdateSupport = updateSupport; IEnumerable parm = ExcelHelper.ImportData(formFile.OpenReadStream()); @@ -111,7 +111,7 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons var Coupon = await _CouponService.HandleImportData(item); var modal = Coupon.Adapt().ToCreate(HttpContext); var user = JwtUtil.GetLoginUser(App.HttpContext).UserName; - var msg = await _CouponService.ImportExcel(modal,i,isUpdateSupport,user); + var msg = await _CouponService.ImportExcel(modal, i, isUpdateSupport, user); msgList.Add(msg); } @@ -137,15 +137,15 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons return File(stream.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"{sFileName}"); } - - /// + + /// /// 导出优惠券 /// /// [Log(Title = "优惠券导出", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [HttpGet("exportCoupon")] [ActionPermissionFilter(Permission = "business:coupon:export")] - public async Task ExportExcel([FromQuery] CouponQueryDto parm) + public async Task ExportExcel([FromQuery] CouponQueryDto parm) { parm.PageSize = 10000; var list = await _CouponService.GetCouponList(parm); @@ -164,7 +164,7 @@ namespace ARW.WebApi.Controllers.Business.Marketing.CouponManage.Coupons data = selectDataList; } - + // 导出数据处理 var handleData = await _CouponService.HandleExportData(data);