quite-team.vue 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305
  1. <template>
  2. <div>
  3. <el-form
  4. :model="quitForm"
  5. ref="quitForm"
  6. label-width="150px"
  7. :rules="quitRules"
  8. :inline="true"
  9. >
  10. <el-row>
  11. <el-col :span="10">
  12. <el-form-item label="学员姓名">
  13. <span>{{ quitForm.studentName }}</span>
  14. </el-form-item>
  15. </el-col>
  16. <el-col :span="12">
  17. <el-form-item label="乐团名称">
  18. <overflow-text :text="quitForm.musicGroupName" width="150px"></overflow-text>
  19. <!-- <span>{{}}</span> -->
  20. </el-form-item>
  21. </el-col>
  22. </el-row>
  23. <el-row>
  24. <el-form-item label="是否回访" prop="isVisit">
  25. <el-radio v-model.trim="quitForm.isVisit" :label="true" :disabled="isDisabled"
  26. >是</el-radio
  27. >
  28. <el-radio :disabled="isDisabled" v-model.trim="quitForm.isVisit" :label="false"
  29. >否</el-radio
  30. >
  31. </el-form-item>
  32. <el-form-item
  33. label="回访时间"
  34. v-if="quitForm.isVisit"
  35. :rules="[{ required: true, message: '请选择回访时间' }]"
  36. prop="visitTime"
  37. >
  38. <el-date-picker
  39. :disabled="isDisabled"
  40. v-model.trim="quitForm.visitTime"
  41. align="right"
  42. type="date"
  43. style="width: 180px !important"
  44. placeholder="选择日期"
  45. value-format="yyyy-MM-dd"
  46. :picker-options="pickerOptions"
  47. ></el-date-picker>
  48. </el-form-item>
  49. </el-row>
  50. <!-- <el-row>
  51. <el-form-item label="是否退费">
  52. <el-radio v-model.trim="quitForm.isQuiteFee" :label="true"
  53. >是</el-radio
  54. >
  55. <el-radio v-model.trim="quitForm.isQuiteFee" :label="false"
  56. >否</el-radio
  57. >
  58. </el-form-item>
  59. </el-row> -->
  60. <!-- v-if="quitForm.isQuiteFee" -->
  61. <div>
  62. <!-- <el-row>
  63. <el-form-item
  64. label="退还会员费用"
  65. prop="isReturnMemberFee"
  66. v-if="quitForm.courseViewType == 2"
  67. :rules="[{required: true, message: '请选择是否退还会员费用'}]"
  68. >
  69. <el-radio :disabled='isDisabled' v-model.trim="quitForm.isReturnMemberFee" :label="true"
  70. >是</el-radio
  71. >
  72. <el-radio :disabled='isDisabled' v-model.trim="quitForm.isReturnMemberFee" :label="false"
  73. >否</el-radio
  74. >
  75. </el-form-item>
  76. <el-form-item
  77. label="退还会员金额"
  78. :rules="[{required: true, message: '请输入会员金额'}]"
  79. prop="memberFee"
  80. v-if="
  81. quitForm.isReturnMemberFee
  82. "
  83. >
  84. <el-input
  85. :disabled='isDisabled'
  86. type="number"
  87. v-model.trim="quitForm.memberFee"
  88. style="width: 180px"
  89. >
  90. <template slot="append">元</template>
  91. </el-input>
  92. </el-form-item>
  93. </el-row> -->
  94. <!-- v-if="activeRow.cloudTeacherAmount > 0" -->
  95. <el-row>
  96. <el-form-item
  97. label="退还课程费用"
  98. prop="isReturnCourseFee"
  99. :rules="[{ required: true, message: '请选择是否退还课程费用' }]"
  100. >
  101. <el-radio
  102. :disabled="isDisabled"
  103. v-model.trim="quitForm.isReturnCourseFee"
  104. :label="true"
  105. >是</el-radio
  106. >
  107. <el-radio
  108. :disabled="isDisabled"
  109. v-model.trim="quitForm.isReturnCourseFee"
  110. :label="false"
  111. >否</el-radio
  112. >
  113. </el-form-item>
  114. <el-form-item
  115. label="退还课程金额"
  116. prop="courseFee"
  117. v-if="quitForm.isReturnCourseFee"
  118. >
  119. <el-input
  120. disabled
  121. type="number"
  122. v-model.trim="quitForm.courseFee"
  123. style="width: 180px"
  124. >
  125. <template slot="append">元</template>
  126. </el-input>
  127. </el-form-item>
  128. </el-row>
  129. <el-row>
  130. <el-form-item
  131. label="退还乐器费用"
  132. prop="isReturnMusicalFee"
  133. :rules="[{ required: true, message: '请选择是否退还乐器费用' }]"
  134. >
  135. <el-radio
  136. :disabled="isDisabled"
  137. v-model.trim="quitForm.isReturnMusicalFee"
  138. :label="true"
  139. >是</el-radio
  140. >
  141. <el-radio
  142. :disabled="isDisabled"
  143. v-model.trim="quitForm.isReturnMusicalFee"
  144. :label="false"
  145. >否</el-radio
  146. >
  147. </el-form-item>
  148. <el-form-item
  149. label="退还乐器金额"
  150. prop="musicalFee"
  151. v-if="quitForm.isReturnMusicalFee"
  152. >
  153. <el-input
  154. type="number"
  155. disabled
  156. v-model.trim="quitForm.musicalFee"
  157. style="width: 180px"
  158. >
  159. <template slot="append">元</template>
  160. </el-input>
  161. </el-form-item>
  162. </el-row>
  163. <el-row>
  164. <el-form-item
  165. :rules="[{ required: true, message: '请选择是否退还教辅费用' }]"
  166. label="退还教辅费用"
  167. prop="isReturnAccessoriesFee"
  168. >
  169. <el-radio
  170. :disabled="isDisabled"
  171. v-model.trim="quitForm.isReturnAccessoriesFee"
  172. :label="true"
  173. >是</el-radio
  174. >
  175. <el-radio
  176. :disabled="isDisabled"
  177. v-model.trim="quitForm.isReturnAccessoriesFee"
  178. :label="false"
  179. >否</el-radio
  180. >
  181. </el-form-item>
  182. <el-form-item
  183. label="退还教辅金额"
  184. prop="accessoriesFee"
  185. v-if="quitForm.isReturnAccessoriesFee"
  186. >
  187. <el-input
  188. disabled
  189. type="number"
  190. v-model.trim="quitForm.accessoriesFee"
  191. style="width: 180px"
  192. >
  193. <template slot="append">元</template>
  194. </el-input>
  195. </el-form-item>
  196. </el-row>
  197. <el-row v-if="$helpers.tenantId == 1">
  198. <el-form-item
  199. label="退还乐保费用"
  200. :rules="[{ required: true, message: '请选择是否退还乐保费用' }]"
  201. prop="isReturnMaintenanceFee"
  202. >
  203. <el-radio
  204. :disabled="isDisabled"
  205. v-model.trim="quitForm.isReturnMaintenanceFee"
  206. :label="true"
  207. >是</el-radio
  208. >
  209. <el-radio
  210. :disabled="isDisabled"
  211. v-model.trim="quitForm.isReturnMaintenanceFee"
  212. :label="false"
  213. >否</el-radio
  214. >
  215. </el-form-item>
  216. <el-form-item
  217. label="退还乐保金额"
  218. :rules="[{ required: true, message: '请输入乐保金额' }]"
  219. prop="maintenanceFee"
  220. v-if="quitForm.isReturnMaintenanceFee"
  221. >
  222. <el-input
  223. type="number"
  224. v-model="quitForm.maintenanceFee"
  225. style="width: 180px"
  226. >
  227. <template slot="append">元</template>
  228. </el-input>
  229. </el-form-item>
  230. </el-row>
  231. <el-row>
  232. <el-form-item label="退团原因" prop="reasonEnum">
  233. <el-radio-group v-model="quitForm.reasonEnum" :disabled="isDisabled">
  234. <el-radio-button
  235. :label="item.value"
  236. v-for="(item, index) in quiteReasonList"
  237. :key="index"
  238. >{{ item.label }}</el-radio-button
  239. >
  240. </el-radio-group>
  241. </el-form-item>
  242. </el-row>
  243. </div>
  244. <el-row>
  245. <el-form-item label="申请理由" prop="userComment">
  246. <el-input
  247. type="textarea"
  248. :rows="3"
  249. :disabled="isDisabled"
  250. v-model.trim="quitForm.userComment"
  251. style="width: 455px !important"
  252. ></el-input>
  253. </el-form-item>
  254. </el-row>
  255. <el-form-item label="审批理由" prop="reason">
  256. <el-input
  257. :disabled="isDisabled"
  258. type="textarea"
  259. :rows="3"
  260. v-model.trim="quitForm.reason"
  261. style="width: 455px !important"
  262. ></el-input>
  263. </el-form-item>
  264. </el-form>
  265. </div>
  266. </template>
  267. <script>
  268. import { quiteReasonList } from "@/utils/searchArray";
  269. export default {
  270. props: ["quitForm", "isDisabled"],
  271. mounted() {},
  272. data() {
  273. return {
  274. quitRules: {
  275. isCloudTeacherAmount: [{ required: true, message: "请输入云教练费用" }],
  276. cloudTeacherAmount: [
  277. { required: true, message: "请输入云教练金额", trigger: "blur" },
  278. ],
  279. isRefundCourseFee: [{ required: true, message: "请选择是否退还课程费用" }],
  280. isRefundInstrumentFee: [{ required: true, message: "选择是否退还乐器费用" }],
  281. isRefundTeachingAssistantsFee: [
  282. { required: true, message: "选择是否退还教辅费用" },
  283. ],
  284. isMaintenanceFee: [{ required: true, message: "选择是否退还乐保费用" }],
  285. maintenanceFee: [{ required: true, message: "请输入退还乐保金额" }],
  286. reason: [{ required: true, message: "请填写退团退费原因" }],
  287. isRefundMemberFee: [{ required: true, message: "请选择是否退还会员费用" }],
  288. reasonEnum: [{ required: true, message: "请选择退团原因" }],
  289. },
  290. pickerOptions: {
  291. firstDayOfWeek: 1,
  292. disabledDate(time) {
  293. return time.getTime() > new Date().getTime();
  294. },
  295. },
  296. quiteReasonList,
  297. };
  298. },
  299. };
  300. </script>
  301. <style lang="scss" scoped></style>