FlowSchemeBuider.cshtml 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713
  1. @{
  2. ViewBag.Title = "流程设计器";
  3. Layout = "~/Views/Shared/_FlowForm.cshtml";
  4. }
  5. <script>
  6. var keyValue = request('keyValue');
  7. var postData = {};//提交数据
  8. var flowData = {};
  9. var frmData = {};
  10. var SchemeContentOld;
  11. var frmapp;
  12. var shcemeAuthorizeData = "";
  13. var AllAuthorizeCheckData = {};
  14. $(function () {
  15. initialPage();
  16. })
  17. //初始化页面
  18. function initialPage() {
  19. $('#step-1 .panel-body').height($(window).height() - 228);
  20. $('#Description').height($(window).height() - 385);
  21. $('#step-2 .standtabborder').height($(window).height() - 131);
  22. $('#DesignateMemberlist').height($(window).height() - 141);
  23. $('#Treebackground').height($(window).height() - 131);
  24. $('#step-3 .tab-content').height($(window).height() - 167);
  25. initBaseInfo();
  26. initSchemeAuthorize();
  27. initFrmInfo();
  28. initFlowInfo();
  29. //加载导向
  30. $('#wizard').wizard().on('change', function (e, data) {
  31. var $finish = $("#btn_finish");
  32. var $next = $("#btn_next");
  33. if (data.direction == "next") {
  34. switch (data.step) {
  35. case 1:
  36. if (!bindingBase())
  37. {
  38. return false;
  39. }
  40. break;
  41. case 2://流程模板权限设置
  42. if (postData.FrmType == 0) {
  43. if (!bindingSchemeAuthorize()) {
  44. return false;
  45. }
  46. }
  47. break;
  48. case 3://绑定表单
  49. if (postData.FrmType == 1) {
  50. frmData = "";
  51. }
  52. else {
  53. if (!bindingFrm()) {
  54. dialogTop("请选择左侧表单", "error");
  55. return false;
  56. }
  57. var frmcotentls = frmapp.getData();
  58. if (!frmcotentls) {
  59. return false;
  60. }
  61. frmData.FrmContent = JSON.stringify(frmcotentls);
  62. }
  63. break;
  64. case 4://流程设计
  65. if (!bindingFlow())
  66. {
  67. return false;
  68. }
  69. $finish.removeAttr('disabled');
  70. $next.attr('disabled', 'disabled');
  71. $('#btn_caogao').attr('disabled', 'disabled');
  72. break;
  73. default:
  74. break;
  75. }
  76. } else {
  77. $finish.attr('disabled', 'disabled');
  78. $next.removeAttr('disabled');
  79. $('#btn_caogao').removeAttr('disabled');
  80. }
  81. if (data.currentStep == 2 || data.currentStep == 3) {
  82. if (postData.FrmType == 0) {
  83. $('#sysbackground').hide();
  84. }
  85. else {
  86. $('#sysbackground').show();
  87. }
  88. }
  89. else {
  90. $('#sysbackground').hide();
  91. }
  92. });
  93. //获取表单
  94. if (!!keyValue) {
  95. $.SetForm({
  96. url: "../../FlowManage/FlowDesign/GetFormJson",
  97. param: { keyValue: keyValue },
  98. success: function (data) {
  99. $("#step-1").SetWebControls(data.schemeinfo);
  100. postData["SchemeVersion"] = data.schemeinfo.SchemeVersion;
  101. setSchemeAuthorize(data.schemeinfo.AuthorizeType, data.authorize);
  102. if(data.schemeinfo.EnabledMark == 3)
  103. {
  104. flowData["SchemeVersion"] = "cg";
  105. }
  106. SchemeContentOld = JSON.parse(data.schemecontent.SchemeContent);
  107. if (data.schemeinfo.FrmType != 1)
  108. {
  109. $('#FormFrmTree').setNodeChecked(SchemeContentOld.Frm.FrmId);
  110. frmData.FrmId = SchemeContentOld.Frm.FrmId;
  111. setFrmInfo(SchemeContentOld.Frm);
  112. }
  113. setFlowInfo(SchemeContentOld.Flow);
  114. }
  115. });
  116. }
  117. //保存为草稿
  118. $('#btn_caogao').click(function () {
  119. if (!$('#step-1').Validform()) {
  120. return false;
  121. }
  122. var _data = $("#step-1").GetWebControls(keyValue);
  123. var _frmcotentls = "";
  124. if (postData.FrmType == 1) {
  125. frmData = "";
  126. }
  127. else {
  128. if (frmapp != undefined) {
  129. _frmcotentls = frmapp.getData(true);
  130. }
  131. frmData.FrmContent = JSON.stringify(_frmcotentls);
  132. }
  133. flowData["SchemeContent"] = JSON.stringify({ "Frm": frmData, "Flow": FlowDesignPanel.exportData() });
  134. bindingSchemeAuthorize(true);
  135. postData = $.extend(postData, _data);
  136. postData["EnabledMark"] = 3;
  137. $.SaveForm({
  138. url: "../../FlowManage/FlowDesign/SaveForm?keyValue=" + keyValue,
  139. param: { "InfoEntity": JSON.stringify(postData), "ContentEntity": JSON.stringify(flowData), "shcemeAuthorizeData": shcemeAuthorizeData },
  140. loading: "正在保存数据...",
  141. success: function () {
  142. $.currentIframe().$("#gridTable").trigger("reloadGrid");
  143. }
  144. })
  145. });
  146. }
  147. /*=========基本配置(begin)==================================================================*/
  148. function initBaseInfo()
  149. {
  150. //流程类型
  151. $("#SchemeType").ComboBoxTree({
  152. description: "==请选择==",
  153. height: "300px",
  154. param: { EnCode: "FlowSort" },
  155. url: "../../SystemManage/DataItemDetail/GetDataItemTreeJson",
  156. allowSearch: true
  157. });
  158. //表单类型
  159. $("#FrmType").ComboBox({
  160. data: [{ "key": 0, "value": "自定义表单" }, { "key": 1, "value": "系统表单" }],
  161. id: "key",
  162. text: "value",
  163. description: "==请选择==",
  164. height: "115px",
  165. allowSearch: true
  166. });
  167. }
  168. function bindingBase()
  169. {
  170. if (!$('#step-1').Validform()) {
  171. return false;
  172. }
  173. var _postData = $("#step-1").GetWebControls(keyValue);
  174. postData = $.extend(postData, _postData);
  175. return true;
  176. }
  177. /*=========基本配置(end)====================================================================*/
  178. /*=========权限配置(begin)==================================================================*/
  179. function initSchemeAuthorize()
  180. {
  181. GetTree('Role');
  182. GetTree('Post');
  183. GetTree('UserGroup');
  184. GetTree('User');
  185. $('input[name="AuthorizeType"]').click(function () {
  186. var _value = $(this).val();
  187. if (_value == "0") {
  188. $("#Treebackground").show();
  189. }
  190. else {
  191. $("#Treebackground").hide();
  192. }
  193. });
  194. }
  195. function bindingSchemeAuthorize(flag)
  196. {
  197. var _value = $('input[name="AuthorizeType"]:checked').val();
  198. postData.AuthorizeType = _value;
  199. if (_value == "1") {
  200. var _roleData = $("#Role").getCheckedAllNodes();
  201. var _postData = $("#Post").getCheckedAllNodes();
  202. var _userGroupData = $("#UserGroup").getCheckedAllNodes();
  203. var _userData = $("#User").getCheckedAllNodes();
  204. _roleData.push.apply(_roleData, _postData);
  205. _roleData.push.apply(_roleData, _userGroupData);
  206. _roleData.push.apply(_roleData, _userData);
  207. shcemeAuthorizeData = String(_roleData);
  208. if (shcemeAuthorizeData == "") {
  209. if (!flag) {
  210. dialogTop("请选择指定成员", "error");
  211. }
  212. return false;
  213. }
  214. }
  215. else {
  216. shcemeAuthorizeData = "";
  217. }
  218. return true;
  219. }
  220. function setSchemeAuthorize(type,data)
  221. {
  222. $('#ShcemeAuthorize' + type).trigger("click");
  223. $.each(data, function (i,item) {
  224. $("#Role").setCheckedNodeOne(item.ObjectId);
  225. $("#Post").setCheckedNodeOne(item.ObjectId);
  226. $("#UserGroup").setCheckedNodeOne(item.ObjectId);
  227. $("#User").setCheckedNodeOne(item.ObjectId);
  228. });
  229. }
  230. function GetTree(type) {
  231. $.SetForm({
  232. url: "../../FlowManage/FlowDesign/Get" + type + "CheckTreeJson",
  233. success: function (data) {
  234. AllAuthorizeCheckData[type] = $.arrayClone(data);
  235. var item = {
  236. height: $(window).height() - 131,
  237. showcheck: true,
  238. //url: "../../FlowManage/FlowDesign/Get" + type + "CheckTreeJson",
  239. data:data,
  240. oncheckboxclick: function (item, et, s) {
  241. var $item = $("#" + item.mytype + "Div");
  242. if (et == 1) {
  243. var mytype = "";
  244. var _html = "";
  245. var _title = '';
  246. switch (item.mytype) {
  247. case "Role":
  248. mytype = "角色";
  249. break;
  250. case "Post":
  251. mytype = "岗位";
  252. break;
  253. case "UserGroup":
  254. mytype = "用户组";
  255. break;
  256. case "User":
  257. mytype = "用户";
  258. break;
  259. }
  260. _html += '<div id="' + item.id + '" data-value="' + item.mytype + '" class="card-box shcemeinfocheck active">';
  261. _html += ' <div class="card-box-img">';
  262. _html += ' <img src="/Content/images/UserCard03.png" />';
  263. _html += ' </div>';
  264. _html += ' <div class="card-box-content">';
  265. _html += ' <p>名称:' + item.text + '</p>';
  266. _html += ' <p>类别:' + mytype + '</p>';
  267. _html += ' </div><i></i>';
  268. _html += '</div>';
  269. $item.append(_html);
  270. $item.show();
  271. $(".card-box").click(function () {
  272. $(this).remove();
  273. $('#' + $(this).attr('data-value')).setNoCheckedNodes($(this).attr('id'));
  274. if ($item.find('.card-box-img').length == 0) {
  275. $item.hide();
  276. }
  277. })
  278. }
  279. else if (et == 0) {
  280. $item.find('#' + item.id).remove();
  281. if ($item.find('.card-box-img').length == 0) {
  282. $item.hide();
  283. }
  284. }
  285. }
  286. };
  287. $("#" + type).treeview(item);
  288. }
  289. });
  290. }
  291. /*=========权限配置(end)==================================================================*/
  292. /*=========表单选择(begin)==================================================================*/
  293. var _frmdatabase = "";
  294. var _frmflag = false;
  295. function initFrmInfo()
  296. {
  297. //加载左边的树
  298. var item = {
  299. height: $(window).height() - 87,
  300. url: "../../FlowManage/FormDesign/GetTreeJson",
  301. onnodeclick: function (item) {
  302. if (item.Sort == "Frm") {
  303. frmData.FrmId = item.id;
  304. if (SchemeContentOld != undefined && frmData.FrmId == SchemeContentOld.Frm.FrmId) {
  305. setFrmInfo(SchemeContentOld.Frm);
  306. }
  307. else {
  308. $.SetForm({
  309. url: "../../FlowManage/FormDesign/GetFormJson",
  310. param: { keyValue: item.id },
  311. success: function (data) {
  312. setFrmInfo(data);
  313. }
  314. });
  315. }
  316. }
  317. else {
  318. $('#frmdesign').hide();
  319. $('#frmpreview').hide();
  320. $('#frmDefaulting').show();
  321. }
  322. }
  323. };
  324. $("#FormFrmTree").treeview(item);
  325. $(".editview").hover(function () {
  326. $(this).find('.editviewtitle').show();
  327. }, function (e) {
  328. $(this).find('.editviewtitle').hide();
  329. });
  330. $('#editfrm').click(function () {
  331. if (_frmflag) {
  332. var frmcotentls = frmapp.getData();
  333. if (!frmcotentls) {
  334. return false;
  335. }
  336. frmData.FrmContent = JSON.stringify(frmcotentls);
  337. $('#frmdesign').hide();
  338. $('#frmDefaulting').hide();
  339. $('#frmpreview').show();
  340. $('#frmpreview').frmPreview({
  341. tablecotent: frmData.FrmContent,
  342. width: 870
  343. });
  344. $(this).html("编辑表单");
  345. _frmflag = false;
  346. }
  347. else {
  348. if (frmData.isSystemTable == 1 && _frmdatabase != "") {
  349. $('#frmpreview').hide();
  350. $('#frmDefaulting').hide();
  351. $('#frmdesign').show();
  352. frmapp = $('#frmdesign').frmDesign({
  353. Height: $(window).height() - 179,
  354. tablefiledJsonData: _frmdatabase,
  355. isSystemTable: frmData.isSystemTable,
  356. frmContent: frmData.FrmContent
  357. });
  358. _frmflag = true;
  359. $(this).html("预览表单");
  360. }
  361. else if (frmData.isSystemTable == 0 && frmData.FrmName != undefined) {
  362. $('#frmpreview').hide();
  363. $('#frmDefaulting').hide();
  364. $('#frmdesign').show();
  365. frmapp = $('#frmdesign').frmDesign({
  366. Height: $(window).height() - 179,
  367. frmContent: frmData.FrmContent
  368. });
  369. _frmflag = true;
  370. $(this).html("预览表单");
  371. }
  372. else {
  373. dialogTop("请选择左侧表单", "error");
  374. }
  375. }
  376. return false;
  377. });
  378. }
  379. //设置表单数据
  380. function setFrmInfo(data)
  381. {
  382. $('#frmdesign').hide();
  383. $('#frmDefaulting').hide();
  384. $('#frmpreview').show();
  385. frmData.isSystemTable = data.isSystemTable;
  386. frmData.FrmDbId = data.FrmDbId;
  387. frmData.FrmTable = data.FrmTable;
  388. frmData.FrmName = data.FrmName;
  389. frmData.FrmContent = data.FrmContent;
  390. frmData.FrmTableId = data.FrmTableId;
  391. _frmflag = false;
  392. $('#frmpreview').frmPreview({
  393. tablecotent: data.FrmContent,
  394. width:870
  395. });
  396. if (data.isSystemTable == 0) {
  397. frmapp = $('#frmdesign').frmDesign({
  398. Height: 480,
  399. frmContent: frmData.FrmContent
  400. });
  401. }
  402. else {
  403. $.ajax({
  404. url: "../../SystemManage/DataBaseTable/GetTableFiledListJson",
  405. data: { dataBaseLinkId: data.FrmDbId, tableName: data.FrmTable },
  406. type: "GET",
  407. dataType: "json",
  408. async: false,
  409. success: function (data) {
  410. _frmdatabase = [];
  411. for (var id in data) {
  412. item = data[id];
  413. if (item.column != frmData.FrmTableId)
  414. {
  415. item.remark = item.column + "【" + item.remark + "】";
  416. _frmdatabase.push(item);
  417. }
  418. }
  419. frmapp = $('#frmdesign').frmDesign({
  420. Height: 480,
  421. tablefiledJsonData: _frmdatabase,
  422. isSystemTable: frmData.isSystemTable,
  423. frmContent: frmData.FrmContent
  424. });
  425. },
  426. error: function (XMLHttpRequest, textStatus, errorThrown) {
  427. dialogMsg(errorThrown, -1);
  428. }
  429. });
  430. }
  431. }
  432. function bindingFrm() {
  433. if (frmData.FrmName == undefined)
  434. {
  435. return false;
  436. }
  437. return true;
  438. }
  439. /*=========表单选择(end)====================================================================*/
  440. /*=========流程设计(begin)==================================================================*/
  441. var FlowDesignPanel;
  442. var FlowDesignObject;//
  443. var LineId;
  444. var nodePramData = [];
  445. function initFlowInfo()
  446. {
  447. FlowDesignPanel = $('#FlowPanel').flowdesign({
  448. height: ($(window).height() - 87),
  449. widht: 1000,
  450. OpenNode: function (object) {
  451. FlowDesignObject = object;
  452. if (object.$nodeData[object.$focus].type == 'startround')
  453. {
  454. return false;
  455. }
  456. dialogOpen({
  457. id: "FlowLineForm",
  458. title: '节点设置【' + object.$nodeData[object.$focus].name + '】',
  459. url: '/FlowManage/FlowDesign/FlowNodeForm',
  460. width: "750px",
  461. height: "430px",
  462. callBack: function (iframeId) {
  463. top.frames[iframeId].AcceptClick();
  464. }
  465. });
  466. },
  467. OpenLine: function (id, object) {
  468. FlowDesignObject = object;
  469. LineId = id;
  470. var _line = object.$lineData[id];
  471. var _fromNode = object.$nodeData[_line.from];
  472. if (_fromNode.type == "shuntnode")
  473. {
  474. dialogTop("前一个节点是分流节点无法设置流转条件", "error");
  475. return false;
  476. }
  477. dialogOpen({
  478. id: "FlowNodeForm",
  479. title: '流转条件设置',
  480. url: '/FlowManage/FlowDesign/FlowLineForm',
  481. width: "750px",
  482. height: "430px",
  483. callBack: function (iframeId) {
  484. top.frames[iframeId].AcceptClick();
  485. }
  486. });
  487. }
  488. });
  489. }
  490. function setFlowInfo(data)
  491. {
  492. FlowDesignPanel.loadData(data);
  493. }
  494. function callBackNode(id, data, _nodePramData)
  495. {
  496. nodePramData = _nodePramData;
  497. FlowDesignPanel.SetNodeEx(id, data);
  498. }
  499. function callBackLine(id, data)
  500. {
  501. FlowDesignPanel.SetLineEx(id, data);
  502. }
  503. function bindingFlow()
  504. {
  505. var _content = FlowDesignPanel.exportDataEx();
  506. if (_content == -1)
  507. {
  508. return false;
  509. }
  510. flowData["SchemeContent"] = JSON.stringify({ "Frm": frmData, "Flow": _content });
  511. return true;
  512. }
  513. /*=========流程设计(end)====================================================================*/
  514. /*=========创建完成(begin)==================================================================*/
  515. function finishbtn() {
  516. postData["EnabledMark"] = 1;
  517. $.SaveForm({
  518. url: "../../FlowManage/FlowDesign/SaveForm?keyValue=" + keyValue,
  519. param: { "InfoEntity": JSON.stringify(postData), "ContentEntity": JSON.stringify(flowData), "shcemeAuthorizeData": shcemeAuthorizeData },
  520. loading: "正在保存数据...",
  521. success: function () {
  522. $.currentIframe().$("#gridTable").trigger("reloadGrid");
  523. }
  524. })
  525. }
  526. /*=========创建完成(end)====================================================================*/
  527. </script>
  528. <div class="widget-body">
  529. <div id="wizard" class="wizard" data-target="#wizard-steps">
  530. <ul class="steps">
  531. <li data-target="#step-1" class="active"><span class="step">1</span>基本配置<span class="chevron"></span></li>
  532. <li data-target="#step-2"><span class="step">2</span>权限设置<span class="chevron"></span></li>
  533. <li data-target="#step-3"><span class="step">3</span>表单选择<span class="chevron"></span></li>
  534. <li data-target="#step-4"><span class="step">4</span>流程设计<span class="chevron"></span></li>
  535. <li data-target="#step-5"><span class="step">5</span>创建完成<span class="chevron"></span></li>
  536. </ul>
  537. </div>
  538. <div class="step-content wizard-step-content" id="wizard-steps">
  539. <div class="step-pane wizard-step-pane active" id="step-1">
  540. <div class="alert alert-danger" style="text-align: left; margin-bottom: 10px;">
  541. <i class="fa fa-warning alert-dismissible" style="position: relative; top: 1px; font-size: 15px; padding-right: 5px;"></i>
  542. 请你创建流程信息,用于创建或修改流程!
  543. </div>
  544. <div class="panel panel-default">
  545. <div class="panel-heading">
  546. <h3 class="panel-title">流程基本信息配置</h3>
  547. </div>
  548. <div class="panel-body" >
  549. <table class="form">
  550. <tr>
  551. <td class="formTitle">流程编号<font face="宋体">*</font></td>
  552. <td class="formValue">
  553. <input id="SchemeCode" type="text" class="form-control" placeholder="请输入流程编号" isvalid="yes" checkexpession="NotNull" />
  554. </td>
  555. </tr>
  556. <tr>
  557. <td class="formTitle">流程名称<font face="宋体">*</font></td>
  558. <td class="formValue">
  559. <input id="SchemeName" type="text" class="form-control" placeholder="请输入流程名称" isvalid="yes" checkexpession="NotNull" />
  560. </td>
  561. </tr>
  562. <tr>
  563. <td class="formTitle">流程分类<font face="宋体">*</font></td>
  564. <td class="formValue">
  565. <div id="SchemeType" type="selectTree" class="ui-select" isvalid="yes" checkexpession="NotNull"></div>
  566. </td>
  567. </tr>
  568. <tr>
  569. <td class="formTitle">表单类型<font face="宋体">*</font></td>
  570. <td class="formValue">
  571. <div id="FrmType" type="selectTree" class="ui-select" isvalid="yes" checkexpession="NotNull"></div>
  572. </td>
  573. </tr>
  574. <tr>
  575. <th class="formTitle formTitle-top">
  576. 备注
  577. </th>
  578. <td class="formValue">
  579. <textarea id="Description" class="form-control"></textarea>
  580. </td>
  581. </tr>
  582. </table>
  583. </div>
  584. </div>
  585. </div>
  586. <div class="step-pane " id="step-2">
  587. <div class="bottomline">
  588. <div class="rdio rdio-color_a"><input name="AuthorizeType" value="0" id="ShcemeAuthorize0" type="radio" checked /><label for="ShcemeAuthorize0">所有成员</label></div>
  589. <div class="rdio rdio-color_a"><input name="AuthorizeType" value="1" id="ShcemeAuthorize1" type="radio" /><label for="ShcemeAuthorize1">指定成员</label></div>
  590. </div>
  591. <div id="DesignateMember">
  592. <div class="standtabborder">
  593. <div class="standtab standtabactived" onclick="$.standTabchange(this, 'Role')">
  594. 角色
  595. </div>
  596. <div class="standtab " onclick="$.standTabchange(this, 'Post')">
  597. 岗位
  598. </div>
  599. <div class="standtab " onclick="$.standTabchange(this, 'UserGroup')">
  600. 用户组
  601. </div>
  602. <div class="standtab " onclick="$.standTabchange(this, 'User')">
  603. 用户
  604. </div>
  605. </div>
  606. <div id="Role" class="standtab-pane"></div>
  607. <div id="Post" style="display: none;" class="standtab-pane"></div>
  608. <div id="UserGroup" style="display: none;" class="standtab-pane"></div>
  609. <div id="User" style="display: none;" class="standtab-pane"></div>
  610. <div id="DesignateMemberlist" style="margin: 0px; border-right: none; border-left: none; border-bottom: none; background-color: #fff; overflow: auto; padding-bottom: 10px;height:528px;">
  611. <div id="RoleDiv" class="SchemeAuthorizePanel">
  612. <div class="flow-portal-panel-title"><i class="fa fa-paw"></i>&nbsp;&nbsp;角色</div>
  613. </div>
  614. <div id="PostDiv" class="SchemeAuthorizePanel">
  615. <div class="flow-portal-panel-title"><i class="fa fa-graduation-cap"></i>&nbsp;&nbsp;岗位</div>
  616. </div>
  617. <div id="UserGroupDiv" class="SchemeAuthorizePanel">
  618. <div class="flow-portal-panel-title"><i class="fa fa-group"></i>&nbsp;&nbsp;用户组</div>
  619. </div>
  620. <div id="UserDiv" class="SchemeAuthorizePanel">
  621. <div class="flow-portal-panel-title"><i class="fa fa-user"></i>&nbsp;&nbsp;用户</div>
  622. </div>
  623. </div>
  624. <div id="Treebackground" style="position: fixed; top: 91px; left: 0px; z-index: 2; width: 1100px; height: 528px; background: #000; filter: alpha(opacity=10); opacity: 0.1;"></div>
  625. </div>
  626. </div>
  627. <div class="step-pane" id="step-3">
  628. <div>
  629. <div id="FormFrmTree" class="border-right" style="width: 190px; float: left;"></div>
  630. <div style="width: 890px;float:right;margin-right:10px;">
  631. <div class="alert alert-danger" style="text-align: left;margin-top:10px;margin-bottom:10px;">
  632. <i class="fa fa-question-circle alert-dismissible" style="position: relative; top: 1px; font-size: 15px; padding-right: 5px;"></i>
  633. 注:1、请在左侧选择需要绑定表单。2、可编辑表单(此编辑只作用与当前流程)。
  634. </div>
  635. <div class="tab-content editview border" style="overflow-y:auto;overflow-x:hidden;">
  636. <div class="editviewtitle" id="editfrm">
  637. 编辑表单
  638. </div>
  639. <div style="width:870px;display:none;" id="frmdesign"></div>
  640. <div class="app_layout app_preview" id="frmpreview" style="display:none;"></div>
  641. <div id="frmDefaulting" style="width:300px;margin:140px auto 0px;text-align:center;font-size:100px;color:#0FA74F"><i class="fa fa-table"></i><div style="font-weight: bold; font-size: 24px; color: #0FA74F;margin-top: 0px;">表单预览</div></div>
  642. </div>
  643. </div>
  644. </div>
  645. </div>
  646. <div class="step-pane" id="step-4">
  647. <div id="FlowPanel" style="margin: 0px;">
  648. </div>
  649. </div>
  650. <div class="step-pane" id="step-5">
  651. <div class="drag-tip">
  652. <i class="fa fa-check-circle"></i>
  653. <p >设计完成,请点击保存</p>
  654. </div>
  655. </div>
  656. <div id="sysbackground" class="drag-tip" style="position: absolute; top:47px; left: 0px; z-index: 10000; width: 1100px; height: 572px; background: #fff;text-align: center; padding-top: 100px;display:none; ">
  657. <i class="fa fa-warning" style="color: #F0AD4E;"></i>
  658. <p>系统表单流程,无这一步</p>
  659. </div>
  660. </div>
  661. <div class="form-button" id="wizard-actions">
  662. <a id="btn_last" disabled class="btn btn-default btn-prev">上一步</a>
  663. <a id="btn_next" class="btn btn-default btn-next">下一步</a>
  664. <a id="btn_caogao" class="btn btn-info">保存草稿</a>
  665. <a id="btn_finish" disabled class="btn btn-success" onclick="finishbtn();">保存</a>
  666. </div>
  667. </div>
  668. <style>
  669. .editviewtitle {
  670. position: fixed !important;
  671. top: 117px;
  672. right: 11px;
  673. width: 50px;
  674. z-index: 1000;
  675. }
  676. .standtab-pane {
  677. width:224px;
  678. border-right:1px solid #ccc;
  679. float:left;
  680. }
  681. .SchemeAuthorizePanel {
  682. width:828px;
  683. float: left;
  684. display:none;
  685. }
  686. .card-box.active {
  687. background: url(../../Content/Images/item_close.png) right top no-repeat !important;
  688. }
  689. </style>