示例#1
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5EM_DWPH_0926 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            //Leave UserCode region to enable user code saving
            #region UserCode
            var returnValue = new FR_Guid();

            ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment workplaceHistory = new ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment();
            if (Parameter.CMN_BPT_EMP_Employee_WorkplaceAssignmentID != Guid.Empty)
            {
                var result = workplaceHistory.Load(Connection, Transaction, Parameter.CMN_BPT_EMP_Employee_WorkplaceAssignmentID);
                if (result.Status != FR_Status.Success || workplaceHistory.CMN_BPT_EMP_Employee_WorkplaceAssignment == Guid.Empty)
                {
                    var error = new FR_Guid();
                    error.ErrorMessage = "No Such ID";
                    error.Status       = FR_Status.Error_Internal;
                    return(error);
                }
            }
            workplaceHistory.BoundTo_Workplace_RefID = Parameter.BoundTo_Workplace_RefID;
            workplaceHistory.Save(Connection, Transaction);
            //Put your code here
            return(returnValue);

            #endregion UserCode
        }
示例#2
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5EM_SWPH_1625 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();

            //Put your code here
            ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment.Query workplaceHistoryQuery = new ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment.Query();
            workplaceHistoryQuery.CMN_BPT_EMP_Employee_RefID = Parameter.Employee_RefID;
            workplaceHistoryQuery.Tenant_RefID = securityTicket.TenantID;
            workplaceHistoryQuery.IsDeleted    = false;
            List <ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment> workplaceHistoryList = ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment.Query.Search(Connection, Transaction, workplaceHistoryQuery);

            //delete workplace histories from database witch doesn't exist in passed parameter
            List <ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment> deletedWorkplaceHistoryList = new List <ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment>();
            foreach (var item in workplaceHistoryList)
            {
                if (Parameter.WorkplaceHistories.Any(p => p.CMN_BPT_EMP_Employee_WorkplaceAssignmentID == item.CMN_BPT_EMP_Employee_WorkplaceAssignment))
                {
                    continue;
                }

                item.Remove(Connection, Transaction);
                deletedWorkplaceHistoryList.Add(item);
            }
            workplaceHistoryList = workplaceHistoryList.Except(deletedWorkplaceHistoryList).ToList();

            //add or edit every workplace history from parameter
            foreach (var workplaceHistoryItem in Parameter.WorkplaceHistories)
            {
                ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment workplaceHistory = new ORM_CMN_BPT_EMP_Employee_WorkplaceAssignment();

                if (workplaceHistoryList.Any(e => e.CMN_BPT_EMP_Employee_WorkplaceAssignment == workplaceHistoryItem.CMN_BPT_EMP_Employee_WorkplaceAssignmentID))
                {
                    workplaceHistory.Load(Connection, Transaction, workplaceHistoryItem.CMN_BPT_EMP_Employee_WorkplaceAssignmentID);
                }

                workplaceHistory.BoundTo_Workplace_RefID = workplaceHistoryItem.BoundTo_Workplace_RefID;
                workplaceHistory.CMN_BPT_EMP_Employee_PlanGroup_RefID = workplaceHistoryItem.CMN_BPT_EMP_Employee_PlanGroup_RefID;
                workplaceHistory.CMN_BPT_EMP_Employee_RefID           = Parameter.Employee_RefID;
                workplaceHistory.Default_BreakTime_Template_RefID     = workplaceHistoryItem.Default_BreakTime_Template_RefID;
                workplaceHistory.IsBreakTimeCalculated_Actual         = workplaceHistoryItem.IsBreakTimeCalculated_Actual;
                workplaceHistory.IsBreakTimeCalculated_Planning       = workplaceHistoryItem.IsBreakTimeCalculated_Planning;
                workplaceHistory.SequenceNumber = workplaceHistoryItem.SequenceNumber;
                workplaceHistory.Tenant_RefID   = securityTicket.TenantID;
                workplaceHistory.WorkplaceAssignment_StartDate = workplaceHistoryItem.WorkplaceAssignment_StartDate;

                workplaceHistory.Save(Connection, Transaction);
            }

            return(returnValue);

            #endregion UserCode
        }