Beispiel #1
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            WorkTypes objWorkTypes = new WorkTypes();
            objWorkTypes.WorkTypeDesc = txtWorkTypeDesc.Text;
            objWorkTypes.Status = 1;

            if (!string.IsNullOrEmpty(hfWorkTypeID.Value.ToString()))
            {
                objWorkTypes.UpdatedBy = UserAuthentication.GetUserId(this.Page);
                objWorkTypes.UpdatedDate = DateTime.Now;
                objWorkTypes.WorkTypeID = Convert.ToInt32(hfWorkTypeID.Value);
                objWorkTypes.WorkTypeDesc = txtWorkTypeDesc.Text;
                WorkTypesBO.UpdateWorkTypes(objWorkTypes);

            }
            else
            {
                objWorkTypes.CreatedBy = UserAuthentication.GetUserId(this.Page);
                objWorkTypes.CreatedDate = DateTime.Now;
                WorkTypesBO.InsertWorkTypes(objWorkTypes);
            }
            
            txtWorkTypeDesc.Text = string.Empty;
            hfWorkTypeID.Value = string.Empty;
            hfWorkTypeID.Value = string.Empty;
            loadWorkType();

        }
Beispiel #2
0
 public WorkItem(WorkTypes type, double perc)
 {
     this.WorkType = type;
     this.X = 0;
     this.Y = 0;
     this.Perc = perc;
 }
Beispiel #3
0
 public WorkItem(WorkTypes type, int x, int y)
 {
     this.WorkType = type;
     this.X = x;
     this.Y = y;
     this.Perc = 0;
 }
        /// <summary>
        /// Get session results method
        /// </summary>
        /// <param name="sessionId">Session id</param>
        /// <returns></returns>
        public ICollection <GroupResult> GetSessionResult(int sessionId)
        {
            List <GroupResult> results = new List <GroupResult>();

            foreach (Group group in Groups)
            {
                GroupResult    result   = new GroupResult(group.GroupName);
                List <Student> students = Students.Where(s => s.GroupId == group.Id).ToList();
                foreach (Student student in students)
                {
                    List <WorkResult> workResults = WorkResults.Where(w => w.StudentId == student.Id).ToList();
                    foreach (WorkResult item in workResults)
                    {
                        SessionShedule shedule = SessionShedules.FirstOrDefault(s => s.Id == item.SessionSheduleId && s.SessionId == sessionId);
                        Subject        subject = Subjects.FirstOrDefault(s => s.Id == item.SubjectId);
                        WorkType       type    = WorkTypes.FirstOrDefault(w => w.Id == item.WorkTypeId);
                        if (shedule != null && shedule != null && type != null)
                        {
                            result.StudentResults.Add(new StudentResult(shedule.Date, subject.SubjectName, student.Name, student.Surname, student.MidleName, type.WorkTypeName, item.Result));
                        }
                    }
                }

                results.Add(result);
            }
            return(results);
        }
Beispiel #5
0
 public WorkItem(WorkTypes type)
 {
     this.WorkType = type;
     this.X = 0;
     this.Y = 0;
     this.Perc = 0;
 }
 public void RemoveItem(WorkTypeTileViewModel tileToRemove)
 {
     WorkTypes.Remove(tileToRemove);
     Parent.WasChanged = true;
     if (tileToRemove.Id != 0)
     {
         Parent.Parent.workTypeToDeleteIds.Add(tileToRemove.Id);
     }
 }
        private void DeleteWorkTypecmd(object obj)
        {
            var worktype = obj as WorkType;

            if (OnMessageBoxEvent("Do you want to delete this entry?"))
            {
                WorkTypes.Remove(worktype);
            }
        }
Beispiel #8
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            WorkTypes workTypes = await db.WorkTypes.FindAsync(id);

            db.WorkTypes.Remove(workTypes);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Beispiel #9
0
 public void SetWorkTypes(List <KVPBase> data)
 {
     data = data.OrderBy(p => p.Name).ToList();
     WorkTypes.Clear();
     data.ForEach(o => WorkTypes.Add(o));
     if (LoadWorkTypesComplete != null)
     {
         LoadWorkTypesComplete(this, new EventArgs());
     }
 }
