380 lines
9.6 KiB
JavaScript
380 lines
9.6 KiB
JavaScript
![]() |
define(["moment", "module/moduleEPM/program/mrs-epm/epm01/epm01tmpService",
|
||
|
"module/moduleEPM/program/mrs-epm/epm00/epm00Service"], function (moment) {
|
||
|
return ["$scope", "$filter", "$stateParams", "config", "MMWService", "$rootScope", "epm01tmpService","epm00Service",
|
||
|
function ($scope, $filter, $stateParams, config, $MMWService, $rootScope, $epm01tmpService,$epm00Service) {
|
||
|
|
||
|
var UserNo = config.cache.account;
|
||
|
var objCurItem;
|
||
|
var lisValueList;
|
||
|
var strPara;
|
||
|
var lisChamber;
|
||
|
var lisEQP;
|
||
|
|
||
|
$scope.$root.btnList = [];
|
||
|
$scope.loadeqpbreakdownstatebyuser;
|
||
|
$scope.loadeqpbreakdownstatedetail;
|
||
|
|
||
|
|
||
|
$scope.BREAKDOWNSTARTTIME;
|
||
|
$scope.DESCRIPTION;
|
||
|
$scope.EQUIPMENTTYPE;
|
||
|
$scope.EQUIPMENTNO;
|
||
|
$scope.EQUIPMENTNAME;
|
||
|
$scope.BREAKDOWNSERIALNO;
|
||
|
|
||
|
|
||
|
$scope.init = function () {
|
||
|
|
||
|
funLoadParameter(function () {
|
||
|
funLoadEquipmentBasis(function () {
|
||
|
funGetValueList("TBLPMEQPBREAKDOWNSTATE","STATE",function () {
|
||
|
funLoadEQPBreakDownState();
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
|
||
|
$scope.$root.btnList = [{
|
||
|
name: "button",
|
||
|
icon_scr: 'image/iMES_icon/icon_unusual@1.png',
|
||
|
class: [], //按鈕額外的class
|
||
|
disabled: false,
|
||
|
title: $filter('translate')('epm00.title'),
|
||
|
click: function () {
|
||
|
$epm00Service.init({
|
||
|
callback: function () {
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
}];
|
||
|
|
||
|
}
|
||
|
|
||
|
$scope.funGetDetail = function (item) {
|
||
|
objCurItem = item;
|
||
|
|
||
|
funLoadEquipmentBasis_All(item.EQUIPMENTNO,function (result) {
|
||
|
$scope.BREAKDOWNSERIALNO = item.BREAKDOWNSERIALNO;
|
||
|
|
||
|
// $scope.EQUIPMENTTYPE = result[0].EQUIPMENTTYPE;
|
||
|
// $scope.EQUIPMENTNO = result[0].EQUIPMENTNO;
|
||
|
// $scope.EQUIPMENTNAME = result[0].EQUIPMENTNAME;
|
||
|
|
||
|
objCurItem.EQUIPMENTTYPE = result[0].EQUIPMENTTYPE;
|
||
|
objCurItem.EQUIPMENTNO = result[0].EQUIPMENTNO;
|
||
|
objCurItem.EQUIPMENTNAME = result[0].EQUIPMENTNAME;
|
||
|
|
||
|
$scope.EQUIPMENTTYPE = objCurItem.EQUIPMENTTYPE;
|
||
|
$scope.EQUIPMENTNO = objCurItem.EQUIPMENTNO;
|
||
|
$scope.EQUIPMENTNAME = objCurItem.EQUIPMENTNAME;
|
||
|
|
||
|
$scope.BREAKDOWNSTARTTIME = item.BREAKDOWNSTARTTIME;
|
||
|
$scope.DESCRIPTION = item.DESCRIPTION;
|
||
|
funLoadEQPBreakDownStateDetail(item.BREAKDOWNSERIALNO);
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
$scope.Register = function () {
|
||
|
|
||
|
if(objCurItem == undefined ){
|
||
|
$rootScope.showAlert($filter('translate')("imes_resources.PLEASE SELECT") + $filter('translate')("imes_resources.BREAKDOWNSERIALNO"));
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
$epm01tmpService.init({
|
||
|
EQUIPMENTNO: objCurItem.EQUIPMENTNO,
|
||
|
BREAKDOWNSERIALNO: objCurItem.BREAKDOWNSERIALNO,
|
||
|
BREAKDOWNSTARTTIME: objCurItem.BREAKDOWNSTARTTIME,
|
||
|
EQUIPMENTTYPE: objCurItem.EQUIPMENTTYPE,
|
||
|
EQUIPMENTNAME: objCurItem.EQUIPMENTNAME,
|
||
|
CREATEDATE: objCurItem.CREATEDATE,
|
||
|
callback: function () {
|
||
|
//重新整理資料
|
||
|
objCurItem = undefined;
|
||
|
funLoadEQPBreakDownState();
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function funSendToMESSrv_Multi(uri,content,callback) {
|
||
|
|
||
|
var result;
|
||
|
|
||
|
$MMWService.sendToMESSrv_Multi({
|
||
|
uri: uri,
|
||
|
content: content,
|
||
|
success: function (data) {
|
||
|
var tmpJson = JSON.parse(data.ResultJson);
|
||
|
var tmp;
|
||
|
var index = 0;
|
||
|
tmp = JSON.parse(tmpJson[uri[index]]);
|
||
|
tmp = tmp[Object.keys(tmp)[0]];
|
||
|
|
||
|
result = tmp;
|
||
|
|
||
|
if (callback){
|
||
|
callback(result);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
function funLoadEQPBreakDownState() {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
|
||
|
uri.push("kcPM.clsPMBasis.LoadEQPBreakDownStateByUser");
|
||
|
content.push({
|
||
|
UserNo:UserNo,
|
||
|
State:1
|
||
|
});
|
||
|
|
||
|
funSendToMESSrv_Multi(uri,content,function (result) {
|
||
|
$scope.loadeqpbreakdownstatebyuser = result;
|
||
|
|
||
|
if(lisValueList.length > 0){
|
||
|
|
||
|
var drSel;
|
||
|
|
||
|
$scope.loadeqpbreakdownstatebyuser.forEach(item=> {
|
||
|
drSel = lisValueList.filter(item2 => {
|
||
|
return item.STATE == item2.COLUMNVALUE;
|
||
|
});
|
||
|
|
||
|
if(drSel.length > 0){
|
||
|
return item.STATE_RESOURCE = $filter('translate')('imes_resources.' + drSel[0].DISPLAYTEXT.toUpperCase());
|
||
|
}
|
||
|
|
||
|
});
|
||
|
}
|
||
|
|
||
|
if(strPara != "1" ){
|
||
|
|
||
|
$scope.loadeqpbreakdownstatebyuser.forEach(function(item, index, arr) {
|
||
|
var arr;
|
||
|
arr = lisChamber.filter(function(chamber) {
|
||
|
return item.EQUIPMENTNO == chamber.EQUIPMENTNO;
|
||
|
});
|
||
|
|
||
|
if(arr.length > 0) {
|
||
|
$scope.loadeqpbreakdownstatebyuser.splice(index, 1);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
function funLoadEQPBreakDownStateDetail(BreakDownSerialNo) {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
|
||
|
uri.push("kcPM.clsPMBasis.LoadEQPBreakDownStateDetail");
|
||
|
content.push({
|
||
|
BreakDownSerialNo:BreakDownSerialNo
|
||
|
});
|
||
|
|
||
|
funSendToMESSrv_Multi(uri,content,function (result) {
|
||
|
$scope.loadeqpbreakdownstatedetail = result;
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
//'找出子設備的資料
|
||
|
function funLoadEquipmentBasis(callback) {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
|
||
|
uri.push("kcEQP.clsEQPBasis.LoadEquipmentBasis");
|
||
|
content.push({
|
||
|
ChamberFlag:1
|
||
|
});
|
||
|
|
||
|
funSendToMESSrv_Multi(uri,content,function (result) {
|
||
|
lisChamber = result;
|
||
|
|
||
|
if (callback){
|
||
|
callback();
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function funLoadEquipmentBasis_All(EquipmentNo,callback) {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
|
||
|
uri.push("kcEQP.clsEQPBasis.LoadEquipmentBasis");
|
||
|
content.push({
|
||
|
EquipmentNo:EquipmentNo
|
||
|
});
|
||
|
|
||
|
funSendToMESSrv_Multi(uri,content,function (result) {
|
||
|
if (callback){
|
||
|
callback(result);
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function funLoadParameter(callback) {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
|
||
|
uri.push("kcSYS.clsSYSParameter.LoadParameter");
|
||
|
content.push({
|
||
|
ParameterNo:"ChamberManage"
|
||
|
});
|
||
|
|
||
|
funSendToMESSrv_Multi(uri,content,function (result) {
|
||
|
strPara = result[0].PARAMETERVALUE;
|
||
|
|
||
|
if (callback){
|
||
|
callback();
|
||
|
}
|
||
|
});
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
funGetValueList = function (col,value,callback) {
|
||
|
var uri = [];
|
||
|
var content = [];
|
||
|
|
||
|
uri.push("kcSYS.clsValueList.LoadValueList");
|
||
|
content.push({
|
||
|
pTableName:col,
|
||
|
pColumnName:value
|
||
|
});
|
||
|
|
||
|
$MMWService.sendToMESSrv_Multi({
|
||
|
uri: uri,
|
||
|
content: content,
|
||
|
success: function (data) {
|
||
|
|
||
|
if (data.Code == "0") {
|
||
|
var tmpJson = JSON.parse(data.ResultJson);
|
||
|
var tmp;
|
||
|
var index = 0;
|
||
|
tmp = JSON.parse(tmpJson[uri[index]]);
|
||
|
tmp = tmp[Object.keys(tmp)[0]];
|
||
|
|
||
|
lisValueList = tmp;
|
||
|
|
||
|
}
|
||
|
|
||
|
if (callback){
|
||
|
callback();
|
||
|
}
|
||
|
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
/*KMI List*/
|
||
|
$scope.KMIListInitConfig = function (pageCount, columns) {
|
||
|
var obj = { header: [], columns: columns, filterColumn: {} };
|
||
|
var count;
|
||
|
|
||
|
if (pageCount !== undefined && pageCount != null && !isNaN(parseFloat(pageCount)))
|
||
|
count = pageCount;
|
||
|
else {
|
||
|
var doc = document.getElementById(pageCount);
|
||
|
if (!doc)
|
||
|
count = 5;
|
||
|
else {
|
||
|
var height = doc.offsetHeight;
|
||
|
if (height === undefined || height == null || height <= 28 + 37)
|
||
|
count = 5;
|
||
|
else
|
||
|
count = (height - 28 - 37) / 32;
|
||
|
}
|
||
|
}
|
||
|
obj.page_count = Math.floor(count);
|
||
|
return obj;
|
||
|
}
|
||
|
|
||
|
$scope.KMIListFilterDelete = function (PageConfig, index) {
|
||
|
if (PageConfig) {
|
||
|
PageConfig.header[index].isFilter = false;
|
||
|
if (PageConfig.columns[index] in PageConfig.filterColumn) {
|
||
|
delete PageConfig.filterColumn[PageConfig.columns[index]];
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$scope.KMIListGetPage = function (list, PageConfig) {
|
||
|
if (list && list.length > 0) {
|
||
|
if (PageConfig) {
|
||
|
var header;
|
||
|
if ('qeryOrder' in PageConfig && PageConfig.header.length > 0) header = PageConfig.header[PageConfig.qeryOrder];
|
||
|
|
||
|
var temp_list = PageConfig.filterColumn !== undefined ? temp_list = $filter('filter')(list, PageConfig.filterColumn) : list;
|
||
|
if (header)
|
||
|
temp_list = $filter('orderBy')(temp_list, "'" + header.code + "'", header.order);
|
||
|
|
||
|
PageConfig.page = PageConfig.page || 0;
|
||
|
PageConfig.total_page = Math.ceil(temp_list.length / PageConfig.page_count);
|
||
|
if (PageConfig.total_page == 0) PageConfig.total_page = 1;
|
||
|
if (PageConfig.page >= PageConfig.total_page) PageConfig.page = 0;
|
||
|
var index = PageConfig.page * PageConfig.page_count;
|
||
|
return temp_list.slice(index, index + PageConfig.page_count);
|
||
|
} else {
|
||
|
return list;
|
||
|
}
|
||
|
|
||
|
} else {
|
||
|
PageConfig.page = 0;
|
||
|
PageConfig.total_page = 1;
|
||
|
return list;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$scope.KMIListChangeOrder = function (PageConfig, index) {
|
||
|
if (!PageConfig.header[index]) PageConfig.header[index] = {};
|
||
|
PageConfig.header[index].code = PageConfig.columns[index];
|
||
|
|
||
|
if (PageConfig.qeryOrder != index) {
|
||
|
PageConfig.header[index].order = false;
|
||
|
} else {
|
||
|
PageConfig.header[index].order = !PageConfig.header[index].order;
|
||
|
}
|
||
|
PageConfig.qeryOrder = index;
|
||
|
}
|
||
|
|
||
|
$scope.KMIListPageInfo = function (PageConfig) {
|
||
|
var p = 0;
|
||
|
var t = 1;
|
||
|
if (!PageConfig) return (p + 1) + ' / ' + t;
|
||
|
if ('page' in PageConfig) p = PageConfig.page;
|
||
|
if ('total_page' in PageConfig) t = PageConfig.total_page;
|
||
|
return (p + 1) + ' / ' + t;
|
||
|
}
|
||
|
|
||
|
$scope.KMIListPrevPage = function (PageConfig) {
|
||
|
if (!PageConfig || !('page' in PageConfig) || !('total_page' in PageConfig)) return PageConfig.page
|
||
|
return PageConfig.page = (PageConfig.page - 1 < 0 ? 0 : PageConfig.page - 1);
|
||
|
}
|
||
|
|
||
|
$scope.KMIListNextPage = function (PageConfig) {
|
||
|
if (!PageConfig || !('page' in PageConfig) || !('total_page' in PageConfig)) return PageConfig.page
|
||
|
return PageConfig.page = (PageConfig.page + 1 > (PageConfig.total_page - 1) ? (PageConfig.total_page - 1) : PageConfig.page + 1);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
}
|
||
|
]
|
||
|
});
|