public ActionResult Destroy(DestroyPromotionRequest request, int? authuid, UserModel authUser, [FetchPromotion(KeyName = "promotionid", IsCanMissing = true)]PromotionEntity entity) { if (entity == null || authUser == null) { return new RestfulResult { Data = new ExecuteResult { StatusCode = StatusCode.ClientError, Message = "参数错误" } }; } //达人只能删除自己的商品, //店长 可以删除自己店铺下的商品 //运营 管理员权限的用户才可以删除他人的商品 var t = false; //3 if ((authUser.UserRole & (int)UserRole.Admin) != 0) { t = true; } else { if (authUser.Id == entity.RecommendUser && (authUser.Level & UserLevel.Daren) != 0) { t = true; } } request.AuthUid = authuid.Value; request.AuthUser = authUser; return t ? new RestfulResult { Data = this._promotionDataService.DestroyPromotion(request) } : new RestfulResult { Data = new ExecuteResult { StatusCode = StatusCode.ClientError, Message = "您没有权限删除其他用户的活动" } }; }
public ExecuteResult<PromotionInfoResponse> DestroyPromotion(DestroyPromotionRequest request) { if (request == null) { return new ExecuteResult<PromotionInfoResponse>(null) { StatusCode = StatusCode.ClientError, Message = "参数错误" }; } var entity = _promotionRepository.GetItem(request.PromotionId); if (entity == null) { return new ExecuteResult<PromotionInfoResponse>(null) { StatusCode = StatusCode.ClientError, Message = "参数错误,没有找到指定promotion" }; } entity.UpdatedDate = DateTime.Now; entity.UpdatedUser = request.AuthUid; entity.Status = (int)DataStatus.Deleted; _promotionRepository.Delete(entity); return new ExecuteResult<PromotionInfoResponse>(MappingManager.PromotionResponseMapping(entity)); }