Beispiel #10
0
        public async Task <ActionResult> Edit([Bind(Include = "Id,Name,ShortName,IsNullRun,IsWork,IsDinner,IsBreak")] WorkTypes workTypes)
        {
            if (ModelState.IsValid)
            {
                db.Entry(workTypes).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(workTypes));
        }
Beispiel #11
0
        public async Task <ActionResult> Create([Bind(Include = "Id,Name,ShortName,IsNullRun,IsWork,IsDinner,IsBreak")] WorkTypes workTypes)
        {
            if (ModelState.IsValid)
            {
                db.WorkTypes.Add(workTypes);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(workTypes));
        }
        private void OnAddWorkType()
        {
            if (WorkTypes == null)
            {
                WorkTypes = new ObservableCollection <WorkTypeTileViewModel>();
            }
            var newWorkType = new WorkTypeTileViewModel(this);

            WorkTypes.Add(newWorkType);
            newWorkType.OnEdit();
            Parent.WasChanged = true;
        }
Beispiel #13
0
        /// <summary>
        /// Добавление варианта перевода
        /// </summary>
        /// <param name="item"></param>
        public async Task <Guid?> AddAddFileActionAsync(File item, Guid?idTranslit, WorkTypes wt)
        {
            var action = new UserAction
            {
                datetime     = item.date_of_change,
                id_project   = item.id_localization_project,
                id_file      = idTranslit,
                file_name    = item.name_text,
                id_work_type = (int)wt
            };

            return(await AddAsync(action));
        }
Beispiel #14
0
 private void UpdateListWorks()
 {
     YearWorks.Clear();
     for (var i = 1; i <= 12; i++)
     {
         var month = new WorksInMonthViewModel(new DateTime(SelectedYear, i, 1));
         foreach (var work in WorkTypes.Where(o => o.DateWork.Year == SelectedYear && o.DateWork.Month == i))
         {
             month.WorkTypes.Add(work);
         }
         month.UpdateDayInMonth();
         YearWorks.Add(month);
     }
 }
Beispiel #15
0
        // GET: Guides/WorkTypes/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            WorkTypes workTypes = await db.WorkTypes.FindAsync(id);

            if (workTypes == null)
            {
                return(HttpNotFound());
            }
            return(View(workTypes));
        }
Beispiel #16
0
        public WorkContext(Work Work)
        {
            this.Work        = Work;
            TeamContexts     = new ObservableCollection <TeamContext>();
            MaterailContexts = new ObservableCollection <MaterialContext>();
            PriborContexts   = new ObservableCollection <PriborContext>();

            WorkSections = new ObservableCollection <WorkSection>();

            using (var db = new DbContexts.SmetaDbAppContext())
            {
                db.WorkTeams.Where(x => x.WorkDemId == Work.Id).ToList().ForEach(x =>
                {
                    TeamContexts.Add(new TeamContext(x));
                });

                List <Material> materials = db.Materials;

                // WOrk types
                WorkTypes        = db.WorkTypes;
                selectedWorkType = WorkTypes.Where(x => x.Id ==
                                                   (db.WorkSections.Where(y => y.Id == Work.WorkSectionId)).FirstOrDefault().WorkTypeId).FirstOrDefault();

                //Work sections
                db.WorkSections.Where(x => x.WorkTypeId == selectedWorkType.Id).ToList().ForEach(x =>
                {
                    WorkSections.Add(x);
                });
                selectedSection = WorkSections.Where(x => x.Id == Work.WorkSectionId).FirstOrDefault();

                // Fill Materials
                db.MaterialGroups.Where(x => x.WorkId == Work.Id).ToList().ForEach(x =>
                {
                    var item      = new MaterialContext(x);
                    item.Material = materials.Where(y => y.Id == x.MaterialId).FirstOrDefault();

                    MaterailContexts.Add(item);
                });
                List <Pribor> pribors = db.Pribors;
                //Fill Pribors
                db.PriborGroups.Where(x => x.WorkId == Work.Id).ToList().ForEach(x =>
                {
                    var item    = new PriborContext(x);
                    item.Pribor = pribors.Where(y => y.Id == x.PriborId).FirstOrDefault();

                    PriborContexts.Add(item);
                });
            }
        }
        private void AddWorkTypeCmd(object model)
        {
            var worktype = model as WorkType;

            if (string.IsNullOrWhiteSpace(worktype.WorkTypeName))
            {
                return;
            }

            _repositoryManager.AddWorkType(worktype);
            WorkTypeToAdd = new WorkType();
            var works = _repositoryManager.GetWorkTypes();

            WorkTypes            = ProcessWorkTypeKeyValue(works);
            LabourToAdd.WorkType = WorkTypes.First();
            OnPropertyChanged(nameof(LabourToAdd));
        }
