538 lines
20 KiB
JavaScript
538 lines
20 KiB
JavaScript
|
||
function showSchedulerData(data) {
|
||
if (data) {
|
||
assetsObj = data;
|
||
var col = grid_dt.columns.find(c => c.name === 'Schedules');
|
||
if (assetsObj.HasSchedule)
|
||
col.width = assetsObj.TotalDays * 5;
|
||
else
|
||
col.width = 320;
|
||
grid_dt.init();
|
||
showSchedulerList(data.DispatchAssets);
|
||
}
|
||
else {
|
||
assetsObj = null;
|
||
grid_dt.columns[grid_dt.columns.length - 1].width = 320;
|
||
grid_dt.init();
|
||
showSchedulerList([]);
|
||
}
|
||
}
|
||
|
||
function showSchedulerList(data) {
|
||
var rows = [];
|
||
for (var i = 0; i < data.length; i++) {
|
||
var r = data[i];
|
||
for (var j in r) {
|
||
if (j === "StartDate") {
|
||
r[j] = { DisplayValue: r["StartDateStr"], Value: r[j] };
|
||
}
|
||
else if (j === "FinishDate") {
|
||
r[j] = { DisplayValue: r["FinishDateStr"], Value: r[j] };
|
||
}
|
||
else if (j === "EngineHours") {
|
||
r[j] = { DisplayValue: r[j] === null ? "" : r[j], Value: r[j] };
|
||
}
|
||
if (r.AttachedToAsset)
|
||
r.AttachedToAssetName = r.AttachedToAsset.AssetName;
|
||
else
|
||
r.AttachedToAssetName = r.AssetName;
|
||
}
|
||
rows.push(r);
|
||
}
|
||
|
||
grid_dt.setData(rows);
|
||
grid_dt.refresh();
|
||
}
|
||
|
||
var grid_dt;
|
||
function InitGridData() {
|
||
grid_dt = createGridView('#schedulerlist', true);
|
||
var list_columns = [
|
||
{ name: 'TypeName', caption: GetTextByKey("P_JS_ASSETTYPE", "Asset Type"), valueIndex: 'TypeName', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'MakeName', caption: GetTextByKey("P_JS_MAKE", "Make"), valueIndex: 'MakeName', allowFilter: true, css: { 'width': 100, 'text-align': 'left' } },
|
||
{ name: 'ModelName', caption: GetTextByKey("P_JS_MODEL", "Model"), valueIndex: 'ModelName', allowFilter: true, css: { 'width': 100, 'text-align': 'left' } },
|
||
{ name: 'AssetName', caption: GetTextByKey("P_JS_ASSETNAME", "Asset Name"), valueIndex: 'AssetName', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'AttachedToAsset', caption: GetTextByKey("P_JS_ATTACHEDTO", "Attached To"), valueIndex: 'AttachedToAssetName', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'CurrentJobSite', caption: GetTextByKey("P_JS_CURRJOBSITE", "Current Jobsite"), allowFilter: true, valueIndex: 'CurrentJobSite', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'NextJobSite', caption: GetTextByKey("P_JS_SCHEDULEDFOR", "Scheduled For"), allowFilter: true, valueIndex: 'NextJobSite', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'AssetGroups', caption: GetTextByKey("P_JS_ASSETGROUP", "Asset Group"), valueIndex: 'AssetGroups', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'EngineHours', caption: GetTextByKey("P_JS_ENGINEHOURS", "Engine Hours"), valueIndex: 'EngineHours', allowFilter: true, css: { 'width': 100, 'text-align': 'right' } },
|
||
{ name: 'AquisitionType', caption: GetTextByKey("P_JS_ACQUISITIONTYPE", "Acquisition Type"), valueIndex: 'AquisitionType', allowFilter: true, css: { 'width': 150, 'text-align': 'left' } },
|
||
{ name: 'StartDate', caption: GetTextByKey("P_JS_START", "Start"), valueIndex: 'StartDate', allowFilter: true, css: { 'width': 100, 'text-align': 'left' } },
|
||
{ name: 'FinishDate', caption: GetTextByKey("P_JS_FINISH", "Finish"), valueIndex: 'FinishDate', allowFilter: true, css: { 'width': 100, 'text-align': 'left' } },
|
||
{ name: 'DurationDays', caption: GetTextByKey("P_JS_DURATIONDAYS", "Duration (days)"), valueIndex: 'DurationDays', allowFilter: true, css: { 'width': 120, 'text-align': 'right' } },
|
||
{ name: 'Schedules', caption: "gantt", valueIndex: 'ScheduleParts', css: { 'width': 320, 'text-align': 'left' } }
|
||
];
|
||
var columns = [];
|
||
// head
|
||
for (var hd in list_columns) {
|
||
var col = {};
|
||
col.name = list_columns[hd].name;
|
||
col.caption = list_columns[hd].caption;
|
||
col.visible = list_columns[hd].visible === false ? false : true;
|
||
col.sortable = true;
|
||
col.width = list_columns[hd].css.width;
|
||
col.align = list_columns[hd].css["text-align"]
|
||
col.key = list_columns[hd].valueIndex;
|
||
col.allowFilter = list_columns[hd].allowFilter;
|
||
col.type = list_columns[hd].type;
|
||
|
||
col.alwaysshow = list_columns[hd].alwaysshow;
|
||
if (col.name === "AttachedToAsset") {
|
||
col.sortFilter = function (a, b) {
|
||
|
||
a = a.AttachedToAssetName + (a.AttachedToAsset ? "1" : "");
|
||
b = b.AttachedToAssetName + (b.AttachedToAsset ? "1" : "");
|
||
return a > b ? 1 : -1;
|
||
}
|
||
}
|
||
else if (col.name === "Schedules") {
|
||
col.sortable = false;
|
||
col.orderable = false;
|
||
col.type = SchedulesColumn;
|
||
col.onScheduleClicked = function (item, sp) {
|
||
onEditScheduler(item, sp.Schedules);
|
||
};
|
||
col.styleFilter = function () {
|
||
return {
|
||
'position': 'relative',
|
||
'height': '36px',
|
||
};
|
||
}
|
||
}
|
||
columns.push(col);
|
||
}
|
||
grid_dt.canMultiSelect = false;
|
||
grid_dt.onCellDblClicked = function (rowindex, columnIndex) {
|
||
if (!IsReadOnly) {
|
||
if (columnIndex != grid_dt.columns.length - 1) {
|
||
var rowdata = grid_dt.source[rowindex];
|
||
if (rowdata) {
|
||
onEditScheduler(rowdata);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
grid_dt.allcolumns = columns;
|
||
// multiple sort
|
||
grid_dt.columnchanged = function (ev) {
|
||
if (ev === 'sort') {
|
||
try {
|
||
var sorts = JSON.parse(window.localStorage.getItem('jobsite_schedulers_sorts'));
|
||
delete sorts[`${companyid}_${userid}`];
|
||
window.localStorage.setItem('jobsite_schedulers_sorts', JSON.stringify(sorts));
|
||
}
|
||
catch { }
|
||
}
|
||
};
|
||
grid_dt.onsorts = function (arr) {
|
||
var sorts;
|
||
try {
|
||
sorts = JSON.parse(window.localStorage.getItem('jobsite_schedulers_sorts'));
|
||
if (sorts == null) {
|
||
sorts = {};
|
||
}
|
||
}
|
||
catch {
|
||
sorts = {};
|
||
}
|
||
sorts[`${companyid}_${userid}`] = arr;
|
||
window.localStorage.setItem('jobsite_schedulers_sorts', JSON.stringify(sorts));
|
||
};
|
||
try {
|
||
var sorts = JSON.parse(window.localStorage.getItem('jobsite_schedulers_sorts'));
|
||
grid_dt.sortArray = sorts[`${companyid}_${userid}`];
|
||
} catch { }
|
||
getGridLayout(gridLayoutID, grid_dt);
|
||
}
|
||
|
||
|
||
function showJobsiteSchedulerList(data) {
|
||
var rows = [];
|
||
for (var i = 0; i < data.length; i++) {
|
||
var r = data[i];
|
||
r.Selected = false;
|
||
r.Changed = false;
|
||
for (var j in r) {
|
||
if (j === "BeginDate") {
|
||
r[j] = { DisplayValue: r["BeginDateStr"], Value: r[j] };
|
||
}
|
||
if (j === "EndDate") {
|
||
r[j] = { DisplayValue: r["EndDateStr"], Value: r[j] };
|
||
}
|
||
}
|
||
rows.push(r);
|
||
}
|
||
|
||
grid_jsschedulerdt.setData(rows);
|
||
grid_jsschedulerdt.refresh();
|
||
}
|
||
|
||
var grid_jsschedulerdt;
|
||
function InitJobsiteschedulerGridData() {
|
||
grid_jsschedulerdt = createGridView('#schedulerlist1');
|
||
grid_jsschedulerdt.isEditable = true;
|
||
var list_columns = [
|
||
{ name: 'Selected', caption: "", valueIndex: 'Selected', type: 3, css: { 'width': 45, 'text-align': 'center' } },
|
||
{ name: 'JobSiteName', caption: GetTextByKey("P_JOBSITES", "Jobsite"), valueIndex: 'JobSiteName', allowFilter: true, css: { 'width': 130, 'text-align': 'left' } },
|
||
{ name: 'BeginDate', caption: GetTextByKey("P_JS_BEGINDATE", 'Begin Date'), valueIndex: 'BeginDate', allowFilter: true, css: { 'width': 120, 'text-align': 'left' } },
|
||
{ name: 'EndDate', caption: GetTextByKey("P_JS_ENDDATE", 'End Date'), valueIndex: 'EndDate', allowFilter: true, css: { 'width': 120, 'text-align': 'left' } },
|
||
{ name: 'Delete', caption: "", alwaysshow: true, css: { 'width': 30, 'text-align': 'center' } }
|
||
];
|
||
var columns = [];
|
||
// head
|
||
for (var hd in list_columns) {
|
||
var col = {};
|
||
col.name = list_columns[hd].name;
|
||
col.caption = list_columns[hd].caption;
|
||
col.visible = true;
|
||
col.sortable = true;
|
||
col.width = list_columns[hd].css.width;
|
||
col.align = list_columns[hd].css["text-align"]
|
||
col.key = list_columns[hd].valueIndex;
|
||
col.allowFilter = list_columns[hd].allowFilter;
|
||
col.oldFilterValues = col.filterValues;
|
||
if (list_columns[hd].type) {
|
||
col.type = list_columns[hd].type;
|
||
}
|
||
|
||
col.alwaysshow = list_columns[hd].alwaysshow;
|
||
|
||
var DateColumn = window['lib-ui'].GridDateColumn;
|
||
if (col.name === "BeginDate") {
|
||
col.type = DateColumn;
|
||
col.filter = function (item, editing) {
|
||
return item.BeginDateStr;
|
||
};
|
||
col.sortFilter = function (a, b) {
|
||
a = a.BeginDate.Value;
|
||
b = b.BeginDate.Value;
|
||
return a > b ? 1 : (a < b ? -1 : 0);
|
||
};
|
||
col.onChanged = function (item, value) {
|
||
item.BeginDateStr = item.BeginDate.DisplayValue = DateColumn.formatDate(value);
|
||
item.BeginDate = item.BeginDate.Value;
|
||
item.Changed = true;
|
||
};
|
||
}
|
||
else if (col.name === "EndDate") {
|
||
col.type = DateColumn;
|
||
col.filter = function (item, editing) {
|
||
return item.EndDateStr;
|
||
};
|
||
col.sortFilter = function (a, b) {
|
||
a = a.EndDate.Value;
|
||
b = b.EndDate.Value;
|
||
return a > b ? 1 : (a < b ? -1 : 0);
|
||
};
|
||
col.onChanged = function (item, value) {
|
||
item.EndDateStr = item.EndDate.DisplayValue = DateColumn.formatDate(value);
|
||
item.EndDate = item.EndDate.Value;
|
||
item.Changed = true;
|
||
};
|
||
}
|
||
else if (col.name === "Delete") {
|
||
col.sortable = false;
|
||
col.resizable = false;
|
||
col.type = GridView.ColumnTypes.Icon;
|
||
col.text = 'times';
|
||
col.events = {
|
||
onclick: function () {
|
||
onDeleteScheduler(this);
|
||
}
|
||
};
|
||
col.attrs = { 'title': GetTextByKey("P_WO_DELETE", 'Delete') };
|
||
}
|
||
columns.push(col);
|
||
}
|
||
grid_jsschedulerdt.multiSelect = true;
|
||
grid_jsschedulerdt.columns = columns;
|
||
grid_jsschedulerdt.init();
|
||
}
|
||
|
||
var currentscheduler;
|
||
var allSchedulers;
|
||
function onEditScheduler(item, schedules) {
|
||
allSchedulers = [];
|
||
currentscheduler = item;
|
||
if (!schedules || schedules.length == 0) {
|
||
schedules = item.Schedules;
|
||
}
|
||
|
||
if (schedules && schedules.length > 0)
|
||
allSchedulers = schedules;
|
||
|
||
$('#dialog_assetname').text(item.AssetName);
|
||
$('#dialog_assettype').text(item.TypeName);
|
||
$('#dialog_make').text(item.MakeName);
|
||
$('#dialog_model').text(item.ModelName);
|
||
|
||
showmaskbg(true);
|
||
var title = GetTextByKey("P_JS_MANAGESCHEDULER", "Manage Scheduler");
|
||
$('#dialog_managescheduler .dialog-title span.title').html(title);
|
||
$('#dialog_managescheduler')
|
||
.attr('init', 1)
|
||
.css({
|
||
'top': (document.documentElement.clientHeight - $('#dialog_managescheduler').height()) / 3,
|
||
'left': (document.documentElement.clientWidth - $('#dialog_managescheduler').width()) / 2
|
||
}).showDialogfixed();
|
||
|
||
showJobsiteSchedulerList(allSchedulers);
|
||
}
|
||
|
||
function onDeleteScheduler(item) {
|
||
var schduler = item;
|
||
var ids = [];
|
||
if (schduler) {
|
||
ids.push(schduler.DispatchId);
|
||
}
|
||
else {
|
||
var tempsource = grid_jsschedulerdt.source;
|
||
for (var i = 0; i < tempsource.length; i++) {
|
||
var sch = tempsource[i];
|
||
if (sch.Selected && !sch.Completed) {
|
||
ids.push(sch.DispatchId);
|
||
}
|
||
}
|
||
}
|
||
|
||
if (ids.length == 0)
|
||
return;
|
||
|
||
var text = GetTextByKey("P_JS_WOULDYOULIKETODELETETHESCHEDULERS", "Would you like to delete the scheduler(s)?");
|
||
var alerttitle = GetTextByKey("P_JS_DELETESCHEDULER", "Delete Scheduler");
|
||
showConfirmIndialog(text, alerttitle, function () {
|
||
var dispatchids = [];
|
||
if (schduler) {
|
||
dispatchids.push(schduler.DispatchId);
|
||
var index = grid_jsschedulerdt.selectedIndex;
|
||
grid_jsschedulerdt.removeItem(index);
|
||
}
|
||
else {
|
||
var tempsource = grid_jsschedulerdt.source;
|
||
for (var i = tempsource.length - 1; i >= 0; i--) {
|
||
var sch = tempsource[i];
|
||
if (sch.Selected && !sch.Completed) {
|
||
dispatchids.push(sch.DispatchId);
|
||
grid_jsschedulerdt.removeItem(i);
|
||
}
|
||
}
|
||
}
|
||
|
||
if (dispatchids.length == 0)
|
||
return;
|
||
|
||
var item = {
|
||
'DispatchId': dispatchids,
|
||
'DeleteNotes': ''
|
||
};
|
||
var p = htmlencode(JSON.stringify(item));
|
||
jobsitequery("DeleteDispatch", p, function (data) {
|
||
|
||
}, function (err) {
|
||
});
|
||
});
|
||
}
|
||
|
||
function checkSchedulerItems(alerttitle) {
|
||
var items = [];
|
||
var tempsource = grid_jsschedulerdt.source;
|
||
for (var i = 0; i < tempsource.length; i++) {
|
||
var sch = tempsource[i];
|
||
if (sch.Changed) {
|
||
var item = {
|
||
'DispatchId': sch.DispatchId,
|
||
'MoveDate': sch.MoveDate,
|
||
'BeginDate': sch.BeginDateStr,
|
||
'EndDate': sch.EndDateStr,
|
||
'Notes': sch.Notes
|
||
};
|
||
|
||
if (!item.BeginDate) {
|
||
showAlert(GetTextByKey("P_JS_PLEASEENTERTHEBEGINDATE", "Please enter the Begin Date."), alerttitle);
|
||
return false;
|
||
}
|
||
if (!checkDate(item.BeginDate)) {
|
||
showAlert(GetTextByKey("P_JS_BEGINDATEFORMATERROR", "Begin Date format error."), alerttitle);
|
||
return false;
|
||
}
|
||
if (!item.EndDate) {
|
||
showAlert(GetTextByKey("P_JS_PLEASEENTERTHEENDDATE", "Please enter the End Date."), alerttitle);
|
||
return false;
|
||
}
|
||
if (!checkDate(item.EndDate)) {
|
||
showAlert(GetTextByKey("P_JS_ENDDATEFORMATERROR", "End Date format error."), alerttitle);
|
||
return false;
|
||
}
|
||
|
||
var nowdt = new Date(currentdate.replace("-", "/"));
|
||
var sdate = item.BeginDate;
|
||
var stdt = new Date(sdate.replace("-", "/"));
|
||
var edate = item.EndDate;
|
||
var etdt = new Date(edate.replace("-", "/"));
|
||
|
||
//if (stdt < nowdt) {
|
||
// showAlert(GetTextByKey("P_JS_BEGINDATESHOULDBENOEARLIERTHANTODAYSDATE", "Begin Date should be no earlier than today’s date. Please select another date."), alerttitle);
|
||
// return false;
|
||
//}
|
||
|
||
//if (etdt < nowdt) {
|
||
// showAlert(GetTextByKey("P_JS_ENDDATEMUSTBELATERTHANBEGINDATE1", "End Date must be later than Begin Date. Please select another date range."), alerttitle);
|
||
// return false;
|
||
//}
|
||
|
||
if (stdt > etdt) {
|
||
showAlert(GetTextByKey("P_JS_ENDDATEMUSTBELATERTHANBEGINDATE", "End Date must be later than Begin Date."), alerttitle);
|
||
return false;
|
||
}
|
||
|
||
items.push(item);
|
||
}
|
||
}
|
||
return items;
|
||
}
|
||
|
||
function onUpdateScheduler() {
|
||
if (grid_jsschedulerdt.source.length == 0) {
|
||
$('#dialog_managescheduler').hide();
|
||
showmaskbg(false);
|
||
OnRefresh();
|
||
return;
|
||
}
|
||
|
||
var alerttitle = GetTextByKey("P_JS_MANAGESCHEDULER", "Manage Scheduler");
|
||
var items = checkSchedulerItems(alerttitle);
|
||
if (!items)
|
||
return;
|
||
|
||
if (items.length == 0) {
|
||
$('#dialog_managescheduler').hide();
|
||
$('#dialogmask').hide();
|
||
OnRefresh();
|
||
return;
|
||
}
|
||
|
||
showloading(true);
|
||
var param = JSON.stringify(items);
|
||
param = htmlencode(param);
|
||
jobsitequery("UpdateDispatch", param, function (data) {
|
||
showloading(false);
|
||
if (data !== "OK") {
|
||
showAlert(data, GetTextByKey("P_AM_ERROR", 'Error'));
|
||
}
|
||
$('#dialog_managescheduler').hide();
|
||
$('#dialogmask').hide();
|
||
OnRefresh();
|
||
}, function (err) {
|
||
console.log(err);
|
||
showloading(false);
|
||
showAlert(GetTextByKey("P_JS_FAILEDTOSAVE", "Failed to save jobsite."), alerttitle);
|
||
});
|
||
}
|
||
|
||
function openAddScheduler() {
|
||
showmaskbg(true);
|
||
$('#dialogmask').show();
|
||
//$('#dialog_addjobsite').val('');
|
||
$('#dialog_addbegindate').val('');
|
||
$('#dialog_addenddate').val('');
|
||
$('#dialog_addnotes').val('');
|
||
$('#dialog_pointofcontact').val('');
|
||
|
||
var title = GetTextByKey("P_JS_ADDSCHEDULER", "Add Scheduler");
|
||
$('#dialog_addscheduler .dialog-title span.title').html(title);
|
||
$('#dialog_addscheduler')
|
||
.attr('init', 1)
|
||
.css({
|
||
'top': (document.documentElement.clientHeight - $('#dialog_addscheduler').height()) / 3,
|
||
'left': (document.documentElement.clientWidth - $('#dialog_addscheduler').width()) / 2
|
||
}).showDialogfixed();
|
||
}
|
||
|
||
function onAddScheduler(ignorebeginpast) {
|
||
var alerttitle = GetTextByKey("P_JS_ADDSCHEDULER", "Add Scheduler");
|
||
var item = {
|
||
'JobSiteId': $('#dialog_addjobsite').find("option:selected").val(),
|
||
'JobSiteName': $("#dialog_addjobsite").find("option:selected").text(),
|
||
'BeginDate': $.trim($('#dialog_addbegindate').val()),
|
||
'EndDate': $.trim($('#dialog_addenddate').val()),
|
||
'Quantity': 1,
|
||
'Notes': $('#dialog_addnotes').val(),
|
||
'PointOfContact': $('#dialog_pointofcontact').val()
|
||
};
|
||
|
||
item.AssetType = currentscheduler.TypeId;
|
||
var assets = [];
|
||
var asset = {
|
||
'AssetId': currentscheduler.AssetId,
|
||
'BeginDate': item.BeginDate,
|
||
'EndDate': item.EndDate
|
||
};
|
||
assets.push(asset);
|
||
item.Assets = assets;
|
||
|
||
if (item.BeginDate.length === 0) {
|
||
showAlert(GetTextByKey("P_JS_PLEASEENTERTHEBEGINDATE", "Please enter the Begin Date."), alerttitle);
|
||
return;
|
||
}
|
||
if (!checkDate(item.BeginDate)) {
|
||
showAlert(GetTextByKey("P_JS_BEGINDATEFORMATERROR", "Begin Date format error."), alerttitle);
|
||
return;
|
||
}
|
||
if (item.EndDate.length === 0) {
|
||
showAlert(GetTextByKey("P_JS_PLEASEENTERTHEENDDATE", "Please enter the End Date."), alerttitle);
|
||
return;
|
||
}
|
||
if (!checkDate(item.EndDate)) {
|
||
showAlert(GetTextByKey("P_JS_ENDDATEFORMATERROR", "End Date format error."), alerttitle);
|
||
return;
|
||
}
|
||
var nowdt = new Date(currentdate.replace("-", "/"));
|
||
var sdate = item.BeginDate;
|
||
var stdt = new Date(sdate.replace("-", "/"));
|
||
var edate = item.EndDate;
|
||
var etdt = new Date(edate.replace("-", "/"));
|
||
|
||
if (!ignorebeginpast && stdt < nowdt) {
|
||
var msg = GetTextByKey("P_JS_BEGINDATEPAST", "The begin date for this requirement is in the past, do you want to continue?")
|
||
showConfirm(msg, alerttitle, function () {
|
||
onAddScheduler(true);
|
||
});
|
||
return;
|
||
}
|
||
|
||
//if (etdt < nowdt) {
|
||
// showAlert(GetTextByKey("P_JS_ENDDATEMUSTBELATERTHANBEGINDATE1", "End Date must be later than Begin Date. Please select another date range."), alerttitle);
|
||
// return;
|
||
//}
|
||
|
||
if (stdt > etdt) {
|
||
showAlert(GetTextByKey("P_JS_ENDDATEMUSTBELATERTHANBEGINDATE", "End Date must be later than Begin Date."), alerttitle);
|
||
return;
|
||
}
|
||
|
||
$('#dialogmask1').show();
|
||
var param = JSON.stringify(item);
|
||
param = htmlencode(param);
|
||
jobsitequery("CreateNewRequirment", param, function (data) {
|
||
if (typeof (data) === "string") {
|
||
showAlert(data, alerttitle);
|
||
$('#dialogmask1').hide();
|
||
} else {
|
||
$('#dialog_addscheduler').hide();
|
||
$('#dialogmask').hide();
|
||
$('#dialogmask1').hide();
|
||
|
||
var scheduleritem = item;
|
||
scheduleritem.DispatchId = data[0];
|
||
scheduleritem.BeginDateStr = item.BeginDate;
|
||
scheduleritem.EndDateStr = item.EndDate;
|
||
allSchedulers.push(scheduleritem);
|
||
showJobsiteSchedulerList(allSchedulers);
|
||
}
|
||
}, function (err) {
|
||
console.log(err);
|
||
showAlert(GetTextByKey("P_JS_FAILEDTOSAVESCHEDULER", "Failed to save scheduler."), alerttitle);
|
||
$('#dialogmask1').hide();
|
||
});
|
||
} |