<section id="F21_G050_dialog" class="itp-flex-column">
<article class="itp-flex-1">
<div id="F21_G050_timeRate">
<label class="nor_pop_label m0" title="@Resource.F21_G050_T020">
<input class="iCheck" type="radio" name="timeRate" value="24">24 @Resource.F21_G050_S003
</label>
<label class="nor_pop_label m0" title="@Resource.F21_G050_T020">
<input class="iCheck" type="radio" name="timeRate" value="12">12 @Resource.F21_G050_S003
</label>
<label class="nor_pop_label m0" title="@Resource.F21_G050_T020">
<input class="iCheck" type="radio" name="timeRate" value="6">6 @Resource.F21_G050_S003
</label>
<label class="nor_pop_label m0" title="@Resource.F21_G050_T020">
<input class="iCheck" type="radio" name="timeRate" value="2">2 @Resource.F21_G050_S003
</label>
</div>
<div id="workTypes">
<table class="mt_pop_table_left setting-panel-inDialog">
<thead class="panel-heading-inDialog"></thead>
<tbody></tbody>
</table>
</div>
<div id="mainDiv">
<table class="mt_pop_table setting-panel-inDialog">
<thead class="panel-heading-inDialog"></thead>
<tbody></tbody>
</table>
</div>

<div class="mt_pop_right">
<article class="setting-panel-inDialog F21_G050_table">
<div class="panel-heading-inDialog">@Resource.F21_G050_S004</div>
<table border="0" cellspacing="0" cellpadding="0" style="width:160px">
<thead>
<tr>
<td>运单一览</td>
</tr>
<tr>
<td style="height:55px">
<div>
<div style="float:left; width:70px">
<label style='float:left;background-color:red; width:18px; height:15px;margin-right:5px'>&nbsp;</label><div>未配车</div>
</div>
<div>
<label style='float:left;background-color:#CCCC00; width:18px; height:15px;margin-right:5px'>&nbsp;</label><div>配车完了</div>
</div>
<div style="float:left; width:70px">
<label style='float:left;background-color:Yellow; width:18px; height:15px;margin-right:5px'>&nbsp;</label><div>集荷中</div>
</div>
<div>
<label style='float:left;background-color:Green; width:18px; height:15px;margin-right:5px'>&nbsp;</label><div>配送中</div>
</div>
<div style="float:left; width:90px">
<label style='float:left;background-color:Gray; width:18px; height:15px;margin-right:5px'>&nbsp;</label><div>配送完了</div>
</div>
</div>
</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="item" style="background-color:Red"><span>南京<br />12:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Red"><span>南京<br />13:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Red"><span>北京<br />12:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Green"><span>广州<br />12:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Green"><span>北京<br />11:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Yellow"><span>上海<br />12:00</span></div>
</td>
</tr>
<tr>
<td>
<div class="item" style="background-color:Yellow"><span>深圳<br />12:00</span></div>
</td>
</tr>
</tbody>
</table>
</article>

<article class="setting-panel-inDialog F21_G050_table" id="F21G050_panel_placeSetting" style="display:none">
<div class="panel-heading-inDialog">@Resource.F21_G050_S013</div>
<p class="F21_G050_table">
<label class="nor_pop_label m0 pt10" title="@Resource.F21_G050_T014">
<input id="F21_G050_PlaceSettingType_Place" type="radio" name="F21_G050_PlaceSettingType" value="1"> @Resource.F21_G050_S014
</label>
<label class="nor_pop_label m0 pt10" title="@Resource.F21_G050_T015">
<input id="F21_G050_PlaceSettingType_Map" type="radio" name="F21_G050_PlaceSettingType" value="2"> @Resource.F21_G050_S015
</label>
<label class="nor_pop_label m0 pt10" title="@Resource.F21_G050_T016">
<input id="F21_G050_PlaceSettingType_SA" type="radio" name="F21_G050_PlaceSettingType" value="3"> @Resource.F21_G050_S016
</label>
</p>
@*add by zhangzf on 2016/9/9 for 増加地点検索 start*@
<p>
<div class="F21_G050_table">
@*modified by zhangzf for Bug #40335 on 2016/9/28 start*@
<input type="text" id="F21_G050_select_place_input" class="search_input_place" />
<input type="text" id="F21_G050_select_sa_input" class="search_input_sa" />
@*modified by zhangzf for Bug #40335 on 2016/9/28 end*@
<button type="button" id="F21_G050_button_select_place" class="F21G190_choosebutton btn itp-dialog-default-btn" title="@Resource.F21_G050_T021"><span class="itp-common-icon itp-icon-search"></span>@Resource.F21_G050_T022</button>
</div>
</p>
@*add by zhangzf on 2016/9/9 for 増加地点検索 end*@
<p>
<div class="F21_G050_table">
@Resource.F21_G050_S012
<select class="itp-select-black" id="F21_G050_select_palce" style="width:300px!important" data-width="300px" title="@Resource.F21_G050_T017"></select>
<select class="itp-select-black" id="F21_G050_select_sa" style="display: none; width: 300px !important" data-width="300px" title="@Resource.F21_G050_T017"></select>
<input id="F21_G050_input_placeFromMap" type="text" value="" style="display: none; height: 25px; width: 300px !important" data-width="300px" disabled="disabled" />
</div>
</p>
<p style="text-align: right;">
<button id="F21_G050_button_setPlace" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T008"><span class="itp-icon itp-icon-placeSetting"></span>@Resource.F21_G050_S013</button>
</p>
</article>

<article class="F21_G050_table" id="F21G050_panel_message" style="display:none">
<p class="F21_G050_table_message">
@Resource.F21_G050_S029
</p>
</article>
</div>

<div id="F21_G050_toolbar" role="toolbar">
<button id="F21_G050_button_addWork" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T001"><span class="itp-icon itp-icon-add"></span>@Resource.F21_G050_S017</button>
<button id="F21_G050_button_deleteWork" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T002"><span class="itp-icon itp-icon-trash"></span>@Resource.F21_G050_S018</button>
<button id="F21_G050_button_addCheck" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T003" style="display:none"><span class="itp-icon itp-icon-confirm"></span>@Resource.F21_G050_S019</button>
<button id="F21_G050_button_addGoods" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T004" style="display:none"><span class="itp-icon itp-icon-productChange"></span>@Resource.F21_G050_S020</button>
<button id="F21_G050_button_addAddress" class="btn itp-dialog-default-btn" style="display:none" title="@Resource.F21_G050_T005"><span class="itp-icon itp-icon-addPlace"></span>@Resource.F21_G050_S021</button>
<button id="F21_G050_button_cancle" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T006"><span class="itp-icon itp-icon-cancel"></span>@Resource.F21_G050_S022</button>
<button id="F21_G050_button_save" class="btn itp-dialog-default-btn" title="@Resource.F21_G050_T007"><span class="itp-icon itp-icon-save"></span>@Resource.F21_G050_S023</button>
</div>
<div id="F21_G050_calendarStartTime"></div>
<div id="F21_G050_calendarEndTime"></div>
<div id="F21_G050_calendarScheduleTime"></div>
</article>
<input type="hidden" class="function_window_help" value="F21G050" />
</section>

 

