tdksh.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478
  1. <script setup lang="ts">
  2. import { ref, getCurrentInstance, reactive } from "vue";
  3. import { useRouter } from "vue-router";
  4. import request, { download } from '~/utils/request';
  5. import { pick } from 'lodash-es';
  6. import { ElMessage } from 'element-plus'
  7. import type { FormInstance, FormRules } from 'element-plus'
  8. import type { AxiosRequestConfig } from 'axios'
  9. // #region (constant)
  10. const TABLE_KEY = 'xtw_id'
  11. const URL_CUT = '/xdjx/tdkgl_wdtdk'
  12. const URL_CUT_REF = ref(URL_CUT)
  13. const URL_SUBMIT_KEY = URL_CUT.split('/').join('_').slice(1)
  14. const instance = getCurrentInstance()
  15. const router = useRouter()
  16. // #endregion
  17. // #region (variable)
  18. const loading_table = ref(true)
  19. let whichDialogSubmit: 'add' | 'edit'
  20. // #endregion
  21. // #region (type)
  22. type TYPE_TABLE_FIELD = {
  23. [TABLE_KEY]: string;
  24. 'xtw_jsxm': string; // 申请教师姓名
  25. 'xtw_jsxm_user_id': string; // 申请教师用户编号
  26. 'team_id': string; // 学期编号
  27. 'team_name': string; // 学期名称
  28. 'xtw_tkzc': string; // 调课周次
  29. 'xtw_zcsj': string; // 调课周次时间
  30. 'xtw_tkjc': string; // 调课节次
  31. 'xtw_tkxq': string; // 调课星期
  32. 'xtw_tkmc': string; // 调课名称
  33. 'xtw_tkyy': string; // 调课原因
  34. 'xtw_tklx': string; // 调课类型
  35. 'xtw_hdkjc': string; // 换代课节次
  36. 'xtw_hdkjs_user_id': string; // 换代课教师用户编号
  37. 'xtw_hdkxq': string; // 换代课星期
  38. 'xtw_hdkmc': string; // 换代课名称
  39. 'xtw_hdkjsxm': string; // 换代课教师姓名
  40. 'xtw_hdkzc': string; // 换代课周次
  41. 'xtw_hdkzcsj': string; // 换代课周次时间
  42. 'xtw_shzt': string; // 审核状态
  43. }
  44. // #endregion
  45. // #region (props)
  46. // #endregion
  47. // #region (query row)
  48. const queryForm_Data = ref<Partial<TYPE_TABLE_FIELD>>({})
  49. const handleQueryFormBtn_search = () => {
  50. queryApi()
  51. }
  52. const handleQueryFormBtn_clear = () => {
  53. queryForm_Data.value = {}
  54. }
  55. // #endregion
  56. // #region (table selection)
  57. const multipleSelection = ref<TYPE_TABLE_FIELD[]>([])
  58. const handleSelectionChange = (val: TYPE_TABLE_FIELD[]) => {
  59. multipleSelection.value = val
  60. }
  61. // #endregion
  62. // #region (table row)
  63. const handleTableRowBtn_import = async ({ file }: { file: File }) => {
  64. const res = await API_MAP['import']({ file })
  65. if (res.code === '1') {
  66. queryApi()
  67. ElMessage.success(res.msg)
  68. }
  69. }
  70. const handleTableRowBtn_export = () => {
  71. exportApi()
  72. }
  73. const handleTableRowBtn_add = () => {
  74. whichDialogSubmit = 'add'
  75. dialogForm_Data.value = {}
  76. dialogVisible_addOrEdit.value = true
  77. }
  78. const handleTableRowBtn_delete = async () => {
  79. await deleteApi(multipleSelection.value.map((item: TYPE_TABLE_FIELD) => item[TABLE_KEY]))
  80. queryApi()
  81. }
  82. // #endregion
  83. // #region (table body)
  84. const tableData = ref<TYPE_TABLE_FIELD[]>([])
  85. const DetailName = '-TDKGL-WDTDK'
  86. const DetailParam = 'aid'
  87. const handleTableColBtn_edit = async (scope: { row: TYPE_TABLE_FIELD }) => {
  88. whichDialogSubmit = 'edit'
  89. const res = await detailApi(scope.row[TABLE_KEY])
  90. dialogForm_Data.value = (res.data.one_info)
  91. dialogVisible_addOrEdit.value = true
  92. }
  93. const handleTableColBtn_audit = (scope: { row: TYPE_TABLE_FIELD }) => {
  94. whichDialogSubmit = 'edit'
  95. dialogForm_Data.value = { ...scope.row }
  96. dialogVisible_audit.value = true
  97. }
  98. const handleTableColBtn_detail = (scope: { row: TYPE_TABLE_FIELD }) => {
  99. router.push({ name: DetailName, params: { [DetailParam]: scope.row[TABLE_KEY] } })
  100. }
  101. const handleTableColBtn_delete = async (scope: { row: TYPE_TABLE_FIELD }) => {
  102. await deleteApi(scope.row[TABLE_KEY])
  103. queryApi()
  104. }
  105. // #endregion
  106. // #region (pagination)
  107. const total = ref(0)
  108. const limit = ref(10)
  109. const currentPage = ref(1)
  110. function handleCurrentChange() {
  111. queryApi()
  112. }
  113. // #endregion
  114. // #region (dialog base)
  115. const dialogForm_Data = ref<Partial<TYPE_TABLE_FIELD>>({})
  116. const handleDialogFormBtn_submit = async (formRefKey: string) => {
  117. const isValid = await (instance?.refs[formRefKey] as FormInstance).validate((valid: boolean) => valid)
  118. if (isValid) {
  119. await API_MAP[whichDialogSubmit](<TYPE_TABLE_FIELD>(dialogForm_Data.value))
  120. handleDialogFormBtn_cancel()
  121. queryApi()
  122. }
  123. }
  124. const handleDialogFormBtn_cancel = (formRefKey?: string) => {
  125. dialogVisible_addOrEdit.value = false
  126. dialogVisible_audit.value = false
  127. }
  128. // #endregion
  129. // #region (dialog add/edit)
  130. const dialogVisible_addOrEdit = ref<boolean>(false)
  131. const dialogForm_Ref_addOrEdit = ref<FormInstance>()
  132. const dialogForm_Rules_addOrEdit = reactive({
  133. 'xtw_jsxm': { required: true, message: '申请教师姓名不能为空' },
  134. 'xtw_jsxm_user_id': { required: true, message: '申请教师用户编号不能为空' },
  135. 'team_id': { required: true, message: '学期编号不能为空' },
  136. 'team_name': { required: true, message: '学期名称不能为空' },
  137. 'xtw_tkzc': { required: true, message: '调课周次不能为空' },
  138. 'xtw_zcsj': { required: true, message: '调课周次时间不能为空' },
  139. 'xtw_tkjc': { required: true, message: '调课节次不能为空' },
  140. 'xtw_tkxq': { required: true, message: '调课星期不能为空' },
  141. 'xtw_tkmc': { required: true, message: '调课名称不能为空' },
  142. 'xtw_tkyy': { required: true, message: '调课原因不能为空' },
  143. 'xtw_tklx': { required: true, message: '调课类型不能为空' },
  144. 'xtw_hdkjc': { required: true, message: '换代课节次不能为空' },
  145. 'xtw_hdkjs_user_id': { required: true, message: '换代课教师用户编号不能为空' },
  146. 'xtw_hdkxq': { required: true, message: '换代课星期不能为空' },
  147. 'xtw_hdkmc': { required: true, message: '换代课名称不能为空' },
  148. 'xtw_hdkjsxm': { required: true, message: '换代课教师姓名不能为空' },
  149. 'xtw_hdkzc': { required: true, message: '换代课周次不能为空' },
  150. 'xtw_hdkzcsj': { required: true, message: '换代课周次时间不能为空' },
  151. 'xtw_shzt': { required: true, message: '审核状态不能为空' },
  152. })
  153. // #endregion
  154. // #region (dialog audit)
  155. const dialogVisible_audit = ref<boolean>(false)
  156. const dialogForm_Field_audit = reactive<{
  157. FLAG: keyof TYPE_TABLE_FIELD,
  158. REASON?: keyof TYPE_TABLE_FIELD
  159. }>({
  160. FLAG: 'xtw_shzt',
  161. })
  162. const dialogForm_Ref_audit = ref<FormInstance>()
  163. const dialogForm_Rules_audit = reactive<FormRules>({
  164. 'xtw_jsxm': { required: true, message: '申请教师姓名不能为空' },
  165. 'xtw_jsxm_user_id': { required: true, message: '申请教师用户编号不能为空' },
  166. 'team_id': { required: true, message: '学期编号不能为空' },
  167. 'team_name': { required: true, message: '学期名称不能为空' },
  168. 'xtw_tkzc': { required: true, message: '调课周次不能为空' },
  169. 'xtw_zcsj': { required: true, message: '调课周次时间不能为空' },
  170. 'xtw_tkjc': { required: true, message: '调课节次不能为空' },
  171. 'xtw_tkxq': { required: true, message: '调课星期不能为空' },
  172. 'xtw_tkmc': { required: true, message: '调课名称不能为空' },
  173. 'xtw_tkyy': { required: true, message: '调课原因不能为空' },
  174. 'xtw_tklx': { required: true, message: '调课类型不能为空' },
  175. 'xtw_hdkjc': { required: true, message: '换代课节次不能为空' },
  176. 'xtw_hdkjs_user_id': { required: true, message: '换代课教师用户编号不能为空' },
  177. 'xtw_hdkxq': { required: true, message: '换代课星期不能为空' },
  178. 'xtw_hdkmc': { required: true, message: '换代课名称不能为空' },
  179. 'xtw_hdkjsxm': { required: true, message: '换代课教师姓名不能为空' },
  180. 'xtw_hdkzc': { required: true, message: '换代课周次不能为空' },
  181. 'xtw_hdkzcsj': { required: true, message: '换代课周次时间不能为空' },
  182. 'xtw_shzt': { required: true, message: '审核状态不能为空' },
  183. })
  184. // #endregion
  185. // #region (request api):
  186. function queryApi() {
  187. loading_table.value = true
  188. return request({
  189. url: URL_CUT + '/index',
  190. data: {
  191. ...queryForm_Data.value,
  192. limit: limit.value,
  193. page: currentPage.value
  194. }
  195. }).then((response: { data: { total_rows: string, page_data: TYPE_TABLE_FIELD[] } }) => {
  196. const { data } = response
  197. total.value = parseInt(data.total_rows)
  198. tableData.value = data.page_data
  199. return response
  200. }).then(() => {
  201. loading_table.value = false
  202. })
  203. }
  204. function addApi(data: TYPE_TABLE_FIELD) {
  205. return request({
  206. url: URL_CUT + '/add',
  207. data: {
  208. [URL_SUBMIT_KEY]: data,
  209. }
  210. })
  211. }
  212. function editApi(data: TYPE_TABLE_FIELD) {
  213. return request({
  214. url: URL_CUT + '/edit',
  215. data: {
  216. [TABLE_KEY]: data[TABLE_KEY],
  217. [URL_SUBMIT_KEY]: pick(data, ['xtw_jsxm', 'xtw_jsxm_user_id', 'team_id', 'team_name', 'xtw_tkzc', 'xtw_zcsj', 'xtw_tkjc', 'xtw_tkxq', 'xtw_tkmc', 'xtw_tkyy', 'xtw_tklx', 'xtw_hdkjc', 'xtw_hdkjs_user_id', 'xtw_hdkxq', 'xtw_hdkmc', 'xtw_hdkjsxm', 'xtw_hdkzc', 'xtw_hdkzcsj', 'xtw_shzt',]),
  218. }
  219. })
  220. }
  221. function deleteApi(id: string | string[]) {
  222. return request({
  223. url: URL_CUT + '/delete',
  224. data: {
  225. [TABLE_KEY]: id,
  226. }
  227. })
  228. }
  229. function detailApi(id: string) {
  230. return request({
  231. url: URL_CUT + '/detail',
  232. data: {
  233. [TABLE_KEY]: id,
  234. }
  235. })
  236. }
  237. function importApi(data: { file: File }) {
  238. return request({
  239. $type: 'import',
  240. url: URL_CUT + '/import',
  241. data
  242. } as AxiosRequestConfig)
  243. }
  244. function exportApi() {
  245. return download(URL_CUT + '/index', queryForm_Data.value)
  246. }
  247. const API_MAP = {
  248. query: queryApi,
  249. add: addApi,
  250. edit: editApi,
  251. delete: deleteApi,
  252. detail: detailApi,
  253. import: importApi,
  254. export: exportApi,
  255. }
  256. // #endregion
  257. // #region (page init)
  258. function init() {
  259. queryApi()
  260. }
  261. init()
  262. // #endregion
  263. </script>
  264. <template>
  265. <div class="card flex-grow flex flex-col">
  266. <el-form inline :model="queryForm_Data">
  267. <el-form-item label="申请教师姓名">
  268. <el-input v-model="queryForm_Data.xtw_jsxm" clearable />
  269. </el-form-item>
  270. <!-- <el-form-item label="申请教师用户编号"><el-input v-model="queryForm_Data.xtw_jsxm_user_id" clearable /></el-form-item>
  271. <el-form-item label="学期编号"><el-input v-model="queryForm_Data.team_id" clearable /></el-form-item> -->
  272. <!-- <el-form-item label="学期名称"><el-input v-model="queryForm_Data.team_name" clearable /></el-form-item> -->
  273. <!-- <el-form-item label="调课周次"><el-input v-model="queryForm_Data.xtw_tkzc" clearable /></el-form-item>
  274. <el-form-item label="调课周次时间"><el-input v-model="queryForm_Data.xtw_zcsj" clearable /></el-form-item>
  275. <el-form-item label="调课节次"><el-input v-model="queryForm_Data.xtw_tkjc" clearable /></el-form-item>
  276. <el-form-item label="调课星期"><el-input v-model="queryForm_Data.xtw_tkxq" clearable /></el-form-item>
  277. <el-form-item label="调课名称"><el-input v-model="queryForm_Data.xtw_tkmc" clearable /></el-form-item>
  278. <el-form-item label="调课原因"><el-input v-model="queryForm_Data.xtw_tkyy" type="textarea" /></el-form-item>
  279. <el-form-item label="调课类型"><el-select v-model="queryForm_Data.xtw_tklx" clearable ><el-option label="调代课" value="1" /><el-option label="调换课" value="2" /></el-select></el-form-item>
  280. <el-form-item label="换代课节次"><el-input v-model="queryForm_Data.xtw_hdkjc" clearable /></el-form-item>
  281. <el-form-item label="换代课教师用户编号"><el-input v-model="queryForm_Data.xtw_hdkjs_user_id" clearable /></el-form-item>
  282. <el-form-item label="换代课星期"><el-input v-model="queryForm_Data.xtw_hdkxq" clearable /></el-form-item>
  283. <el-form-item label="换代课名称"><el-input v-model="queryForm_Data.xtw_hdkmc" clearable /></el-form-item>
  284. <el-form-item label="换代课教师姓名"><el-input v-model="queryForm_Data.xtw_hdkjsxm" clearable /></el-form-item>
  285. <el-form-item label="换代课周次"><el-input v-model="queryForm_Data.xtw_hdkzc" clearable /></el-form-item>
  286. <el-form-item label="换代课周次时间"><el-input v-model="queryForm_Data.xtw_hdkzcsj" clearable /></el-form-item>
  287. <el-form-item label="审核状态"><el-select v-model="queryForm_Data.xtw_shzt" clearable ><el-option label="通过" value="1" /><el-option label="不通过" value="2" /></el-select></el-form-item> -->
  288. <el-form-item>
  289. <el-button @click="handleQueryFormBtn_search" type="primary">搜索</el-button>
  290. <el-button @click="handleQueryFormBtn_clear" type="warning">清空</el-button>
  291. </el-form-item>
  292. </el-form>
  293. <div class="divider"></div>
  294. <div>
  295. <import-button :url="URL_CUT_REF"></import-button>
  296. <el-button @click="handleTableRowBtn_export" type="success">导出</el-button>
  297. <el-button @click="handleTableRowBtn_add" type="primary">新增</el-button>
  298. <el-button @click="handleTableRowBtn_delete" type="danger">删除</el-button>
  299. </div>
  300. <div class="divider"></div>
  301. <div class="flex-auto">
  302. <el-table :data="tableData" @selection-change="handleSelectionChange" v-loading="loading_table"
  303. element-loading-background="#ffffff70">
  304. <el-table-column type="selection"></el-table-column>
  305. <el-table-column prop="xtw_jsxm" label="申请教师姓名" width="auto" show-overflow-tooltip></el-table-column>
  306. <!-- <el-table-column prop="xtw_jsxm_user_id" label="申请教师用户编号" width="auto" show-overflow-tooltip></el-table-column> -->
  307. <!-- <el-table-column prop="team_id" label="学期编号" width="auto" show-overflow-tooltip></el-table-column> -->
  308. <el-table-column prop="team_name" label="学期名称" width="auto" show-overflow-tooltip></el-table-column>
  309. <el-table-column label="调课" width="500" show-overflow-tooltip>
  310. <template #default="{ row: { xtw_jsxm, xtw_tkzc, xtw_zcsj, xtw_tkjc, xtw_tkxq, xtw_tkmc } }">
  311. {{ xtw_jsxm }}-{{ xtw_tkzc }}-{{ xtw_zcsj }}-{{ xtw_tkjc }}-{{ xtw_tkxq }}-{{ xtw_tkmc }}
  312. </template>
  313. </el-table-column>
  314. <!-- <el-table-column prop="xtw_tkzc" label="调课周次" width="auto" show-overflow-tooltip></el-table-column>
  315. <el-table-column prop="xtw_zcsj" label="调课周次时间" width="auto" show-overflow-tooltip></el-table-column>
  316. <el-table-column prop="xtw_tkjc" label="调课节次" width="auto" show-overflow-tooltip></el-table-column>
  317. <el-table-column prop="xtw_tkxq" label="调课星期" width="auto" show-overflow-tooltip></el-table-column>
  318. <el-table-column prop="xtw_tkmc" label="调课名称" width="auto" show-overflow-tooltip></el-table-column> -->
  319. <el-table-column label="换代课" width="500" show-overflow-tooltip>
  320. <template #default="{ row: { xtw_hdkjsxm, xtw_hdkzc, xtw_hdkzcsj, xtw_hdkjc, xtw_hdkxq, xtw_hdkmc } }">
  321. {{ xtw_hdkjsxm }}-{{ xtw_hdkzc }}-{{ xtw_hdkzcsj }}-{{ xtw_hdkjc }}-{{ xtw_hdkxq }}-{{ xtw_hdkmc }}
  322. </template>
  323. </el-table-column>
  324. <!-- <el-table-column prop="xtw_hdkjs_user_id" label="换代课教师用户编号" width="auto" show-overflow-tooltip></el-table-column>
  325. <el-table-column prop="xtw_hdkjc" label="换代课节次" width="auto" show-overflow-tooltip></el-table-column>
  326. <el-table-column prop="xtw_hdkxq" label="换代课星期" width="auto" show-overflow-tooltip></el-table-column>
  327. <el-table-column prop="xtw_hdkmc" label="换代课名称" width="auto" show-overflow-tooltip></el-table-column>
  328. <el-table-column prop="xtw_hdkjsxm" label="换代课教师姓名" width="auto" show-overflow-tooltip></el-table-column>
  329. <el-table-column prop="xtw_hdkzc" label="换代课周次" width="auto" show-overflow-tooltip></el-table-column>
  330. <el-table-column prop="xtw_hdkzcsj" label="换代课周次时间" width="auto" show-overflow-tooltip></el-table-column> -->
  331. <el-table-column prop="xtw_tklx" label="调课类型" width="auto" show-overflow-tooltip></el-table-column>
  332. <el-table-column prop="xtw_tkyy" label="调课原因" width="auto" show-overflow-tooltip></el-table-column>
  333. <el-table-column prop="xtw_shzt" label="审核状态" width="auto" show-overflow-tooltip></el-table-column>
  334. <el-table-column label="操作" fixed="right">
  335. <template #default="scope">
  336. <!-- <el-link @click="handleTableColBtn_edit(scope)" type="primary" :underline="false" class="mr-2">编辑</el-link> -->
  337. <el-link @click="handleTableColBtn_audit(scope)" type="primary" :underline="false" class="mr-2">审核</el-link>
  338. <!-- <el-link @click="handleTableColBtn_detail(scope)" type="primary" :underline="false" class="mr-2">详情</el-link> -->
  339. <!-- <el-link @click="handleTableColBtn_delete(scope)" type="primary" :underline="false" class="mr-2">删除</el-link> -->
  340. </template>
  341. </el-table-column>
  342. </el-table>
  343. </div>
  344. <div class="flex justify-end mt-10 py-4">
  345. <el-pagination :page-size="limit" v-model:current-page="currentPage" @current-change="handleCurrentChange"
  346. background layout="total, prev, pager, next" :total="total" />
  347. </div>
  348. </div>
  349. <el-dialog v-model="dialogVisible_addOrEdit" append-to-body destroy-on-close>
  350. <el-form :model="dialogForm_Data" ref="dialogForm_Ref_addOrEdit" :rules="dialogForm_Rules_addOrEdit"
  351. label-width="120px">
  352. <el-form-item label="申请教师姓名" prop="xtw_jsxm">
  353. <el-input v-model="dialogForm_Data.xtw_jsxm" clearable />
  354. </el-form-item>
  355. <el-form-item label="申请教师用户编号" prop="xtw_jsxm_user_id">
  356. <el-input v-model="dialogForm_Data.xtw_jsxm_user_id" clearable />
  357. </el-form-item>
  358. <el-form-item label="学期编号" prop="team_id">
  359. <el-input v-model="dialogForm_Data.team_id" clearable />
  360. </el-form-item>
  361. <el-form-item label="学期名称" prop="team_name">
  362. <el-input v-model="dialogForm_Data.team_name" clearable />
  363. </el-form-item>
  364. <el-form-item label="调课周次" prop="xtw_tkzc">
  365. <el-input v-model="dialogForm_Data.xtw_tkzc" clearable />
  366. </el-form-item>
  367. <el-form-item label="调课周次时间" prop="xtw_zcsj">
  368. <el-input v-model="dialogForm_Data.xtw_zcsj" clearable />
  369. </el-form-item>
  370. <el-form-item label="调课节次" prop="xtw_tkjc">
  371. <el-input v-model="dialogForm_Data.xtw_tkjc" clearable />
  372. </el-form-item>
  373. <el-form-item label="调课星期" prop="xtw_tkxq">
  374. <el-input v-model="dialogForm_Data.xtw_tkxq" clearable />
  375. </el-form-item>
  376. <el-form-item label="调课名称" prop="xtw_tkmc">
  377. <el-input v-model="dialogForm_Data.xtw_tkmc" clearable />
  378. </el-form-item>
  379. <el-form-item label="调课原因" prop="xtw_tkyy">
  380. <el-input v-model="dialogForm_Data.xtw_tkyy" type="textarea" />
  381. </el-form-item>
  382. <el-form-item label="调课类型" prop="xtw_tklx">
  383. <el-radio-group v-model="dialogForm_Data.xtw_tklx">
  384. <el-radio label="1">调代课</el-radio>
  385. <el-radio label="2">调换课</el-radio>
  386. </el-radio-group>
  387. </el-form-item>
  388. <el-form-item label="换代课节次" prop="xtw_hdkjc">
  389. <el-input v-model="dialogForm_Data.xtw_hdkjc" clearable />
  390. </el-form-item>
  391. <el-form-item label="换代课教师用户编号" prop="xtw_hdkjs_user_id">
  392. <el-input v-model="dialogForm_Data.xtw_hdkjs_user_id" clearable />
  393. </el-form-item>
  394. <el-form-item label="换代课星期" prop="xtw_hdkxq">
  395. <el-input v-model="dialogForm_Data.xtw_hdkxq" clearable />
  396. </el-form-item>
  397. <el-form-item label="换代课名称" prop="xtw_hdkmc">
  398. <el-input v-model="dialogForm_Data.xtw_hdkmc" clearable />
  399. </el-form-item>
  400. <el-form-item label="换代课教师姓名" prop="xtw_hdkjsxm">
  401. <el-input v-model="dialogForm_Data.xtw_hdkjsxm" clearable />
  402. </el-form-item>
  403. <el-form-item label="换代课周次" prop="xtw_hdkzc">
  404. <el-input v-model="dialogForm_Data.xtw_hdkzc" clearable />
  405. </el-form-item>
  406. <el-form-item label="换代课周次时间" prop="xtw_hdkzcsj">
  407. <el-input v-model="dialogForm_Data.xtw_hdkzcsj" clearable />
  408. </el-form-item>
  409. <el-form-item label="审核状态" prop="xtw_shzt">
  410. <el-radio-group v-model="dialogForm_Data.xtw_shzt">
  411. <el-radio label="1">通过</el-radio>
  412. <el-radio label="2">不通过</el-radio>
  413. </el-radio-group>
  414. </el-form-item>
  415. <div class="flex justify-center">
  416. <el-button @click="handleDialogFormBtn_submit('dialogForm_Ref_addOrEdit')" type="primary">提交</el-button>
  417. <el-button @click="handleDialogFormBtn_cancel('dialogForm_Ref_addOrEdit')" type="default">取消</el-button>
  418. </div>
  419. </el-form>
  420. </el-dialog>
  421. <el-dialog v-model="dialogVisible_audit" append-to-body destroy-on-close>
  422. <el-form :model="dialogForm_Data" ref="dialogForm_Ref_audit" :rules="dialogForm_Rules_audit" label-width="120px">
  423. <el-form-item label="状态">
  424. <el-radio-group v-model="dialogForm_Data[dialogForm_Field_audit.FLAG]">
  425. <el-radio label="1">通过</el-radio>
  426. <el-radio label="2">未通过</el-radio>
  427. </el-radio-group>
  428. </el-form-item>
  429. <!-- <el-form-item label="原因" v-show="dialogForm_Data[dialogForm_Field_audit.FLAG] === '1'">
  430. <el-input type="textarea" v-model="dialogForm_Data[dialogForm_Field_audit.REASON]" :rows="5" />
  431. </el-form-item> -->
  432. <div class="flex justify-center">
  433. <el-button @click="handleDialogFormBtn_submit('dialogForm_Ref_audit')" type="primary">提交</el-button>
  434. <el-button @click="handleDialogFormBtn_cancel('dialogForm_Ref_audit')" type="default">取消</el-button>
  435. </div>
  436. </el-form>
  437. </el-dialog>
  438. </template>