formeditZW.html 52 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635
  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" ng-app="app">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <meta name="viewport"
  6. content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  7. <title>审批件</title>
  8. <link href="../../../AFrontEnd/css/animate.css" rel="stylesheet" />
  9. <link href="../../../AFrontEnd/css/fontawesome/css/font-awesome.css" rel="stylesheet" />
  10. <link href="../../../AFrontEnd/css/bootstrap.css" rel="stylesheet" />
  11. <link href="../../../AFrontEnd/css/style.css" rel="stylesheet" />
  12. <script>document.write("<link href='../../../AFrontEnd/css/special.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  13. <script>document.write("<link href='../../flowchart_app_imgcss/css/formedit.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  14. <script>document.write("<link href='../../flowchart_app_imgcss/css/formeditZW.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  15. <script>document.write("<link href='../../flowchart_app_imgcss/css/canvasQianzi.css?time=" + new Date().getTime() + "' rel='stylesheet'>");</script>
  16. </head>
  17. <body>
  18. <div ng-controller="formeditCtrl as ctl" id="app" ng-cloak>
  19. <div class="wrapper wrapper-content">
  20. <div class="row">
  21. <div class="col-md-12">
  22. <div class="ibox float-e-margins">
  23. <div class="ibox-content">
  24. <div class="row">
  25. <div class="col-md-12">
  26. <div class="sp-page mousemove"
  27. style="position:fixed;z-index:6;background:#c6c6c6;opacity:0.5;display:none">
  28. </div>
  29. <div class="sp-box"
  30. style="background: #0000FF; padding-right: 10px; line-height: 30px">
  31. <div class="sp-page sp-color-white" style="width: 200px; margin: 7px 0; text-indent: 10px" ng-bind="ctl.flowTitle"></div>
  32. <div class="sp-page-col sp-pull-right sp-ml-30">
  33. <button style="padding:4px 10px;" class="sp-md sp-radius"
  34. ng-class="{'sp-btn-gray':item.CODE.indexOf('SENDITEM')==-1,'sp-btn-blue':item.CODE.indexOf('SENDITEM')!=-1}"
  35. ng-repeat="item in ctl.buttonList" ng-click="ctl.btnEvent(item)" ng-if="ctl.dotype==1||(ctl.dotype!=1&&item.EXPLAIN=='1')">
  36. <img ng-if="item.CODE.indexOf('SAVEITEM')!=-1"
  37. src="../../flowchart_app_imgcss/img/bc.png" height="14" />
  38. <img ng-if="item.CODE.indexOf('PRINTITEM')!=-1"
  39. src="../../flowchart_app_imgcss/img/dy.png" height="14" />
  40. <img ng-if="item.CODE.indexOf('SENDITEM')!=-1"
  41. src="../../flowchart_app_imgcss/img/zfw.png" height="14" />
  42. <img ng-if="item.CODE.indexOf('SENDLOG')!=-1"
  43. src="../../flowchart_app_imgcss/img/lz.png" height="14" />
  44. {{item.CNAME}}
  45. </button>
  46. <button style="padding:4px 10px;"
  47. class="sp-btn-gray sp-md sp-radius sp-mt-5"
  48. onclick="javascript: window.close(); localStorage.setItem('GlWorkPlatform-fawenbg-refresh', 1)">
  49. <img src="../../flowchart_app_imgcss/img/fh.png" height="14" />
  50. 关闭
  51. </button>
  52. </div>
  53. <div class="sp-wrapper-head-col sp-mr-20">
  54. <span class="sp-wrapper-head-col-span" style="padding: 0; border: 1px solid #eee; border-radius: 5px; display: inline-block; line-height: 30px; height: 30px; margin-top: 5px;">
  55. <i class="icon-map-1 sp-pl-5 pointer" ng-click="ctl.onePic()"></i>
  56. <input type="text" class="sp-wrapper-head-search" style="border:0"
  57. placeholder="地图搜索" ng-model="ctl.headBtnSearchKeyword"
  58. ng-change="ctl.headBtnSearch()" />
  59. </span>
  60. <div class="sp-wrapper-head-sub-2 sp-text-center" style="width:175px;"
  61. ng-if="ctl.headSearchResult_view">
  62. <div class="sp-lh-26-wrap" ng-repeat="item in ctl.headSearchResult"
  63. ng-click="ctl.headKeywordPage(item)">
  64. <a ng-bind="item.name"
  65. title="{{item.name}}"></a>
  66. </div>
  67. </div>
  68. </div>
  69. <div class="sp-wrapper-head-col"
  70. onclick="$('#attachlist')[0].contentWindow.openTool('../../flfg/bzgf.html', '标准规范');">
  71. <span class="sp-wrapper-head-col-span">
  72. <i class="icon-book"></i>标准规范
  73. </span>
  74. </div>
  75. <div class="sp-wrapper-head-col"
  76. onclick="$('#attachlist')[0].contentWindow.openTool('../../flfg/flgf.html', '法律法规');">
  77. <span class="sp-wrapper-head-col-span">
  78. <i class="fa fa-legal"></i>法律法规
  79. </span>
  80. </div>
  81. <div class="sp-wrapper-head-col"
  82. onclick="$('#attachlist')[0].contentWindow.openTool('../../flfg/dnfg.html', '党内规范');">
  83. <span class="sp-wrapper-head-col-span">
  84. <i class="icon-newspaper-1"></i>党内规范
  85. </span>
  86. </div>
  87. <div class="sp-wrapper-head-col"
  88. onclick="$('#attachlist')[0].contentWindow.openTool('../../fontOA/list.html', '公文查询');">
  89. <span class="sp-wrapper-head-col-span">
  90. <i class="icon-chart-alt-outline"></i>公文查询
  91. </span>
  92. </div>
  93. </div>
  94. <div class="page-item leftBox" style="width: 70%; overflow: visible">
  95. <div id="topDiv" class="sp-box" style="width:100%;height:100%;background:#0099FF;padding:0px;margin:0px;border:0px solid yellow">
  96. <input id="fileupload-zw" class="upload-file-single" style="width:0px;left: -10px" type="file" name="files[]" multiple>
  97. <div class="sp-page-col ZW">
  98. 正文:
  99. <div class="sp-box" ng-if="ctl.dotype!=0&&ctl.routeinfoid!=0">
  100. <div class="sp-col-100 pointer" ng-click="ctl.newMoBan1()">空白模板</div>
  101. <div class="sp-col-100 pointer" ng-click="ctl.newMoBan2()">套红模板</div>
  102. <div class="sp-col-100 pointer" ng-click="ctl.upload_zw()">本地文件</div>
  103. </div>
  104. </div>
  105. <div class="sp-page-col" ng-if="ctl.gaoTypeArrayFirst[0]" style="width: calc(100% - 80px); height: 30px; line-height: 30px; color: #fff; display: inline-block; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
  106. <span ng-bind="ctl.gaoTypeArrayFirst[0].FILENAMES" title="{{ctl.gaoTypeArrayFirst[0].FILENAMES}}"></span>
  107. </div>
  108. <div class="sp-page sp-bg-white" style="height:100%;padding:0px; margin:0px;border:0px solid black;">
  109. <iframe id="iframe_book" style="width:100%;height:600px;background-color:white;padding:0px; margin:0px; border:0px solid red" frameborder="0" class="iframe" scrolling="no"></iframe>
  110. </div>
  111. </div>
  112. <div id="bottomDiv" class="sp-box" style="width: 100%; background: #0099FF; color: #fff;padding:0px;margin:0px; border:0px solid green">
  113. <div class="sp-page" style="width: 100%; vertical-align: middle; padding: 2px; margin: 2px; " ng-init="ctl.goAttach()">
  114. <span id="lineDiv" class="upload sp-color-white" style="top: 0; height: 36px; padding-left: 10px; padding-top: 5px; font-size: 16px; cursor: ns-resize; " ng-init="ctl.reSizeRow()">
  115. <i class="fa fa-arrows-v fa-lg"></i>
  116. </span>
  117. <span class="upload sp-color-white" style="top: 4px; height: 36px; padding-left: 10px; font-size: 16px;">&nbsp;附件({{ctl.arrayFile1.length}}):</span>
  118. <span style="display:inline" class="sp-btn-gray-outline sp-btn-sm upload" ng-if="ctl.dotype!=0&&ctl.routeinfoid!=0">
  119. <span class="upload-tip"></span>
  120. <input id="fileupload" class="upload-file-single" ng-click="ctl.upload()" type="file" name="files[]" multiple>
  121. <i class="fa fa-plus sp-color-white"></i>
  122. <span class="upload-loading" ng-if="ctl.uploading"><i class="fa fa-spinner fa-pulse sp-fs-20"></i></span>
  123. </span>
  124. <div ng-repeat="item in ctl.arrayFile1" ng-if="$index<3" style="width: calc((100% - 250px)/ 3); vertical-align: middle; display: inline-block; color: #fff; cursor: pointer; margin-left: 10px; padding-top: 5px; ">
  125. <span ng-bind="item.FILENAMES" title="{{item.FILENAMES}}" style="display: inline-block; max-width: calc(100% - 40px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;" ng-click="ctl.goAttach(item)"></span>
  126. <a class="sp-pull-right sp-ml-10" ng-click="ctl.deleteFile(item)" title="删除" ng-if="ctl.dotype!=0">
  127. <img src="../../flowchart_app_imgcss/img/attachlist/delete.png" title="删除" />
  128. </a>
  129. <a class="sp-pull-right" ng-click="ctl.downLoad(item)" title="下载">
  130. <img src="../../flowchart_app_imgcss/img/attachlist/download.png" title="下载" />
  131. </a>
  132. </div>
  133. <span id="toggleButton" style="width: 20px; height: 20px; display: inline; float: right; margin-right: 15px; margin-top: 5px; cursor: pointer; " ng-if="ctl.arrayFile1.length>3" onclick="showToggle(this)">
  134. <i class="fa fa-chevron-up" style="position: relative; display: none"></i>
  135. <i class="fa fa-chevron-down" style="position: relative;"></i>
  136. </span>
  137. <div id="selectDiv" class="sp-page" style="width: 50%; display: none; top: 0px; right: 0; position: absolute; padding: 5px 10px; background: #0099FF; border: 1px solid #0099FF; z-index: 2">
  138. <div ng-repeat="item in ctl.arrayFile1" ng-if="$index>2" style="padding: 5px 0; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
  139. <span ng-bind="item.FILENAMES" title="{{item.FILENAMES}}" ng-click="ctl.goAttach(item)"></span>
  140. <a ng-click="ctl.downLoad(item)" title="下载">
  141. <img src="../../flowchart_app_imgcss/img/attachlist/download.png" title="下载" />
  142. </a>
  143. <a ng-click="ctl.deleteFile(item)" title="删除" ng-if="ctl.dotype!=0">
  144. <img src="../../flowchart_app_imgcss/img/attachlist/delete.png" title="删除" />
  145. </a>
  146. </div>
  147. </div>
  148. </div>
  149. <div class="sp-page sp-bg-white" style="width: 100%; height: calc(100% - 40px); padding: 0px; margin: 0px; border: 0px solid black;">
  150. <iframe id="attachlist" src="" style="width:100%;height:200px;padding:0px;margin:0px;border:0px solid red;" frameborder="0" scrolling="no"></iframe>
  151. </div>
  152. </div>
  153. <div class="sp-page-col" style="width: 10px; height: 46px; background: #d0d0d0; position: absolute;right: -10px; top: 0px; z-index: 5; padding: 0px; cursor: pointer; border:0px solid yellow" onclick="showRight(this)">
  154. <i class="fa fa-angle-left fa-2x" style="position: absolute; top: 50%; transform: translateY(-50%); display: none"></i>
  155. <i class="fa fa-angle-right fa-2x" style="position: absolute; top: 50%; transform: translateY(-50%)"></i>
  156. </div>
  157. </div>
  158. <div class="page-item rightBox" style="width: 30%; padding-left: 20px;">
  159. <div id="bodyDiv" class="iframe-border-right" style="border:0px solid blue; z-index:3" ng-init="ctl.reSize(1)"></div>
  160. <div class="sp-page formedit">
  161. <div class="sp-page sp-mt-10">
  162. <div class="sp-page-col pointer" onclick="toggleForm(this)">
  163. <i class="fa fa-angle-down fa-lg"></i>
  164. <i class="fa fa-angle-right fa-lg" style="display: none"></i>
  165. 发文简表
  166. </div>
  167. <div class="sp-line-gray"></div>
  168. </div>
  169. <div class="form-item" ng-if="!ctl.hide('show','BT')">
  170. <div class="sp-col-30" style="line-height:32px;" title="公文标题">公文标题:</div>
  171. <div class="sp-col-70">
  172. <input type="text" class="sp-input" ng-model="ctl.data.BT" ng-disabled="ctl.hide('readonly','BT')" sp-required ng-change="ctl.changeFiled('BT')" title="{{ctl.data.BT}}" />
  173. </div>
  174. </div>
  175. <div class="form-item" ng-if="!ctl.hide('show','FWZH')">
  176. <div class="sp-col-30" style="line-height:32px;" title="发文号">发文号:</div>
  177. <div class="sp-col-70">
  178. <input type="text" class="sp-input" ng-model="ctl.data.FWZH" ng-disabled="ctl.hide('readonly','FWZH')" ng-change="ctl.changeFiled('FWZH')" />
  179. </div>
  180. </div>
  181. <div class="form-item" ng-if="!ctl.hide('show','GWZL')">
  182. <div class="sp-col-30" style="line-height:32px;" title="公文种类">公文种类:</div>
  183. <div class="sp-col-70">
  184. <select class="sp-select" ng-model="ctl.data.GWZL" ng-disabled="ctl.hide('readonly','GWZL')" ng-change="ctl.changeFiled('GWZL')">
  185. <option ng-repeat="item in ctl.GWZL" value="{{item.CODE}}" ng-bind="item.CNAME"></option>
  186. </select>
  187. </div>
  188. </div>
  189. <div class="sp-page toggleForm">
  190. <div class="form-item" ng-if="!ctl.hide('show','JJCD')">
  191. <div class="sp-col-30" style="line-height:32px;" title="紧急程度">紧急程度:</div>
  192. <div class="sp-col-70">
  193. <select class="sp-select" ng-model="ctl.data.JJCD" ng-disabled="ctl.hide('readonly','JJCD')" sp-required ng-change="ctl.changeFiled('JJCD')">
  194. <option ng-repeat="item in ctl.JJCD" value="{{item.CODE}}" ng-bind="item.CNAME"></option>
  195. </select>
  196. </div>
  197. </div>
  198. <div class="form-item" ng-if="!ctl.hide('show','XXGKSH')">
  199. <div class="sp-col-30" style="line-height:32px;" title="信息公开审核">信息公开审核:</div>
  200. <div class="sp-col-70">
  201. <select class="sp-select" ng-model="ctl.data.XXGKSH" ng-disabled="ctl.hide('readonly','XXGKSH')" sp-required ng-change="ctl.changeFiled('XXGKSH')">
  202. <option ng-repeat="item in ctl.XXGKSH" value="{{item.CODE}}" ng-bind="item.CNAME"></option>
  203. </select>
  204. </div>
  205. </div>
  206. <div class="form-item" ng-if="!ctl.hide('show','SFXYJD')">
  207. <div class="sp-col-30" style="line-height:32px;" title="是否需要解读">是否需要解读:</div>
  208. <div class="sp-col-70">
  209. <select class="sp-select" ng-model="ctl.data.SFXYJD" ng-disabled="ctl.hide('readonly','SFXYJD')" ng-change="ctl.changeFiled('SFXYJD')">
  210. <option ng-repeat="item in ctl.SFXYJD" value="{{item.CODE}}" ng-bind="item.CNAME"></option>
  211. </select>
  212. </div>
  213. </div>
  214. <div class="form-item" ng-if="!ctl.hide('show','BGSFHYJ')">
  215. <div class="sp-col-30" style="line-height:32px;" title="办公室复核意见">办公室<br />复核意见:</div>
  216. <div class="sp-col-70">
  217. <select class="sp-select" ng-model="ctl.data.BGSFHYJ" ng-disabled="ctl.hide('readonly','BGSFHYJ')" ng-change="ctl.changeFiled('BGSFHYJ')">
  218. <option ng-repeat="item in ctl.BGSFHYJ" value="{{item.CODE}}" ng-bind="item.CNAME"></option>
  219. </select>
  220. </div>
  221. </div>
  222. <div class="form-item" ng-if="!ctl.hide('show','YF')">
  223. <div class="sp-col-30" style="line-height:32px;" title="印份">印&nbsp;&nbsp;份:</div>
  224. <div class="sp-col-70">
  225. <input type="text" class="sp-input" ng-model="ctl.data.YF" ng-disabled="ctl.hide('readonly','YF')" sp-required ng-change="ctl.changeFiled('YF')" />
  226. </div>
  227. </div>
  228. <div class="form-item" ng-if="!ctl.hide('show','ZS')">
  229. <div class="sp-col-30" style="line-height:32px;" title="主送">主&nbsp;&nbsp;送:</div>
  230. <div class="sp-col-70">
  231. <!--<input type="text" class="sp-input sp-pull-left" ng-model="ctl.data.ZS" readonly sp-required ng-click="ctl.openDpList('ZS')" />-->
  232. <input type="text" class="sp-input" ng-model="ctl.data.ZS" ng-disabled="ctl.hide('readonly','ZS')" sp-required ng-change="ctl.changeFiled('ZS')" />
  233. </div>
  234. </div>
  235. <div class="form-item" ng-if="!ctl.hide('show','CS')">
  236. <div class="sp-col-30" style="line-height:32px;" title="抄送">抄&nbsp;&nbsp;送:</div>
  237. <div class="sp-col-70">
  238. <!--<input type="text" class="sp-input sp-pull-left" ng-model="ctl.data.CS" readonly ng-click="ctl.openDpList('CS')" />-->
  239. <input type="text" class="sp-input" ng-model="ctl.data.CS" ng-disabled="ctl.hide('readonly','CS')" ng-change="ctl.changeFiled('CS')" />
  240. </div>
  241. </div>
  242. <div class="form-item" ng-if="!ctl.hide('show','NGR')">
  243. <div class="sp-col-30" style="line-height:32px;" title="拟稿人">拟稿人:</div>
  244. <div class="sp-col-70">
  245. <input type="text" class="sp-input" ng-model="ctl.data.NGR" readonly />
  246. </div>
  247. </div>
  248. <div class="form-item" ng-if="!ctl.hide('show','NGSJ')">
  249. <div class="sp-col-30" style="line-height:32px;" title="拟稿日期">拟稿日期:</div>
  250. <div class="sp-col-70">
  251. <input type="text" class="sp-input laydate-logo" sp-laydate ng-model="ctl.data.NGSJ" ng-disabled="ctl.hide('readonly','NGSJ')" ng-change="ctl.changeFiled('NGSJ')" />
  252. </div>
  253. </div>
  254. </div>
  255. <div class="sp-page sp-mt-10">
  256. 公文标签
  257. <div class="sp-line-gray"></div>
  258. </div>
  259. <div class="form-item" ng-if="!ctl.hide('show','USAGE')">
  260. <div class="sp-checkbox-blue">
  261. <label ng-repeat="item in ctl.USAGE" ng-if="item.USAGE=='1'||(item.USAGE=='0'&&ctl.data.USAGE.indexOf(item.CODE)>=0)" sp-checkbox-blue-item>
  262. <input type="checkbox" name="USAGE" ng-checked="item.checked" ng-disabled="ctl.hide('readonly','USAGE')||item.USAGE=='0'"
  263. value="{{item.CODE}}" ng-click="ctl.selectUSAGE(item)" />
  264. {{item.CNAME}}
  265. </label>
  266. <!--<span class="sp-btn-blue sp-radius" ng-if="!ctl.hide('readonly','USAGE')" ng-click="ctl.ManageUSAGE(0)">管理标签</span>-->
  267. </div>
  268. </div>
  269. <div class="qianzi" ng-repeat="item in ctl.YJ.nulla">
  270. <div class="sp-col-100">
  271. <div class="sp-page" style="padding:10px 5px;border:1px solid #999;">
  272. <div class="sp-page">
  273. <p class="sp-page sp-text-left" ng-bind-html="item.OPINION | trustHtml"></p>
  274. <div class="sp-page">
  275. <div class="sp-page">
  276. <div ng-repeat="item in item.FILEDATA" style="width: 135px; display: inline-block; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: relative; top: 5px; margin-left: 10px">
  277. <a ng-click="ctl.downLoadOption(item)" title="下载">
  278. <i class="fa fa-download sp-color-red"></i>
  279. </a>
  280. <a ng-click="ctl.deleteOptionFile(item)" title="删除" ng-if="item.ROUTEID==ctl.routeid">
  281. <i class="fa fa-trash sp-color-red"></i>
  282. </a>
  283. <span ng-bind="item.FILENAME" title="{{item.FILENAME}}"></span>
  284. </div>
  285. <div style="display: inline-block; position: relative; margin-left: 10px; line-height: 40px;" ng-if="item.ROUTEID==ctl.routeid&&ctl.opinion.nulla==false&&ctl.dotype==1">
  286. <span class="opbtn" style="position: relative; color: #1c84c6">
  287. <span class="upload-tip"></span>
  288. <input id="fileupload2" class="upload-file-single" ng-click="ctl.upload2(item.COLID)" type="file" name="files[]" multiple>
  289. <i class="fa fa-upload"></i>
  290. <span class="upload-loading" ng-if="ctl.uploading1"><i class="fa fa-spinner fa-pulse sp-fs-20"></i></span>
  291. </span>
  292. </div>
  293. </div>
  294. <div class="sp-page sp-text-right sp-pull-right">
  295. <span ng-bind="item.CMANNAME"></span>
  296. <span ng-bind="item.CDATE"></span>
  297. </div>
  298. </div>
  299. </div>
  300. <div class="sp-page sp-text-right">
  301. <span class="opbtn" style="color: #FF6F6F; width: 55px; "
  302. ng-click="ctl.Dopinion(item)" ng-if="item.ROUTEID==ctl.routeid&&ctl.opinion.nulla==false&&ctl.dotype==1">
  303. <i class="fa fa-trash-o fa-lg"></i>
  304. </span>
  305. <span class="opbtn" style="color: #66D151; width: 55px; "
  306. ng-click="ctl.changeOptionList(item)" ng-if="item.ROUTEID==ctl.routeid&&ctl.opinion.nulla==false&&ctl.dotype==1">
  307. <i class="fa fa-pencil fa-lg"></i>
  308. </span>
  309. </div>
  310. </div>
  311. </div>
  312. </div>
  313. </div>
  314. <div class="sp-page sp-pt-10" style="width: calc(100% - 20px); max-width: 1100px; height: 10px; background: #F0F9FF; box-shadow: 0 -2px 5px #c3c3c3; position: absolute; bottom: 0;right:2px; z-index: 11">
  315. <div class="sp-page-col toggle" style="width: 50px; height: 17px; font-size: 14px; text-align: center; background: #E0E0E0; cursor: pointer; color: #333; position: absolute; right: 0; top: -17px; border-radius: 10px 10px 0 0; " onclick="toggleYJL(this)">
  316. <i class="fa fa-angle-double-up fa-lg"></i>
  317. <i class="fa fa-angle-double-down fa-lg" style="display: none"></i>
  318. </div>
  319. <div class="sp-page-center" style="height: 100%; line-height: 30px; background: #fff; overflow: hidden; ">
  320. <div class="sp-page-col sp-ml-10" ng-if="ctl.opinionList1.length>1">
  321. 类型:<select class="sp-select sp-pull-right" style="width:100px" ng-model="ctl.opiniontype">
  322. <option value="{{item.col}}" ng-repeat="item in ctl.opinionList1" ng-if="item.show==true" ng-bind="item.name"></option>
  323. </select>
  324. </div>
  325. <div class="sp-page" ng-if="ctl.opinion.nulla==true">
  326. <textarea id="nulla" ng-model="ctl.nulla" class="op-textarea sp-mb-5 sp-mt-5"></textarea>
  327. <div class="sp-page sp-pb-5" style="border-bottom:1px solid #999">
  328. <span class="sp-btn-gray sp-btn-sm sp-btn-radius sp-pull-right" ng-click="ctl.closeOptionList()">取消</span>
  329. <span class="sp-btn-gray sp-btn-sm sp-btn-radius sp-pull-right" ng-click="ctl.submitOptionList()">保存</span>
  330. <span class="sp-btn-gray sp-btn-sm sp-btn-radius sp-pull-right" ng-click="ctl.phrase()">常用语</span>
  331. </div>
  332. </div>
  333. <div class="sp-page" ng-if="ctl.activeOpinion!=null">
  334. <div style="display: inline-block; float: left; position: relative; margin-left: 10px; line-height: 40px;">
  335. <span class="opbtn" style="position: relative; color: #1c84c6">
  336. <span class="upload-tip"></span>
  337. <input id="fileupload1" class="upload-file-single" ng-click="ctl.upload1()" type="file" name="files[]" multiple>
  338. <i class="fa fa-upload"></i>
  339. <span class="upload-loading" ng-if="ctl.uploading1"><i class="fa fa-spinner fa-pulse sp-fs-20"></i></span>
  340. </span>
  341. </div>
  342. <div ng-repeat="item in ctl.activeOpinion.FILEDATA" style="width: 135px; display: inline-block; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: relative; top: 5px; margin-left: 10px">
  343. <a ng-click="ctl.downLoadOption(item)" title="下载">
  344. <i class="fa fa-download sp-color-red"></i>
  345. </a>
  346. <a ng-click="ctl.deleteOptionFile(item)" title="删除" ng-if="item.ROUTEID==ctl.routeid">
  347. <i class="fa fa-trash sp-color-red"></i>
  348. </a>
  349. <span ng-bind="item.FILENAME" title="{{item.FILENAME}}"></span>
  350. </div>
  351. <div style="display: inline-block; float: right; position: relative; margin-right: 10px; line-height: 40px;">
  352. <span class="opbtn" style="color: #FF6F6F; width: 55px; "
  353. ng-click="ctl.Dopinion(ctl.activeOpinion)">
  354. <i class="fa fa-trash-o fa-lg"></i>
  355. </span>
  356. </div>
  357. </div>
  358. </div>
  359. </div>
  360. </div>
  361. </div>
  362. </div>
  363. </div>
  364. </div>
  365. </div>
  366. </div>
  367. </div>
  368. <div class="sp-layer" id="DpList" style="width: 900px;">
  369. <div class="sp-layer-head" style="background:#2176d6">
  370. <div class="sp-page sp-text-center sp-font16">
  371. 部门列表
  372. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  373. ×
  374. </div>
  375. </div>
  376. </div>
  377. <div class="sp-layer-body" ng-class="{'sp-height-400': '{{ctl.deviceType}}' =='pad'}">
  378. <div class="sp-page" style="height:290px;overflow:auto">
  379. <label class="sp-col-20">
  380. <input type="checkbox" style="position:relative;top:2px" ng-checked="ctl.AllCheckedDp[ctl.filed]"
  381. ng-click="ctl.checkAllDp()" />
  382. 全选
  383. </label>
  384. <div class="sp-page">
  385. <label class="sp-col-25" title="{{item.CNAME}}" ng-repeat="item in ctl.DpList[ctl.filed]">
  386. <input type="checkbox" style="position:relative;top:2px" ng-checked="item.checked"
  387. ng-click="ctl.checkDpItem(item)" />
  388. {{item.CNAME}}
  389. </label>
  390. </div>
  391. </div>
  392. <div class="sp-page sp-text-center sp-pt-10">
  393. <a class="sp-btn-blue sp-radius" ng-click="ctl.submitDpList(0)"><i class="fa fa-check sp-mr-5"></i>确 定</a>
  394. <a class="sp-btn-blue sp-radius" onclick="sp.layerhide()"><i class="fa fa-close sp-mr-5"></i>取 消</a>
  395. </div>
  396. </div>
  397. </div>
  398. <div class="sp-layer" id="print" style="width: 400px;">
  399. <div class="sp-layer-head" style="background:#2176d6">
  400. <div class="sp-page sp-text-center sp-font16">
  401. 打印
  402. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  403. ×
  404. </div>
  405. </div>
  406. </div>
  407. <div class="sp-layer-body" ng-class="{'sp-height-400': '{{ctl.deviceType}}' =='pad'}">
  408. <center class="sp-col-33" style="cursor:pointer" ng-class="{'activePirnt':ctl.printFiled==1}"
  409. ng-click="ctl.printFiled=1">
  410. <div class="printItem">表单</div>
  411. </center>
  412. <center class="sp-col-33" style="cursor:pointer" ng-class="{'activePirnt':ctl.printFiled==2}"
  413. ng-click="ctl.printFiled=2">
  414. <div class="printItem">意见</div>
  415. </center>
  416. <center class="sp-col-33" style="cursor:pointer" ng-class="{'activePirnt':ctl.printFiled==3}"
  417. ng-click="ctl.printFiled=3">
  418. <div class="printItem">表单+意见</div>
  419. </center>
  420. <div class="sp-page sp-text-center sp-pt-10">
  421. <a class="sp-btn-blue sp-radius" ng-click="ctl.printSubmit()"><i class="fa fa-check sp-mr-5"></i>确 定</a>
  422. <a class="sp-btn-blue sp-radius" onclick="sp.layerhide()"><i class="fa fa-close sp-mr-5"></i>取 消</a>
  423. </div>
  424. </div>
  425. </div>
  426. <div class="sp-layer" id="forward" style="width: 1000px;">
  427. <div class="sp-layer-head" style="background:#2176d6">
  428. <div class="sp-page sp-text-center sp-font16">
  429. 转&nbsp;&nbsp;发
  430. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  431. ×
  432. </div>
  433. </div>
  434. </div>
  435. <div class="sp-layer-body" ng-class="{'sp-height-400': '{{ctl.deviceType}}' =='pad'}">
  436. <iframe id="forwardWin" style="width:100%;border:0"></iframe>
  437. </div>
  438. </div>
  439. <div class="sp-layer" id="RouteList" style="width:900px;">
  440. <div class="sp-layer-head" style="background:#2176d6">
  441. <div class="sp-page sp-text-center sp-font16">
  442. 流转记录
  443. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  444. ×
  445. </div>
  446. </div>
  447. </div>
  448. <div class="sp-layer-body" ng-class="{'sp-height-400': '{{ctl.deviceType}}' =='pad'}">
  449. <table class="sp-table">
  450. <thead>
  451. <tr>
  452. <th style="width:100px"><strong>流程名称</strong></th>
  453. <th style="width:200px"><strong>标题</strong></th>
  454. <th style="width:100px"><strong>工作节点</strong></th>
  455. <th style="width:100px"><strong>转发人</strong></th>
  456. <th style="width:100px"><strong>主送</strong></th>
  457. <th style="width:150px"><strong>抄送</strong></th>
  458. <th style="width:200px"><strong>发送日期</strong></th>
  459. </tr>
  460. </thead>
  461. </table>
  462. <div style="overflow-y:scroll;max-height:400px">
  463. <table class="sp-table" style="margin-top: -38px">
  464. <thead>
  465. <tr>
  466. <th style="width:100px"><strong>流程名称</strong></th>
  467. <th style="width:200px"><strong>标题</strong></th>
  468. <th style="width:100px"><strong>工作节点</strong></th>
  469. <th style="width:100px"><strong>转发人</strong></th>
  470. <th style="width:100px"><strong>主送</strong></th>
  471. <th style="width:150px"><strong>抄送</strong></th>
  472. <th style="width:200px"><strong>发送日期</strong></th>
  473. </tr>
  474. </thead>
  475. <tbody>
  476. <tr ng-repeat="item in ctl.routeList">
  477. <td ng-bind="item.FLOWNAME"></td>
  478. <td ng-bind="item.TITLE"></td>
  479. <td ng-bind="item.ENDNODENAME"></td>
  480. <td ng-bind="item.USERNAMEFROM"></td>
  481. <td ng-bind="item.mainUser"></td>
  482. <td ng-bind="item.copyUsers"></td>
  483. <td ng-bind="item.RECEIVEDATE"></td>
  484. </tr>
  485. </tbody>
  486. </table>
  487. </div>
  488. <div class="sp-page sp-text-center sp-pt-10">
  489. <a class="sp-btn-blue sp-radius" onclick="sp.closeCenter('.sp-layer')">
  490. <i class="fa fa-reply-all sp-mr-5">
  491. </i>关 闭
  492. </a>
  493. </div>
  494. </div>
  495. </div>
  496. <div class="sp-layer" id="USAGE" style="width:900px;">
  497. <div class="sp-layer-head" style="background:#2176d6">
  498. <div class="sp-page sp-text-center sp-font16">
  499. 管理标签
  500. <div class="sp-layer-close" title="关闭" onclick="sp.closeCenter('.sp-layer')">
  501. ×
  502. </div>
  503. </div>
  504. </div>
  505. <div class="sp-layer-body">
  506. <div class="input-group col-lg-8">
  507. <input type="text" ng-model="ctl.addUSAGENAME" class="form-control" placeholder="新增标签">
  508. <span class="input-group-btn">
  509. <button ng-click="ctl.addUSAGE()" class="btn btn-success" type="button">增加</button>
  510. </span>
  511. </div>
  512. <br />
  513. <table class="sp-table">
  514. <thead>
  515. <tr>
  516. <th style="width: 50px"><strong>序号</strong></th>
  517. <th style="width: 200px"><strong>标签名称</strong></th>
  518. <th style="width: 100px"><strong>状态</strong></th>
  519. <th style="width: 200px"><strong>操作</strong></th>
  520. </tr>
  521. </thead>
  522. </table>
  523. <div style="overflow-y:scroll;max-height:400px">
  524. <table class="sp-table" style="margin-top: -38px">
  525. <thead>
  526. <tr>
  527. <th style="width: 50px"><strong>序号</strong></th>
  528. <th style="width: 200px"><strong>标签名称</strong></th>
  529. <th style="width: 100px"><strong>状态</strong></th>
  530. <th style="width: 200px"><strong>操作</strong></th>
  531. </tr>
  532. </thead>
  533. <tbody>
  534. <tr ng-repeat="item in ctl.USAGELIST">
  535. <td ng-bind="$index+1"></td>
  536. <td>
  537. <span ng-if="item.change==false" ng-bind="item.CNAME"></span>
  538. <input type="text" ng-if="item.change==true" class="sp-input" ng-model="item.CNAME1" />
  539. </td>
  540. <td>
  541. <button class="sp-btn-blue-outline sp-btn-sm sp-btn-radius" ng-if="item.USAGE=='隐藏'"
  542. ng-click="ctl.updataUSAGE(item,'显示')">
  543. 显&nbsp;示
  544. </button>
  545. <button class="sp-btn-red-outline sp-btn-sm sp-btn-radius" ng-if="item.USAGE=='显示'"
  546. ng-click="ctl.updataUSAGE(item,'隐藏')">
  547. 隐&nbsp;藏
  548. </button>
  549. </td>
  550. <td>
  551. <button class="sp-btn-gray-outline sp-btn-radius sp-btn-sm"
  552. ng-click="ctl.btnSort($index,'上移')" ng-disabled="{{$index}}==0">
  553. 上&nbsp;移
  554. </button>
  555. <button class="sp-btn-gray-outline sp-btn-radius sp-btn-sm"
  556. ng-click="ctl.btnSort($index,'下移')"
  557. ng-disabled="{{$index}}=={{ctl.USAGELIST.length-1}}">
  558. 下&nbsp;移
  559. </button>
  560. <button class="sp-btn-blue-outline sp-btn-sm sp-btn-radius"
  561. ng-disabled="item.USERID!=ctl.userId" ng-if="item.change==false"
  562. ng-click="item.change=true">
  563. 编&nbsp;辑
  564. </button>
  565. <button class="sp-btn-blue-outline sp-btn-sm sp-btn-radius" ng-if="item.change==true"
  566. ng-click="ctl.updataUSAGE(item,'CNAME')">
  567. 保&nbsp;存
  568. </button>
  569. <button class="sp-btn-red-outline sp-btn-sm sp-btn-radius"
  570. ng-disabled="item.USERID!=ctl.userId" ng-click="ctl.deleteUSAGE(item)">
  571. 删&nbsp;除
  572. </button>
  573. </td>
  574. </tr>
  575. </tbody>
  576. </table>
  577. </div>
  578. <div class="sp-page sp-text-center sp-pt-10">
  579. <a class="sp-btn-blue sp-radius" onclick="sp.closeCenter('.sp-layer')">
  580. <i class="fa fa-reply-all sp-mr-5">
  581. </i>关 闭
  582. </a>
  583. </div>
  584. </div>
  585. </div>
  586. </div>
  587. <script type="text/ng-template" id="/treeView.html">
  588. <ul>
  589. <li ng-repeat="item in treeData" ng-include="'/treeItem.html'"></li>
  590. </ul>
  591. </script>
  592. <script type="text/ng-template" id="/treeItem.html">
  593. <p ng-class="{'pActive':item.checked}">
  594. <i ng-click="itemExpended(item, $event);" class="{{getItemIcon(item)}}"></i>
  595. <span style="display: inline-block;height: 18px;line-height: 18px;" ng-click="warpCallback('itemCheck', item, $event);">
  596. {{item[textField]}}
  597. </span>
  598. <span class="edit-menu sp-color-gray">
  599. <i ng-if="item.LEVELS!=3"
  600. ng-click="warpCallback('itemAdd', item, $event);" title="新增分类" class="fa fa-plus"></i>
  601. <i ng-if="item.LEVELS!=1"
  602. ng-click="warpCallback('itemEdit', item, $event);" title="编辑分类" class="fa fa-pencil"></i>
  603. <i ng-if="!item.C_H_I_L_D_DATA || item.C_H_I_L_D_DATA.length<1"
  604. ng-click="warpCallback('itemDelete', item, $event);" title="删除分类" class="fa fa-trash"></i>
  605. <i ng-if="$index!=0"
  606. ng-click="warpCallback('itemUp', item, $index, $event);" title="上移" class="fa fa-arrow-up"></i>
  607. <i ng-if="$index+1!=item.C_H_I_L_D_DATA_L"
  608. ng-click="warpCallback('itemDown', item, $index, $event);" title="下移" class="fa fa-arrow-down"></i>
  609. </span>
  610. </p>
  611. <ul ng-if="!isEnd(item)" ng-show="!item.$$isExpend">
  612. <li ng-repeat="item in item.C_H_I_L_D_DATA" ng-include="'/treeItem.html'"></li>
  613. </ul>
  614. </script>
  615. <script src="../../../AFrontEnd/js/jquery/jquery-2.1.4.min.js"></script>
  616. <script src="../../../AFrontEnd/js/laydate/laydate.js"></script>
  617. <script src="../../../AFrontEnd/js/angularjs/angular.js"></script>
  618. <script src="../../../AFrontEnd/js/angularjs/dirPagination.js"></script>
  619. <script src="../../../apiurljs.js"></script>
  620. <!--<script src="../../js/watermark.js"></script>-->
  621. <script src="../../../js/sm4.js"></script>
  622. <script>document.write('<scri' + 'pt src="../../../AFrontEnd/js/special/special.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  623. <script>document.write('<scri' + 'pt src="js/formeditZW.js?time=' + new Date().getTime() + '" type="text/javascript"></s' + 'cript>')</script>
  624. <script src="../../../AFrontEnd/js/special/spng.js"></script>
  625. <script src="../../../AFrontEnd/js/special/spngvld.js"></script>
  626. <!--附件-->
  627. <script src="../../../AFrontEnd/plugins/js.fileupload/vendor/jquery.ui.widget.js"></script>
  628. <script src="../../../AFrontEnd/plugins/js.fileupload/jquery.iframe-transport.js"></script>
  629. <script src="../../../AFrontEnd/plugins/js.fileupload/jquery.fileupload.js"></script>
  630. </body>
  631. </html>