studentBaseManage.vue 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. <template>
  2. <div id="studentBaseManage">
  3. <div class="YZsty">
  4. <el-form
  5. label-position="right"
  6. label-width="120px"
  7. :model="listData"
  8. ref="listData"
  9. :rules="rules"
  10. >
  11. <el-row :gutter="20">
  12. <el-col :span="12">
  13. <el-form-item label="学员编码" prop="studentCode">
  14. <el-input disabled v-model="listData.studentCode"></el-input>
  15. </el-form-item>
  16. <el-form-item label="绑定手机号" prop="telphone">
  17. <el-input disabled v-model="listData.telphone"></el-input>
  18. </el-form-item>
  19. <el-form-item label="姓名" prop="realname">
  20. <el-input disabled v-model="listData.realname"></el-input>
  21. </el-form-item>
  22. <el-form-item label="身份证号码" prop="idCard">
  23. <el-input disabled v-model="listData.idCard"></el-input>
  24. </el-form-item>
  25. <el-form-item label="性别" prop="sex">
  26. <el-radio-group v-model="listData.sex">
  27. <el-radio :label="1">男</el-radio>
  28. <el-radio :label="2">女</el-radio>
  29. </el-radio-group>
  30. </el-form-item>
  31. <el-form-item label="出生日期" prop="userBirth">
  32. <el-date-picker
  33. v-model="listData.userBirth"
  34. type="date"
  35. placeholder="选择出生日期"
  36. format="yyyy 年 MM 月 dd 日"
  37. value-format="yyyy-MM-dd"
  38. >
  39. </el-date-picker>
  40. </el-form-item>
  41. <el-form-item label="微信" prop="nickname">
  42. <el-input disabled v-model="listData.nickname"></el-input>
  43. </el-form-item>
  44. <el-form-item label="邮箱" prop="email">
  45. <el-input v-model="listData.email"></el-input>
  46. </el-form-item>
  47. <el-form-item label="学历" prop="eduLevel">
  48. <el-select v-model="listData.eduLevel" placeholder="请选择学历">
  49. <el-option
  50. v-for="(item, index) in dictManages['edu_level']"
  51. :key="index"
  52. :label="item"
  53. :value="item"
  54. >
  55. </el-option>
  56. </el-select>
  57. </el-form-item>
  58. <el-form-item label="工作年限">
  59. <el-select
  60. v-model="listData.workYear"
  61. placeholder="请选择工作年限"
  62. >
  63. <el-option
  64. v-for="(item, index) in dictManages['working_years']"
  65. :key="index"
  66. :label="item"
  67. :value="item"
  68. >
  69. </el-option>
  70. </el-select>
  71. </el-form-item>
  72. <el-form-item label="在职状况" prop="jobStatus">
  73. <el-radio-group v-model="listData.jobStatus">
  74. <el-radio :label="1">在职</el-radio>
  75. <el-radio :label="2">离职</el-radio>
  76. </el-radio-group>
  77. </el-form-item>
  78. </el-col>
  79. <el-col :span="12">
  80. <el-form-item label="民族" prop="nation">
  81. <el-input v-model="listData.nation"></el-input>
  82. </el-form-item>
  83. <el-form-item label="籍贯" prop="nativePlace">
  84. <el-input v-model="listData.nativePlace"></el-input>
  85. </el-form-item>
  86. <el-form-item label="政治面貌" prop="politic">
  87. <el-select
  88. v-model="listData.politic"
  89. placeholder="请选择政治面貌"
  90. >
  91. <el-option
  92. v-for="(item, index) in dictManages['politic_status']"
  93. :key="index"
  94. :label="item"
  95. :value="item"
  96. >
  97. </el-option>
  98. </el-select>
  99. </el-form-item>
  100. <el-form-item label="婚姻状况" prop="marry">
  101. <el-select v-model="listData.marry" placeholder="请选择婚姻状况">
  102. <el-option
  103. v-for="(item, index) in dictManages['marry_status']"
  104. :key="index"
  105. :label="item"
  106. :value="item"
  107. >
  108. </el-option>
  109. </el-select>
  110. </el-form-item>
  111. <el-form-item label="户口性质" prop="census">
  112. <el-select v-model="listData.census" placeholder="请选择户口性质">
  113. <el-option
  114. v-for="item in options"
  115. :key="item.value"
  116. :label="item.label"
  117. :value="item.value"
  118. >
  119. </el-option>
  120. </el-select>
  121. </el-form-item>
  122. <el-form-item label="户口所在地" prop="houseAddress">
  123. <el-input v-model="listData.houseAddress"></el-input>
  124. </el-form-item>
  125. <el-form-item label="联系地址" prop="contactAddress">
  126. <el-input v-model="listData.contactAddress"></el-input>
  127. </el-form-item>
  128. <el-form-item label="收件地址" prop="consigneeAddress">
  129. <el-input v-model="listData.consigneeAddress"></el-input>
  130. </el-form-item>
  131. <el-form-item label="备注" prop="remark">
  132. <el-input
  133. type="textarea"
  134. :rows="4"
  135. v-model="listData.remark"
  136. ></el-input>
  137. </el-form-item>
  138. <el-form-item label="所在公司" prop="companyName">
  139. <el-input v-model="listData.companyName"></el-input>
  140. </el-form-item>
  141. </el-col>
  142. </el-row>
  143. </el-form>
  144. <div style="text-align: center">
  145. <el-button @click="backPage">返回</el-button>
  146. <el-button type="primary" @click="submit('listData')">保存</el-button>
  147. </div>
  148. </div>
  149. </div>
  150. </template>
  151. <script>
  152. import { mapGetters } from "vuex";
  153. export default {
  154. data() {
  155. return {
  156. options: [
  157. {
  158. label: "农村户口",
  159. value: 1,
  160. },
  161. {
  162. label: "城镇户口",
  163. value: 2,
  164. },
  165. ],
  166. listData: {},
  167. rules: {},
  168. };
  169. },
  170. computed: {
  171. ...mapGetters(["dictManages"]),
  172. },
  173. mounted() {
  174. this.getUserInfos();
  175. },
  176. methods: {
  177. getUserInfos() {
  178. this.$api
  179. .inquiregradestudentlistStudent({ userId: this.$route.query.id })
  180. .then((res) => {
  181. this.listData = res.rows[0];
  182. console.log(res);
  183. });
  184. },
  185. backPage() {
  186. this.$store.dispatch("tagsView/delView", this.$route).then((res) => {
  187. this.$router.push({
  188. path: "StudentList",
  189. });
  190. });
  191. },
  192. submit() {
  193. this.$api.editgradestudent(this.listData).then((res) => {
  194. this.$message.success("保存成功");
  195. });
  196. },
  197. },
  198. };
  199. </script>
  200. <style lang="less" scoped>
  201. .YZsty {
  202. background-color: #eee;
  203. padding: 30px;
  204. }
  205. .fgx {
  206. border-bottom: 1px dotted #9a9a9a;
  207. margin-bottom: 12px;
  208. }
  209. </style>