コード例 #1
0
        public IHttpActionResult InsertRepData(EntityReps model)
        {
            var response = new DataResponse <EntityReps>();

            if (ModelState.IsValid)
            {
                model.UpdatedBy = model.CreatedBy = CurrentUserId;
                if (model.Id > 0)
                {
                    response = new RepositoryReps().Update(model);
                }
                else
                {
                    response = new RepositoryReps().Insert(model);
                }
                return(Ok <DataResponse>(response));
            }
            else
            {
                var errorList = ModelState.Where(a => a.Value.Errors.Any()).Select(s => new
                {
                    Key     = s.Key.Split('.').Last(),
                    Message = s.Value.Errors[0].ErrorMessage
                });
                return(Ok <dynamic>(new { Status = HttpStatusCode.BadRequest, Model = errorList }));
            }
        }
コード例 #2
0
        public DataResponse <EntityReps> Update(EntityReps entity)
        {
            var response = new DataResponse <EntityReps>();

            try
            {
                base.DBInit();

                entity.UpdatedOn = DateTime.UtcNow;

                var model = DBEntity.Reps.FirstOrDefault(a => a.Id == entity.Id);
                model.UserId     = entity.UserId;
                model.RepGroupId = entity.RepGroupId;
                model.IsActive   = entity.IsActive;
                model.UpdatedOn  = entity.UpdatedOn;
                model.UpdatedBy  = entity.UpdatedBy;

                if (base.DBSaveUpdate(model) > 0)
                {
                    IEnumerable <RepServiceMapper> RepManagerIds = DBEntity.RepServiceMappers.Where(a => a.RepId == model.Id).ToList();
                    if (RepManagerIds.Count() > 0)
                    {
                        DBEntity.RepServiceMappers.RemoveRange(RepManagerIds);
                        DBEntity.SaveChanges();
                    }
                    if (entity.ServiceIds != null && entity.ServiceIds.Count() > 0)
                    {
                        foreach (var item in entity.ServiceIds)
                        {
                            DBEntity.RepServiceMappers.Add(new RepServiceMapper {
                                RepId = entity.Id, ServiceId = item, CreatedBy = model.CreatedBy, CreatedOn = model.CreatedOn
                            });
                            DBEntity.SaveChanges();
                        }
                    }
                    return(GetRepById(model.Id));
                }
                else
                {
                    response.CreateResponse(DataResponseStatus.InternalServerError);
                }
            }
            catch (Exception ex)
            {
                ex.Log();
            }
            finally
            {
                base.DBClose();
            }
            return(response);
        }
コード例 #3
0
        public IHttpActionResult CreateSalesRep(SalesRepModel model)
        {
            var response   = new DataResponse <EntityReps>();
            var entityReps = new EntityReps();

            entityReps.UserId               = model.UserId;
            entityReps.RepGroupId           = model.RepGroupId;
            entityReps.CreatedBy            = CurrentUserId;
            entityReps.CreatedOn            = DateTime.UtcNow;
            entityReps.IsActive             = true;
            entityReps.SelectedServiceNames = model.SelectedServiceNames;

            response = repository.Insert(entityReps);

            return(Ok <DataResponse>(response));
        }
コード例 #4
0
        public DataResponse <EntityReps> Insert(EntityReps entity)
        {
            var response = new DataResponse <EntityReps>();

            try
            {
                base.DBInit();

                var model = new Database.Rep
                {
                    UserId     = entity.UserId,
                    RepGroupId = entity.RepGroupId,
                    CreatedBy  = entity.CreatedBy,
                    CreatedOn  = entity.CreatedOn,
                    IsActive   = true,
                };
                if (base.DBSave(model) > 0)
                {
                    if (entity.ServiceIds != null && entity.ServiceIds.Count() > 0)
                    {
                        foreach (var item in entity.ServiceIds)
                        {
                            DBEntity.RepServiceMappers.Add(new RepServiceMapper {
                                ServiceId = item, RepId = model.Id, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn
                            });
                            DBEntity.SaveChanges();
                        }
                    }
                    entity.Id = model.Id;
                    response.CreateResponse(entity, DataResponseStatus.OK);
                }
                else
                {
                    response.CreateResponse(DataResponseStatus.InternalServerError);
                }
            }
            catch (Exception ex)
            {
                ex.Log();
            }
            finally
            {
                base.DBClose();
            }
            return(response);
        }
コード例 #5
0
        public IHttpActionResult UpdateSalesRep(SalesRepModel model)
        {
            var response = new DataResponse <EntityReps>();

            if (ModelState.IsValid)
            {
                var entityReps = new EntityReps();
                entityReps.Id                   = model.Id;
                entityReps.UserId               = model.UserId;
                entityReps.RepGroupId           = model.RepGroupId;
                entityReps.IsActive             = model.IsActive.Value;
                entityReps.UpdatedBy            = CurrentUserId;
                entityReps.UpdatedOn            = DateTime.UtcNow;
                entityReps.SelectedServiceNames = model.SelectedServiceNames;

                response = repository.Update(entityReps);
            }
            return(Ok <DataResponse>(response));
        }