This commit is contained in:
@@ -16,7 +16,7 @@ namespace AyaNova.DataList
|
||||
//todo: look at loanitemlist in v7 it surfaces due date, out date etc in the list and should here too once those fields are coded for
|
||||
var RoleSet = BizRoles.GetRoleSet(DefaultListAType);
|
||||
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
|
||||
DefaultColumns = new List<string>() { "LoanUnitName", "LoanUnitSerial", "LoanUnitShadowUnit" };
|
||||
DefaultColumns = new List<string>() { "LoanUnitName", "LoanUnitSerial", "LoanUnitCurrentWorkOrderItemLoan", "LoanUnitShadowUnit" };
|
||||
DefaultSortBy = new Dictionary<string, string>() { { "LoanUnitName", "+" } };
|
||||
|
||||
FieldDefinitions = new List<DataListFieldDefinition>();
|
||||
|
||||
@@ -65,5 +65,18 @@ namespace AyaNova.PickList
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public string GetVariantCriteria(string variant)
|
||||
{
|
||||
// :variant="availableonly" Only items that are not on a workorderitemloan
|
||||
if (string.IsNullOrWhiteSpace(variant) || variant != "availableonly") return string.Empty;
|
||||
return "aloanunit.workorderitemloanid is null";
|
||||
|
||||
}
|
||||
|
||||
|
||||
}//eoc
|
||||
}//eons
|
||||
@@ -2795,11 +2795,14 @@ namespace AyaNova.Biz
|
||||
await LoanSearchIndexAsync(newObject, true);
|
||||
await LoanPopulateVizFields(newObject);
|
||||
await LoanHandlePotentialNotificationEvent(AyaEvent.Created, newObject);
|
||||
var u = await ct.LoanUnit.FirstOrDefaultAsync(x => x.Id == newObject.LoanUnitId);
|
||||
if (u != null)
|
||||
if (newObject.ReturnDate == null)
|
||||
{
|
||||
u.WorkOrderItemLoanId = newObject.Id;
|
||||
await ct.SaveChangesAsync();
|
||||
var u = await ct.LoanUnit.FirstOrDefaultAsync(x => x.Id == newObject.LoanUnitId);
|
||||
if (u != null)
|
||||
{
|
||||
u.WorkOrderItemLoanId = newObject.Id;
|
||||
await ct.SaveChangesAsync();
|
||||
}
|
||||
}
|
||||
return newObject;
|
||||
}
|
||||
@@ -2838,6 +2841,7 @@ namespace AyaNova.Biz
|
||||
if (HasErrors) return null;
|
||||
await LoanBizActionsAsync(AyaEvent.Modified, putObject, dbObject);
|
||||
bool changeOfUnit = dbObject.LoanUnitId != putObject.LoanUnitId;
|
||||
bool changeOfReturned = dbObject.ReturnDate != putObject.ReturnDate;
|
||||
ct.Replace(dbObject, putObject);
|
||||
|
||||
try
|
||||
@@ -2857,13 +2861,22 @@ namespace AyaNova.Biz
|
||||
await LoanSearchIndexAsync(putObject, false);
|
||||
await LoanPopulateVizFields(putObject);
|
||||
await LoanHandlePotentialNotificationEvent(AyaEvent.Modified, putObject, dbObject);
|
||||
//update loan unit
|
||||
if (changeOfUnit)
|
||||
//update loan unitif (newObject.ReturnDate == null)
|
||||
|
||||
//Returned or unit changed
|
||||
if (changeOfUnit || changeOfReturned)
|
||||
{
|
||||
var u = await ct.LoanUnit.FirstOrDefaultAsync(x => x.Id == dbObject.LoanUnitId);
|
||||
if (u != null)
|
||||
if (u != null && (u.WorkOrderItemLoanId==null || u.WorkOrderItemLoanId==putObject.Id))
|
||||
{
|
||||
u.WorkOrderItemLoanId = putObject.Id;
|
||||
if (putObject.ReturnDate != null)
|
||||
{
|
||||
u.WorkOrderItemLoanId = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
u.WorkOrderItemLoanId = putObject.Id;
|
||||
}
|
||||
await ct.SaveChangesAsync();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user