You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
369 lines
15 KiB
Plaintext
369 lines
15 KiB
Plaintext
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<title>权限控制</title>
|
|
<link href="../../Scripts/easyUI/themes/default/easyui.css" rel="stylesheet" type="text/css" />
|
|
<link href="../../Scripts/easyUI/themes/icon.css" rel="stylesheet" type="text/css" />
|
|
|
|
<link href="../../CCForm/JS/mselector.css" rel="stylesheet" type="text/css" />
|
|
<link href="../../Scripts/bootstrap/css/bootstrap.css" rel="stylesheet" />
|
|
<script src="../../Scripts/jquery-1.11.0.min.js" type="text/javascript"></script>
|
|
<script src="../../Scripts/easyUI/jquery.easyui.min.js" type="text/javascript"></script>
|
|
|
|
<link href="../../../DataUser/Style/ccbpm.css" rel="stylesheet"
|
|
type="text/css" />
|
|
<script type="text/javascript" src="../../Comm/JScript.js"></script>
|
|
<script type="text/javascript"
|
|
src="../../Scripts/bootstrap/js/bootstrap.min.js"></script>
|
|
<script type="text/javascript" src="../../Scripts/QueryString.js"></script>
|
|
<script type="text/javascript" src="../../Scripts/config.js"></script>
|
|
<script type="text/javascript" src="../../Comm/Gener.js"></script>
|
|
|
|
<script type="text/javascript" src="../../Scripts/QueryString.js"></script>
|
|
<link href="../../Scripts/bootstrap/css/font-awesome.css" rel="Stylesheet" />
|
|
<script type="text/javascript" src="../../Scripts/bootstrap/js/jquery.cokie.min.js"></script>
|
|
<script src="../../Scripts/bootstrap/BootstrapUIDialog.js" type="text/javascript"></script>
|
|
<script src="../../CCForm/JS/mtags.js" type="text/javascript"></script>
|
|
<link href="../../Style/skin/adminfont/iconfont.css" rel="stylesheet" />
|
|
<link href="../../Style/skin/css/Default.css" rel="stylesheet" />
|
|
<style type="text/css">
|
|
.ccflow-input-span-container {
|
|
box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0.075);
|
|
border: 0px;
|
|
}
|
|
|
|
.ccflow-input-span-container {
|
|
line-height: 28px;
|
|
}
|
|
|
|
th {
|
|
border-width: 1px;
|
|
border-color: #C2D5E3;
|
|
border-style: solid;
|
|
line-height: 25px;
|
|
color: #0a0a0a;
|
|
white-space: nowrap;
|
|
padding: 5px 2px;
|
|
font-size: 14px;
|
|
text-align: left;
|
|
font-size: 12px;
|
|
font-weight: bolder;
|
|
}
|
|
|
|
caption {
|
|
text-align: left;
|
|
font-family: 'Microsoft YaHei';
|
|
font-weight: bolder;
|
|
border-bottom: none;
|
|
margin-bottom: 10px;
|
|
}
|
|
</style>
|
|
<base target="_self" />
|
|
|
|
<script type="text/javascript">
|
|
var currSelectNode = "";
|
|
var models = [];
|
|
|
|
//页面启动函数.
|
|
$(function () {
|
|
$("#Msg").html("<img src=../../Img/loading.gif /> 正在加载,请稍后......");
|
|
//定义权限控制类型
|
|
//var itemFlowDataView = { 'PowerFlag': 'FlowDataView', 'PowerFlagName': '查看', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataPress = { 'PowerFlag': 'FlowDataPress', 'PowerFlagName': '催办', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataShift = { 'PowerFlag': 'FlowDataShift', 'PowerFlagName': '移交(特送人员)', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataUnSend = { 'PowerFlag': 'FlowDataUnSend', 'PowerFlagName': '撤销', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataAddEmps = { 'PowerFlag': 'FlowDataAddEmps', 'PowerFlagName': '增加处理人(委托)', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataRollback = { 'PowerFlag': 'FlowDataRollback', 'PowerFlagName': '回滚', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataOver = { 'PowerFlag': 'FlowDataOver', 'PowerFlagName': '结束', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataSkip = { 'PowerFlag': 'FlowDataSkip', 'PowerFlagName': '跳转', 'PortSta': '', 'PortEmp': '' };
|
|
var itemFlowDataDelete = { 'PowerFlag': 'FlowDataDelete', 'PowerFlagName': '删除', 'PortSta': '', 'PortEmp': '' };
|
|
//models.push(itemFlowDataView);
|
|
models.push(itemFlowDataPress);
|
|
models.push(itemFlowDataShift);
|
|
models.push(itemFlowDataUnSend);
|
|
models.push(itemFlowDataAddEmps);
|
|
models.push(itemFlowDataRollback);
|
|
models.push(itemFlowDataOver);
|
|
models.push(itemFlowDataSkip);
|
|
models.push(itemFlowDataDelete);
|
|
|
|
//初始化页面
|
|
InitPage();
|
|
$("#Msg").html("");
|
|
});
|
|
var currPowerFlag = "";
|
|
//初始化数据.
|
|
function InitPage() {
|
|
|
|
var flowNo = GetQueryString("FK_Flow");
|
|
|
|
//获取流程中设置的权限列表
|
|
var powerModels = new Entities("BP.WF.Template.PowerModels");
|
|
powerModels.Retrieve("Model", "FlowData", "FlowNo", flowNo);
|
|
//李震bs
|
|
var html = "";
|
|
html += "<table class='table table-hover' style='width:100%;'>";
|
|
|
|
html += "<tr>";
|
|
html += "<th>#</th>";
|
|
html += "<th>编号/权限</th>";
|
|
html += "<th>岗位(双击设置)</th>";
|
|
html += "<th>人员(双击设置)</th>";
|
|
html += "</tr>";
|
|
for (var i = 0; i < models.length; i++) {
|
|
var model = models[i];
|
|
html += "<tr style='vertical-align:middle;'>";
|
|
html += "<td>" + (i + 1) + "</td>";
|
|
html += "<td>" + model.PowerFlag + " " + model.PowerFlagName + "</td>";
|
|
//岗位
|
|
html += "<td width='40%'><div id='portSta_" + model.PowerFlag + "_mtags' data-power=" + model.PowerFlag + " style='width:100%' class='mtags'></div></td>";
|
|
//人员
|
|
html += "<td width='40%'><div id='portEmp_" + model.PowerFlag + "_mtags' data-power=" + model.PowerFlag + " style='width:100%' class='mtags'></div></td>";
|
|
|
|
html += "</tr>";
|
|
}
|
|
html += "</table>";
|
|
$("#docs").html(html);
|
|
|
|
//设置选择人员的路径
|
|
var dept = getQueryStringByNameFromUrl("?" + $.cookie('CCS'), "FK_Dept");
|
|
if (dept == null || dept == '' || dept == undefined) {
|
|
dept = $.cookie('FK_Dept');
|
|
}
|
|
|
|
if (dept == null || dept == '' || dept == undefined) {
|
|
var u = new WebUser();
|
|
dept = u.FK_Dept;
|
|
}
|
|
|
|
if (dept == undefined) {
|
|
dept = "0";
|
|
}
|
|
var empUrl = "../../WorkOpt/SelectEmps.htm?FK_Dept=" + dept + "&s=" + Math.random();
|
|
var staUrl = "../../WorkOpt/SelectStationGroup.htm?s=" + Math.random();
|
|
//设置选择岗位的路径
|
|
|
|
for (var i = 0; i < models.length; i++) {
|
|
var mtags = $("#portSta_" + models[i].PowerFlag + "_mtags");
|
|
//初始化mtags 岗位
|
|
mtags.mtags({
|
|
"fit": true,
|
|
"onUnselect": function (record) {
|
|
RemoveSta(record.MyPK, record.PowerFlag);
|
|
}
|
|
});
|
|
//初始化数据
|
|
var initJsonData = GetPowerModel(models[i].PowerFlag, 1, 0, powerModels);
|
|
if (initJsonData.length != 0)
|
|
mtags.mtags("loadData", initJsonData);
|
|
|
|
//人员
|
|
mtags = $("#portEmp_" + models[i].PowerFlag + "_mtags");
|
|
//初始化mtags 岗位
|
|
mtags.mtags({
|
|
"fit": true,
|
|
"onUnselect": function (record) {
|
|
RemoveEmp(record.MyPK, record.PowerFlag);
|
|
}
|
|
});
|
|
//初始化数据
|
|
initJsonData = GetPowerModel(models[i].PowerFlag, 0, 1, powerModels);
|
|
if (initJsonData.length != 0)
|
|
mtags.mtags("loadData", initJsonData);
|
|
|
|
}
|
|
//绑定获取用户事件
|
|
$.each($(".mtags"), function (i, mtags) {
|
|
var id = $(mtags).attr("id");
|
|
//岗位选择事件
|
|
if (id.indexOf("portSta") != -1) {
|
|
$(mtags).bind("dblclick", function () {
|
|
$("#title").html("选择岗位");
|
|
currPowerFlag = $(mtags).attr("data-power");
|
|
$('#iframeSelectEmpsForm').attr('src', staUrl);
|
|
$('#SelectEmpsModal').modal().show();
|
|
});
|
|
|
|
}
|
|
//人员选择事件
|
|
if (id.indexOf("portEmp") != -1) {
|
|
$(mtags).bind("dblclick", function () {
|
|
$("#title").html("选择人员");
|
|
currPowerFlag = $(mtags).attr("data-power");
|
|
$('#iframeSelectEmpsForm').attr('src', empUrl);
|
|
$('#SelectEmpsModal').modal().show();
|
|
});
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
|
|
//获取对应类型的数据
|
|
function GetPowerModel(powerFlag, portSta, portEmp, powerModels) {
|
|
var initJson = [];
|
|
for (var i = 0; i < powerModels.length; i++) {
|
|
var powerModel = powerModels[i];
|
|
//权限类型一致
|
|
if (powerModel.PowerFlag == powerFlag) {
|
|
if (portSta == 1 && powerModel.StaNo != null && powerModel.StaNo != "") {
|
|
initJson.push({
|
|
"No": powerModel.StaNo,
|
|
"Name": powerModel.StaName,
|
|
"MyPK": powerModel.MyPK,
|
|
"PowerFlag": powerModel.PowerFlag
|
|
});
|
|
}
|
|
if (portEmp == 1 && powerModel.EmpNo != null && powerModel.EmpNo != "") {
|
|
initJson.push({
|
|
"No": powerModel.EmpNo,
|
|
"Name": powerModel.EmpName,
|
|
"MyPK": powerModel.MyPK,
|
|
"PowerFlag": powerModel.PowerFlag
|
|
});
|
|
}
|
|
|
|
}
|
|
}
|
|
return initJson;
|
|
}
|
|
|
|
//获取当前结点model根据powerFlag
|
|
function getModelByPowerFlag(powerFlag) {
|
|
for (var i = 0; i < models.length; i++) {
|
|
var model = models[i];
|
|
if (model.PowerFlag == powerFlag) {
|
|
return model;
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
//初始化接收人员列表
|
|
function InitMtags(mtags, powerFlag, portSta, portEmp) {
|
|
var powerModels = new Entities("BP.WF.Template.PowerModels");
|
|
powerModels.Retrieve("Model", "FlowData", "FlowNo", GetQueryString("FK_Flow"));
|
|
var initJsonData = GetPowerModel(powerFlag, portSta, portEmp, powerModels)
|
|
mtags.mtags("loadData", initJsonData);
|
|
}
|
|
|
|
|
|
//设置选中的人员
|
|
function selectEmpsWindowClose(data) {
|
|
|
|
$('#SelectEmpsModal').modal('hide');
|
|
if (data == '取消') {
|
|
return;
|
|
}
|
|
var returnVal = frames["iframeSelectEmpsForm"].window.returnVal;
|
|
var powerFlag = currPowerFlag;
|
|
var flowNo = GetQueryString("FK_Flow");
|
|
var myPK = currPowerFlag + "_" + returnVal.No + "_" + flowNo;
|
|
var en = new Entity("BP.WF.Template.PowerModel");
|
|
en.MyPK = myPK; //设置主键.
|
|
en.Model = "FlowData";
|
|
en.PowerFlag = powerFlag;
|
|
var model = getModelByPowerFlag(powerFlag);
|
|
if (model != null) {
|
|
en.PowerFlagName = model.PowerFlagName;
|
|
}
|
|
en.FlowNo = flowNo;
|
|
en.EmpNo = returnVal.No;
|
|
en.EmpName = returnVal.Name;
|
|
en.NodeId = 0;
|
|
en.PowerCtrlType = 1;
|
|
en.Save();
|
|
InitMtags($("#portEmp_" + powerFlag + "_mtags"), powerFlag, 0, 1);
|
|
|
|
}
|
|
//删除人员
|
|
function RemoveEmp(mypk, powerFlag) {
|
|
var en = new Entity("BP.WF.Template.PowerModel", mypk);
|
|
en.Delete();
|
|
InitMtags($("#portEmp_" + powerFlag + "_mtags"), powerFlag, 0, 1);
|
|
|
|
}
|
|
|
|
//设置选中的岗位
|
|
function selectStasWindowClose(data) {
|
|
|
|
$('#SelectEmpsModal').modal('hide');
|
|
if (data == '取消') {
|
|
return;
|
|
}
|
|
var returnVals = frames["iframeSelectEmpsForm"].window.returnVal;
|
|
var powerFlag = currPowerFlag;
|
|
var flowNo = GetQueryString("FK_Flow");
|
|
for (var i = 0; i < returnVals.length; i++) {
|
|
var returnVal = returnVals[i];
|
|
var myPK = currPowerFlag + "_" + returnVal.No + "_" + flowNo;
|
|
var en = new Entity("BP.WF.Template.PowerModel");
|
|
en.MyPK = myPK; //设置主键.
|
|
en.Model = "FlowData";
|
|
en.PowerFlag = powerFlag;
|
|
var model = getModelByPowerFlag(powerFlag);
|
|
if (model != null) {
|
|
en.PowerFlagName = model.PowerFlagName;
|
|
}
|
|
en.FlowNo = flowNo;
|
|
en.StaNo = returnVal.No;
|
|
en.StaName = returnVal.Name;
|
|
en.NodeId = 0;
|
|
en.PowerCtrlType = 0;
|
|
en.Save();
|
|
}
|
|
InitMtags($("#portSta_" + powerFlag + "_mtags"), powerFlag, 1, 0);
|
|
|
|
}
|
|
//删除岗位
|
|
function RemoveSta(mypk, powerFlag) {
|
|
var en = new Entity("BP.WF.Template.PowerModel", mypk);
|
|
en.Delete();
|
|
InitMtags($("#portSta_" + powerFlag + "_mtags"), powerFlag, 1, 0);
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="container-full">
|
|
|
|
<div id="titleH4" class="attrnode-bar-header">
|
|
|
|
<strong>权限控制 </strong>
|
|
</div>
|
|
|
|
<div id="docs"></div>
|
|
|
|
<div id="Msg"></div>
|
|
|
|
<div class="modal fade" id="SelectEmpsModal">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content" style="border-radius: 0px; width: 700px;">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" style="color: #000; opacity: 1;" data-dismiss="modal"
|
|
aria-hidden="true">
|
|
×
|
|
</button>
|
|
<h4 class="modal-title" id="title">
|
|
接受人
|
|
</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<iframe style="width: 100%; border: 0px; height: 400px;" id="iframeSelectEmpsForm"
|
|
name="iframeSelectEmpsForm"></iframe>
|
|
</div>
|
|
</div>
|
|
<!-- /.modal-content -->
|
|
|
|
</div>
|
|
<!-- /.modal-dialog -->
|
|
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|