templateList.vue 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <style lang="scss">
  2. .preview{
  3. .el-form-item{
  4. margin-bottom:15px;
  5. }
  6. label,p{
  7. line-height: 25px !important;
  8. }
  9. }
  10. </style>
  11. <template>
  12. <section>
  13. <p><span>信息管理></span>问卷模板</p>
  14. <div class="content">
  15. <div class="filter">
  16. <el-form size="small" label-width="70px" :inline="true" label-position="left">
  17. <el-form-item label="">
  18. <el-input clearable placeholder="请输入您要搜索的内容" v-model="form.name"></el-input>
  19. </el-form-item>
  20. <el-form-item>
  21. <el-button type="primary" @click="search">搜索</el-button>
  22. </el-form-item>
  23. <el-form-item style="float:right" >
  24. <el-button @click="dialogVisible=true,dialogTitle='新增模板'" type="primary">新增模板</el-button>
  25. </el-form-item>
  26. </el-form>
  27. </div>
  28. <el-table
  29. class="table"
  30. :data="list" height="57vh"
  31. border v-loading="loading"
  32. default-expand-all row-key="id"
  33. style="width: 100%">
  34. <el-table-column
  35. prop="name"
  36. label="模板名称">
  37. </el-table-column>
  38. <el-table-column
  39. prop="cname"
  40. label=创建人>
  41. </el-table-column>
  42. <el-table-column
  43. prop="ctime"
  44. label="创建时间">
  45. </el-table-column>
  46. <el-table-column
  47. prop="zip" width="150"
  48. label="操作">
  49. <template slot-scope="scope">
  50. <el-button class="edit" type="text" @click="edit(scope.row)">编辑</el-button>
  51. <el-button class="del" @click="del(scope.row.id)" type="text">删除</el-button>
  52. </template>
  53. </el-table-column>
  54. </el-table>
  55. <Page ref="pageButton" :current='form.page' :page_size='form.page_size' :total='total' @pageChange='gopage'/>
  56. </div>
  57. <el-dialog
  58. :title="dialogTitle" :close-on-click-modal='false'
  59. :visible.sync="dialogVisible">
  60. <el-form size="small" class="preview" :inline='false' label-width="80px">
  61. <el-form-item label="模板名称">
  62. <el-input v-model="form1.name" placeholder="请输入模板名称"></el-input>
  63. </el-form-item>
  64. </el-form>
  65. <span slot="footer" class="dialog-footer">
  66. <el-button size="small" type="primary" @click="$router.push({path:'/message/template/add',query:{title:form1.name,id:form1.id}})">确 定</el-button>
  67. </span>
  68. </el-dialog>
  69. </section>
  70. </template>
  71. <script>
  72. import Page from '../../components/Page';
  73. export default {
  74. components:{
  75. Page
  76. },
  77. data(){
  78. return{
  79. // edit:0,
  80. form:{name:'',page:1,page_size:20},
  81. form1:{},
  82. total:1,
  83. list:[{name:'2333'}],
  84. loading:false,
  85. input:'',
  86. dialogVisible:false,
  87. dialogTitle:"",
  88. defaultProps:{},
  89. data: [],
  90. }
  91. },
  92. methods:{
  93. search(){
  94. let parm = this.form
  95. this.getData()
  96. },
  97. getData(){
  98. var parm=this.form;
  99. this.loading=true
  100. this.$api.getTemplateList(parm).then(res=>{
  101. this.list=res.data.data.list;
  102. this.total=res.data.data.total
  103. this.loading=false
  104. })
  105. },
  106. edit(row){
  107. console.log(row)
  108. this.form1 = row;
  109. this.dialogVisible = true;
  110. },
  111. del(id){
  112. this.$confirm('确定删除吗', '提示', {
  113. type: 'warning'
  114. }).then(() => {
  115. this.$api.delTemplate({id:id}).then((res)=>{
  116. this.$message({
  117. message: '删除成功',
  118. type: 'success'
  119. })
  120. this.getData()
  121. })
  122. })
  123. },
  124. },
  125. created(){
  126. this.getData()
  127. }
  128. }
  129. </script>