Beispiel #18
0
        public int InsertWorkTypes(WorkTypes objWorkTypes)
        {
            objWorkTypes.WorkTypeID = 1;
            BeginTransaction();

            try
            {
                objWorkTypes.WorkTypeID = Insert(objWorkTypes);
                CommitTransaction();
            }
            catch (Exception ex)
            {
                RollBackTransaction();
                objWorkTypes.WorkTypeID = -1;
            }

            return objWorkTypes.WorkTypeID;
        }
Beispiel #19
0
        public int DeleteWorkTypes(WorkTypes objWorkTypes)
        {
            int rowsaffected = -1;
            BeginTransaction();
            try
            {
                String[] UpdateProperties = new String[] { "Status" };
                rowsaffected = Update(objWorkTypes, UpdateProperties);

                CommitTransaction();
            }
            catch (Exception e)
            {
                RollBackTransaction();
                rowsaffected = -1;
            }
            return rowsaffected;

        }
Beispiel #20
0
        protected void gvWorkType_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            hfWorkTypeID.Value = e.CommandArgument.ToString();
            WorkTypes objWorkTypes = new WorkTypes();

            if (e.CommandName.Equals("cmdEdit"))
            {
                objWorkTypes = WorkTypesBO.GetWorkTypes(Convert.ToInt32(e.CommandArgument));
                txtWorkTypeDesc.Text = objWorkTypes.WorkTypeDesc;
            }
            else if (e.CommandName.Equals("cmdDelete"))
            {
                int WorkTypeID = Convert.ToInt32(e.CommandArgument);
                objWorkTypes.WorkTypeID = WorkTypeID;
                objWorkTypes.Status = 0;
                WorkTypesBO.DeleteWorkTypes(objWorkTypes);
                loadWorkType();
            }
        }
Beispiel #21
0
 void FindWorkTypesCompleted(object sender, FindWorkTypesCompletedEventArgs e)
 {
     if (e.Error == null)
     {
         WorkTypes        = e.Result;
         SelectedWorkType = WorkTypes.FirstOrDefault(c => c.ID == Work.WorkTypeID);
     }
     else
     {
         ErrorProvider.ShowError(e.Error, Navigator);
     }
     dataClient.FindWorkTypesCompleted -= FindWorkTypesCompleted;
     if (busyCount == 0)
     {
         Busy = false;
     }
     else
     {
         busyCount--;
     }
 }
