r-project-section-detail-APP.html 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408
  1. <!DOCTYPE html>
  2. <html lang=zh-cn>
  3. <head>
  4. <meta charset=utf-8>
  5. <title>纵横计量支付系统</title>
  6. <meta name=description content=计量支付>
  7. <meta name=copyright content=smartcost.com.cn>
  8. <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">
  9. <link rel=stylesheet href="{{rootUrl}}global/css/app/bootstrap.css">
  10. <link rel=stylesheet href="{{rootUrl}}global/css/app/style.css?201709181">
  11. <script src="{{rootUrl}}global/js/jquery-1.9.1.min.js"></script>
  12. <script src="{{rootUrl}}global/js/app/bootstrap.js"></script>
  13. <script src="{{rootUrl}}global/js/app/global.js"></script>
  14. <script src="{{rootUrl}}global/js/app/echarts.min.js"></script>
  15. <!-- if {{firstUser}} == 0 -->
  16. <style>
  17. .bottomToolsbar ul li{
  18. float:left;
  19. width:33.333%;
  20. height:5.5rem;
  21. line-height: 5.5rem;
  22. text-align: center;
  23. }
  24. </style>
  25. <!-- endif -->
  26. </head>
  27. <body>
  28. <div class="wrapContent">
  29. <div class="wrapNav">
  30. <ul class="nav nav-tabs" role="tablist">
  31. <li role="presentation" <!-- if !zhisset({{approval}}) -->class="active"<!-- endif -->><a href="#home" aria-controls="home" role="tab" data-toggle="tab">标段概况</a></li>
  32. <li role="presentation" <!-- if zhisset({{approval}}) -->class="active"<!-- endif -->><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">审批</a></li>
  33. </ul>
  34. </div>
  35. <div class="tab-content">
  36. <div role="tabpanel" class="tab-pane <!-- if !zhisset({{approval}}) -->active<!-- endif -->" id="home">
  37. <div class="project">
  38. <div class="proSection">
  39. <!--图表4-->
  40. <div id="chartContainer4" style="height: 350px; width: 100%;">
  41. </div>
  42. <!--图表5-->
  43. <div id="chartContainer5" style="height: 300px; width: 100%;">
  44. </div>
  45. </div>
  46. <div class="projectSeList">
  47. <!-- loop MeasureArray3 -->
  48. <dl class="projectTable">
  49. <dt>第{{ToChinaseNum(MeasureArray3' value.numpname)}}期(上报:{{formatDate(MeasureArray3' value.intime,'Y-m-d')}} <!-- if {{MeasureArray3' value.audittime}}!='0' -->;通过:{{formatDate(MeasureArray3' value.audittime,'Y-m-d')}}<!-- endif -->)</dt>
  50. <dd>
  51. <table class="table table-hover">
  52. <tr>
  53. <td>
  54. <p>本期合同计量</p>
  55. <b>¥{{MeasureArray3' value.currcontractval}}</b>
  56. </td>
  57. <td>
  58. <p>本期数量变更计量</p>
  59. <b>¥{{MeasureArray3' value.currchangeval}}</b>
  60. </td>
  61. </tr>
  62. <tr>
  63. <td>
  64. <p>截止上期完成</p>
  65. <b>¥{{MeasureArray3' value.stopnowtotal}}</b>
  66. </td>
  67. <td>
  68. <p>本期完成计量</p>
  69. <b>¥{{MeasureArray3' value.currdone}}</b>
  70. </td>
  71. </tr>
  72. <tr>
  73. <td>
  74. <p>截止本期完成</p>
  75. <b>¥{{MeasureArray3' value.curralltotal}}</b>
  76. </td>
  77. <td></td>
  78. </tr>
  79. </table>
  80. </dd>
  81. </dl>
  82. <!-- endloop -->
  83. </div>
  84. </div>
  85. </div>
  86. <div role="tabpanel" class="tab-pane <!-- if zhisset({{approval}}) -->active<!-- endif -->" id="profile">
  87. <div class="project">
  88. <div class="projectSeList mT2">
  89. <!-- loop MeasureArray2 -->
  90. <dl class="projectTable">
  91. <dt>第{{ToChinaseNum(MeasureArray2' value.numpname)}}期(上报:{{formatDate(MeasureArray2' value.intime,'Y-m-d')}} <!-- if {{MeasureArray2' value.audittime}}!='0' -->;通过:{{formatDate(MeasureArray2' value.audittime,'Y-m-d')}}<!-- endif -->)</dt>
  92. <dd>
  93. <table class="table table-hover">
  94. <tr>
  95. <td>
  96. <p>本期合同计量</p>
  97. <b>¥{{MeasureArray2' value.currcontractval}}</b>
  98. </td>
  99. <td>
  100. <p>本期数量变更计量</p>
  101. <b>¥{{MeasureArray2' value.currchangeval}}</b>
  102. </td>
  103. </tr>
  104. <tr>
  105. <td>
  106. <p>截止上期累计完成</p>
  107. <b>¥{{MeasureArray2' value.stopnowtotal}}</b>
  108. </td>
  109. <td>
  110. <p>本期完成计量</p>
  111. <b>¥{{MeasureArray2' value.currdone}}</b>
  112. </td>
  113. </tr>
  114. <tr>
  115. <td>
  116. <p>累计完成计量</p>
  117. <b>¥{{MeasureArray2' value.curralltotal}}</b>
  118. </td>
  119. <td></td>
  120. </tr>
  121. </table>
  122. </dd>
  123. </dl>
  124. <!-- endloop -->
  125. </div>
  126. </div>
  127. <div class="approvalList">
  128. <ul>
  129. <!-- if {{orginArray.time}} != '1970-01-01' -->
  130. <li>
  131. {{orginArray.statushtml}}
  132. <div class="approvalView"></div>
  133. </li>
  134. <!-- endif -->
  135. <!-- loop auditArray -->
  136. <li>
  137. {{auditArray' value.statushtml}}
  138. <div class="approvalView">{{auditArray' value.auditcontent}}</div>
  139. </li>
  140. <!-- endloop -->
  141. </ul>
  142. </div>
  143. <!-- if {{mastatus}}=='checking' -->
  144. <div class="bottomToolsbar">
  145. <div class="bottomView">
  146. <form>
  147. <div class="form-group">
  148. <label>审批意见</label>
  149. <textarea class="form-control" rows="3"></textarea>
  150. </div>
  151. </form>
  152. </div>
  153. <ul>
  154. <li><button type="button" class="submit btn-danger" data-toggle="modal" data-target="#myModalUnpass">审批不通过</button></li>
  155. <!-- if {{firstUser}} == 0 --><li><button type="button" class="submit btn-warning" data-toggle="modal" data-target="#myModalreturn">退回</button></li><!-- endif -->
  156. <li><button type="button" class="submit btn-success" data-toggle="modal" data-target="#myModalPass">审批通过</button></li>
  157. </ul>
  158. </div>
  159. <div class="modal fade modalWrap" id="myModalUnpass" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  160. <div class="modal-dialog" role="document">
  161. <div class="modal-content">
  162. <div class="modal-header">
  163. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  164. <h4 class="modal-title">审批意见</h4>
  165. </div>
  166. <div class="modal-body">
  167. <!-- <h4><p>审批意见</p></h4> -->
  168. <form>
  169. <textarea name="content" id="content" class="form-control" rows="3" placeholder="填写审批意见"></textarea>
  170. </form>
  171. </div>
  172. <div class="modal-footer">
  173. <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
  174. <button type="button" class="btn btn-danger auditclass" act="np" maid="{{maid}}" pmid="{{pmid}}" numpname="{{numpname}}" times="{{times}}" last="">确认审批不通过</button>
  175. </div>
  176. </div>
  177. </div>
  178. </div>
  179. <div class="modal fade modalWrap" id="myModalPass" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  180. <div class="modal-dialog" role="document">
  181. <div class="modal-content">
  182. <div class="modal-header">
  183. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  184. <h4 class="modal-title">审批意见</h4>
  185. </div>
  186. <div class="modal-body">
  187. <!-- <h4><p>审批意见</p></h4> -->
  188. <form>
  189. <textarea name="content" id="content2" class="form-control" rows="3" placeholder="填写审批意见"></textarea>
  190. </form>
  191. </div>
  192. <div class="modal-footer">
  193. <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
  194. <button type="button" class="btn btn-success auditclass" act="p" maid="{{maid}}" pmid="{{pmid}}" numpname="{{numpname}}"
  195. times="{{times}}" last="" id="pass">确认审批通过</button>
  196. </div>
  197. </div>
  198. </div>
  199. </div>
  200. <!-- if {{firstUser}} == 0 -->
  201. <div class="modal fade modalWrap" id="myModalreturn" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  202. <div class="modal-dialog" role="document">
  203. <div class="modal-content">
  204. <div class="modal-header">
  205. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  206. <h4 class="modal-title">退回</h4>
  207. </div>
  208. <div class="modal-body">
  209. <h4>是否退回上一个审批人“{{lastUsername}}<!-- if !empty({{lastUserCompany}}) -->({{lastUserCompany}})<!-- endif -->”审批</h4>
  210. </div>
  211. <div class="modal-footer">
  212. <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
  213. <button type="button" class="btn btn-warning auditclass" act="back" maid="{{maid}}" pmid="{{pmid}}" numpname="{{numpname}}"
  214. times="{{times}}" last="{{lastUserID}}" id="back">确认退回</button>
  215. </div>
  216. </div>
  217. </div>
  218. </div>
  219. <!-- endif -->
  220. <!-- endif -->
  221. </div>
  222. </div>
  223. </div>
  224. <script type="text/javascript">
  225. $(function(){
  226. $('#chartContainer4').css('width',(parseInt($(window).width())-36+'px'));
  227. $('#chartContainer5').css('width',(parseInt($(window).width())-36+'px'));
  228. //4 标段期数计量进度//
  229. var myChart = echarts.init(document.getElementById('chartContainer4'));
  230. var option = {
  231. color: ['#e9af68', '#57b7b6', '#e4575a', '#959eac', '#6699FF',
  232. '#d38b70', '#8fb7cf', '#cd5c5c', '#ffa500', '#40e0d0',
  233. '#1e90ff', '#ff6347', '#7b68ee', '#00fa9a', '#ffd700',
  234. '#5c616b', '#ff6666', '#3cb371', '#b8860b', '#30e0e0'],
  235. tooltip: {
  236. trigger: 'axis'
  237. },
  238. calculable: true,
  239. legend: {
  240. data: ['本期合同计量', '本期数量变更计量', '截止上期完成', '本期完成计量', '完成度']
  241. },
  242. dataZoom : {
  243. show : true,
  244. start :0,
  245. end : 100
  246. },
  247. xAxis: [
  248. {
  249. type: 'category',
  250. splitLine: {show: true},
  251. data: [
  252. <!-- loop MeasureArray -->
  253. "第{{ToChinaseNum(MeasureArray' value.numpname)}}期",
  254. <!-- endloop -->
  255. ]
  256. }
  257. ],
  258. grid:[
  259. {
  260. x2:'40',
  261. top:'25%',
  262. bottom:'20%',
  263. left:'13%'
  264. }
  265. ],
  266. yAxis: [
  267. {
  268. type: 'value',
  269. position: 'left',
  270. splitArea: {show: true}
  271. },
  272. {
  273. type: 'value',
  274. name: '完成度',
  275. axisLabel: {
  276. formatter: '{value} %'
  277. },
  278. position: 'right',
  279. splitArea: {show: false},
  280. splitLine: {show: false}
  281. }
  282. ],
  283. series: [
  284. {
  285. name: '本期合同计量',
  286. type: 'bar',
  287. tooltip: {trigger: 'item', formatter: "{b} <br/>{a}:{c}元"},
  288. stack: '合同',
  289. data: [
  290. <!-- loop MeasureArray -->
  291. {{MeasureArray' value.currcontractval}},
  292. <!-- endloop -->
  293. ]
  294. },
  295. {
  296. name: '本期数量变更计量',
  297. type: 'bar',
  298. tooltip: {trigger: 'item', formatter: "{b} <br/>{a}:{c}元"},
  299. stack: '合同',
  300. data: [
  301. <!-- loop MeasureArray -->
  302. {{MeasureArray' value.currchangeval}},
  303. <!-- endloop -->
  304. ]
  305. },
  306. {
  307. name: '截止上期完成',
  308. type: 'bar',
  309. tooltip: {trigger: 'item', formatter: "{b} <br/>{a}:{c}元"},
  310. stack: '完成',
  311. data: [
  312. <!-- loop MeasureArray -->
  313. {{MeasureArray' value.stopnowtotal}},
  314. <!-- endloop -->
  315. ]
  316. },
  317. {
  318. name: '本期完成计量',
  319. type: 'bar',
  320. tooltip: {trigger: 'item', formatter: "{b} <br/>{a}:{c}元"},
  321. stack: '完成',
  322. data: [
  323. <!-- loop MeasureArray -->
  324. {{MeasureArray' value.currdone}},
  325. <!-- endloop -->
  326. ]
  327. },
  328. {
  329. name: '完成度',
  330. type: 'line',
  331. tooltip: {trigger: 'axis', formatter: "{b}占总标段<br/>{a}:{c} %"},
  332. yAxisIndex: 1,
  333. data: [
  334. <!-- loop MeasureArray -->
  335. {{MeasureArray' value.lessTotal}},
  336. <!-- endloop -->
  337. ]
  338. },
  339. ]
  340. };
  341. // 为echarts对象加载数据
  342. myChart.setOption(option);
  343. //4 标段期数计量进度//
  344. //5 期数组成//
  345. var myChart2 = echarts.init(document.getElementById('chartContainer5'));
  346. var option2 = {
  347. color: ['#e9af68','#57b7b6','#e4575a','#959eac','#6699FF',
  348. '#d38b70','#8fb7cf','#cd5c5c','#ffa500','#40e0d0',
  349. '#1e90ff','#ff6347','#7b68ee','#00fa9a','#ffd700',
  350. '#5c616b','#ff6666','#3cb371','#b8860b','#30e0e0'],
  351. title : {
  352. text: '期数计量组成',
  353. x:'left'
  354. },
  355. tooltip : {
  356. trigger: 'item',
  357. formatter: "{a} <br/>{b}:{c} 元<br>占标段:{d} %"
  358. },
  359. calculable : true,
  360. series : [
  361. {
  362. name:'标段计量分布',
  363. type:'pie',
  364. // roseType: 'angle',
  365. radius : '40%',
  366. center: ['50%', 155],
  367. data:[
  368. <!-- loop MeasureArray -->{value: {{MeasureArray' value.currdone}}, name: '第{{ToChinaseNum(MeasureArray' value.numpname)}}期'},
  369. <!-- endloop -->]
  370. }
  371. ]
  372. };
  373. // 为echarts对象加载数据
  374. myChart2.setOption(option2);
  375. //5 期数组成//
  376. });
  377. </script>
  378. <script type="text/javascript">
  379. $(document).ready(function () {
  380. $(".auditclass").click(function () {
  381. var pmid = $(this).attr('pmid');
  382. var numpname = $(this).attr('numpname');
  383. var times = $(this).attr('times');
  384. var content = $(this).parent().parent().find("textarea").val();
  385. var act = $(this).attr('act');
  386. var maid = $(this).attr('maid');
  387. var last = $(this).attr('last');
  388. $.ajax({
  389. type: "POST",
  390. dataType: "json",
  391. cache: false,
  392. data: {"act": act, "pmid": pmid, "numpname": numpname, "times": times, "content": content, "last": last},
  393. url: "/app/rproject/{{pid}}/section/{{pmid}}/detail?uid={{uid}}",
  394. success: function (data) {
  395. if (data['status'] == 1) {
  396. window.location.href = "{{rootUrl}}app/rproject/{{pid}}/section/{{pmid}}/detail?uid={{uid}}&approval=1";
  397. }
  398. }
  399. });
  400. });
  401. })
  402. </script>
  403. </body>