contract_detail.html 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>合同详情</title>
  6. <meta name="viewport"
  7. content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  8. <link href="../../css/mui.min.css" rel="stylesheet" />
  9. <link rel="stylesheet" href="../../css/animate.min.css" />
  10. <style>
  11. .mui-bar-nav~.mui-content{padding-top: 54px;}
  12. .bg{padding: 15px;text-align: center;}
  13. input{height: 45px!important;font-size: 14px;}
  14. textarea{font-size: 14px;}
  15. .m_box {padding: 10px 10px 25px 15px;box-shadow: 0 1px 6px #dbdbdb;}
  16. .btn{width: 230px;margin-top: -21px;}
  17. .img_list{font-size: 13px;color: darkgray;}
  18. .row .sm3{padding: 5px;width: 33.33%;}
  19. .img{width: 60px;border-radius: 3px;border: 1px solid darkgray;margin-bottom: 5px;}
  20. .img.active{border: 1px solid green;}
  21. .ht{text-align: left;padding-left: 20px;margin-top: -20px;padding-bottom: 10px;font-size: 14px;}
  22. .row label{float: left;padding-bottom: 7px;font-size: 15px;}
  23. .sa.active{color: green;}
  24. .mb6{margin-bottom: -6px!important;}
  25. </style>
  26. </head>
  27. <body>
  28. <div id="app">
  29. <header class="mui-bar mui-bar-nav">
  30. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  31. <h1 class="mui-title">合同详情</h1>
  32. </header>
  33. <div class="mui-content animated fadeInUp" style="margin-top: 10px;">
  34. <div class="bg">
  35. <div class="m_box">
  36. <div class="input-group">
  37. 合同接收人: {{items.mz}}
  38. </div>
  39. <div class="row mb6">
  40. <label>合同名称</label>
  41. <input type="tel" v-model="item.contract_content" placeholder="输入合同名称">
  42. <div class="clear"></div>
  43. </div>
  44. <div class="row mb6" style="margin-top: -10px;">
  45. <label>合同金额</label>
  46. <input type="tel" v-model="item.contract_amount" placeholder="输入合同金额">
  47. <div class="clear"></div>
  48. </div>
  49. <div class="row mb6">
  50. <label>附加条款</label>
  51. <textarea rows="3" v-model="item.remark" placeholder="附加条款"> </textarea>
  52. <div class="clear"></div>
  53. </div>
  54. <div class="row">
  55. <label>合同模板</label>
  56. <div class="clear"></div>
  57. </div>
  58. <div class="img_list">
  59. <div class="row">
  60. <div class="sm3" >
  61. <img :src="item.contract_url" class="img" @click.stop="view(item.contract_url)" />
  62. <div class="sa" >{{item.title}}</div>
  63. </div>
  64. <div class="clear"></div>
  65. </div>
  66. </div>
  67. </div>
  68. <button class="btn" @click="save()" v-if="item.status!='1' ">保存</button> <button class="btn" @click="ok()" v-if="item.client_status!='1' ">确认合同</button>
  69. </div>
  70. </div>
  71. </div>
  72. <script src="../../js/mui.min.js"></script>
  73. <script src="../../js/app.js"></script>
  74. <script src="../../js/vue.min.js"></script>
  75. <script>
  76. var vm = new Vue({
  77. el: "#app",
  78. data: {
  79. contract_list: [],
  80. curr: 0,
  81. item: {
  82. },
  83. items: {},
  84. parm:{client:getUser().id}
  85. },
  86. mounted: function() {
  87. mui.plusReady(function() {
  88. console.log("res===" + JSON.stringify(plus.webview.currentWebview().param));
  89. if (plus.webview.currentWebview().param != null) {
  90. vm.items = plus.webview.currentWebview().param;
  91. vm.parm.trustee = plus.webview.currentWebview().param.userId;
  92. vm.parm.parttime_id = plus.webview.currentWebview().param.parttime_id;
  93. //vm.item.client_status = 1; //发送表示委托人同意
  94. //获取合同列表
  95. //request(urls().contract_templete_list, {}, function(res) {
  96. // vm.contract_list = res.data;
  97. // setTimeout(() => {
  98. // plus.nativeUI.closeWaiting();
  99. //}, 500)
  100. // })
  101. //获取合同详情
  102. request(urls().u_contract, vm.parm, function(res) {
  103. console.log("res22==="+JSON.stringify(res));
  104. vm.item = res;
  105. setTimeout(() => {
  106. plus.nativeUI.closeWaiting();
  107. }, 500)
  108. })
  109. }
  110. })
  111. },
  112. methods: {
  113. //保存
  114. save: function() {
  115. if (vm.item.templete_id == '') {
  116. mui.alert('请选择合同模板');
  117. return;
  118. }
  119. //this.item.status=0;
  120. request(urls().save_contract, this.item, function(res) {
  121. if (res.result == true) {
  122. mui.toast("操作成功");
  123. plus.webview.getWebviewById("detail").reload(true);
  124. } else {
  125. mui.toast(res.msg);
  126. }
  127. plsetTimeout(() => {
  128. plus.nativeUI.closeWaiting();
  129. }, 500) })
  130. },
  131. //编辑
  132. ok: function() {
  133. //if (vm.item.templete_id == '') {
  134. // mui.alert('请选择合同模板');
  135. // return;
  136. // }
  137. this.item.status=1;
  138. this.item.client_status = 1;
  139. request(urls().save_contract, this.item, function(res) {
  140. if (res.result == true) {
  141. mui.toast("操作成功");
  142. plus.webview.getWebviewById("detail").reload(true);
  143. } else {
  144. mui.toast(res.msg);
  145. }
  146. plsetTimeout(() => {
  147. plus.nativeUI.closeWaiting();
  148. }, 500) })
  149. },
  150. //选择合同模板
  151. select: function(item, index) {
  152. this.curr = index;
  153. this.item.templete_id=item.id;
  154. },
  155. view: function(img) {
  156. plus.nativeUI.previewImage([img], {
  157. current: 0,
  158. loop: true,
  159. indicator: 'number'
  160. });
  161. }
  162. }
  163. })
  164. </script>
  165. </body>
  166. </html>