供自己看;
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Frm_ProductDayReport.aspx.cs" Inherits="VegooPM.report.product.Frm_ProductDayReport" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="renderer" content="webkit|ie-comp|ie-stand" />
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="<%=this.ResolveUrl("~") %>scripts/miniui/themes/default/miniui.css" rel="stylesheet" type="text/css" />
<link href="<%=this.ResolveUrl("~") %>scripts/miniui/themes/blue/skin.css" rel="stylesheet" type="text/css" />
<link href="<%=this.ResolveUrl("~") %>css/main.css" rel="stylesheet" type="text/css" />
<script src="<%=this.ResolveUrl("~") %>scripts/jquery/jquery-1.6.2.min.js" type="text/javascript"></script>
<script src="<%=this.ResolveUrl("~") %>scripts/miniui/miniui.js" type="text/javascript"></script>
<script src="<%=this.ResolveUrl("~") %>scripts/js/HDB.js" type="text/javascript"></script>
</head>
<body>
<div class="mini-splitter" style="width:100%;height:100%;" borderStyle="border-left:0;border-right:0; border-bottom:0;">
<div size="180" maxsize="250" minsize="100" showcollapsebutton="true" borderStyle="border:0;" style=" width :200px; height :100%; background:#fff; float :left; height:23px;">
<div class="mini-toolbar" style="border-right: 0;border-left: 0;border-top: 0; padding: 0px; height:23px; text-align:left; padding-left:10px; padding-top:3px; ">
<span style="font-size:13px;">
<input name="treeFactory" id="treeFactory" class="mini-treeselect" onbeforenodeselect="beforenodeselect"
textField="Text" valueField="ID" parentField="Pid" showTreeIcon="false" showFolderCheckBox="false" style="width:100%" ondrawnode="onDrawNode"
iconfield="Icon" expandOnLoad="true" onvaluechanged="onMillTreeChanged" url="<%=this.ResolveUrl("~") %>data/product/productServer.aspx?method=getFactoryNameList" />
</span>
</div>
<ul id="treeMill" name="treeMill" class="mini-tree" style="width: 100%; height: 100%; padding: 0px;"
showtreeicon="true" textfield="Text" onnodeselect="onNodeSelect" valuefield="ID" parentfield="Pid" expandonload="true" resultastree="true" iconField="Icon">
</ul>
</div>
<div borderStyle="border-left:0;border-right:0; border-bottom:0;">
<div id="toolBarBox" class="toolBarBox" style="border-top:0;">
<div id="ToolBar" class="ToolBar" style="border-top:0;">
<ul class="mini-toolbar" style="border-top:0;">
<li class="toolbar-searchbtn">
<span>主机:</span>
<input name="MainMachine" id="MainMachine" class="mini-combobox"
style="width:140px;" allowinput="false"/>
<span>日期:</span>
<input id="InsertDate" class="mini-monthpicker" showOkButton="false" allowinput="false"/>
<a class="mini-button" plain="true" iconCls="icon-403" onclick="search()">查询</a>
</li>
</ul>
</div>
</div>
<div class="mini-fit" style=" border:0;">
<div id="center" style="width: 100%;height:100%; border: 0px solid;">
<div id="datagrid1" class="mini-datagrid" style="width:100%;height:100%;" allowresize="false"showpager="false"allowHeaderWrap="true"allowCellWrap="true"
url="<%=this.ResolveUrl("~") %>data/product/productServer.aspx?method=getRunMachineGrid" onload="onLoad">
<div property="columns">
<div field="InsertTime" renderer="onBirthdayRenderer" headerAlign="center" width="40" align="center">日期</div>
<div field="OverallTime" headerAlign="center" width="40" align="center">总时间(h)</div>
<div field="RunTime" headerAlign="center" width="40" dataType="float" align="center">运行时间(h)</div>
<div headerAlign="center">计划停机
<div property="columns">
<div field="bHours" headerAlign="center" width="40" dataType="float" align="center">停机时间(h)</div>
<div field="TimeSlot" headerAlign="center" width="80" align="center">停机时段</div>
<div field="Remark" headerAlign="center" width="130">停机原因</div>
<div field="ND" headerAlign="center" width="40" align="center">停机次数</div>
</div>
</div>
<div field="CTOR" headerAlign="center" align="center" width="40" renderer="onRenderer">综合运转率(%)</div>
<div field="CR" headerAlign="center" align="center" width="40" renderer="onRenderer">综合可靠性(%)</div>
<div headerAlign="center">停机分类
<div property="columns">
<div headerAlign="center">计划停机
<div property="columns">
<div field="jhxtj" headerAlign="center" width="40" align="center" dataType="float">计划性停机</div>
<div field="bfdtj" headerAlign="center" width="40" align="center" dataType="float">避峰电停机</div>
<div field="xcxtj" headerAlign="center" width="40" align="center" dataType="float">限产性停机</div>
<div field="jhtjcs" headerAlign="center" width="40" align="center" dataType="float">停机次数</div>
</div>
</div>
<div headerAlign="center">故障停机
<div property="columns">
<div headerAlign="center">工艺
<div property="columns">
<div field="gysbgztj" headerAlign="center" width="40" align="center" dataType="float">工艺设备故障停机</div>
<div field="wldltj" headerAlign="center" width="40" align="center" dataType="float">物料堵料停机</div>
<div field="gytjcs" headerAlign="center" width="40" align="center" dataType="float">停机次数</div>
<div field="PR" headerAlign="center" align="center" width="40" renderer="onRenderer">可靠性(%)</div>
</div>
</div>
<div headerAlign="center">电器
<div property="columns">
<div field="dqsbgztj" headerAlign="center" align="center" width="40" dataType="float">电器设备故障停机(h)</div>
<div field="dqcs" headerAlign="center" align="center" width="40" dataType="float">停机次数</div>
<div field="ROEA" headerAlign="center" align="center" width="40" renderer="onRenderer">可靠性(%)</div>
</div>
</div>
<div headerAlign="center">设备
<div property="columns">
<div field="jxsbgz" headerAlign="center" align="center" width="40" dataType="float">机械设备故障(h)</div>
<div field="sbtj" headerAlign="center" align="center" width="40" dataType="float">停机次数</div>
<div field="TROTE" headerAlign="center" align="center" width="40" renderer="onRenderer">可靠性(%)</div>
</div>
</div>
<div headerAlign="center">非本系统原因的停机
<div property="columns">
<div field="fbtjsj" headerAlign="center" align="center" width="40" dataType="float">停机时间</div>
<div field="fbxtyytj" headerAlign="center" align="center" width="40" dataType="float">停机次数</div>
<div field="TNSR" headerAlign="center" align="center" width="40" renderer="onRenderer">可靠性(%)</div>
</div>
</div>
<div headerAlign="center">不可控停机
<div property="columns">
<div field="bkktjsj" headerAlign="center" align="center" width="40" dataType="float">停机时间(h)</div>
<div field="bkktj" headerAlign="center" align="center" width="40" dataType="float">停机次数</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
mini.parse();
var path = '<%=this.ResolveUrl("~") %>';
var grid = mini.get("datagrid1");
var treeselect = mini.get("treeFactory");
var tree = mini.get("treeMill");
$(function () {
mini.get("InsertDate").setValue(new Date());
});
var moren = 1;
var morenText;
function onDrawNode(e) {
if (e.isLeaf != false && moren == 1) {
morenText = e.node; moren = 0;
treeselect.setValue(morenText.ID);
onMillTreeChanged(morenText);
tree.selectNode(tree.getRootNode());
}
}
//禁止选中父节点
function beforenodeselect(e) {
if (e.isLeaf == false) e.cancel = true;
}
//加载系统树
function onMillTreeChanged(e) {
var node = treeselect.getSelectedNode();
var data = { FactoryCode: node.ID };
var url = path + 'data/product/productServer.aspx?method=getMillTreeList&submitData=' + JSON.stringify(data);
tree.load(url);
}
//点击节点的时候获取主机
function onNodeSelect(e) {
$.ajax({
url: path + "data/product/productServer.aspx?method=getDMainMachineGrid",
type: 'post',
data: { submitData: tree.getSelectedNode().ID },
success: function (text) {
var datas;
if (text.length > 10) {
datas = mini.decode(text);
} else {
return;
}
mini.get("MainMachine").setData(null);
if (datas.data.length > 0) {
mini.get("MainMachine").setData(datas.data);
} else {
grid.setData("");
return;
}
mini.get("MainMachine").setValue(datas.data[0].id);
loadData();
},
error: function (jqXHR, textStatus, errorThrown) {
alert(jqXHR.responseText);
CloseWindow();
}
});
}
//系统树传值
function loadData() {
var node = tree.getSelectedNode(); //系统树
var node1 = treeselect.getSelectedNode(); //工厂树
if (node != null && node != undefined) {
if (node._id == -1) {
return;
}
} else {
return;
}
if (mini.get("InsertDate").getValue() == null || mini.get("InsertDate").getValue() == "") {
return;
}
if (mini.get("MainMachine").getValue() == null || mini.get("MainMachine").getValue() == "") {
return;
}
var data = mini.encode({ MillCode: node.ID, FactoryCode: node1.ID,InsertDate: mini.get("InsertDate").getValue(), MainMachine: mini.get("MainMachine").getValue() });
grid.load({ submitData: data });
}
function search() {
var node = tree.getSelectedNode(); //系统树
var node1 = treeselect.getSelectedNode(); //工厂树
if (node != null && node != undefined) {
if (node._id == -1) {
mini.alert("请选择左侧菜单目录!");
return;
}
} else {
mini.alert("请选择左侧菜单目录!");
return;
}
if (mini.get("InsertDate").getValue() == null || mini.get("InsertDate").getValue() == "") {
mini.alert("请选择日期!");
return;
}
if (mini.get("MainMachine").getValue() == null || mini.get("MainMachine").getValue() == "") {
mini.alert("请选择主机!");
return;
}
var data = mini.encode({ MillCode: node.ID, FactoryCode: node1.ID, InsertDate: mini.get("InsertDate").getValue(), MainMachine: mini.get("MainMachine").getValue() });
grid.load({ submitData: data });
}
function onBirthdayRenderer(e) {
if (e.value != "合计") {
var value = new Date(e.value);
if (value) return mini.formatDate(value, 'dd');
}
else {
return e.value;
}
}
function onRenderer(e) {
return toDecimal(e.value);
}
function onLoad(e) {
var index = grid.getData().length;
var row = { "InsertTime": "合计",
"OverallTime": "",
"RunTime": "",
"bHours": 0,
"TimeSlot": "",
"Remark": "",
"ND": "",
"CTOR": "",
"CR": "",
"jhxtj": "",
"bfdtj": "",
"xcxtj": "",
"jhtjcs": "",
"gysbgztj": "",
"wldltj": "",
"gytjcs": "",
"PR": "",
"dqsbgztj": "",
"dqcs": "", "ROEA": "",
"jxsbgz": "", "sbtj": "",
"TROTE": "",
"fbtjsj": "",
"fbxtyytj": "",
"TNSR": "",
"bkktjsj": "",
"bkktj": ""
};
grid.addRow(row, index);
var grids = e.sender;
var s1 = 0; //存储号
var a1 = 0; //rowIndex
var a2 = 0; //rowSpan
var b = ""; //分组区分值
var qq = "";
var OverallTime = 0; var RunTime = 0;
var bHours = 0; var ND = 0;
var jhxtj = 0; var bfdtj = 0;
var xcxtj = 0; var jhtjcs = 0;
var gysbgztj = 0; var wldltj = 0;
var gytjcs = 0;
var dqsbgztj = 0; var dqcs = 0;
var jxsbgz = 0;
var sbtj = 0;
var fbtjsj = 0; var fbxtyytj = 0;
var bkktjsj = 0; var bkktj = 0;
for (var i = 0; i < grids.data.length; i++) {
OverallTime = OverallTime + grids.data[i].OverallTime;
RunTime = RunTime + grids.data[i].RunTime;
bHours = bHours + (grids.data[i].bHours =="" ? 0 : parseFloat(grids.data[i].bHours));
ND = ND + (grids.data[i].ND =="" ? 0 : parseFloat(grids.data[i].ND));
jhxtj = jhxtj +( grids.data[i].jhxtj =="" ? 0 : parseFloat(grids.data[i].jhxtj));
bfdtj = bfdtj +( grids.data[i].bfdtj =="" ? 0 : parseFloat(grids.data[i].bfdtj));
xcxtj = xcxtj +( grids.data[i].xcxtj =="" ? 0 : parseFloat(grids.data[i].xcxtj));
jhtjcs = jhtjcs +( grids.data[i].jhtjcs =="" ? 0 : parseFloat(grids.data[i].jhtjcs));
gysbgztj = gysbgztj +( grids.data[i].gysbgztj =="" ? 0 : parseFloat(grids.data[i].gysbgztj));
wldltj = wldltj +( grids.data[i].wldltj =="" ? 0 : parseFloat(grids.data[i].wldltj));
gytjcs = gytjcs +( grids.data[i].gytjcs =="" ? 0 : parseFloat(grids.data[i].gytjcs));
dqsbgztj = dqsbgztj +( grids.data[i].dqsbgztj =="" ? 0 : parseFloat(grids.data[i].dqsbgztj));
dqcs = dqcs +( grids.data[i].dqcs =="" ? 0 : parseFloat(grids.data[i].dqcs));
jxsbgz = jxsbgz +( grids.data[i].jxsbgz =="" ? 0 : parseFloat(grids.data[i].jxsbgz));
sbtj = sbtj +( grids.data[i].sbtj =="" ? 0 : parseFloat(grids.data[i].sbtj));
fbtjsj = fbtjsj +( grids.data[i].fbtjsj =="" ? 0 : parseFloat(grids.data[i].fbtjsj));
fbxtyytj = fbxtyytj +( grids.data[i].fbxtyytj =="" ? 0 : parseFloat(grids.data[i].fbxtyytj));
bkktjsj = bkktjsj +( grids.data[i].bkktjsj =="" ? 0 : parseFloat(grids.data[i].bkktjsj));
bkktj = bkktj +( grids.data[i].bkktj =="" ? 0 : parseFloat(grids.data[i].bkktj));
if (grids.data.length == i) {
a2 += 1;
qq += "{ rowIndex: " + a1 + ", columnIndex: 0, rowSpan: " + a2 + ", colSpan: 1 },";
qq += "{ rowIndex: " + a1 + ", columnIndex: 1, rowSpan: " + a2 + ", colSpan: 1 },";
qq += "{ rowIndex: " + a1 + ", columnIndex: 2, rowSpan: " + a2 + ", colSpan: 1 },";
} else {
if (grids.data[i].InsertTime != b) {
if (i == 0) {
b = grids.data[i].InsertTime;
a2 += 1;
} else {
s1 = i - 1;
qq += "{ rowIndex: " + a1 + ", columnIndex: 0, rowSpan: " + a2 + ", colSpan: 1 },"
qq += "{ rowIndex: " + a1 + ", columnIndex: 1, rowSpan: " + a2 + ", colSpan: 1 },";
qq += "{ rowIndex: " + a1 + ", columnIndex: 2, rowSpan: " + a2 + ", colSpan: 1 },";
a1 = s1 + 1
a2 = 1;
b = grids.data[i].InsertTime;
}
}
else {
OverallTime = OverallTime - grids.data[i].OverallTime;
RunTime = RunTime - grids.data[i].RunTime;
bHours = bHours - (grids.data[i].bHours == "" ? 0 : parseFloat(grids.data[i].bHours));
a2 += 1;
}
}
}
marges = eval("[" + qq + "]");
grid.margeCells(marges);
grid.updateRow(row, { "OverallTime": OverallTime,
"RunTime": RunTime,
"bHours": bHours,
"ND": ND,
"jhxtj": jhxtj,
"bfdtj": bfdtj,
"xcxtj": xcxtj,
"jhtjcs": jhtjcs,
"gysbgztj": gysbgztj,
"wldltj": wldltj,
"gytjcs": gytjcs,
"dqsbgztj": dqsbgztj,
"jxsbgz": jxsbgz, "sbtj": sbtj,
"fbtjsj": fbtjsj,
"fbxtyytj": fbxtyytj,
"bkktjsj": bkktjsj,
"bkktj": bkktj
});
}
</script>
</body>
</html>