Пример #1
0
 /// <summary>
 /// Update record that specified resource type and hrbc record to index of phase list
 /// </summary>
 /// <param name="records">HrbcGetPhaseIdRecordCreator</param>
 /// <param name="resourceType">Resource type</param>
 /// <param name="resourceIndex">Resource index</param>
 /// <param name="index">Index of phase list</param>
 /// <returns></returns>
 public static UpdateRecordRequest.IBuilderWithResource InitRecordsUpdater(HrbcGetPhaseIdRecordCreator records, Enums.ResourceType resourceType, int resourceIndex = 0, int index = 0)
 {
     UpdateRecordRequest.IBuilder result = ResourceRequest.UpdateRecords();
     result.AddContent(resourceType.ToPrivateEnum(), records.Data[$"{resourceType.ToPrivateEnum()}{resourceIndex}"].Records.Id,
                       content => content.AddField(
                           new HrbcField(resourceType.ToPrivateEnum(), "P_PhaseDate", ResourceType.Standard), DateTime.Now.AddSeconds(index).ToString("yyyy-MM-dd HH:mm:ss")
                           ).
                       AddField(
                           new HrbcField(resourceType.ToPrivateEnum(), "P_Phase", ResourceType.Standard), PhaseHelper.GetLastPhaseOptionId(resourceType, index)
                           )
                       );
     return(result as UpdateRecordRequest.IBuilderWithResource);
 }
Пример #2
0
        /// <summary>
        /// Create a phase instance
        /// </summary>
        /// <param name="records">HrbcGetPhaseIdRecordCreator</param>
        /// <param name="resourceType">Resource type</param>
        /// <param name="index">index</param>
        /// <returns>Phase</returns>
        public static Phase CreatePhaseInstance(HrbcGetPhaseIdRecordCreator records, Enums.ResourceType resourceType, int index = 0)
        {
            List <string> phaseList = OptionFieldHelper.GetOptionList($"Option.P_{resourceType.ToResourceName()}Phase");

            return(new Phase
            {
                Id = "-1",
                Resource = ((int)resourceType).ToString(),
                ResourceId = records.Data[$"{resourceType.ToPrivateEnum()}{index}"].Records.Id.ToString(),
                Date = Util.ToString(DateTime.Now),
                PhaseObject = new Option {
                    ActualXMLTag = phaseList.First()
                }
            });
        }
Пример #3
0
 /// <summary>
 /// Update all records to last phase
 /// </summary>
 /// <param name="records">HrbcGetPhaseIdRecordCreator</param>
 /// <returns></returns>
 public static UpdateRecordRequest.IBuilderWithResource InitRecordsDefaultUpdater(HrbcGetPhaseIdRecordCreator records)
 {
     UpdateRecordRequest.IBuilder result = ResourceRequest.UpdateRecords();
     foreach (var value in records.Data.Values.Where(val => val.Records.ResourceType != Enums.ResourceType.Contract))
     {
         result.AddContent(value.Records.ResourceType.ToPrivateEnum(), value.Records.Id,
                           content => content.AddField(
                               new HrbcField(value.Records.ResourceType.ToPrivateEnum(), "P_PhaseDate", ResourceType.Standard), DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                               ).
                           AddField(
                               new HrbcField(value.Records.ResourceType.ToPrivateEnum(), "P_Phase", ResourceType.Standard), PhaseHelper.GetLastPhaseOptionId(value.Records.ResourceType)
                               )
                           );
     }
     return(result as UpdateRecordRequest.IBuilderWithResource);
 }