-------------------------

this.initWork = function () {
var _this = this;
/// <summary>
/// 根据数据描绘作业甘特图
/// </summary>

// 初始化变量
_this.workCnt = 0;
_this.workArray = [];

//场所设定-当前选择的场所类型
//1: 地点 2: 地图 3: SA
_this.placeSettingType = 1;

// 日历初始化
this.initCalendar();

// 绑定按钮事件
$("#F21_G050_button_save").unbind("click");
$("#F21_G050_button_save").bind("click", $.proxy(_this.save, this));
var dm = new DeviceModel();
$.fn.bindEventWithEnter($("#F21_G050_button_deleteWork"), $.proxy(this.deleteWorkItemByButton, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_addWork"), $.proxy(this.addWorkItemByButton, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_addGoods"), $.proxy(this.goodsManage, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_addCheck"), $.proxy(this.checkManage, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_setPlace"), $.proxy(this.setPlace, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_addAddress"), $.proxy(this.addPlace, this), dm, true);
$.fn.bindEventWithEnter($("#F21_G050_button_cancle"), $.proxy(this.cancle, this), dm, true);
//add by zhangzf on 2016/9/9 for 増加地点検索 start
$("#F21_G050_button_select_place").unbind("click");
$("#F21_G050_button_select_place").bind("click", $.proxy(_this.placeSelect, this));
$("#F21_G050_button_select_place").attr("title", $.itp.i18n.F21G050.MSG_W_0018);
/*modified by zhangzf for Bug #40335 on 2016/9/28 start*/
$("#F21_G050_select_place_input").css("display", "");
$("#F21_G050_select_sa_input").css("display", "none");
/*modified by zhangzf for Bug #40335 on 2016/9/28 end*/
//add by zhangzf on 2016/9/9 for 増加地点検索 end
//判定地点登录按钮状态
var userPrivilege = new LocalStorageUtil();
var privilege = userPrivilege.getFunctionPrivilege('F74');
if (privilege != null && privilege.access) {
$("#F21_G050_button_addAddress").show();
}
if (privilege != null && privilege.read) {
$("#F21_G050_button_addAddress").attr("disabled", "disabled");
}

// 页面大小调整
var dialogWidth = $("#F21_G050_dialog").width();
var mainDivWidth = dialogWidth - $(".mt_pop_table_left").width() - $(".mt_pop_right").width();
var rangeTmp = NumberFormatUtil.CutNumber(mainDivWidth / 480, 2);

// 根据作业种类数量的变化,动态调整弹出页面的高度
if (parent.workTypeList.length > 14) {
if (parent.workList.length > 3 && parent.workList[2].record_code == 'A522') {
$("#" + parent.functionWindowId).wijdialog("option", "height", 580 + (parent.workTypeList.length - 13) * 24);
} else {
$("#" + parent.functionWindowId).wijdialog("option", "height", 580 + (parent.workTypeList.length - 14) * 24);
}
//modify by WangXinkun on 2016/07/15 for Bug #39685 start
} else {
if (parent.workList.length > 3 && parent.workList[2].record_code == 'A522') {
$("#" + parent.functionWindowId).wijdialog("option", "height", 580 + 24);
}
}
//modify by WangXinkun on 2016/07/15 for Bug #39685 end

$("#mainDiv").css("width", rangeTmp * 480);
parent.baseTdWidth = 20 * rangeTmp;
//modify by WangXinkun on 2016/01/15 for Bug #37613 start
//parent.totalWidth = parent.totalTime * parent.timeCnt * parent.baseTdWidth / parent.timeRateInt;
//modify by WangXinkun on 2016/01/15 for Bug #37613 end

$("#wkLoadCombo").attr('title', $.itp.i18n.F21G050.ITEM_0001.replace("{0}", parent.maintenanceModel.Config.LoadingKindTitle));
$("#edLoadCombo").attr('title', $.itp.i18n.F21G050.ITEM_0001.replace("{0}", parent.maintenanceModel.Config.LoadingKindTitle));
$(".loadStatusCombo").text(parent.maintenanceModel.Config.LoadStateTitle);

// --作业下拉框数据整理--
var startWork = new Object();

// 增加始业终业数据
startWork = new Object();
startWork.workType = "A120";
startWork.workTypeNm = "";
//Bug #33813
if (parent.workList[0].record_code == 'A120') {
startWork.workTypeNm = startWork.workTypeNm + parent.workList[0].record_name;
}
//if (parent.workList[0].DataState != 1 && parent.workList[parent.workList.length - 1].record_code == 'A220') {
if (parent.workList[parent.workList.length - 1].record_code == 'A220') {
startWork.workTypeNm = startWork.workTypeNm + "~" + parent.workList[parent.workList.length - 1].record_name;
} else {
startWork.workTypeNm = startWork.workTypeNm + "~" + $.itp.i18n.F21G050.ITEM_0018;
}
parent.workTypeListNoChange.push(startWork);

// 增加出库作业
startWork = new Object();
startWork.workType = "A100";
startWork.workTypeNm = parent.workList[1].record_name;
parent.workTypeListNoChange.push(startWork);

// 增加出库前点检作业
if (parent.workList.length > 3 && parent.workList[2].record_code == 'A522') {
startWork = new Object();
startWork.workType = "A522";
startWork.workTypeNm = parent.workList[2].record_name;
parent.workTypeListNoChange.push(startWork);
}

// 增加归库作业
if (!parent.isRunningDailyReport) {
startWork = new Object();
startWork.workType = "A200";
startWork.workTypeNm = parent.workList[parent.workList.length - 2].record_name;
parent.workTypeListNoChange.push(startWork);
}

var workTypeListNoChangeTmp = [];
if (!parent.isRunningDailyReport) {
workTypeListNoChangeTmp = parent.workTypeListNoChange.pop();
}
parent.workTypeList = parent.workTypeListNoChange.concat(parent.workTypeList, workTypeListNoChangeTmp);
parent.workTypeListNoChange = parent.workTypeListNoChange.concat(workTypeListNoChangeTmp);

//增加同乘休作业
startWork = new Object();
startWork.workType = "A999";
for (var i = 0; i < parent.workTypeList4Change.length; i++) {
if (startWork.workType == parent.workTypeList4Change[i].workType) {
startWork.workTypeNm = parent.workTypeList4Change[i].workTypeNm;
break;
}
}
parent.workTypeListNoChange.push(startWork);

//route
if (parent.roleValue && parent.maintenanceModel.Config.IsRouteType) {
// 增加出発作业
startWork = new Object();
startWork.workType = "A110";
for (var i = 0; i < parent.workTypeList4Change.length; i++) {
if (startWork.workType == parent.workTypeList4Change[i].workType) {
startWork.workTypeNm = parent.workTypeList4Change[i].workTypeNm;
break;
}
}
parent.workTypeListNoChange.push(startWork);

// 增加到着作业
startWork = new Object();
startWork.workType = "A210";
for (var i = 0; i < parent.workTypeList4Change.length; i++) {
if (startWork.workType == parent.workTypeList4Change[i].workType) {
startWork.workTypeNm = parent.workTypeList4Change[i].workTypeNm;
break;
}
}
parent.workTypeListNoChange.push(startWork);
}

// --初始化右侧情报--
// 作业下拉框
$("#workTypeCombo4Change").empty();
$("#workTypeComboNoChange").empty();
var optionStr = '';
for (var i = 0; i < parent.workTypeList4Change.length; i++) {
if (parent.workTypeList4Change[i].workType != "A110" && parent.workTypeList4Change[i].workType != "A210" && parent.workTypeList4Change[i].workType != "A999") {
var workTypeTmp = parent.workTypeList4Change[i];
optionStr = optionStr + '<option value="' + workTypeTmp.workType + '">' + workTypeTmp.workTypeNm + '</option>';
}
}
$("#workTypeCombo4Change").append(optionStr);
$("#workTypeCombo4Change").val("");
$("#workTypeCombo4Change").unbind("change");
$("#workTypeCombo4Change").bind("change", _this.changeWorkType);

optionStr = '';
for (var i = 0; i < parent.workTypeListNoChange.length; i++) {
var workTypeTmp = parent.workTypeListNoChange[i];
optionStr = optionStr + '<option value="' + workTypeTmp.workType + '">' + workTypeTmp.workTypeNm + '</option>';
}
$("#workTypeComboNoChange").append(optionStr);

// 道路区分
$("#roadTypeCombo").empty();
optionStr = '';
for (var i = 0; i < parent.maintenanceModel.Config.RoadNameList.length; i++) {
optionStr = optionStr + '<option value="' + (i + 1) + '">' + parent.maintenanceModel.Config.RoadNameList[i] + '</option>';
}
$("#roadTypeCombo").append(optionStr);
$("#roadTypeCombo").val("");
$("#roadTypeCombo").unbind("change");
$("#roadTypeCombo").bind("change", _this.changeWorkInfo);

// 作業中荷/作業後荷
$("#wkLoadCombo").empty();
$("#edLoadCombo").empty();
optionStr = '';
for (var prop in parent.workManagement.LoadCollection) {
optionStr = optionStr + '<option value="' + prop + '">' + parent.workManagement.LoadCollection[prop] + '</option>';
}
$("#wkLoadCombo").append(optionStr);
$("#edLoadCombo").append(optionStr);
$("#wkLoadCombo").val("");
$("#edLoadCombo").val("");
$("#wkLoadCombo").unbind("change");
$("#wkLoadCombo").bind("change", _this.changeWorkInfo);
$("#edLoadCombo").unbind("change");
$("#edLoadCombo").bind("change", _this.changeWorkInfo);

// 積載状況
$("#loadStatusCombo").empty();
optionStr = '';
//积状态可编辑
optionStr = optionStr + '<option value="0"></option>';
for (var prop in parent.workManagement.LoadStateMap) {
optionStr = optionStr + '<option value="' + prop + '">' + HTMLFormatUtil.HTMLEncode(parent.workManagement.LoadStateMap[prop]) + '</option>';
}
$("#loadStatusCombo").append(optionStr);
$("#loadStatusCombo").val("");
$("#loadStatusCombo").unbind("change");
$("#loadStatusCombo").bind("change", _this.changeWorkInfo);
//积状态可编辑
$("#loadStatusCombo").unbind("keydown");
$("#loadStatusCombo").bind("keydown", _this.clearSelect);
$("#loadStatusCombo").unbind("keypress");
$("#loadStatusCombo").bind("keypress", _this.writeSelect);

//modify by WangXinkun on 2016/01/26 for ルート積載状況可変更 start
//route
//if (parent.roleValue && parent.maintenanceModel.Config.IsRouteType) {
// $("#loadStatusComboTR").css("display", "none");
//} else {
// $("#loadStatusComboTR").css("display", "");
//}
//modify by WangXinkun on 2016/01/26 for ルート積載状況可変更 end

$("input[name='F21_G050_PlaceSettingType']").wijradio();
$("input[name='F21_G050_PlaceSettingType']").first().wijradio({
checked: true
});

//場所設定
$("input[name='F21_G050_PlaceSettingType']").unbind("change");
$("input[name='F21_G050_PlaceSettingType']").bind("change", $.proxy(_this.switchPlaceSettingType, this));

//add by WangXinkun on 2016/10/06 for Bug #40388 start
$("#F21_G050_select_palce").empty();
//add by WangXinkun on 2016/10/06 for Bug #40388 end
//modify by WangXinkun on 2016/03/17 for Bug #38300 start
//場所設定-地点
optionStr = '';
//modify by WangXinkun on 2016/04/13 for Bug #38604 start
for (var i = 0; i < parent.workManagement.PlaceID2NameMap.length; i++) {
//modify by WangXinkun on 2016/04/13 for Bug #38604 end
//modify by WangXinkun on 2016/03/17 for Bug #40285 start
optionStr = optionStr + '<option value="' + parent.workManagement.PlaceID2NameMap[i].Key + '">' + HTMLFormatUtil.HTMLEncode(parent.workManagement.PlaceID2NameMap[i].Value, true) + '</option>';
//modify by WangXinkun on 2016/03/17 for Bug #40285 start
}
//add by zhangzf on 2016/9/12 for 增加地点检索 start
this.optionStrPlace = optionStr;
//add by zhangzf on 2016/9/12 for 增加地点检索 end
$("#F21_G050_select_palce").append(optionStr);
$("#F21_G050_select_palce").val("");

//add by WangXinkun on 2016/10/06 for Bug #40388 start
$("#F21_G050_select_sa").empty();
//add by WangXinkun on 2016/10/06 for Bug #40388 end
//場所設定-SA
optionStr = '';
//modify by WangXinkun on 2016/04/13 for Bug #38604 start
for (var i = 0; i < parent.workManagement.SAID2NameMap.length; i++) {
//modify by WangXinkun on 2016/04/13 for Bug #38604 end
//modify by WangXinkun on 2016/03/17 for Bug #40285 start
optionStr = optionStr + '<option value="' + parent.workManagement.SAID2NameMap[i].Key + '">' + HTMLFormatUtil.HTMLEncode(parent.workManagement.SAID2NameMap[i].Value, true) + '</option>';
//modify by WangXinkun on 2016/03/17 for Bug #40285 start
}
//add by zhangzf on 2016/9/12 for 增加地点检索 start
this.optionStrSA = optionStr;
//add by zhangzf on 2016/9/12 for 增加地点检索 end
$("#F21_G050_select_sa").append(optionStr);
$("#F21_G050_select_sa").val("");
//modify by WangXinkun on 2016/03/17 for Bug #38300 end

// --整理作业情报:作业开始/终了时间格式调整--
var thStr = "";
var tdStr = "";
// 循环作业
var workCntTmp = parent.workList.length;

// 前一个作业的开始时间和终了时间是否都有秒数,并且在同一分钟内
var recoverFlg = false;

for (var i = 0; i < workCntTmp; i++) {
var workTmp = parent.workList[i];

if (null != workTmp['start_time'] && "" != workTmp['start_time']) {
// 毫秒(计算时间间隔用)
workTmp.startTime = F21_G050_convertDate(workTmp['start_time']);
// 时间格式:yyyy/MM/dd HH:mm(秒数舍掉)
workTmp.startTimeStrNoSec = F21_G050_formatDate(workTmp.startTime, "yyyy/MM/dd HH:mm");
// 毫秒(秒数舍掉)
workTmp.startTimeNoSec = F21_G050_convertDate(workTmp.startTimeStrNoSec);
}

if (null != workTmp['end_time'] && "" != workTmp['end_time']) {
// 毫秒(计算时间间隔用)
workTmp.endTime = F21_G050_convertDate(workTmp['end_time']);
// 时间格式:yyyy/MM/dd HH:mm(秒数舍掉)
workTmp.endTimeStrNoSec = F21_G050_formatDate(workTmp.endTime, "yyyy/MM/dd HH:mm");
// 毫秒(秒数舍掉)
workTmp.endTimeNoSec = F21_G050_convertDate(workTmp.endTimeStrNoSec);

//// 判断开始时间和终了时间是否都有秒数,并且在同一分钟内
//if (workTmp.startTimeNoSec == workTmp.endTimeNoSec
// && workTmp.startTime < workTmp.endTime
// && workTmp.endTime < (workTmp.startTime + 60000)) {
// recoverFlg = true;
//} else if (recoverFlg) {
// // 时间格式:yyyy/MM/dd HH:mm(秒数进位)
// workTmp.startTimeStrNoSec = F21_G050_formatDate(workTmp.startTimeNoSec + 60000, "yyyy/MM/dd HH:mm");
// // 毫秒(秒数进位)
// workTmp.startTimeNoSec = F21_G050_convertDate(workTmp.startTimeStrNoSec);
// recoverFlg = false;
//}
}

_this.workArray[i] = workTmp;
_this.workCnt++;
}

// 运行完了的场合,始业终业合并为一条数据,所以需要把终业的[start_time]作为始业的结束时间[end_time]
if (_this.workArray[0].record_code == 'A120' && F21_G050_isNull(parent.workList[0].end_time) && !parent.isRunningDailyReport) {
var workTmpFirst = parent.workList[0];
var workTmpLast = parent.workList[_this.workCnt - 1];
workTmpFirst.end_time = workTmpLast.start_time;
// 时间格式:YYYYMMDDHHMI00(秒数舍掉)
workTmpFirst.endTimeStrNoSec = workTmpLast.startTimeStrNoSec;
// 毫秒(计算时间间隔用)
workTmpFirst.endTime = F21_G050_convertDate(workTmpLast['start_time']);
// 毫秒(秒数舍掉)
workTmpFirst.endTimeNoSec = F21_G050_convertDate(workTmpFirst.endTimeStrNoSec);
_this.workArray[0] = workTmpFirst;
}

// 去除掉终业数据
if (_this.workArray[_this.workCnt - 1].record_code == 'A220') {
_this.workArray.pop();
_this.workCnt--;
}

// --计算该运行的最早作业开始时间和最晚作业终了时间,以确定时间轴的长度--
// 始业终业时间为空的场合,取出库归库的时间
if (parent.isRunningDailyReport ||
null == _this.workArray[0]['start_time'] || "" == _this.workArray[0]['start_time'] || undefined == _this.workArray[0]['start_time'] ||
null == _this.workArray[0]['end_time'] || "" == _this.workArray[0]['end_time'] || undefined == _this.workArray[0]['end_time']) {
parent.startTime = _this.workArray[1].startTime;
parent.startTimeMin = F21_G050_convertDate(_this.workArray[1]['start_time'].substr(0, 13) + ":00:00");
parent.startHour = parseInt(_this.workArray[1]['start_time'].substr(11, 2));

parent.endTime = _this.workArray[_this.workCnt - 1].endTime;
var endTimeMaxTmpStr = _this.workArray[_this.workCnt - 1]['end_time'].substr(0, 13) + ":00:00";
// 非整点时间,进位取整点时间
if (endTimeMaxTmpStr != _this.workArray[_this.workCnt - 1]['end_time']) {
parent.endTimeMax = F21_G050_convertDate(endTimeMaxTmpStr) + 3600 * 1000;
// 整点时间,不变
} else {
parent.endTimeMax = parent.endTime;
}
// 始业终业时间不为空的场合
} else {
parent.startTime = _this.workArray[1].startTime;
parent.startTimeMin = F21_G050_convertDate(_this.workArray[0]['start_time'].substr(0, 13) + ":00:00");
parent.startHour = parseInt(_this.workArray[0]['start_time'].substr(11, 2));

parent.endTime = _this.workArray[_this.workCnt - 1].endTime;
var endTimeMaxTmpStr = _this.workArray[0]['end_time'].substr(0, 13) + ":00:00";
// 非整点时间,进位取整点时间
if (endTimeMaxTmpStr != _this.workArray[0]['end_time']) {
parent.endTimeMax = F21_G050_convertDate(endTimeMaxTmpStr) + 3600 * 1000;
// 整点时间,不变
} else {
parent.endTimeMax = _this.workArray[0].endTime;
}
}

// 根据上面计算出来的整点时间,计算时间范围
var totalTimeTmp = (parent.endTimeMax - parent.startTimeMin) / 3600 / 1000;
// 为了便于头部的统一,要求运行总时间必须是2小时的整数倍
if (totalTimeTmp % 2 != 0) {
totalTimeTmp = totalTimeTmp + 1;
parent.endTimeMax = parent.endTimeMax + 3600 * 1000;
}

// 时间默认最小为24小时
if (totalTimeTmp < 24) {
parent.endTimeMax = parent.endTimeMax + 3600 * 1000 * (24 - totalTimeTmp);
totalTimeTmp = 24;
}
parent.totalTime = totalTimeTmp;

// --根据作业时间情报,重新描绘Table和作业DIV--
// 为了出现横向滚动条,需要覆盖table的共通css
$(".mt_pop_table").css("max-width", "none");
// 根据时间范围来确定Table的宽度
//modify by WangXinkun on 2016/01/15 for Bug #37613 start
//$(".mt_pop_table").css("width", parent.baseTdWidth * totalTimeTmp);
$(".mt_pop_table").css("width", parent.baseTdWidth * parent.totalTime);
//modify by WangXinkun on 2016/01/15 for Bug #37613 end

// 时间精度Radio绑定事件
$(".iCheck").unbind("change");
$(".iCheck").bind("change", $.proxy(_this.resetTimeChart, _this));

$("input[name='timeRate']").wijradio();
$("input[name='timeRate']").first().wijradio({
checked: true
});
// 初始时时间精度为24小时
//$("input:radio[name='timeRate']:checked").attr("checked", false);
//$($(".iCheck")[3]).attr("checked", true);
//$('input:radio[name=timeRate]')[0].checked = true;

// 根据作业种类条数,动态生成作业Table
$(".mt_pop_table_left thead").empty();
$(".mt_pop_table_left tbody").empty();
$(".mt_pop_table thead").empty();
$(".mt_pop_table tbody").empty();
//modify by WangXinkun on 2016/01/15 for Bug #37613 start
//for (var i = 0; i < totalTimeTmp; i++) {
for (var i = 0; i < parent.totalTime; i++) {
//modify by WangXinkun on 2016/01/15 for Bug #37613 end
if (i % 2 == 0) {
// 表头显示内容为HH:MM的形式,为起始时间
var hour = (parent.startHour + parseInt(i / (parent.timeCnt / parent.timeRateInt))) % 24;
if (hour < 10) {
hour = '0' + hour;
}
var minutes = "00";
thStr = thStr + '<th colspan="2">' + hour + ':' + minutes + '</th>';
}
tdStr = tdStr + "<td></td>";
}
$(".mt_pop_table thead").append("<tr>" + thStr + "</tr>");

// 左侧作业名称一览
$(".mt_pop_table_left thead").append("<tr><th>" + $.itp.i18n.F21G050.ITEM_0002 + "</th></tr>");
for (var i = 0; i < parent.workTypeList.length; i++) {
var workTypeTmp = parent.workTypeList[i];
$(".mt_pop_table_left tbody").append("<tr><td>" + workTypeTmp.workTypeNm + "</td></tr>");
$(".mt_pop_table tbody").append('<tr num="' + (i + 1).toString()+ '" id="TR' + workTypeTmp.workType + '" data-name="' + workTypeTmp.workTypeNm + '">' + tdStr + '</tr>');
}

//运行中最后一组未完成的出发到着作业不显示
if (parent.isRunningDailyReport) {
for (var i = _this.workCnt - 1; i > 0; i--) {
if (parent.workList[i].record_code == $.itp.i18n.F21G050.ITEM_0020) {
break;
} else if (parent.workList[i].record_code == $.itp.i18n.F21G050.ITEM_0019) {
parent.indexOfA110 = i;
break;
}
}
}

if (parent.indexOfA110 != 0) {
$("#F21G050_panel_message").css("display", "");
} else {
$("#F21G050_panel_message").css("display", "none");
}

// 初始化作业甘特图,颜色从表示设定取得
$("#mainDiv div").remove();
for (var i = 0; i < _this.workCnt; i++) {
var workTmp = parent.workList[i];

//运行中最后一组未完成的出发到着作业不显示
if (i == parent.indexOfA110 && 0 != parent.indexOfA110) {
break;
}
for (var j = 0; j < parent.workTypeList.length; j++) {
var workTypeTmp = parent.workTypeList[j];
if (workTmp.record_code == workTypeTmp.workType || (IsRunning(workTmp.record_code) && IsRunning(workTypeTmp.workType))) {

// 时间为空时,跳过此作业
if (F21_G050_isNull(workTmp.startTimeNoSec)) {
break;
}

var obj = $("#TR" + workTypeTmp.workType);
var left = NumberFormatUtil.CutNumber((workTmp.startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
var top = obj.position().top;
var length = 0;
var textStr = "";

// 出库归库是瞬时作业,处理成固定宽度的一个DIV,暂定为20px
if (workTypeTmp.workType == 'A100' || workTypeTmp.workType == 'A200') {
length = 20;
textStr = workTypeTmp.workType == 'A100' ? $.itp.i18n.F21G050.ITEM_0003 : $.itp.i18n.F21G050.ITEM_0004;
//modify by chenyunfei on 2016/09/29 for bug40347 start
textStr = '<span style="font-size:11px;text-align:center;" class="F21G050_start_end">' + textStr + '</span>';
// 出发到着是瞬时作业,处理成固定宽度的一个DIV,暂定为20px
} else if (workTypeTmp.workType == 'A110' || workTypeTmp.workType == 'A210') {
length = 20;
textStr = workTypeTmp.workType == 'A110' ? $.itp.i18n.F21G050.ITEM_0021 : $.itp.i18n.F21G050.ITEM_0022;
textStr = '<span style="font-size:11px;text-align:center;" class="F21G050_start_end">' + textStr + '</span>';
//modify by chenyunfei on 2016/09/29 for bug40347 end
// 出库前点检作业是瞬时作业,处理成固定宽度的一个DIV,暂定为20px
} else if (workTypeTmp.workType == 'A522') {
length = 20;
} else {
length = NumberFormatUtil.CutNumber((workTmp.endTimeNoSec - workTmp.startTimeNoSec) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
}

// 新添加作业
// 取得各个作业的颜色设定,没有设定的默认为その他(A570)颜色
//var backgroudColor = eval("parent.maintenanceModel.Config.RecordColorDic." + workTypeTmp.workType);
var backgroudColor = parent.maintenanceModel.Config.RecordColorDic[workTypeTmp.workType];
if (null == backgroudColor || "" == backgroudColor || undefined == backgroudColor) {
//backgroudColor = eval("parent.maintenanceModel.Config.RecordColorDic.A570");
backgroudColor = parent.maintenanceModel.Config.RecordColorDic["A570"];
}

//add by WangXinkun on 2015/11/17 for Bug #37020 start
if (workTypeTmp.workType == 'A999') {
parent.lastTwoDirverWorkTime = workTmp.end_time;
}
//add by WangXinkun on 2015/11/17 for Bug #37020 end

var workChart = '';
if (workTypeTmp.workType == 'A999' || (parent.isRunningDailyReport && (i == parent.indexOfA110 - 1)) || (parent.isRunningDailyReport && (i == _this.workCnt - 1)) || (parent.isRunningDailyReport && (i == 1)) || workTypeTmp.workType == 'A522') {
workChart = 'workChart4TwoDriver';
} else {
workChart = 'workChart';
}

var htmlStr = '<div id="' + workTypeTmp.workType + left + '"' + ' data-seqid="' + workTmp.seq_id + '"' + ' data-datastate="' + workTmp.DataState + '"'
+ ' data-type="' + workTypeTmp.workType + '"' + ' class="' + workChart + ' type' + workTypeTmp.workType + ' seqId' + workTmp.DataState + workTmp.seq_id
+ '" style="left: ' + left + 'px; top: ' + top + 'px; width: ' + length + 'px;' + ' background:' + backgroudColor + ';">';
htmlStr = htmlStr + textStr + '</div>';
$("#mainDiv").append(htmlStr);
break;
}
}

// --作业DIV绑定事件--
var objTmp = $(".seqId" + workTmp.DataState + workTmp.seq_id);

//add by wangxinkun 2015/01/21 for Bug #32603
//objTmp.unbind("dblclick");
// 作业甘特图绑定双击事件:点击后提示是否删除所选择作业
//objTmp.bind("dblclick", [_this.functionWindowId], _this.deleteWorkItem);
//add by wangxinkun 2015/01/21 for Bug #32603

objTmp.unbind("click");
// 作业甘特图绑定单击事件:点击后右侧表示所选择作业的信息
objTmp.bind("click", $.proxy(_this.clickWorkItem, this));
}

var indexOfFirstTwoDriverWork = 0;
for (var i = 0; i < _this.workCnt; i++) {
if (parent.workList[i].record_code == "A999") {
indexOfFirstTwoDriverWork = i;
parent.firstTwoDriverWorkTime = parent.workList[i].start_time;
break;
}
}
if (parent.workList[2].record_code == "A522") {
if (indexOfFirstTwoDriverWork == 3) {
parent.movementStartTimeModifyFlag = true;
}
} else {
if (indexOfFirstTwoDriverWork == 2) {
parent.movementStartTimeModifyFlag = true;
}
}

if (parent.workList[_this.workCnt - 2].record_code == "A999") {
parent.movementEndTimeModifyFlag = true;
}

// --TD绑定事件--
// TD绑定单击撤销选定事件
$(".mt_pop_table").find("td").bind("click", _this.cancleSelectedWorkItem);
// TD绑定双击增加作业事件
$(".mt_pop_table").find("td").bind("dblclick", $.proxy(_this.addWorkItem, this));

//add start
$(".item").draggable({
revert: true,
helper: "clone",
cursor: "move",
containment: ".mt_pop_table"
});
var elem = 1;
$(".mt_pop_table").find("tr").droppable({
accept: ".item",
over: function (event, ui) {
var num = $(this).attr("num");
$(".mt_pop_table").find("tr").removeClass("ui-state-highlight")
$(this).addClass("ui-state-highlight");
if ((num - 1) % 3 == 0) {
$(this).next("tr").addClass("ui-state-highlight");
$(this).next("tr").next("tr").addClass("ui-state-highlight");
}
else if ((num - 2) % 3 == 0) {
$(this).prev("tr").addClass("ui-state-highlight");
$(this).next("tr").addClass("ui-state-highlight");
}
else if ((num - 3) % 3 == 0) {
$(this).prev("tr").addClass("ui-state-highlight");
$(this).prev("tr").prev("tr").addClass("ui-state-highlight");
}


},
drop: function (event, ui) {
var top = -1;
var num = $(this).attr("num");
if ((num - 1) % 3 == 0) {
top = parseInt($(this).position().top);
}
else if ((num - 2) % 3 == 0) {
top = parseInt($(this).prev("tr").position().top);
}
else if ((num - 3) % 3 == 0) {
top = parseInt($(this).prev("tr").prev("tr").position().top);
}
//获取时间段
var dingDan = ui.draggable.text();
var htmlStr;
if (elem == 1)
{
htmlStr = '<div id="11" data-seqid="11" data-datastate="11" data-type="11" class="workChart type seqId11" style="left: 951px; top: ' + top + 'px; width:50px; background:red;">"' + dingDan + '"</div>';
}
else if (elem == 2)
{
htmlStr = '<div id="12" data-seqid="11" data-datastate="11" data-type="11" class="workChart type seqId11" style="left: 351px; top: ' + top + 'px; width:250px; background:green;">"' + dingDan + '"</div>';
}
else if (elem == 3)
{
htmlStr = '<div id="13" data-seqid="11" data-datastate="11" data-type="11" class="workChart type seqId11" style="left: 51px; top: ' + top + 'px; width:150px; height:50px;background:red;">"' + dingDan + '"</div>';
}
//htmlStr = $('<div id="A4010901" data-seqid="241692" data-datastate="4" data-type="A401" class="workChart typeA401 seqId99" style="left: 0px; top: 219px; width: 52px; height: 50px; background: rgb(0, 255, 0);">test1</div>');

//htmlStr.draggable({
// snap: false,
// axis: "y",
// grid: [0, 72],
// containment: ".mt_pop_table",
// drag: function () { alert("a"); }
//});
$("#mainDiv").append(htmlStr);

var left1;
//$(".mt_pop_table").animate({ scrollTop: $("#11").offset().left }, 1000);//1000是ms,也可以用slow代替
if (elem == 1) {
//left1 = $("#11").offset().left;
//$("#mainDiv").scrollLeft(left1);//1000是ms,也可以用slow代替
$("#mainDiv").animate({ scrollLeft: $("#11").offset().left }, 1000);//1000是ms,也可以用slow代替
//scrollToLocation();

$("#11").draggable({
snap: false,
axis: "y",
//grid: [parent.baseTdWidth / parent.resizeCnt, 0],
grid: [0, 72],
containment: ".mt_pop_table",
drag: function () { }
});
}
else if (elem == 2)
{
//left1 = $("#12").offset().left;
//$("#mainDiv").scrollLeft(left1);//1000是ms,也可以用slow代替
$("#mainDiv").animate({ scrollLeft: $("#12").offset().left }, 1000);//1000是ms,也可以用slow代替
//scrollToLocation();

$("#12").draggable({
snap: false,
axis: "y",
//grid: [parent.baseTdWidth / parent.resizeCnt, 0],
grid: [0, 72],
containment: ".mt_pop_table",
drag: function () { }
});
}
else if (elem == 3)
{
//left1 = $("#13").offset().left;
//$("#mainDiv").scrollLeft(left1);//1000是ms,也可以用slow代替
$("#mainDiv").animate({ scrollLeft: $("#13").offset().left }, 1000);//1000是ms,也可以用slow代替
//scrollToLocation();

$("#13").draggable({
snap: false,
axis: "y",
//grid: [parent.baseTdWidth / parent.resizeCnt, 0],
grid: [0, 72],
containment: ".mt_pop_table",
drag: function () { }
});
}


elem = elem + 1;
}
});
//add end

// 作业DIV绑定拖拽/变更事件
$('.workChart').each(function () {

//出库前点检, 出発作業,到着作業不允许dragg
//if ($(this).data("type") != 'A522' && $(this).data("type") != 'A110' && $(this).data("type") != 'A210') {
//if ($(this).data("type") != 'A522') {
$(this).draggable({
snap: false,
axis: "y",
//grid: [parent.baseTdWidth / parent.resizeCnt, 0],
grid: [0,72],
containment: ".mt_pop_table",
drag: _this.getSizeByDrag
});
//}

// 出库归库,出库前点检, 出発作業,到着作業不允许Resize
if ($(this).data("type") != 'A100' && $(this).data("type") != 'A200' && $(this).data("type") != 'A522' && $(this).data("type") != 'A110' && $(this).data("type") != 'A210') {
//if ($(this).data("type") != 'A100' && $(this).data("type") != 'A200' && $(this).data("type") != 'A522') {
$(this).resizable({
handles: 'e,w',
snap: false,
minWidth: 1,
maxHeight: 24,
grid: [parent.baseTdWidth / parent.resizeCnt, 0],
containment: ".mt_pop_table",
resize: _this.getSizeByResize
});
}
});

if (parent.workGridSelectedItem != null && parent.isA120OrA220Selected) {
if (!(parent.workGridSelectedItem.record_code == "A120" && parent.isRunningDailyReport)) {
if (parent.workGridSelectedItem.NO < parent.indexOfA110 + 1 || parent.indexOfA110 == 0) {
var workItemNextTmp = parent.viewModel.getNextWorkItem(parent.workGridSelectedItem.seq_id, parent.workGridSelectedItem.DataState);
parent.viewModel.showWorkItemInfo(parent.workGridSelectedItem.seq_id, parent.workGridSelectedItem.DataState, workItemNextTmp);
}
}
}

$("#F21_G050_button_addWork").focus();

if (parent.workList[parent.workList.length - 2].record_code == "A200") {
parent.endWorkRoadKind = parent.workList[parent.workList.length - 2].road_kind;
parent.endWorkRoadName = parent.workList[parent.workList.length - 2].road_name;

parent.endWorkLoadingKind = parent.workList[parent.workList.length - 2].loading_kind;
parent.endWorkLoadingName = parent.workList[parent.workList.length - 2].loading_name;
}

if (parent.workList.length > 3 && parent.workList[2].record_code == 'A522') {
parent.beforeWorkCheckDiv = _this.getWorkDiv(parent.workList[2]);
}
};

 

this.getSizeByDrag = function (event, ui) {
/// <summary>
/// 作业DIV Drag事件:拖拽变更作业时间段
/// </summary>

// seq_id
var seqId = ui.helper.data("seqid");
// DataState
var dataState = ui.helper.attr("data-datastate");

// 没有首先该选择作业,直接调整该作业时间的场合,需要首先选中该作业
if (null == parent.selectedWorkItem
|| parent.selectedWorkItem.seq_id != seqId || parent.selectedWorkItem.DataState != dataState) {

// 定位下一个作业
var workItemNextTmp = parent.viewModel.getNextWorkItem(seqId, dataState);

parent.selectedWorkItemDiv = ui.helper[0];

parent.viewModel.showWorkItemInfo(seqId, dataState, workItemNextTmp);
}

parent.resizeDragFlg = true;

if (null == parent.baseLeft || '' == parent.baseLeft || undefined == parent.baseLeft) {
parent.baseLeft = ui.originalPosition.left;
}
var newLeft = ui.position.left;
newLeft = NumberFormatUtil.NumberRoundReturnString(newLeft, 3) * 1000;
parent.baseLeft = parent.baseLeft * 1000;

// 调整的毫秒数
var subS = parseInt((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth * (newLeft - parent.baseLeft) / 1000);
newLeft = newLeft / 1000;
parent.baseLeft = parent.baseLeft / 1000;

var startTimeStr = $("#startTime").val();
// 调整前的开始时间(毫秒数)
var startTime = $("#startTime").data("startTime");
// 调整后的开始时间(毫秒数)
startTime = startTime + subS;
// 调整后的开始时间
startTimeStr = F21_G050_formatDate(startTime, "yyyy/MM/dd HH:mm");
$("#startTime").val(startTimeStr);
$("#startTime").data("startTime", startTime);

var endTimeStr = $("#endTime").val();
// 调整前的结束时间(毫秒数)
var endTime = $("#endTime").data("endTime");
// 调整后的结束时间(毫秒数)
endTime = endTime + subS;
// 调整后的结束时间
endTimeStr = F21_G050_formatDate(endTime, "yyyy/MM/dd HH:mm");
$("#endTime").val(endTimeStr);
$("#endTime").data("endTime", endTime);

// 重新设定作业情报
parent.selectedWorkItem.start_time = startTimeStr;
parent.selectedWorkItem.startTime = F21_G050_convertDate(startTimeStr);
parent.selectedWorkItem.startTimeStrNoSec = startTimeStr;
parent.selectedWorkItem.startTimeNoSec = F21_G050_convertDate(startTimeStr);
parent.selectedWorkItem.end_time = endTimeStr;
parent.selectedWorkItem.endTime = F21_G050_convertDate(endTimeStr);
parent.selectedWorkItem.endTimeStrNoSec = endTimeStr;
parent.selectedWorkItem.endTimeNoSec = F21_G050_convertDate(endTimeStr);

if (parent.selectedWorkItem.record_code == "A120") {
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].start_time = parent.selectedWorkItem.end_time;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTime = parent.selectedWorkItem.endTime;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTimeStrNoSec = parent.selectedWorkItem.endTimeStrNoSec;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTimeNoSec = parent.selectedWorkItem.endTimeNoSec;
}

//出库归库拖拽时,时间变更,需要同时更新全局出库归库时间变量(用于作业变更时范围check)
if ("A100" == parent.selectedWorkItem.record_code) {
parent.startTime = parent.selectedWorkItem.startTime;

//modify by WangXinkun on 2015/11/17 for Bug #37020 start
var indexOfA522 = parent.viewModel.getIndexOfA522();

if (parent.maintenanceSaveModelTmp.workDetailList[2].record_code == "A522") {
// 出库前点检的场合,结束时间和开始时间一样
parent.maintenanceSaveModelTmp.workDetailList[2].start_time = parent.selectedWorkItem.start_time;
parent.maintenanceSaveModelTmp.workDetailList[2].startTime = parent.selectedWorkItem.startTime;
parent.maintenanceSaveModelTmp.workDetailList[2].startTimeStrNoSec = parent.selectedWorkItem.startTimeStrNoSec;
parent.maintenanceSaveModelTmp.workDetailList[2].startTimeNoSec = parent.selectedWorkItem.startTimeNoSec;

parent.maintenanceSaveModelTmp.workDetailList[2].end_time = parent.selectedWorkItem.end_time;
parent.maintenanceSaveModelTmp.workDetailList[2].endTime = parent.selectedWorkItem.endTime;
parent.maintenanceSaveModelTmp.workDetailList[2].endTimeStrNoSec = parent.selectedWorkItem.endTimeStrNoSec;
parent.maintenanceSaveModelTmp.workDetailList[2].endTimeNoSec = parent.selectedWorkItem.endTimeNoSec;

parent.maintenanceSaveModelTmp.workDetailList[2].DataState = DataStateEnum.Modified;
$(parent.beforeWorkCheckDiv).attr("data-datastate", DataStateEnum.Modified);

var left = NumberFormatUtil.CutNumber((parent.maintenanceSaveModelTmp.workDetailList[2].startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
$(parent.beforeWorkCheckDiv).css("left", left + "px");
} else if (parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].record_code == "A522") {
// 出库前点检的场合,结束时间和开始时间一样
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].start_time = timeStr;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].startTime = time;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].startTimeStrNoSec = timeStr;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].startTimeNoSec = time;

parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].end_time = timeStr;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].endTime = time;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].endTimeStrNoSec = timeStr;
parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].endTimeNoSec = time;

parent.maintenanceSaveModelTmp.workDetailList[indexOfA522].DataState = DataStateEnum.Modified;
$(parent.beforeWorkCheckDiv).attr("data-datastate", DataStateEnum.Modified);

var left = NumberFormatUtil.CutNumber((parent.maintenanceSaveModelTmp.workDetailList[2].startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
$(parent.beforeWorkCheckDiv).css("left", left + "px");
}
//modify by WangXinkun on 2015/11/17 for Bug #37020 end
} else if ("A200" == parent.selectedWorkItem.record_code) {
parent.endTime = parent.selectedWorkItem.startTime;
}
// 作业变更设为true
parent.isWorkDataChangedFlag = true;
// 非既存数据,数据状态不变,仍为1:Added
if (parent.selectedWorkItem.DataState == DataStateEnum.Added) {
// Nothing To Do
// 既存数据需要把DataState置为4:Modified
} else {
parent.selectedWorkItem.DataState = DataStateEnum.Modified;
}

// 作业状态变更
$(parent.selectedWorkItemDiv).attr("data-datastate", parent.selectedWorkItem.DataState);

//parent.baseLeft = newLeft;

//var length = NumberFormatUtil.CutNumber((parent.selectedWorkItem.endTimeNoSec - parent.selectedWorkItem.startTimeNoSec) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
//$(parent.selectedWorkItemDiv).css("width", length + "px");
//var left = NumberFormatUtil.CutNumber((parent.selectedWorkItem.startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
//$(parent.selectedWorkItemDiv).css("left", left + "px");

parent.baseLeft = NumberFormatUtil.CutNumber((parent.selectedWorkItem.startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
};

this.getSizeByResize = function (event, ui) {
/// <summary>
/// 作业DIV Resize事件:调整作业时间区间
/// </summary>

// seq_id
var seqId = ui.element.data("seqid");
// DataState
var dataState = ui.element.attr("data-datastate");

// 没有首先该选择作业,直接调整该作业时间的场合,需要首先选中该作业
if (null == parent.selectedWorkItem
|| parent.selectedWorkItem.seq_id != seqId || parent.selectedWorkItem.DataState != dataState) {

// 定位下一个作业
var workItemNextTmp = parent.viewModel.getNextWorkItem(seqId, dataState);

parent.selectedWorkItemDiv = ui.element[0];

parent.viewModel.showWorkItemInfo(seqId, dataState, workItemNextTmp);
}

parent.resizeDragFlg = true;

if (null == parent.baseWidth || '' == parent.baseWidth || undefined == parent.baseWidth) {
parent.baseWidth = ui.originalSize.width;
}
var baseLeft = ui.originalPosition.left;
var newWidth = ui.size.width;
var newLeft = ui.position.left;

newWidth = NumberFormatUtil.NumberRoundReturnString(newWidth, 3) * 1000;
parent.baseWidth = parent.baseWidth * 1000;

// 调整的毫秒数
var subS = parseInt((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth * (newWidth - parent.baseWidth) / 1000);
newWidth = newWidth / 1000;
parent.baseWidth = parent.baseWidth / 1000;

// 向右侧调整时间→调整结束时间
if (baseLeft == newLeft) {
var endTimeStr = $("#endTime").val();
// 调整前的时间(毫秒数)
var endTime = $("#endTime").data("endTime");
// 调整后的时间(毫秒数)
endTime = endTime + subS;
// 调整后的时间
endTimeStr = F21_G050_formatDate(endTime, "yyyy/MM/dd HH:mm");
$("#endTime").val(endTimeStr);
$("#endTime").data("endTime", endTime);

// 重新设定作业情报
parent.selectedWorkItem.end_time = endTimeStr;
parent.selectedWorkItem.endTime = F21_G050_convertDate(endTimeStr);
parent.selectedWorkItem.endTimeStrNoSec = endTimeStr;
parent.selectedWorkItem.endTimeNoSec = F21_G050_convertDate(endTimeStr); // 向左侧调整时间→调整开始时间

if (parent.selectedWorkItem.record_code == "A120") {
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].start_time = parent.selectedWorkItem.end_time;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTime = parent.selectedWorkItem.endTime;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTimeStrNoSec = parent.selectedWorkItem.endTimeStrNoSec;
parent.maintenanceSaveModelTmp.workDetailList[parent.maintenanceSaveModelTmp.workDetailList.length - 1].startTimeNoSec = parent.selectedWorkItem.endTimeNoSec;
}
} else {
var startTimeStr = $("#startTime").val();
// 调整前的时间(毫秒数)
var startTime = $("#startTime").data("startTime");
// 调整后的时间(毫秒数)
startTime = startTime - subS;
// 调整后的时间
startTimeStr = F21_G050_formatDate(startTime, "yyyy/MM/dd HH:mm");
$("#startTime").val(startTimeStr);
$("#startTime").data("startTime", startTime);

// 重新设定作业情报
parent.selectedWorkItem.start_time = startTimeStr;
parent.selectedWorkItem.startTime = F21_G050_convertDate(startTimeStr);
parent.selectedWorkItem.startTimeStrNoSec = startTimeStr;
parent.selectedWorkItem.startTimeNoSec = F21_G050_convertDate(startTimeStr);
}

// 作业变更设为true
parent.isWorkDataChangedFlag = true;
// 非既存数据,数据状态不变,仍为1:Added
if (parent.selectedWorkItem.DataState == DataStateEnum.Added) {
// Nothing To Do
// 既存数据需要把DataState置为4:Modified
} else {
parent.selectedWorkItem.DataState = DataStateEnum.Modified;
}

// 作业状态变更
$(parent.selectedWorkItemDiv).attr("data-datastate", parent.selectedWorkItem.DataState);

parent.baseWidth = newWidth;

var length = NumberFormatUtil.CutNumber((parent.selectedWorkItem.endTimeNoSec - parent.selectedWorkItem.startTimeNoSec) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
$(parent.selectedWorkItemDiv).css("width", length + "px");
var left = NumberFormatUtil.CutNumber((parent.selectedWorkItem.startTimeNoSec - parent.startTimeMin) / ((parent.timeRateInt / parent.timeCnt) * 60 * 60 * 1000 / parent.baseTdWidth), 3);
$(parent.selectedWorkItemDiv).css("left", left + "px");

parent.baseLeft = null;
};

posted on 2016-11-24 14:22  ChinaDeveloper  阅读(152)  评论(0)    收藏  举报