add.html 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. {extend name="common/base"/}
  2. {block name="style"}
  3. <style>
  4. .footer{
  5. display: none;
  6. }
  7. .form-title {
  8. background-color: rgb(241, 241, 241);
  9. color: #5f5f5f;
  10. border-color: rgb(241, 241, 241);
  11. }
  12. .layui-table td {
  13. border-width: 1px;
  14. border-style: solid;
  15. border-color: #e2e2e2;
  16. }
  17. </style>
  18. {/block}
  19. <!-- 主体 -->
  20. {block name="body"}
  21. <form class="layui-form p-4">
  22. <h3 class="pb-3">新增合同</h3>
  23. <table class="layui-table layui-table-form">
  24. {gt name="$pid" value="0"}
  25. <tr>
  26. <td class="layui-td-gray form-title">母合同名称</td>
  27. <td colspan="5">{$p_contract.name}<input type="hidden" name="pid" value="{$pid}"></td>
  28. </tr>
  29. {/gt}
  30. <tr>
  31. <td class="layui-td-gray form-title">合同名称<font>*</font></td>
  32. <td colspan="3"><input type="text" name="name" lay-verify="required" lay-reqText="请输入合同名称" autocomplete="off" placeholder="请输入合同名称" class="layui-input"></td>
  33. <td class="layui-td-gray form-title">合同性质</td>
  34. <td>
  35. <input type="hidden" name="type" value="{$type}">
  36. {eq name="$type" value="1" }普通合同{/eq}
  37. {eq name="$type" value="2" }框架合同{/eq}
  38. {eq name="$type" value="3" }补充协议{/eq}
  39. {eq name="$type" value="4" }其他合同{/eq}
  40. </td>
  41. </tr>
  42. <tr>
  43. <td class="layui-td-gray form-title">签约主体<span style="font-size:12px;">(乙方)</span><font>*</font></td>
  44. <td>
  45. <input type="text" name="subject_name" autocomplete="off" value="" lay-verify="required" lay-reqText="请输入客户名称" placeholder="请输入客户名称" class="layui-input">
  46. </td>
  47. <td class="layui-td-gray form-title">合同编号<font>*</font></td>
  48. <td>
  49. <input type="text" name="code" value="" autocomplete="off" lay-verify="required" lay-reqText="请输入合同编号" placeholder="请输入合同编号" class="layui-input">
  50. </td>
  51. <td class="layui-td-gray form-title">合同类别<font>*</font></td>
  52. <td>
  53. <select name="cate_id" lay-verify="required" lay-reqText="请选择合同类别">
  54. <option value="">请选择合同类别</option>
  55. {volist name="cate" id="v"}
  56. <option value="{$v.id}">{$v.title}</option>
  57. {/volist}
  58. </select>
  59. </td>
  60. </tr>
  61. <tr>
  62. <td class="layui-td-gray form-title">客户名称<span style="font-size:12px;">(甲方)</span><font>*</font></td>
  63. <td>
  64. <input type="text" name="customer" autocomplete="off" value="" lay-verify="required" lay-reqText="请输入客户名称" placeholder="请输入客户名称" class="layui-input">
  65. </td>
  66. <td class="layui-td-gray form-title">签约客户代表<font>*</font></td>
  67. <td>
  68. <input type="text" name="customer_name" autocomplete="off" lay-verify="required" lay-reqText="请输入客户代表姓名" placeholder="请输入客户代表姓名" class="layui-input">
  69. </td>
  70. <td class="layui-td-gray form-title">客户联系电话<font>*</font></td>
  71. <td>
  72. <input type="text" name="customer_mobile" autocomplete="off" lay-verify="required" lay-reqText="请输入客户联系电话" placeholder="请输入客户联系电话" class="layui-input">
  73. </td>
  74. </tr>
  75. <tr>
  76. <td class="layui-td-gray-2 form-title">客户联系地址</td>
  77. <td colspan="3">
  78. <input type="text" name="customer_address" autocomplete="off" placeholder="请输入客户联系地址" class="layui-input">
  79. </td>
  80. <td class="layui-td-gray-2 form-title">合同始止日期<font>*</font></td>
  81. <td>
  82. <div id="barDate" class="layui-input-inline">
  83. <div class="layui-input-inline" style="width:110px; margin-bottom:0">
  84. <input type="text" class="layui-input" id="start_time" placeholder="选择时间区间" readonly name="start_time" lay-verify="required" lay-reqText="请选择合同开始时间">
  85. </div>
  86. ~
  87. <div class="layui-input-inline" style="width:110px;margin-bottom:0">
  88. <input type="text" class="layui-input" id="end_time" placeholder="选择时间区间" readonly name="end_time" lay-verify="required" lay-reqText="请选择合同结束时间">
  89. </div>
  90. </div>
  91. </td>
  92. </tr>
  93. {neq name="$type" value="2"}
  94. <tr>
  95. <td class="layui-td-gray form-title">合同金额{eq name="$type" value="1"}<font>*</font>{/eq}</td>
  96. <td>
  97. <input type="text" name="cost" value="" {eq name="$type" value="1"} lay-verify="required|number"{/eq} lay-reqText="请输入合同金额,数字" placeholder="请输入合同金额,数字" autocomplete="off" class="layui-input">
  98. </td>
  99. <td class="layui-td-gray form-title">是否含税</td>
  100. <td>
  101. <input type="radio" name="is_tax" value="1" title="是" checked lay-filter="tax">
  102. <input type="radio" name="is_tax" value="0" title="否" lay-filter="tax">
  103. </td>
  104. <td class="layui-td-gray form-title">税点(百分比)</td>
  105. <td>
  106. <input type="text" name="tax" value="" lay-verify="number" placeholder="请输入税点,数字" autocomplete="off" class="layui-input">
  107. </td>
  108. </tr>
  109. {/neq}
  110. <tr>
  111. <td colspan="6"><strong>签订信息</strong></td>
  112. </tr>
  113. <tr>
  114. <td class="layui-td-gray-2 form-title">合同签订人<font>*</font></td>
  115. <td>
  116. <div class="layui-input-inline" style="width:50%;">
  117. <input type="text" name="sign_name" autocomplete="off" readonly lay-verify="required" lay-reqText="请选择合同签订人" placeholder="请选择合同签订人" class="layui-input picker-one">
  118. <input type="hidden" name="sign_uid">
  119. </div>
  120. </td>
  121. <td class="layui-td-gray-2 form-title">合同签订时间<font>*</font></td>
  122. <td>
  123. <input type="text" name="sign_time" readonly lay-verify="required" lay-reqText="请选择合同签订日期" placeholder="请选择合同签订日期" class="layui-input tool-time">
  124. </td>
  125. <td class="layui-td-gray-2 form-title">合同制定人<font>*</font></td>
  126. <td>
  127. <input type="text" name="prepared_name" autocomplete="off" readonly placeholder="请选择合同制定人" class="layui-input picker-one">
  128. <input type="hidden" name="prepared_uid" lay-verify="required" lay-reqText="请选择合同制定人">
  129. </td>
  130. </tr>
  131. <tr>
  132. <td class="layui-td-gray-2 form-title">合同保管人<font>*</font></td>
  133. <td>
  134. <input type="text" name="keeper_name" autocomplete="off" readonly placeholder="请选择合同保管人" class="layui-input picker-one">
  135. <input type="hidden" name="keeper_uid" lay-verify="required" lay-reqText="请选择合同保管人">
  136. </td>
  137. <td class="layui-td-gray form-title">合同共享人员</td>
  138. <td colspan="3">
  139. <input type="text" name="share_names" autocomplete="off" readonly placeholder="请选择共享人员" class="layui-input picker-more">
  140. <input type="hidden" name="share_ids">
  141. </td>
  142. </tr>
  143. <tr>
  144. <td colspan="6"><strong>备注信息</strong></td>
  145. </tr>
  146. <tr>
  147. <td colspan="6">
  148. <textarea name="remark" placeholder="请输入备注信息" class="layui-textarea"></textarea>
  149. </td>
  150. </tr>
  151. </table>
  152. <div class="py-3">
  153. <input type="hidden" name="scene" value="add">
  154. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">立即提交</button>
  155. <button type="reset" class="layui-btn layui-btn-primary">重置</button>
  156. </div>
  157. </form>
  158. {/block}
  159. <!-- /主体 -->
  160. <!-- 脚本 -->
  161. {block name="script"}
  162. <script>
  163. const moduleInit = ['tool','employeepicker','oaTool'];
  164. function gouguInit() {
  165. var form = layui.form,tool=layui.tool,table = layui.table,laydate = layui.laydate,oaTool = layui.oaTool, employeepicker = layui.employeepicker;
  166. //日期范围
  167. laydate.render({
  168. elem: '#barDate',
  169. range: ['#start_time', '#end_time'],
  170. rangeLinked:true
  171. });
  172. //相关附件上传
  173. oaTool.addFile();
  174. //radio选择
  175. form.on('radio(tax)', function(data){
  176. if(data.value == 0){
  177. $('[name="tax"]').val('0').hide();
  178. }else{
  179. $('[name="tax"]').val('').show();
  180. }
  181. });
  182. //监听提交
  183. form.on('submit(webform)', function (data) {
  184. if (data.field.type == 1 && data.field.cost == '') {
  185. layer.msg('请完善合同金额');
  186. return false;
  187. }
  188. if (data.field.is_tax == 1 && data.field.tax == '') {
  189. layer.msg('请完善税点');
  190. return false;
  191. }
  192. if (data.field.is_tax == 1 && data.field.cost == '') {
  193. layer.msg('请完善金额');
  194. return false;
  195. }
  196. let callback = function (e) {
  197. layer.msg(e.msg);
  198. if (e.code == 0) {
  199. tool.sideClose(1000);
  200. }
  201. }
  202. tool.post("/admin/contract.index/add", data.field, callback);
  203. return false;
  204. });
  205. }
  206. </script>
  207. {/block}
  208. <!-- /脚本 -->