This commit is contained in:
2019-10-08 21:05:49 +00:00
parent 65b82af1d8
commit 581034b08d

View File

@@ -2028,6 +2028,8 @@ namespace GZTW.AyaNova.BLL
}
return nm;
}
#endregion
#region DAL Data Access
@@ -2369,15 +2371,36 @@ namespace GZTW.AyaNova.BLL
//case 3701 set pm's inactive if client is now inactive
if (this.mActiveChanged && this.mActive == false)
{
//here set all pm's for this client to inactive
DBCommandWrapper cmPM = DBUtil.GetCommandFromSQL(
"UPDATE AWORKORDERPREVENTIVEMAINTENANCE set aactive = 0 from AWORKORDERPREVENTIVEMAINTENANCE " +
"LEFT OUTER JOIN AWORKORDER ON (AWORKORDERPREVENTIVEMAINTENANCE.AWORKORDERID=AWORKORDER.AID) " +
"WHERE AWORKORDER.AWORKORDERTYPE='2' AND AWORKORDER.ACLIENTID=@CLIENTID "
);
cmPM.AddInParameter("@CLIENTID", DbType.Guid, mID);
DBUtil.DB.ExecuteNonQuery(cmPM, transaction);
//because firebird doesn't support updating through a join statement
//Need to fetch as a list object first then update them all...
//Find all PM's for this client
string pmListCriteria = "<?xml version=\"1.0\" encoding=\"utf-16\" standalone=\"yes\"?> \r\n" +
"<GRIDCRITERIA> \r\n" +
" <COLUMNITEM CM=\"aWorkorderPreventiveMaintenance.aPreventiveMaintenanceNumber\" UI=\"LT_O_WorkorderPreventiveMaintenance\" PIN=\"0\" WIDTH=\"150\" SORT=\"DESC\" /> \r\n" +
" <WHEREITEMGROUP GROUPLOGICALOPERATOR=\"And\" UI=\"LT_O_Client\"> \r\n" +
" <WHEREITEM COMPAREOPERATOR=\"Equals\" CM=\"aClient.aID\" UICOMPAREVALUE=\"ABC Accounting\" TYPE=\"System.Guid\" COMPAREVALUE=\"{" + mID.ToString().ToUpper() + "}\" /> \r\n" +
" </WHEREITEMGROUP> \r\n" +
"</GRIDCRITERIA> ";
var wopm = WorkorderPMList.GetList(pmListCriteria);
if (wopm.Count > 0)
{
foreach (WorkorderPMList.WorkorderPMListInfo i in wopm)
{
if (i.LT_O_WorkorderPreventiveMaintenance.Value != Guid.Empty)
{
DBCommandWrapper cmPM = DBUtil.GetCommandFromSQL(
"UPDATE " +
" AWORKORDERPREVENTIVEMAINTENANCE " +
" SET " +
" AACTIVE=0 " +
" WHERE AWORKORDERID=@PMID "
);
cmPM.AddInParameter("@PMID", DbType.Guid, i.LT_O_WorkorderPreventiveMaintenance.Value);
DBUtil.DB.ExecuteNonQuery(cmPM, transaction);
}
}
}
}