certificate.php 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. {extend name="public/container"}
  2. {block name='head_top'}
  3. <style>
  4. .layui-form-item .special-label i{display: inline-block;width: 18px;height: 18px;font-size: 18px;color: #fff;}
  5. .layui-form-item .label-box p{line-height: inherit;}
  6. .m-t-5{margin-top:5px;}
  7. #app .layui-barrage-box{margin-bottom: 10px;margin-top: 10px;margin-left: 10px;border: 1px solid #0092DC;border-radius: 5px;cursor: pointer;position: relative;}
  8. #app .layui-barrage-box.border-color{border-color: #0bb20c;}
  9. #app .layui-barrage-box .del-text{position: absolute;top: 0;left: 0;background-color: rgba(0,0,0,0.5);color: #ffffff;width: 92%;text-align: center;}
  10. #app .layui-barrage-box p{padding:5px 5px; }
  11. #app .layui-empty-text{text-align: center;font-size: 18px;}
  12. #app .layui-empty-text p{padding: 10px 10px;}
  13. .layui-form-label{width:150px;}
  14. .layui-input-block{margin-left:150px;}
  15. </style>
  16. {/block}
  17. {block name="content"}
  18. <div class="layui-fluid">
  19. <div class="layui-row layui-col-space15" id="app" v-cloak>
  20. <div class="layui-col-md12">
  21. <div class="layui-card">
  22. <div class="layui-card-body">
  23. <form action="" class="layui-form">
  24. <div class="layui-form-item">
  25. <label class="layui-form-label">选择证书:</label>
  26. <div class="layui-input-block">
  27. <select name="cid" v-model="formData.cid" lay-search="" lay-filter="cid">
  28. <option v-for="item in certificateList" :value="item.id">{{item.title}}</option>
  29. </select>
  30. </div>
  31. </div>
  32. <div class="layui-form-item">
  33. <label class="layui-form-label">获得条件/分数:</label>
  34. <div class="layui-input-block">
  35. <input type="number" name="condition" v-model="formData.condition" autocomplete="off" placeholder="分数大于输入值获得" class="layui-input">
  36. </div>
  37. </div>
  38. <div class="layui-form-item submit">
  39. <label class="layui-form-label">关联状态:</label>
  40. <div class="layui-input-block">
  41. <input type="radio" name="is_show" lay-filter="is_show" v-model="formData.is_show" value="1" title="显示">
  42. <input type="radio" name="is_show" lay-filter="is_show" v-model="formData.is_show" value="0" title="隐藏">
  43. </div>
  44. </div>
  45. <div class="layui-form-item">
  46. <div class="layui-input-block">
  47. <div class="layui-btn-container">
  48. <button class="layui-btn layui-btn-normal" type="button" @click="save">{{id ? '立即修改':'立即提交'}}</button>
  49. <button class="layui-btn layui-btn-primary clone" type="button" @click="clone_form">取消</button>
  50. </div>
  51. </div>
  52. </div>
  53. </form>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. <script type="text/javascript" src="{__ADMIN_PATH}js/layuiList.js"></script>
  60. {/block}
  61. {block name='script'}
  62. <script>
  63. var related_id={$related_id},id={$id},certificate=<?=isset($certificate) ? $certificate : []?>;
  64. require(['vue','request','OssUpload'],function(Vue) {
  65. new Vue({
  66. el: "#app",
  67. data: {
  68. formData:{
  69. cid: certificate.cid || 0,
  70. condition: certificate.condition || '',
  71. related: related_id,
  72. is_show: certificate.is_show>=0 ? certificate.is_show : 1,
  73. },
  74. certificateList: []
  75. },
  76. methods:{
  77. clone_form: function () {
  78. var that = this;
  79. if (parseInt(id) == 0) {
  80. parent.layer.closeAll();
  81. }
  82. var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
  83. parent.layer.close(index); //再执行关闭
  84. },
  85. get_certificate_list: function () {
  86. var that = this;
  87. layList.baseGet(layList.U({a: 'certificateLists',p:{obtain:2}}), function (res) {
  88. that.$set(that, 'certificateList', res.data);
  89. that.$nextTick(function () {
  90. layList.form.render('select');
  91. })
  92. });
  93. },
  94. save:function () {
  95. var that=this;
  96. if(that.formData.cid<=0) return layList.msg('请选择关联证书');
  97. if(Number(that.formData.condition)<=0 || Number(that.formData.condition)>100) return layList.msg('请编辑获得证书的条件');
  98. that.formData.condition=Number(that.formData.condition);
  99. layList.loadFFF();
  100. layList.basePost(layList.U({a:'certificateRecord',q:{id:id,obtain:2}}),that.formData,function (res) {
  101. layList.loadClear();
  102. layList.msg(res.msg,function () {
  103. parent.layer.closeAll();
  104. });
  105. },function (res) {
  106. layList.msg(res.msg,function () {
  107. parent.layer.closeAll();
  108. });
  109. });
  110. }
  111. },
  112. mounted:function () {
  113. var that=this;
  114. that.get_certificate_list();
  115. this.$nextTick(function () {
  116. layList.form.render();
  117. layList.select('cid', function (obj) {
  118. that.formData.cid = obj.value;
  119. });
  120. layList.form.on('radio(is_show)', function (data) {
  121. that.formData.is_show = parseInt(data.value);
  122. });
  123. });
  124. }
  125. })
  126. })
  127. </script>
  128. {/block}