Exemplo n.º 1
0
        public int Post([FromBody] InputClassifiedModel classifiedModel)
        {
            //if (!_classifiedService.UserCanAddNormalClassified(CurrentUserId))
            //throw new HttpResponseException(ErrorMessage("لا يمكن للمستخدم إضافة إعلان جديد حالياً"));
            classifiedModel.UserId = CurrentUserId;
            int newClassifiedId = _classifiedService.CreateNormalClassified(classifiedModel);

            return(newClassifiedId);
        }
Exemplo n.º 2
0
 public int CreateNormalClassified(InputClassifiedModel classifiedModel)
 {
     using (var scope = new TransactionScope())
     {
         var classified = new Classified()
         {
             UserId        = classifiedModel.UserId,
             SubCategoryId = classifiedModel.SubCategoryId,
             Title         = classifiedModel.Title,
             Description   = classifiedModel.Description,
             Country       = classifiedModel.Country,
             City          = classifiedModel.City,
             AdType        = classifiedModel.AdType,
             AddingDate    = BusinessSettings.ServerNow,
             IsFeatured    = false,
             ViewCount     = 0,
             Status        = AdStatusList.Pending
         };
         if (classified.AdType == AdTypeList.Fixed)
         {
             classified.AdPrice = classifiedModel.AdPrice;
         }
         else
         {
             classified.AdPrice = null;
         }
         _unitOfWork.ClassifiedRepository.Add(classified);
         _unitOfWork.Save();
         if (classifiedModel.PropertyValues.Any())
         {
             foreach (var p in classifiedModel.PropertyValues)
             {
                 var property = new PropertyValue()
                 {
                     ClassifiedId         = classified.Id,
                     PropertyDefinitionId = p.PropertyDefinitionId,
                     Value = p.Value
                 };
                 _unitOfWork.PropertyValueRepository.Add(property);
                 _unitOfWork.Save();
             }
         }
         scope.Complete();
         return(classified.Id);
     }
 }