This commit is contained in:
2024-03-26 15:56:31 +08:00
parent 634e8b71ab
commit 0855ae42cd
547 changed files with 94818 additions and 60463 deletions

View File

@ -3,11 +3,8 @@ function GetRoadMachines() {
jobsitequery("GetRoadMachines", "", function (data) {
if (data && data.length > 0) {
allroadassets = data;
editableSelectAssignAsset.setEnable(true);
editableSelectAssignAsset.datasource = data;
editableSelectAssignAsset.valuepath = "Id"
editableSelectAssignAsset.displaypath = "DisplayName";
$('#dialog_assignasset').dropdownDisabled(false);
$('#dialog_assignasset').dropdownSource(data);
}
}, function (err) {
@ -19,8 +16,9 @@ function openAssignDispatch(seltype,) {
_seltype = seltype;
if (_sendType == 1) {
_selectdispatchids = [];
for (var i = 0; i < grid_dt.source.length; i++) {
var ct = grid_dt.source[i].Values;
var tempsource = grid_dt.source;
for (var i = 0; i < tempsource.length; i++) {
var ct = tempsource[i];
if (ct.Selected) {
_selectdispatchids.push(ct.DispatchId);
}
@ -38,7 +36,7 @@ function openAssignDispatch(seltype,) {
if (!allroadassets)
GetRoadMachines();
editableSelectAssignAsset.val('');
$('#dialog_assignasset').dropdownVal('');
showmaskbg(true);
$('#dialog_assignment .dialog-title span.title').text(GetTextByKey('P_JS_DISPATCHASSIGNMENT', 'Dispatch Assignment'));
$('#dialog_assignment')
@ -53,7 +51,7 @@ function openAssignDispatch(seltype,) {
var assignAsset = null;
function onAssignContinue() {
assignAsset = editableSelectAssignAsset.selecteditem();
assignAsset = $('#dialog_assignasset').dropdownItem();
if (assignAsset == null) {
onAssignSkip();
}

View File

@ -15,8 +15,7 @@ function showContactList(data) {
}
r.Text = false;
r.Email = false;
var fr = { Values: r };
rows.push(fr);
rows.push(r);
}
grid_maildt.setData(rows);
@ -24,12 +23,7 @@ function showContactList(data) {
var grid_maildt;
function InitEmailGridData() {
grid_maildt = new GridView('#contactlist');
grid_maildt.lang = {
all: GetTextByKey("P_GRID_ALL", "(All)"),
ok: GetTextByKey("P_GRID_OK", "OK"),
reset: GetTextByKey("P_GRID_RESET", "Reset")
};
grid_maildt = createGridView('#contactlist');
var list_columns = [
{ name: 'DisplayName', caption: GetTextByKey("P_MV_CONTACTNAME", "Contact Name"), valueIndex: 'DisplayName', css: { 'width': 148, 'text-align': 'left' } },
{ name: 'ContactTypeName', caption: GetTextByKey("P_MV_CONTACTTYPE", "Contact Type"), valueIndex: 'ContactTypeName', css: { 'width': 148, 'text-align': 'left' } },
@ -65,12 +59,6 @@ function InitEmailGridData() {
grid_maildt.canMultiSelect = false;
grid_maildt.columns = columns;
grid_maildt.init();
grid_maildt.selectedrowchanged = function (rowindex) {
var rowdata = grid_maildt.source[rowindex];
if (rowdata) {
}
}
}
@ -84,8 +72,9 @@ function getDispatchContacts(assetids) {
ids = assetids;
}
else {
for (var i = 0; i < grid_dt.source.length; i++) {
var ct = grid_dt.source[i].Values;
var tempsource = grid_dt.source;
for (var i = 0; i < tempsource.length; i++) {
var ct = tempsource[i];
if (ct.Selected && ids.indexOf(ct.AssetId) < 0)
ids.push(ct.AssetId);
}
@ -177,8 +166,9 @@ function onSendEmails() {
}
}
for (var i = 0; i < grid_maildt.source.length; i++) {
var ct = grid_maildt.source[i].Values;
var tempsource = grid_maildt.source;
for (var i = 0; i < tempsource.length; i++) {
var ct = tempsource[i];
if (ct.Email) {
emailaddress.push({ 'Key': ct.IID, 'Value': ct.ID });
}

File diff suppressed because it is too large Load Diff

View File

@ -2,10 +2,11 @@
function showSchedulerData(data) {
if (data) {
assetsObj = data;
var col = grid_dt.columns.find(c => c.name === 'Schedules');
if (assetsObj.HasSchedule)
grid_dt.columns[grid_dt.columns.length - 1].width = assetsObj.TotalDays * 5;
col.width = assetsObj.TotalDays * 5;
else
grid_dt.columns[grid_dt.columns.length - 1].width = 320;
col.width = 320;
grid_dt.init();
showSchedulerList(data.DispatchAssets);
}
@ -21,8 +22,22 @@ function showSchedulerList(data) {
var rows = [];
for (var i = 0; i < data.length; i++) {
var r = data[i];
var fr = { Values: r };
rows.push(fr);
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);
@ -31,21 +46,21 @@ function showSchedulerList(data) {
var grid_dt;
function InitGridData() {
grid_dt = new GridView('#schedulerlist');
grid_dt.lang = {
all: GetTextByKey("P_GRID_ALL", "(All)"),
ok: GetTextByKey("P_GRID_OK", "OK"),
reset: GetTextByKey("P_GRID_RESET", "Reset")
};
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_PM_MAKE", "Make"), valueIndex: 'MakeName', allowFilter: true, css: { 'width': 100, 'text-align': 'left' } },
{ name: 'ModelName', caption: GetTextByKey("P_PM_MODEL", "Model"), valueIndex: 'ModelName', allowFilter: true, css: { 'width': 100, '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', css: { 'width': 100, 'text-align': 'right' } },
{ 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 = [];
@ -63,286 +78,176 @@ function InitGridData() {
col.type = list_columns[hd].type;
col.alwaysshow = list_columns[hd].alwaysshow;
if (col.name === "Schedules") {
var labelCount = 4;
if (col.name === "AttachedToAsset") {
col.sortFilter = function (a, b) {
col.sortable = false;
col.allowHtml = true;
col.caption = function () {
if (!assetsObj || !assetsObj.HasSchedule) return;
var container = $('<span></span>').css({ position: 'relative', height: '100%', display: 'block' });
var left = 0;
for (var i = 0; i < assetsObj.Labels.length; i++) {
var label = assetsObj.Labels[i];
var sp = $('<span class="span-caption"></span>').text(label.Key).css({ left: left });
left += parseInt(label.Value) * 5;
container.append(sp);
}
grid_dt.resize();
//var totalDays = (led.getTime() - fbd.getTime()) / (1000 * 60 * 60 * 24);
//var interval = parseInt(totalDays / labelCount);
//if (totalDays % labelCount != 0)
// interval += 1;
//var d = new Date(assetsObj.BeginDate);
//var w = col.width / labelCount;
//for (var i = 0; i < labelCount; i++) {
// var label = new DateFormatter().formatDate(d, 'm/d/Y');
// var sp = $('<span class="span-caption"></span>').text(label).css({ left: w * i });
// container.append(sp);
// d = new Date(d.getTime() + interval * 1000 * 60 * 60 * 24);
//}
return container;
a = a.AttachedToAssetName + (a.AttachedToAsset ? "1" : "");
b = b.AttachedToAssetName + (b.AttachedToAsset ? "1" : "");
return a > b ? 1 : -1;
}
col.filter = function (item) {
if (item.ScheduleParts && assetsObj && assetsObj.HasSchedule) {
var totalDays = assetsObj.TotalDays;
var interval = parseInt(totalDays / labelCount);
if (totalDays % labelCount != 0)
interval += 1;
totalDays = interval * labelCount;
var container = $('<div></div>').css({
position: 'relative',
height: '20px',
});
var d = new Date(assetsObj.BeginDate);
for (var i = 0; i < item.ScheduleParts.length; i++) {
var sp = item.ScheduleParts[i];
var bdate = new Date(sp.BeginDate);
var edate = new Date(sp.EndDate);
var l = (bdate.getTime() - d.getTime()) / (1000 * 60 * 60 * 24) / totalDays * col.width;
var w = (edate.getTime() - bdate.getTime()) / (1000 * 60 * 60 * 24) / totalDays * col.width;
var color = "";
if (sp.Schedules.length == 1)
color = sp.Schedules[0].Color;
else {
for (var j = 0; j < sp.Schedules.length; j++) {
if (color !== "")
color += ","
color += sp.Schedules[j].Color;
}
}
var df = new DateFormatter();
var title = df.formatDate(bdate, 'm/d/Y') + " - " + df.formatDate(new Date((edate.getTime() - 1000 * 60 * 60 * 24)), 'm/d/Y') + "\n";
for (var j = 0; j < sp.Schedules.length; j++) {
var bd = new Date(sp.Schedules[j].BeginDate);
var ed = new Date(sp.Schedules[j].EndDate);
title += sp.Schedules[j].JobSiteName + ": " + df.formatDate(bd, 'm/d/Y') + " - " + df.formatDate(ed, 'm/d/Y');
if (sp.Schedules[j].PointOfContact)
title += "\n " + GetTextByKey("P_JS_CONTACT_COLON", "Contact: ") + " " + sp.Schedules[j].PointOfContact;
if (sp.Schedules[j].Creator)
title += "\n " + GetTextByKey("P_JS_CREATOR_COLON", "Creator: ") + " " + sp.Schedules[j].Creator;
if (j != sp.Schedules.length - 1)
title += "\n";
}
var bar = $('<span class="span-bar"></span>');
bar.css({
left: l,
width: w - 1,
'border-left': '1px solid transparen'
});
if (sp.Schedules.length == 1)
bar.css("backgroundColor", color);
else {
//bar.css("background", "url(img/gridline.jpg) repeat 20px 20px");
//bar.css("background", "linear-gradient(45deg," + color + ")");
//bar.css("background-image", "repeating-linear-gradient(45deg,white, white 5px,#ff9900 5px,#ff9900 7px)");
//bar.css("background-image", "repeating-linear-gradient(135deg,blue 1px, transparent 0), repeating-linear-gradient(45deg, red 1px, transparent 0)");
//bar.css("background-size", "5px 5px");
//bar.css("background-image", "url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><g fill='orange' fill-opacity='1'><path fill-rule='evenodd' d='M0 0h4v4H0V0zm4 4h4v4H4V4z'/></g></svg>\")");
bar.css("background-image", "url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><g fill-opacity='0.5'><path d='M0 0L8 8z M0 8L8 0z' style='fill:white;stroke:gray;stroke-width:1'/></g></svg>\")");
}
bar.attr("title", title);
if (!IsReadOnly) {
bar.dblclick(sp, function (e) {
onEditScheduler(item, e.data.Schedules);
});
}
container.append(bar);
}
return container;
}
}
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 {
'margin-top': '3px',
'margin-bottom': '0px',
'position': 'relative',
'height': '36px',
};
}
}
columns.push(col);
}
grid_dt.canMultiSelect = false;
grid_dt.columns = columns;
grid_dt.init();
grid_dt.celldblclick = function (rowindex, columnIndex) {
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.Values);
onEditScheduler(rowdata);
}
}
}
}
grid_dt.selectedrowchanged = function (rowindex) {
var rowdata = grid_dt.source[rowindex];
if (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);
}
if (typeof jobsiteschedulerCtrl !== 'function') {
$jobsiteschedulerCtrl = function jobsiteschedulerCtrl() {
this.tmpobj = {
};
this.wizardCtrl = null;
this.vue = null;
};
(function () {
'use strict';
var dataGrid = window.DataGrid || window['g5-datagrid'];
$jobsiteschedulerCtrl.prototype.getData = function (/*dataObj, tmpdata*/) {
return this.vue.source;
};
$jobsiteschedulerCtrl.prototype.setData = function (data) {
if (data) {
for (var i = 0; i < data.length; i++) {
data[i].Selected = false;
}
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] };
}
this.vue.source = data ? data : [];
this.vue.$refs.grid.resize();
};
$jobsiteschedulerCtrl.prototype.reload = function () {
this.vue.$refs.grid.reload()
};
$jobsiteschedulerCtrl.prototype.Init = function (parent, newselected) {
var ethis = this;
//加载子页面模版
parent.load('../template/JobsiteSchedulerCtrl.html?v=8', function () {
ethis.vue = new Vue({
el: parent.find('.JobsiteSchedulerCtrl')[0],
components: {
'data-grid': dataGrid
},
data: {
wnd: window.parent,
//editable: true,
columns: [],
source: []
},
computed: {
},
watch: {
source: function (val) {
}
},
methods: {
cellvaluechanged: function (item, key) {
},
rowdblclick: function (e) {
}
}
});
ethis.vue.columns = createGridColumn(newselected);
});
};
function createGridColumn(newselected) {
var editable = true;
var columns = [
{
key: 'Selected',
caption: '',
type: dataGrid.COLUMN_TYPE.checkbox,
width: 30,
align: 'center',
sortable: false,
orderable: false,
resizable: false,
allcheck: false,
enabled: function (item) {
return !item.Completed;
}
},
{
key: 'JobSiteName',
caption: GetTextByKey("P_JS_JOBSITE", "Jobsite"),
type: dataGrid.COLUMN_TYPE.label,
width: 200,
orderable: false,
resizable: false,
enabled: false
},
{
key: 'BeginDateStr',
caption: GetTextByKey("P_JS_BEGINDATE", 'Begin Date'),
type: dataGrid.COLUMN_TYPE.datepicker,
width: 120,
orderable: false,
resizable: false,
enabled: editable,
onchanged: function (item) {
item.Changed = true;
}
},
{
key: 'EndDateStr',
caption: GetTextByKey("P_JS_ENDDATE", 'End Date'),
type: dataGrid.COLUMN_TYPE.datepicker,
width: 120,
orderable: false,
resizable: false,
enabled: editable,
onchanged: function (item) {
item.Changed = true;
}
},
{
key: 'Delete',
type: dataGrid.COLUMN_TYPE.link,
align: 'center',
width: 30,
orderable: false,
resizable: false,
enabled: editable,
filter: function (item) {
return item.Completed ? '' : '\uf00d';
},
onclick: function (e, item) {
onDeleteScheduler(item);
},
styleFilter: function (item) {
return {
'font-family': 'FontAwesome',
'cursor': 'pointer',
'color': 'rgb(123, 28, 33)'
};
},
attrs: { 'title': GetTextByKey("P_JS_DELETE", 'Delete') }
}
];
return columns;
}
}());
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;
@ -372,10 +277,7 @@ function onEditScheduler(item, schedules) {
'left': (document.documentElement.clientWidth - $('#dialog_managescheduler').width()) / 2
}).showDialogfixed();
if (jobsiteschedulerCtrl) {
jobsiteschedulerCtrl.setData(allSchedulers);
}
showJobsiteSchedulerList(allSchedulers);
}
function onDeleteScheduler(item) {
@ -385,8 +287,9 @@ function onDeleteScheduler(item) {
ids.push(schduler.DispatchId);
}
else {
for (var i = 0; i < jobsiteschedulerCtrl.vue.source.length; i++) {
var sch = jobsiteschedulerCtrl.vue.source[i];
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);
}
@ -402,15 +305,16 @@ function onDeleteScheduler(item) {
var dispatchids = [];
if (schduler) {
dispatchids.push(schduler.DispatchId);
var index = jobsiteschedulerCtrl.vue.source.indexOf(schduler);
jobsiteschedulerCtrl.vue.$refs.grid.deleteRow(index);
var index = grid_jsschedulerdt.selectedIndex;
grid_jsschedulerdt.removeItem(index);
}
else {
for (var i = jobsiteschedulerCtrl.vue.source.length - 1; i >= 0; i--) {
var sch = jobsiteschedulerCtrl.vue.source[i];
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);
jobsiteschedulerCtrl.vue.$refs.grid.deleteRow(i);
grid_jsschedulerdt.removeItem(i);
}
}
}
@ -432,8 +336,9 @@ function onDeleteScheduler(item) {
function checkSchedulerItems(alerttitle) {
var items = [];
for (var i = 0; i < jobsiteschedulerCtrl.vue.source.length; i++) {
var sch = jobsiteschedulerCtrl.vue.source[i];
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,
@ -488,7 +393,7 @@ function checkSchedulerItems(alerttitle) {
}
function onUpdateScheduler() {
if (jobsiteschedulerCtrl.vue.source.length == 0) {
if (grid_jsschedulerdt.source.length == 0) {
$('#dialog_managescheduler').hide();
showmaskbg(false);
OnRefresh();
@ -528,7 +433,7 @@ function onUpdateScheduler() {
function openAddScheduler() {
showmaskbg(true);
$('#dialogmask').show();
$('#dialog_addjobsite').val('');
//$('#dialog_addjobsite').val('');
$('#dialog_addbegindate').val('');
$('#dialog_addenddate').val('');
$('#dialog_addnotes').val('');
@ -623,6 +528,7 @@ function onAddScheduler(ignorebeginpast) {
scheduleritem.BeginDateStr = item.BeginDate;
scheduleritem.EndDateStr = item.EndDate;
allSchedulers.push(scheduleritem);
showJobsiteSchedulerList(allSchedulers);
}
}, function (err) {
console.log(err);