SysManage.vue 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. <template>
  2. <div>
  3. <el-row class="queryFrom">
  4. <el-form
  5. ref="queryFormRef"
  6. label-width="80px"
  7. size="small"
  8. >
  9. <el-row>
  10. <el-col :span="4">
  11. <el-form-item label="系统名称">
  12. <el-input clearable placeholder="请输入系统名称" v-model="searchForm.systemName"></el-input>
  13. </el-form-item>
  14. </el-col>
  15. <el-col :span="4">
  16. <el-form-item label="系统编码">
  17. <el-input clearable placeholder="请输入系统编码" v-model="searchForm.systemCode"></el-input>
  18. </el-form-item>
  19. </el-col>
  20. <el-col :span="4">
  21. <el-form-item label="系统状态">
  22. <el-select clearable v-model="searchForm.systemStatus" placeholder="请选择系统状态">
  23. <el-option
  24. :label="'启用'"
  25. :value="1">
  26. </el-option>
  27. <el-option
  28. :label="'禁用'"
  29. :value="0">
  30. </el-option>
  31. </el-select>
  32. </el-form-item>
  33. </el-col>
  34. <el-col :span="4">
  35. <el-form-item label="">
  36. <el-button type="primary" @click="getList">查询</el-button >
  37. <el-button type="primary" @click="addSys">添加</el-button>
  38. </el-form-item>
  39. </el-col>
  40. <el-col :span="4">
  41. <el-form-item label="">
  42. </el-form-item>
  43. </el-col>
  44. </el-row>
  45. </el-form>
  46. </el-row>
  47. <templateTable :searchData.sync="formData" :tableConfig="tableConfig" :data="tabelList" @getList="getList"
  48. :pagination="pageData">
  49. </templateTable>
  50. <el-dialog
  51. :title="dialogTitle"
  52. :visible.sync="dialogVisible"
  53. width="30%"
  54. :before-close="handleClose">
  55. <el-form :model="formData" :rules="formDataRules" ref="formData" label-width="100px" class="demo-formData">
  56. <el-form-item label="系统名称" prop="systemName">
  57. <el-input clearable v-model="formData.systemName"></el-input>
  58. </el-form-item>
  59. <el-form-item label="系统编码" prop="systemCode">
  60. <el-input clearable v-model="formData.systemCode"></el-input>
  61. </el-form-item>
  62. <el-form-item label="系统描述" prop="systemRemark">
  63. <el-input clearable type="textarea" v-model="formData.systemRemark"></el-input>
  64. </el-form-item>
  65. <el-form-item label="系统状态" prop="systemStatus">
  66. <el-switch
  67. v-model="formData.systemStatus"
  68. :active-value="1"
  69. :inactive-value="0">
  70. </el-switch>
  71. <!-- <el-switch v-model="formData.systemStatus"></el-switch> -->
  72. </el-form-item>
  73. </el-form>
  74. <span slot="footer" class="dialog-footer">
  75. <el-button @click="cancel('formData')">取 消</el-button>
  76. <el-button type="primary" @click="confirm('formData')">确 定</el-button>
  77. </span>
  78. </el-dialog>
  79. </div>
  80. </template>
  81. <script>
  82. import templateTable from "@/components/TemplateTable/index.vue";
  83. export default {
  84. components: {
  85. // KtButton,
  86. // tree,
  87. templateTable,
  88. // peopleImage,
  89. },
  90. // mixins: [mixin],
  91. data() {
  92. return {
  93. dialogVisible:false,
  94. dialogTitle: "",
  95. pageData: {
  96. pageNum: 1,
  97. pageSize: 20,
  98. totalSize:0
  99. },
  100. inactiveValue:0,
  101. activeValue:1,
  102. formData: {
  103. systemName:'',
  104. systemCode:'',
  105. systemRemark:'',
  106. systemStatus:0,
  107. },
  108. searchForm: {
  109. systemName:'',
  110. systemCode:'',
  111. systemRemark:'',
  112. systemStatus:'',
  113. },
  114. formDataRules: {
  115. systemName: [
  116. { required: true, message: '请输入系统名称', trigger: 'blur' },
  117. ],
  118. systemCode: [
  119. { required: true, message: '请输入系统编码', trigger: 'blur' },
  120. ],
  121. },
  122. tableConfig: {
  123. columns: [
  124. // 数据列
  125. { prop: "systemName", label: "系统名称", type: "text" },
  126. { prop: "systemCode", label: "系统编码", type: "text" },
  127. { prop: "systemRemark", label: "系统描述", type: "text" },
  128. { prop: "systemStatus", label: "系统状态", type: "statMap",
  129. // type: "statMap",
  130. options: [
  131. {
  132. label: "禁用",
  133. value: "0",
  134. },
  135. {
  136. label: "启用",
  137. value: "1",
  138. },
  139. ],
  140. },
  141. { prop: "createTime", label: "创建时间", type: "text" },
  142. ],
  143. loading: true,
  144. isPaginationShow: true,
  145. isShowIndex: true,
  146. operationWidth: "100",
  147. optBtns: [
  148. {
  149. type: "primary",
  150. label: "编辑",
  151. // type: "button",
  152. // perm: "agreement:taxSource:config",
  153. click: (row, index) => {
  154. return this.updateSys(row);
  155. },
  156. },
  157. {
  158. type: "danger",
  159. label: "删除",
  160. // type: "button",
  161. // perm: "agreement:taxSource:config",
  162. click: (row, index) => {
  163. return this.deleteSys(row);
  164. },
  165. },
  166. ],
  167. },
  168. tabelList:[],
  169. originalForm: null,
  170. operationId:undefined
  171. };
  172. },
  173. created() {
  174. this.getList()
  175. this.originalForm={...this.formData}
  176. },
  177. mounted() {
  178. },
  179. watch: {
  180. },
  181. methods:{
  182. addSys(){
  183. this.dialogVisible = true
  184. this.dialogTitle = "添加系统"
  185. this.formData={...this.originalForm}
  186. this.operationId =undefined
  187. },
  188. updateSys(row){
  189. this.dialogVisible = true
  190. this.dialogTitle = "修改系统"
  191. this.formData.systemName=row.systemName
  192. this.formData.systemCode=row.systemCode
  193. this.formData.systemRemark=row.systemRemark
  194. this.formData.systemStatus=row.systemStatus*1
  195. this.operationId = row.id
  196. },
  197. getList(){
  198. this.tableConfig.loading = true
  199. this.$api.sys.getSysList({...this.searchForm,...this.pageData,}).then((res) => {
  200. if(res.code == 200){
  201. this.tableConfig.loading = false
  202. this.tabelList = res.data.content
  203. this.pageData.pageNum = res.data.pageNum;
  204. this.pageData.pageSize = res.data.pageSize;
  205. this.pageData.totalSize = res.data.totalSize;
  206. }else{
  207. this.$message.error(res.msg)
  208. }
  209. }).catch(err=>{
  210. this.$message.error(err.message)
  211. this.tableConfig.loading = false
  212. })
  213. },
  214. handleClose(done) {
  215. done();
  216. },
  217. confirm(formName){
  218. // this.dialogVisible = false
  219. this.$refs[formName].validate((valid) => {
  220. if (valid) {
  221. // alert('submit!');
  222. // console.log(this.formData)
  223. this.$api.sys.editSys({...this.formData,id:this.operationId}).then((res) => {
  224. // console.log(res,666)
  225. if(res.code == 200){
  226. this.$message.success(res.msg)
  227. this.dialogVisible = false
  228. this.getList()
  229. }else{
  230. this.$message.error(res.msg)
  231. }
  232. })
  233. } else {
  234. // console.log('error submit!!');
  235. return false;
  236. }
  237. });
  238. },
  239. cancel(formName){
  240. this.$refs[formName].resetFields();
  241. this.dialogVisible = false
  242. },
  243. deleteSys(row){
  244. this.$confirm('确认删除该系统吗?', '提示', {
  245. confirmButtonText: '提交',
  246. cancelButtonText: '取消',
  247. type: 'warning'
  248. }).then(() => {
  249. this.$api.sys.deleteSys({ids:[row.id]}).then((res) => {
  250. if(res.code == 200){
  251. this.$message.success(res.msg)
  252. this.getList()
  253. }else{
  254. this.$message.error(res.msg)
  255. }
  256. })
  257. }).catch(() => {
  258. });
  259. }
  260. }
  261. }
  262. </script>
  263. <style>
  264. </style>