Beispiel #22
0
        public void UpdateDayInMonth()
        {
            var dayweek = ((int)Date.DayOfWeek == 0) ? 7 : (int)Date.DayOfWeek;

            for (var i = 1 - dayweek; i < DateTime.DaysInMonth(Date.Year, Date.Month); i++)
            {
                var day = new WorksInMonthViewModel(new DateTime(Date.AddDays(i).Year, Date.AddDays(i).Month, Date.AddDays(i).Day),
                                                    i < 0);
                if (i > 0)
                {
                    foreach (var work in WorkTypes.Where(o =>
                                                         o.DateWork.Year == Date.AddDays(i).Year&&
                                                         o.DateWork.Month == Date.AddDays(i).Month&&
                                                         o.DateWork.Day == i + 1))
                    {
                        day.WorkTypes.Add(work);
                    }
                }
                WorksInDay.Add(day);
            }
        }
        public JobMarketViewModel(int countryID, IEnumerable <Entities.Country> countries, CountryBestJobOffers bestJobs)
        {
            CountryID = countryID;

            foreach (var country in countries)
            {
                Countries.Add(new SelectListItem()
                {
                    Value = country.ID.ToString(),
                    Text  = country.Entity.Name
                });

                if (country.ID == CountryID)
                {
                    MinMax = new JobMarketBestViewModel(country, bestJobs);
                }
            }
            foreach (WorkTypeEnum workType in Enum.GetValues(typeof(WorkTypeEnum)))
            {
                WorkTypes.Add(new SelectListItem()
                {
                    Value    = ((int)workType).ToString(),
                    Text     = workType.ToString(),
                    Selected = (workType == WorkTypeEnum.Any)
                });
            }

            foreach (JobOfferTypeEnum offerType in Enum.GetValues(typeof(JobOfferTypeEnum)))
            {
                OfferTypes.Add(new SelectListItem()
                {
                    Text  = offerType.ToString(),
                    Value = ((int)offerType).ToString()
                });
            }
        }
        private void AddLabourCmd(object model)
        {
            ErrorMessage = "";
            var labour = model as Labour;


            if (labour.Payment < 1 || labour.PaymentDate == default(DateTime) || SelectedContractor.ContractorId == 0 || labour.WorkType.WorkTypeId == 0)
            {
                ErrorMessage = "*Please check the entry. Some field's Values are missing.";
                return;
            }
            labour.SiteId     = SiteId;
            labour.CreateDate = DateTime.Now;
            labour.Contractor = Contractors.Single(x => x.ContractorId == SelectedContractor.ContractorId);

            _repositoryManager.AddLabourPayment(labour);
            LabourToAdd            = new Labour();
            LabourToAdd.Contractor = Contractors.First();
            LabourToAdd.WorkType   = WorkTypes.First();
            SelectedContractor     = ContractorList.First();
            Labours = new ObservableCollection <Labour>(_repositoryManager.GetLabourPayments(SiteId));
            OnPropertyChanged(nameof(LabourToAdd));
            OnPropertyChanged(nameof(SelectedContractor));
        }
Beispiel #25
0
 public static int InsertWorkTypes(WorkTypes objWorkTypes)
 {
     return new WorkTypesDAO().InsertWorkTypes(objWorkTypes);
 }
Beispiel #26
0
 public static int DeleteWorkTypes(WorkTypes objWorkTypes)
 {
     return new WorkTypesDAO().DeleteWorkTypes(objWorkTypes);
 }
