华西海圻ELN前端工程
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

168 lines
5.0 KiB

  1. G<template>
  2. <div>
  3. <!-- 新增试验间弹窗 -->
  4. <el-dialog :title="$t('page.business.study.studyRoom.qysyj')" :visible.sync="open" width="800px" append-to-body :close-on-click-modal="false">
  5. <el-form ref="form" :model="form" :rules="rules" label-width="120px">
  6. <el-row>
  7. <!-- 试验区域 -->
  8. <el-col :span="12">
  9. <el-form-item :label="$t('page.business.study.studyRoom.syqy')" prop="syqy">
  10. <SelectTestArea v-model="form.syqy" />
  11. </el-form-item>
  12. </el-col>
  13. <!-- 饲养间号 -->
  14. <el-col :span="12">
  15. <el-form-item :label="$t('page.business.study.studyRoom.syjh')" prop="syjh">
  16. <SelectRoom v-model="form.syjh" :testArea="form.syqy"/>
  17. </el-form-item>
  18. </el-col>
  19. </el-row>
  20. <el-row>
  21. <!-- 动物种属 -->
  22. <el-col :span="12">
  23. <el-form-item :label="$t('page.business.study.studyRoom.dwzs')" prop="dwzs">
  24. <SelectAnimalSpecies v-model="form.dwzs" />
  25. </el-form-item>
  26. </el-col>
  27. <!-- 笼具 -->
  28. <el-col :span="12">
  29. <el-form-item :label="$t('page.business.study.studyRoom.longju')" prop="lj">
  30. <SelectCage v-model="form.lj" :animalSpecies="form.dwzs"/>
  31. </el-form-item>
  32. </el-col>
  33. </el-row>
  34. <!-- 开始使用原因 -->
  35. <el-row>
  36. <el-col :span="12">
  37. <el-form-item :label="$t('page.business.study.studyRoom.kssyyl')" prop="kssyyl">
  38. <el-input type="text" v-model="form.kssyyl" maxlength="50"
  39. :placeholder="$t('form.placeholderInput')" />
  40. </el-form-item>
  41. </el-col>
  42. </el-row>
  43. <el-row>
  44. <el-col :span="12">
  45. <el-form-item :label="$t('form.qmyy')" prop="qmyy">
  46. <el-input type="text" :value="form.qmyy" maxlength="50" disabled
  47. :placeholder="$t('form.placeholderInput')" />
  48. </el-form-item>
  49. </el-col>
  50. </el-row>
  51. <el-row>
  52. <el-col :span="12">
  53. <el-form-item :label="$t('form.signer')">
  54. <el-input type="text" v-model="nickName" maxlength="50" disabled
  55. :placeholder="$t('form.placeholderInput')" />
  56. </el-form-item>
  57. </el-col>
  58. </el-row>
  59. <el-row>
  60. <el-col :span="12">
  61. <el-form-item :label="$t('form.password')" prop="qmrmm">
  62. <el-input type="password" v-model="form.qmrmm" maxlength="20"
  63. :placeholder="$t('form.placeholderInput')" />
  64. </el-form-item>
  65. </el-col>
  66. </el-row>
  67. </el-form>
  68. <div slot="footer" class="dialog-footer">
  69. <el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
  70. <el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
  71. </div>
  72. </el-dialog>
  73. </div>
  74. </template>
  75. <script>
  76. import { studyRoom_save } from "@/api/business/study/studyRoom"
  77. import { mapGetters } from 'vuex'
  78. import BusinessSelect from '@/views/business/comps/select/BusinessSelect';
  79. import SelectTestArea from '@/views/business/comps/select/SelectTestArea';
  80. import SelectRoom from '@/views/business/comps/select/SelectRoom';
  81. import SelectAnimalSpecies from '@/views/business/comps/select/SelectAnimalSpecies';
  82. import SelectCage from '@/views/business/comps/select/SelectCage';
  83. export default {
  84. name: "XzSyj",
  85. components: { BusinessSelect, SelectTestArea, SelectRoom, SelectCage, SelectAnimalSpecies },
  86. data() {
  87. return {
  88. open: false,
  89. form: {},
  90. rules: {
  91. syqy: [{
  92. required: true,
  93. message: ' ',
  94. trigger: 'blur'
  95. }],
  96. syjh: [{
  97. required: true,
  98. message: ' ',
  99. trigger: 'blur'
  100. }],
  101. dwzs: [{
  102. required: true,
  103. message: ' ',
  104. trigger: 'blur'
  105. }],
  106. lj: [{
  107. required: true,
  108. message: ' ',
  109. trigger: 'blur'
  110. }],
  111. kssyyl: [{
  112. required: true,
  113. message: ' ',
  114. trigger: 'blur'
  115. }],
  116. qmrmm: [{
  117. required: true,
  118. message: ' ',
  119. trigger: 'blur'
  120. }],
  121. }
  122. }
  123. },
  124. computed: {
  125. ...mapGetters([
  126. 'nickName'
  127. ]),
  128. },
  129. created() {
  130. },
  131. methods: {
  132. cancel() {
  133. this.open = false
  134. },
  135. reset() {
  136. this.form = {
  137. id: null,
  138. syqy: null,
  139. syjh: null,
  140. dwzs: null,
  141. lj: null,
  142. qmrmm: null,
  143. kssyyl:'',
  144. qmyy: '启用饲养间',
  145. bjbz: ''
  146. }
  147. this.resetForm("form")
  148. },
  149. show(studyId) {
  150. this.reset()
  151. this.form.studyId = studyId
  152. this.open = true
  153. },
  154. save() {
  155. this.$refs["form"].validate(valid => {
  156. if (valid) {
  157. studyRoom_save(this.form).then(response => {
  158. this.open = false
  159. this.$emit('callback')
  160. })
  161. }
  162. })
  163. }
  164. }
  165. }
  166. </script>