staffOption.js 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. import {
  2. validatedEmail,
  3. validatePhone
  4. } from "@/util/validator.js";
  5. export default {
  6. height: 'auto',
  7. calcHeight: 30,
  8. tip: false,
  9. searchShow: true,
  10. searchMenuSpan: 4,
  11. border: true,
  12. index: true,
  13. viewBtn: true,
  14. selection: true,
  15. dialogClickModal: false,
  16. addTitle: "员工录入",
  17. column: [
  18. {
  19. label: "所属园区",
  20. prop: "agencyId",
  21. type: "select",
  22. search: true,
  23. searchSpan: 4,
  24. overHidden: true,
  25. searchFilterable: true,
  26. filterable: true,
  27. remote: true,
  28. cascaderItem: ['enterpriseId'],
  29. dicUrl: '/api/cyzh-community/agency/list?size=100',
  30. dicFormatter: (res) => {
  31. return res.data.records;
  32. },
  33. props: {
  34. label: "agencyName",
  35. value: "id"
  36. },
  37. rules: [{
  38. required: true,
  39. message: "请选择所属园区",
  40. trigger: "blur"
  41. }],
  42. viewDisplay: false
  43. },
  44. {
  45. label: "所属企业",
  46. prop: "enterpriseName",
  47. editDisplay: false,
  48. addDisplay: false,
  49. },
  50. {
  51. label: "所属企业",
  52. prop: "enterpriseId",
  53. type: "select",
  54. search: true,
  55. searchSpan: 4,
  56. overHidden: true,
  57. searchFilterable: true,
  58. filterable: true,
  59. remote: true,
  60. cascaderItem: ['enterpriseDeptId'],
  61. dicUrl: '/api/cyzh-enterprise/enterprise/list?size=100&enterpriseName={{key}}',
  62. dicFormatter: (res) => {
  63. return res.data.records;
  64. },
  65. props: {
  66. label: "enterpriseName",
  67. value: "id"
  68. },
  69. rules: [{
  70. required: true,
  71. message: "请输入所属企业",
  72. trigger: "blur"
  73. }],
  74. hide: true,
  75. viewDisplay: false
  76. },
  77. {
  78. label: "所属部门",
  79. prop: "enterpriseDeptId",
  80. type: "select",
  81. width: 250,
  82. search: true,
  83. searchSpan: 4,
  84. overHidden: true,
  85. searchFilterable: true,
  86. filterable: true,
  87. dicUrl: '/api/cyzh-enterprise/dept/list?size=10&enterpriseId={{key}}',
  88. dicFormatter: (res) => {
  89. return res.data.records;
  90. },
  91. props: {
  92. label: "name",
  93. value: "id"
  94. },
  95. rules: [{
  96. required: false,
  97. message: "请输入所属部门",
  98. trigger: "blur"
  99. }],
  100. hide: true,
  101. viewDisplay: false
  102. },
  103. {
  104. label: "姓名",
  105. prop: "realName",
  106. rules: [{
  107. required: true,
  108. message: "请输入真名",
  109. trigger: "blur"
  110. }]
  111. },
  112. {
  113. label: "性别",
  114. prop: "sex",
  115. type: 'select',
  116. width: 100,
  117. dataType: "number",
  118. dicUrl: "/api/blade-system/dict-biz/dictionary?code=sex",
  119. props: {
  120. label: "dictValue",
  121. value: "dictKey"
  122. },
  123. rules: [{
  124. required: false,
  125. message: "请选择性别",
  126. trigger: "blur"
  127. }]
  128. },
  129. {
  130. label: "邮箱",
  131. prop: "email",
  132. hide: true,
  133. rules: [{
  134. required: false,
  135. message: "请输入邮箱",
  136. trigger: "blur",
  137. validator: validatedEmail
  138. }]
  139. },
  140. {
  141. label: "手机",
  142. prop: "phone",
  143. hide: true,
  144. rules: [{
  145. required: true,
  146. message: "请输入手机",
  147. trigger: "blur",
  148. }, {
  149. trigger: "blur",
  150. validator: validatePhone
  151. }]
  152. },
  153. {
  154. label: "身份证号码",
  155. prop: "idcard",
  156. hide: true,
  157. rules: [{
  158. required: false,
  159. message: "请输入身份证号码",
  160. trigger: "blur"
  161. }]
  162. },
  163. {
  164. label: "人脸",
  165. prop: "face",
  166. type: "upload",
  167. listType: 'picture-img',
  168. propsHttp: {
  169. res: "data",
  170. url: "link"
  171. },
  172. action: "/api/blade-resource/oss/endpoint/put-file",
  173. }
  174. ],
  175. group:[
  176. {
  177. icon: 'el-icon-info',
  178. label: '小程序相关',
  179. collapse: false,
  180. prop: 'group1',
  181. column: [
  182. {
  183. label: "小程序园区管理员",
  184. prop: "isAgencyManager",
  185. type: "radio",
  186. hide: true,
  187. labelWidth: 130,
  188. span: 12,
  189. value: 0,
  190. dicData: [
  191. {
  192. label: "否",
  193. value: 0
  194. },
  195. {
  196. label: "是",
  197. value: 1
  198. }
  199. ],
  200. rules: [{
  201. required: false,
  202. message: "请选择是否为园区管理员",
  203. trigger: "blur"
  204. }],
  205. change: ({value,column}) => {
  206. debugger
  207. let agencyAccountObj = this.findObject(this.group.column, "agencyAccount");
  208. let agencyPasswordObj = this.findObject(this.group.column, "agencyPassword");
  209. if(value === 1){
  210. agencyAccountObj.rules[0].required = true;
  211. agencyPasswordObj.rules[0].required = true;
  212. }else{
  213. agencyAccountObj.rules[0].required = false;
  214. agencyPasswordObj.rules[0].required = false;
  215. }
  216. },
  217. },
  218. {
  219. label: "小程序企业管理员",
  220. prop: "isEnterpriseManager",
  221. type: "radio",
  222. value: 0,
  223. span: 12,
  224. labelWidth: 130,
  225. dicData: [
  226. {
  227. label: "否",
  228. value: 0
  229. },
  230. {
  231. label: "是",
  232. value: 1
  233. }
  234. ],
  235. hide: true,
  236. rules: [{
  237. required: false,
  238. message: "请选择是否为企业管理员",
  239. trigger: "blur"
  240. }],
  241. change: ({value,column}) => {
  242. },
  243. },
  244. {
  245. label: "园区管理员登录账号",
  246. prop: "agencyAccount",
  247. hide: true,
  248. labelWidth:160,
  249. rules: [{
  250. required: true,
  251. message: "请输入小程序园区管理员登录账号",
  252. trigger: "blur"
  253. }]
  254. },
  255. {
  256. label: "小程序企业管理员账号",
  257. prop: "enterpriseAccount",
  258. labelWidth:160,
  259. hide: true,
  260. rules: [{
  261. required: true,
  262. message: "请输入小程序企业管理员登录账号",
  263. trigger: "blur"
  264. }]
  265. },
  266. {
  267. label: "小程序园区管理员密码",
  268. prop: "agencyPassword",
  269. hide: true,
  270. labelWidth:160,
  271. rules: [{
  272. required: true,
  273. message: "请输入园区管理员登录密码",
  274. trigger: "blur"
  275. }]
  276. },
  277. {
  278. label: "企业管理员登录密码",
  279. prop: "enterprisePassword",
  280. hide: true,
  281. labelWidth:160,
  282. rules: [{
  283. required: true,
  284. message: "请输入企业管理员登录密码",
  285. trigger: "blur"
  286. }]
  287. },
  288. ]
  289. }
  290. ]
  291. }