Пример #1
0
        public DryBoxAssignmentInfo UpdateDryBoxAssignment(int dryBoxAssignmentId, DryBoxAssignmentUpdate update)
        {
            var dba        = Require <DryBoxAssignment>(dryBoxAssignmentId);
            var modifiedBy = Require <Client>(update.ModifiedByClientID);

            var db = Require <DryBox>(dba.DryBoxID);
            var ca = Require <ClientAccount>(update.ClientAccountID);

            //always save the new ClientAccount
            dba.ClientAccountID = update.ClientAccountID;

            //whenever staff updates, make PendingApproval false to clear any removal request
            dba.PendingRemoval = false;
            dba.Rejected       = false;

            if (dba.PendingApproval)
            {
                // only an approver should be able to modify, the user can only cancel
                // pendingApproval = true means the approver changed the account and then clicked the Approve button
                // this handles the log and also does a SaveOrUpdate on the dba
                ApproveDryBoxAssignment(dba, ca, modifiedBy);
            }
            else
            {
                SaveOrUpdateAssignment(dba);
                UpdateLog(dba, ca, modifiedBy);
            }

            return(CreateDryBoxAssignmentInfo(dba, db, ca));
        }
Пример #2
0
        public DryBoxAssignmentInfo Approve(int dryBoxAssignmentId, DryBoxAssignmentUpdate update)
        {
            var dba        = Require <DryBoxAssignment>(dryBoxAssignmentId);
            var modifiedBy = Require <Client>(update.ModifiedByClientID);

            var db = Require <DryBox>(dba.DryBoxID);
            var ca = Require <ClientAccount>(update.ClientAccountID);

            ApproveDryBoxAssignment(dba, ca, modifiedBy);

            return(CreateDryBoxAssignmentInfo(dba, db, ca));
        }
Пример #3
0
 public DryBoxAssignmentInfo UpdateDryBoxAssignment(int dryBoxAssignmentId, DryBoxAssignmentUpdate update)
 {
     return(Put <DryBoxAssignmentInfo>("webapi/data/drybox/assignment/{dryBoxAssignmentId}", update, UrlSegments(new { dryBoxAssignmentId })));
 }