Пример #1
0
    public static bool SaveCustomerFollowUp(string[] customerFollowUp)
    {
        using (var customerManager = new CustomerManager(null))
        {
            var cf = new CustomerFollowup();
            var originalCustomerFollowUp = new CustomerFollowup();

            if (!String.IsNullOrEmpty(customerFollowUp[8]))
            {
                originalCustomerFollowUp = customerManager.GetCustomerFollowup(Convert.ToInt32(customerFollowUp[1]), Convert.ToInt32(customerFollowUp[8]));
                cf.CopyPropertiesFrom(originalCustomerFollowUp);
            }

            cf.ContactId = Convert.ToInt32(customerFollowUp[0]);
            cf.CompanyId = Convert.ToInt32(customerFollowUp[1]);
            cf.UserId    = Convert.ToInt32(customerFollowUp[2]);

            cf.Description = customerFollowUp[3].ToString();

            if (!String.IsNullOrEmpty(customerFollowUp[4]))
            {
                cf.CustomerFollowupActionId = Convert.ToInt32(customerFollowUp[4]);
            }

            if (!String.IsNullOrEmpty(customerFollowUp[8]))
            {
                if (!IsAppointment(customerFollowUp))
                {
                    customerManager.UpdateCustomerFollowup(originalCustomerFollowUp, cf, null, null, null);
                }
                else
                {
                    customerManager.UpdateCustomerFollowup(originalCustomerFollowUp, cf, Convert.ToInt32(customerFollowUp[9]), Convert.ToDateTime(customerFollowUp[6]), customerFollowUp[10]);
                }
            }
            else
            if (!IsAppointment(customerFollowUp))
            {
                customerManager.InsertCustomerFollowup(cf, null, null, null);
            }
            else
            {
                customerManager.InsertCustomerFollowup(cf, Convert.ToInt32(customerFollowUp[9]), Convert.ToDateTime(customerFollowUp[6]), customerFollowUp[10]);
            }

            if (cf.CustomerFollowupId != 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
    }
 /// <summary>
 /// this method delete a customerfollowup
 /// </summary>
 /// <param name="entity"></param>
 public void DeleteCustomerFollowup(CustomerFollowup entity)
 {
     //DbContext.CustomerFollowups.Attach(entity);
     DbContext.CustomerFollowups.DeleteOnSubmit(entity);
     DbContext.SubmitChanges();
 }
        /// <summary>
        /// this method update a customerfollowup
        /// </summary>
        /// <param name="original_entity"></param>
        /// <param name="entity"></param>
        public void UpdateCustomerFollowup(CustomerFollowup original_entity, CustomerFollowup entity, Int32? userId,
                                           DateTime? appointmentDate, string appointmentSubject)
        {
            original_entity.CopyPropertiesFrom(entity);
            DbContext.SubmitChanges();

            if (appointmentDate.HasValue && userId.HasValue && !String.IsNullOrEmpty(appointmentSubject))
                GenerateTaskFromCustomerFollowUp(entity, Convert.ToInt32(userId), Convert.ToDateTime(appointmentDate),
                                                 appointmentSubject);
        }
        /// <summary>
        /// this method insert a CustomerFollowup
        /// </summary>
        /// <param name="entity"></param>
        public void InsertCustomerFollowup(CustomerFollowup entity, Int32? userId, DateTime? appointmentDate,
                                           string appointmentSubject)
        {
            entity.EntryDate = DateTime.Now;
            DbContext.CustomerFollowups.InsertOnSubmit(entity);
            DbContext.SubmitChanges();

            if (appointmentDate.HasValue && userId.HasValue && !String.IsNullOrEmpty(appointmentSubject))
                GenerateTaskFromCustomerFollowUp(entity, Convert.ToInt32(userId), Convert.ToDateTime(appointmentDate),
                                                 appointmentSubject);
        }
        private void GenerateTaskFromCustomerFollowUp(CustomerFollowup customerFollowup, Int32 userId,
                                                      DateTime appointmentDate, string appoimentSubject)
        {
            // ver se já existe tarefa associada ao followUp 
            var taskManager = new TaskManager(this);
            var task = new Task();
            Task originalTask;

            originalTask = taskManager.GetTask(customerFollowup.CustomerFollowupId, "CustomerFollowUp.aspx");

            if (originalTask != null)
                task.CopyPropertiesFrom(originalTask);

            task.SubjectId = customerFollowup.CustomerFollowupId;
            task.PageName = "CustomerFollowUp.aspx";
            task.Priority = 3;
            task.Name = appoimentSubject;
            task.StartDate = appointmentDate;

            DataClasses.User user = new CompanyManager(null).GetUser(customerFollowup.CompanyId, userId);
            var listUser = new List<DataClasses.User>();

            listUser.Add(user);

            if (originalTask != null)
                taskManager.SaveTask(originalTask, task, listUser);
            else
                taskManager.SaveTask(task, null, listUser);
        }
    public static bool SaveCustomerFollowUp(string[] customerFollowUp)
    {
        using (var customerManager = new CustomerManager(null))
        {
            var cf = new CustomerFollowup();
            var originalCustomerFollowUp = new CustomerFollowup();

            if (!String.IsNullOrEmpty(customerFollowUp[8]))
            {
                originalCustomerFollowUp = customerManager.GetCustomerFollowup(Convert.ToInt32(customerFollowUp[1]), Convert.ToInt32(customerFollowUp[8]));
                cf.CopyPropertiesFrom(originalCustomerFollowUp);
            }

            cf.ContactId = Convert.ToInt32(customerFollowUp[0]);
            cf.CompanyId = Convert.ToInt32(customerFollowUp[1]);
            cf.UserId = Convert.ToInt32(customerFollowUp[2]);

            cf.Description = customerFollowUp[3].ToString();

            if (!String.IsNullOrEmpty(customerFollowUp[4]))
                cf.CustomerFollowupActionId = Convert.ToInt32(customerFollowUp[4]);

            if (!String.IsNullOrEmpty(customerFollowUp[8]))
            {
                if (!IsAppointment(customerFollowUp))
                    customerManager.UpdateCustomerFollowup(originalCustomerFollowUp, cf, null, null, null);
                else
                    customerManager.UpdateCustomerFollowup(originalCustomerFollowUp, cf, Convert.ToInt32(customerFollowUp[9]), Convert.ToDateTime(customerFollowUp[6]), customerFollowUp[10]);
            }
            else
                if (!IsAppointment(customerFollowUp))
                    customerManager.InsertCustomerFollowup(cf, null, null, null);
                else
                    customerManager.InsertCustomerFollowup(cf, Convert.ToInt32(customerFollowUp[9]), Convert.ToDateTime(customerFollowUp[6]), customerFollowUp[10]);

            if (cf.CustomerFollowupId != 0)
                return true;
            else
                return false;
        }
    }