addEvaluate.vue 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <template>
  2. <div>
  3. <DialogCom
  4. :visible.sync="isShow"
  5. :width="'500px'"
  6. :title="`${id ? '编辑' : '新增'}扣分规则`"
  7. @close="closeHandler"
  8. destroy-on-close
  9. >
  10. <el-form
  11. :model="ruleForm"
  12. :rules="rules"
  13. ref="ruleForm"
  14. label-width="100px"
  15. class="demo-ruleForm"
  16. >
  17. <el-form-item label="计算项目" prop="indicatorNote">
  18. <el-input
  19. placeholder="请输入计算项目"
  20. v-model="ruleForm.indicatorNote"
  21. clearable
  22. >
  23. </el-input>
  24. </el-form-item>
  25. <el-form-item label="计算类型">
  26. <!-- 1累计数,2连续数,3 分类,4 固化值 -->
  27. <el-radio-group v-model="ruleForm.calculateType">
  28. <el-radio :label="1">累计数</el-radio>
  29. <el-radio :label="2">连续数</el-radio>
  30. <el-radio :label="3">分类</el-radio>
  31. <el-radio :label="4">固化值</el-radio>
  32. </el-radio-group>
  33. </el-form-item>
  34. <el-form-item
  35. label="连续数"
  36. v-if="ruleForm.calculateType == 2"
  37. prop="indicatorDays"
  38. >
  39. <el-input
  40. placeholder="请输入连续数"
  41. v-model.number="ruleForm.indicatorDays"
  42. clearable
  43. >
  44. </el-input>
  45. </el-form-item>
  46. <el-form-item label="系数" prop="itemValue">
  47. <el-input
  48. placeholder="请输入系数"
  49. v-model.number="ruleForm.itemValue"
  50. clearable
  51. >
  52. </el-input>
  53. </el-form-item>
  54. <el-form-item>
  55. <el-button @click="resetFormHandler('ruleForm')">取消</el-button>
  56. <el-button type="primary" @click="submitForm('ruleForm')"
  57. >确定</el-button
  58. >
  59. </el-form-item>
  60. </el-form>
  61. </DialogCom>
  62. </div>
  63. </template>
  64. <script>
  65. import { guid } from "@/utils/index.js";
  66. export default {
  67. name: "SocWebAddEvaluate",
  68. dicts: ["evaluate_type"],
  69. data() {
  70. return {
  71. ruleForm: {
  72. calculateType: 1,
  73. indicatorDays: "",
  74. itemValue: "",
  75. indicatorNote: "",
  76. },
  77. rules: {
  78. indicatorNote: [{ required: true, message: "请选择评价类型" }],
  79. indicatorDays: [
  80. { type: "number", message: "连续数只能为数字" },
  81. { required: true, message: "请输入连续数" },
  82. ],
  83. itemValue: [{ required: true, message: "请输入系数" }],
  84. },
  85. id: "", //编辑时候ID
  86. isShow: false,
  87. };
  88. },
  89. mounted() {},
  90. methods: {
  91. show() {
  92. this.isShow = true;
  93. },
  94. resetFormHandler() {
  95. this.isShow = false;
  96. },
  97. closeHandler() {
  98. this.ruleForm = {};
  99. },
  100. submitForm(formName) {
  101. this.$refs[formName].validate((valid) => {
  102. if (valid) {
  103. if (this.ruleForm.uid) {
  104. //当前是编辑
  105. } else {
  106. //当前是新增
  107. this.ruleForm.uid = guid();
  108. }
  109. this.$emit("submitHandler", this.ruleForm);
  110. this.isShow = false;
  111. } else {
  112. return false;
  113. }
  114. });
  115. },
  116. },
  117. };
  118. </script>
  119. <style lang="scss" scoped>
  120. .el-select {
  121. width: 100%;
  122. }
  123. </style>