index.php 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <div id="app" v-cloak>
  2. <el-card class="box-card" v-loading="loading" shadow="never" style="border:0;min-width: 1200px;" body-style="background-color: #f3f3f3;padding: 10px 0 0;">
  3. <div class="form_box">
  4. <template>
  5. <el-card>
  6. <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="160px">
  7. <el-tabs v-model="activeName">
  8. <el-tab-pane label="证书提醒" name="certificate">
  9. <el-form-item label="是否开启提醒">
  10. <el-col :span="12">
  11. <el-switch v-model="ruleForm.certificate.open_notice" :active-value="1" :inactive-value="0"></el-switch>
  12. </el-col>
  13. </el-form-item>
  14. <el-form-item label="ADMIN证书到期时间">
  15. <el-col :span="12">
  16. <el-date-picker type="date" v-model="ruleForm.certificate.admin_expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  17. </el-col>
  18. </el-form-item>
  19. <el-form-item label="API证书到期时间">
  20. <el-col :span="12">
  21. <el-date-picker type="date" v-model="ruleForm.certificate.api_expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  22. </el-col>
  23. </el-form-item>
  24. <el-form-item label="H5证书到期时间">
  25. <el-col :span="12">
  26. <el-date-picker type="date" v-model="ruleForm.certificate.h5_expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  27. </el-col>
  28. </el-form-item>
  29. <el-form-item label="发薪猫H5证书到期时间" v-if="isInstallSalary">
  30. <el-col :span="12">
  31. <el-date-picker type="date" v-model="ruleForm.certificate.salary_h5_expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  32. </el-col>
  33. </el-form-item>
  34. <el-form-item label="STATIC证书到期时间">
  35. <el-col :span="12">
  36. <el-date-picker type="date" v-model="ruleForm.certificate.static_expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  37. </el-col>
  38. </el-form-item>
  39. <el-form-item label="证书" prop="ssl_path">
  40. <el-col :span="8">
  41. <el-input placeholder="请输入内容" v-model="ruleForm.certificate.ssl_path" disabled>
  42. <template slot="append">
  43. <el-upload
  44. action="/index.php?r=admin/file/upload"
  45. multiple
  46. :show-file-list="false"
  47. accept=".zip"
  48. :on-success="handleAvatarSuccess"
  49. >
  50. <el-button>点击上传</el-button>
  51. </el-upload>
  52. </template>
  53. </el-input>
  54. </el-col>
  55. </el-form-item>
  56. </el-tab-pane>
  57. <el-tab-pane label="服务器提醒" name="server">
  58. <el-form-item label="是否开启提醒">
  59. <el-col :span="12">
  60. <el-switch v-model="ruleForm.server.open_notice" :active-value="1" :inactive-value="0"></el-switch>
  61. </el-col>
  62. </el-form-item>
  63. <el-form-item label="到期时间">
  64. <el-col :span="12">
  65. <el-date-picker type="date" v-model="ruleForm.server.expire_date" value-format="yyyy-MM-dd"></el-date-picker>
  66. </el-col>
  67. </el-form-item>
  68. </el-tab-pane>
  69. </el-tabs>
  70. <el-button :loading="btnLoading" type="primary" @click="submit" size="small">保 存</el-button>
  71. </el-form>
  72. </el-card>
  73. </template>
  74. </div>
  75. </el-card>
  76. </div>
  77. <script>
  78. const app = new Vue({
  79. el: '#app',
  80. data() {
  81. return {
  82. loading: false,
  83. btnLoading: false,
  84. activeName: 'certificate',
  85. ruleForm: {
  86. certificate: {
  87. open_notice: 0,
  88. admin_expire_date: '',
  89. api_expire_date: '',
  90. h5_expire_date: '',
  91. static_expire_date: '',
  92. ssl_path: '',
  93. },
  94. server: {
  95. open_notice: 0,
  96. expire_date: '',
  97. },
  98. },
  99. isInstallSalary: <?= $isInstallSalary ?>,
  100. }
  101. },
  102. mounted: function() {
  103. this.loadData()
  104. },
  105. methods: {
  106. loadData() {
  107. this.$request({
  108. params: {
  109. r: 'admin/expire-notice/index',
  110. },
  111. method: 'get',
  112. }).then(e => {
  113. this.btnLoading = false;
  114. if (e.data.code === 0) {
  115. this.ruleForm = {...this.ruleForm, ...e.data.data}
  116. } else {
  117. this.$message.error(e.data.msg);
  118. }
  119. })
  120. },
  121. submit() {
  122. this.$request({
  123. params: {
  124. r: 'admin/expire-notice/submit',
  125. },
  126. method: 'post',
  127. data: this.ruleForm
  128. }).then(e => {
  129. this.btnLoading = false;
  130. if (e.data.code === 0) {
  131. this.$message.success(e.data.msg);
  132. } else {
  133. this.$message.error(e.data.msg);
  134. }
  135. })
  136. },
  137. handleExceed(files, fileList) {
  138. this.$message.warning(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
  139. },
  140. handleAvatarSuccess(res, file) {
  141. if (res.code == 0) {
  142. // let url = URL.createObjectURL(file.raw)
  143. let url = res.data.path
  144. this.ruleForm.certificate.ssl_path = url
  145. console.log(this.ruleForm);
  146. } else {
  147. this.$message.error(res.msg);
  148. }
  149. },
  150. }
  151. });
  152. </script>