Beispiel #27
0
        public void EndK2OOF()
        {
            string conStringIIF = this.AppConfig.IIFConnectionString;

            using (SqlConnection con = new SqlConnection(conStringIIF))
            {
                con.Open();
                string querySelect = "SELECT";
                querySelect = querySelect + " [Src].[Id], [Src].[FromDate], [Src].[ToDate]";
                querySelect = querySelect + " , [Src].[FromFQN], [Src].[ToFQN]";
                querySelect = querySelect + " , [Src].[IsActive], [Src].[IsCanceled], [Src].[IsExpired]";
                querySelect = querySelect + " , [Src].[IsStartedInK2], [Src].[IsEndedInK2]";
                querySelect = querySelect + " FROM [dbo].[Vw_TaskDelegation_NeedK2Ended] AS [Src]";

                List <TaskDelegation> listTaskDelegation = new List <TaskDelegation>();

                using (SqlCommand cmd = con.CreateCommand())
                {
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = querySelect;

                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        int indexOf_Id            = dr.GetOrdinal("Id");
                        int indexOf_FromDate      = dr.GetOrdinal("FromDate");
                        int indexOf_ToDate        = dr.GetOrdinal("ToDate");
                        int indexOf_FromFQN       = dr.GetOrdinal("FromFQN");
                        int indexOf_ToFQN         = dr.GetOrdinal("ToFQN");
                        int indexOf_IsActive      = dr.GetOrdinal("IsActive");
                        int indexOf_IsCanceled    = dr.GetOrdinal("IsCanceled");
                        int indexOf_IsExpired     = dr.GetOrdinal("IsExpired");
                        int indexOf_IsStartedInK2 = dr.GetOrdinal("IsStartedInK2");
                        int indexOf_IsEndedInK2   = dr.GetOrdinal("IsEndedInK2");

                        while (dr.Read())
                        {
                            TaskDelegation data = new TaskDelegation();
                            data.Id            = dr.GetInt64(indexOf_Id);
                            data.FromDate      = dr.GetDateTime(indexOf_FromDate);
                            data.ToDate        = dr.GetDateTime(indexOf_ToDate);
                            data.FromFQN       = dr.GetString(indexOf_FromFQN);
                            data.ToFQN         = dr.GetString(indexOf_ToFQN);
                            data.IsActive      = dr.GetBoolean(indexOf_IsActive);
                            data.IsCanceled    = dr.GetBoolean(indexOf_IsCanceled);
                            data.IsExpired     = dr.GetBoolean(indexOf_IsExpired);
                            data.IsStartedInK2 = dr.GetBoolean(indexOf_IsStartedInK2);
                            data.IsEndedInK2   = dr.GetBoolean(indexOf_IsEndedInK2);

                            listTaskDelegation.Add(data);
                        }
                    }
                }

                Exception innerEx = null;

                foreach (TaskDelegation taskDelegation in listTaskDelegation)
                {
                    try
                    {
                        using (Connection k2Con = new Connection())
                        {
                            k2Con.Open(this.AppConfig.K2Server);
                            k2Con.ImpersonateUser(taskDelegation.FromFQN);

                            WorklistShares worklistShares = k2Con.GetCurrentSharingSettings(ShareType.OOF);
                            foreach (WorklistShare worklistShare in worklistShares)
                            {
                                WorkTypes workTypes   = worklistShare.WorkTypes;
                                bool      needUnShare = false;
                                foreach (WorkType workType in workTypes)
                                {
                                    if (workType.Name == "TaskDelegationWork_" + taskDelegation.Id.ToString())
                                    {
                                        needUnShare = true;
                                        break;
                                    }
                                }

                                if (needUnShare)
                                {
                                    k2Con.UnShare(worklistShare);
                                }
                            }

                            k2Con.SetUserStatus(UserStatuses.Available);

                            string queryUpdate = "UPDATE [dbo].[TaskDelegation] SET";
                            queryUpdate = queryUpdate + " [IsActive] = 0";
                            if (!taskDelegation.IsCanceled)
                            {
                                queryUpdate = queryUpdate + ", [IsExpired] = 1";
                            }
                            queryUpdate = queryUpdate + ", [IsEndedInK2] = 1";
                            queryUpdate = queryUpdate + " WHERE [Id] = @Id";

                            using (SqlCommand cmd = con.CreateCommand())
                            {
                                cmd.CommandType = CommandType.Text;
                                cmd.CommandText = queryUpdate;
                                cmd.Parameters.Add(this.NewSqlParameter("Id", SqlDbType.BigInt, taskDelegation.Id));

                                cmd.ExecuteNonQuery();
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        innerEx = ex;
                    }
                }

                string queryUpdateSkipped = "[dbo].[TaskDelegation_UpdateSkipped_SP]";

                try
                {
                    using (SqlCommand cmd = con.CreateCommand())
                    {
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.CommandText = queryUpdateSkipped;
                        cmd.ExecuteNonQuery();
                    }
                }
                catch (Exception ex)
                {
                    innerEx = ex;
                }

                if (innerEx != null)
                {
                    throw new Exception("An error occured. " + innerEx.Message, innerEx);
                }

                con.Close();
            }
        }
Beispiel #28
0
 public static WorkTypes GetWorkTypes(int WorkTypeID)
 {
     WorkTypes objWorkTypes = new WorkTypes();
     return (WorkTypes)(new WorkTypesDAO().FillDTO(objWorkTypes, "WorkTypeID=" + WorkTypeID));
 }
Beispiel #29
0
 public static int UpdateWorkTypes(WorkTypes objWorkTypes)
 {
     return new WorkTypesDAO().UpdateWorkTypes(objWorkTypes);
 }
 public List <WorkType> Read_WorkTypes()
 {
     return(WorkTypes.ToList());
 }
Beispiel #31
0
        /// <summary>
        /// Добавление варианта перевода
        /// </summary>
        /// <param name="item"></param>
        public async Task <Guid?> AddAddTraslationActionAsync(Translation item, Guid?idTranslit, WorkTypes wt)
        {
            var action = new UserAction
            {
                id_string      = item.ID_String,
                id_translation = idTranslit,
                translation    = item.Translated,
                id_work_type   = (int)wt,
                id_user        = (Guid)item.ID_User,
                datetime       = item.DateTime,
                id_locale      = item.ID_Locale
            };

            //TODO нехватает данных, нужно вычислять.
            //action.ID_Project = projectId;
            //action.ID_Translation = translationId;
            return(await AddAsync(action));
        }
Beispiel #32
0
        /// <summary>
        /// Create or set the Out Of Office of current user
        /// </summary>
        /// <param name="wrapper">The Out Of Office criteria</param>
        /// <returns>Success(true) or Fail(False)</returns>
        public bool SetOutOfOffice(OOFWrapper wrapper)
        {
            if (wrapper.WorkType == null)
            {
                using (Connection workflowClient = this.GetWorkflowClient()) {
                    workflowClient.SetUserStatus(Convert.ToBoolean(wrapper.Status) ? UserStatuses.Available : UserStatuses.OOF);
                }

                return(false);
            }

            using (Connection workflowClient = this.GetWorkflowClient()) {
                bool           isNew          = false;
                WorklistShares worklistShares = new WorklistShares();
                worklistShares = workflowClient.GetCurrentSharingSettings(ShareType.OOF);
                WorklistShare worklistShare = null;
                if (worklistShares.Count > 0)
                {
                    worklistShare           = worklistShares[0];
                    worklistShare.ShareType = ShareType.OOF;
                }
                else
                {
                    isNew = true;
                }

                if (worklistShare == null)
                {
                    worklistShare           = new WorklistShare();
                    worklistShare.ShareType = ShareType.OOF;
                    isNew = true;
                }


                worklistShare.StartDate = wrapper.StartDate;
                worklistShare.EndDate   = wrapper.EndDate;

                WorkTypes workTypes = worklistShare.WorkTypes;
                WorkType  workType  = new WorkType();

                if (workTypes.Count > 0)
                {
                    workType = workTypes[0];
                }
                else
                {
                    workType = new WorkType();
                    workTypes.Add(workType);
                }
                workType.Name = Guid.NewGuid().ToString();
                Destinations destinations = new Destinations();

                foreach (DestinationDto dest in wrapper.WorkType.Destinations)
                {
                    if (SecurityLabelUtils.IsCorrectUserName(dest.LoginName))
                    {
                        var destination = new K2.Destination(SecurityLabelUtils.GetNameWithLabel(dest.LoginName), DestinationType.User);
                        destinations.Add(destination);
                    }
                }

                workType.Destinations       = destinations;
                workType.WorkTypeExceptions = GetWorkTypeExceptions(wrapper.WorkType.WorkTypeExceptions);
                worklistShare.WorkTypes     = workTypes;

                if (isNew)
                {
                    workflowClient.ShareWorkList(worklistShare);
                }
                workflowClient.UpdateWorkType(worklistShare.WorkTypes[0]);
                workflowClient.SetUserStatus(Convert.ToBoolean(wrapper.Status) ? UserStatuses.Available : UserStatuses.OOF);
            }

            return(true);
        }
Beispiel #33
0
        async void CheckMaterialFiles()
        {
            var client = new RestClient(HOST_URL);
            //var client = new RestClient("http://sbl-crm-project-pafik13.c9users.io:8080/");
            var request = new RestRequest("/MaterialFile?type=for_hospital&populate=false&limit=50", Method.GET);

            var response = await client.ExecuteGetTaskAsync <List <MaterialFile> >(request);

            if (!CancelToken.IsCancellationRequested)
            {
                switch (response.StatusCode)
                {
                case HttpStatusCode.OK:
                case HttpStatusCode.Created:
                    SDiag.Debug.WriteLine("MaterialFile: {0}", response.Data.Count);
                    MaterialFiles.Clear();
                    foreach (var item in response.Data)
                    {
                        if (!MainDatabase.IsSavedBefore <MaterialFile>(item.uuid))
                        {
                            if (!string.IsNullOrEmpty(item.s3Location))
                            {
                                MaterialFiles.Add(item);
                            }
                        }
                    }

                    RunOnUiThread(() => {
                        int count = MaterialFiles.Count + WorkTypes.Count + LibraryFiles.Count;
                        FindViewById <TextView>(Resource.Id.saUpdateEntitiesCount).Text = string.Format("Необходимо обновить {0} объектов", count);
                    });
                    break;
                }
                SDiag.Debug.WriteLine(response.StatusDescription);
            }

            request = new RestRequest("/WorkType?populate=false", Method.GET);

            var responseWTs = await client.ExecuteGetTaskAsync <List <WorkType> >(request);

            if (!CancelToken.IsCancellationRequested)
            {
                switch (responseWTs.StatusCode)
                {
                case HttpStatusCode.OK:
                case HttpStatusCode.Created:
                    SDiag.Debug.WriteLine("WorkType: {0}", responseWTs.Data.Count);
                    WorkTypes.Clear();
                    foreach (var item in responseWTs.Data)
                    {
                        if (!MainDatabase.IsSavedBefore <WorkType>(item.uuid))
                        {
                            if (!string.IsNullOrEmpty(item.name))
                            {
                                WorkTypes.Add(item);
                            }
                        }
                    }

                    RunOnUiThread(() => {
                        int count = MaterialFiles.Count + WorkTypes.Count + LibraryFiles.Count;
                        FindViewById <TextView>(Resource.Id.saUpdateEntitiesCount).Text = string.Format("Необходимо обновить {0} объектов", count);
                    });
                    break;
                }
                SDiag.Debug.WriteLine(response.StatusDescription);
            }
        }
Beispiel #34
0
        /// <summary>
        /// Create or set the Out Of Office of current user
        /// </summary>
        /// <param name="wrapper">The Out Of Office criteria</param>
        /// <returns>Success(true) or Fail(False)</returns>
        public bool SetOutOfOffice(OOFWrapper wrapper)
        {
            if (wrapper.WorkType == null)
            {
                _connection.SetUserStatus(Convert.ToBoolean(wrapper.Status) ? UserStatuses.Available : UserStatuses.OOF);
                return(false);
            }


            bool           isNew          = false;
            WorklistShares worklistShares = new WorklistShares();

            worklistShares = _connection.GetCurrentSharingSettings(ShareType.OOF);
            WorklistShare worklistShare = null;

            if (worklistShares.Count > 0)
            {
                worklistShare           = worklistShares[0];
                worklistShare.ShareType = ShareType.OOF;
            }
            else
            {
                isNew = true;
            }

            if (worklistShare == null)
            {
                worklistShare           = new WorklistShare();
                worklistShare.ShareType = ShareType.OOF;
                isNew = true;
            }


            worklistShare.StartDate = wrapper.StartDate;
            worklistShare.EndDate   = wrapper.EndDate;

            WorkTypes workTypes = worklistShare.WorkTypes;
            WorkType  workType  = new WorkType();

            if (workTypes.Count > 0)
            {
                workType = workTypes[0];
            }
            else
            {
                workType = new WorkType();
                workTypes.Add(workType);
            }
            workType.Name = Guid.NewGuid().ToString();
            Destinations destinations = new Destinations();

            foreach (DestinationDto dest in wrapper.WorkType.Destinations)
            {
                var destination = new Destination(dest.LoginName.FQNWithK2Label(), DestinationType.User);
                destinations.Add(destination);
            }

            workType.Destinations       = destinations;
            workType.WorkTypeExceptions = GetWorkTypeExceptions(wrapper.WorkType.WorkTypeExceptions);
            worklistShare.WorkTypes     = workTypes;

            if (isNew)
            {
                _connection.ShareWorkList(worklistShare);
            }
            _connection.UpdateWorkType(worklistShare.WorkTypes[0]);
            _connection.SetUserStatus(Convert.ToBoolean(wrapper.Status) ? UserStatuses.Available : UserStatuses.OOF);


            return(true);
        }
Beispiel #35
0
 public void SetSelectedWorkType()
 {
     SelectedWorkType = WorkTypes.Where(x => x.Id == WorkSection.WorkTypeId).FirstOrDefault();
 }