identity.vue 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258
  1. <template>
  2. <view class="total-page page-env-160 page-box task-bg">
  3. <Nav :title="title" :genre="4" is_fixed :opacity="scrollTop" :fixedHeight="fixedHeight"
  4. :navsHeight="fixedHeight" :bgHeight="fixedHeight">
  5. <!-- 步鄹条start -->
  6. <view class="task-tabs" :style="{top:`${$tools.topHeight()}px`}">
  7. <view class="row-justify-sb m-lr50 m-tb20">
  8. <view class="column-c" style="text-align: center;" @click="setNum(1)">
  9. <image class="wh-45 m-b16" :src="`/static/img/information/${step === 1?'double':'correct'}.png`"
  10. mode="aspectFill"></image>
  11. <text class="size-24"
  12. :class="step === 1?'color-0FB160 sys-weight-600':'sys-weight-400'">身份认证</text>
  13. </view>
  14. <view class="line"></view>
  15. <view class="column-c justify-center" @click="setNum(2)">
  16. <image class="wh-45 m-b16" :src="`/static/img/information/${stepTwo[step-1]}.png`"
  17. mode="aspectFill"></image>
  18. <text class="size-24"
  19. :class="step === 2?'color-0FB160 sys-weight-600':'sys-weight-400'">教育职业信息</text>
  20. </view>
  21. <view class="line"></view>
  22. <view class="column-c justify-center" @click="setNum(3)">
  23. <image class="wh-45 m-b16" :src="`/static/img/information/${stepThree[step-1]}.png`"
  24. mode="aspectFill"></image>
  25. <text class="size-24"
  26. :class="step === 3?'color-0FB160 sys-weight-600':'sys-weight-400'">社保信息</text>
  27. </view>
  28. </view>
  29. </view>
  30. <!-- 步鄹条end -->
  31. </Nav>
  32. <view class=" page-env-20" :style="[{top:`${$tools.topHeight() + fixedHeight}px`}]">
  33. <!-- 身份认证start -->
  34. <view class="m-t20 m-lr30 text-color-12" v-if="step === 1">
  35. <view class="sys-background-fff r-20 p-lr30 p-t30">
  36. <text class="size-30 sys-weight-600'">身份认证</text>
  37. <view class="size-26 m-t10 text-color-999">应监管要求,请先进行身份认证</view>
  38. <view class="sys-bg-BFD2CC row-justify-sb sys-weight-500 center r-20 p-30 m-t40">
  39. <view class="row-c flex">
  40. <image class="wh-45 m-r20" src="/static/img/task/sf_icon.png" mode=""></image>
  41. <text class="size-26">身份证认证</text>
  42. </view>
  43. <button class="attestation-button button-background button-color size-26 r-30" type="default"
  44. hover-class="is-hover" @click="onAuthentication">去认证</button>
  45. </view>
  46. <view class="p-t20">
  47. <WhInput :value="formData.name" name="姓名" placeholder="待自动录入" disabled></WhInput>
  48. <WhInput :value="formData.gender" name="性别" placeholder="待自动录入" disabled></WhInput>
  49. <WhInput :value="formData.id_number" :is_border="false" :name="'身份证号'" placeholder="待自动录入"
  50. disabled>
  51. </WhInput>
  52. </view>
  53. </view>
  54. <view class="sys-background-fff r-20 m-t20 p-lr30">
  55. <WhInput :name="'联系方式'"></WhInput>
  56. <EnDataPicker title="请选择常居城市" @onChange="onChange">
  57. <WhInput :value="formData.firm_address" name="常居城市" disabled is_select></WhInput>
  58. </EnDataPicker>
  59. <WhInput :name="'详细地址'"></WhInput>
  60. <view @click="onMarriage">
  61. <WhInput :is_border="false" name="婚姻状态" disabled is_select></WhInput>
  62. </view>
  63. </view>
  64. </view>
  65. <!-- 身份认证end -->
  66. <!-- 教育职业背景start -->
  67. <view class="m-t20 m-lr30 text-color-12" v-if="step === 2">
  68. <view class="sys-background-fff r-20 m-t20 p-lr30 p-t30">
  69. <view class="size-30 sys-weight-600 p-b30">教育职业背景</view>
  70. <WhInput name="学历" disabled is_select></WhInput>
  71. <EnRadio :value="formData.is_farming" name="雇佣类型" :list="farming" @onSelect="onFarming">
  72. </EnRadio>
  73. <WhInput name="企业名称"></WhInput>
  74. <WhInput name="企业城市" disabled is_select></WhInput>
  75. <WhInput :is_border="false" name="详细地址"></WhInput>
  76. </view>
  77. </view>
  78. <!-- 教育职业背景end -->
  79. <!-- 社保信息start -->
  80. <view class="m-t20 m-lr30 text-color-12" v-if="step === 3 || step === 4">
  81. <view class="sys-background-fff r-20 m-t20 p-lr30 p-t30">
  82. <view class="size-30 sys-weight-600 p-b30">社保信息</view>
  83. <WhInput name="缴纳时间" rightText="月" placeholder="请输入社保连续缴纳时间"></WhInput>
  84. <WhInput name="公积金" rightText="元" placeholder="请输入公积金缴纳基数"></WhInput>
  85. </view>
  86. </view>
  87. <!-- 社保信息end -->
  88. </view>
  89. <!-- <EnButton :text="'完成'" @onSubmit="onSubmit" v-if="step === 3 || step === 4"></EnButton> -->
  90. <EnButton v-if="step === 3 || step === 4" is_both :leftText="'上一步'" :rightText="'保存'" @onLeftSubmit="onStep(0)"
  91. @onSubmit="onSubmit" />
  92. <EnButton v-else is_both :leftText="'保存'" :rightText="'下一步'" @onLeftSubmit="onLeftSubmit" @onSubmit="onStep(1)">
  93. </EnButton>
  94. <uv-action-sheet ref="actionSheet" round="10" :actions="list" title="请选择婚姻状态" @select="onSelect">
  95. </uv-action-sheet>
  96. </view>
  97. </template>
  98. <!-- correct -->
  99. <script>
  100. import TaskImgTab from "@/common/task/task_ima_tab.vue"
  101. import WhInput from "@/page_task/module/wh-input.vue"
  102. import EnDataPicker from "@/components/en-utils/en-data-picker/en-data-picker.vue"
  103. export default {
  104. components: {
  105. TaskImgTab,
  106. WhInput,
  107. EnDataPicker
  108. },
  109. data() {
  110. return {
  111. list: [{
  112. name: '单身',
  113. value: 1
  114. }, {
  115. name: '已婚',
  116. value: 2
  117. }],
  118. farming: [{
  119. text: '受薪',
  120. value: 1
  121. }, {
  122. text: '自雇',
  123. value: 2
  124. }],
  125. title: '',
  126. step: 1,
  127. scrollTop: 0,
  128. fixedHeight: 75,
  129. stepTwo: ['two', 'double', 'correct', 'correct'],
  130. stepThree: ['three', 'three', 'double', 'correct'],
  131. value: '',
  132. formData: {
  133. "name": "",
  134. "birthday": "",
  135. "sex": 1,
  136. "id_number": "",
  137. "identity_one": "",
  138. "identity_two": "",
  139. "phone": "",
  140. "marriage_type": 1,
  141. "education_type": '',
  142. "education_name": '',
  143. "employ_type": 1,
  144. "firm_name": "",
  145. "firm_address": "",
  146. "resident_city": "",
  147. "resident_address": "",
  148. "mate_name": "",
  149. "mate_phone": "",
  150. "mate_id_number": "",
  151. "mate_firm": "",
  152. "m_code": "",
  153. "code": "",
  154. "m_identity_one": "",
  155. "m_identity_two": "",
  156. "firm_city": "",
  157. "social_num": "",
  158. "reserved_money": "",
  159. "marriage_img": [],
  160. "credit_img": []
  161. }
  162. }
  163. },
  164. onPageScroll(res) {
  165. this.scrollTop = res.scrollTop / 120
  166. },
  167. onLoad(options) {
  168. this.title = options.title
  169. let clientInfoData = uni.getStorageSync('clientInfoData')
  170. let clientInfoKey = uni.getStorageSync('clientInfoKey')
  171. console.log(clientInfoData, clientInfoKey)
  172. },
  173. methods: {
  174. setNum(step) {
  175. if (this.step !== step) {
  176. this.step = step
  177. }
  178. },
  179. // 身份认证
  180. onAuthentication(item) {
  181. uni.navigateTo({
  182. url: "/page_task/identity_upload/identity_upload"
  183. })
  184. },
  185. // 保存
  186. onLeftSubmit() {
  187. console.log(this.formData);
  188. console.log('保存');
  189. this.step--
  190. },
  191. // 下一步
  192. onStep(type) {
  193. if (type === 1) {
  194. if (this.step === 3) return
  195. this.step++
  196. } else {
  197. if (this.step === 1) return
  198. this.step--
  199. }
  200. },
  201. // 完成
  202. onSubmit() {
  203. this.step = 4
  204. },
  205. onChange(address) {
  206. console.log(address);
  207. this.formData.firm_address = address
  208. },
  209. onMarriage() {
  210. console.log(11111);
  211. this.$refs.actionSheet.open();
  212. },
  213. onSelect(e) {
  214. console.log(e);
  215. },
  216. onFarming(e) {
  217. this.formData.is_farming = e
  218. }
  219. }
  220. }
  221. </script>
  222. <style lang="scss" scoped>
  223. .info_button {
  224. width: 130rpx;
  225. height: 60rpx;
  226. border: none;
  227. line-height: 60rpx;
  228. }
  229. .attestation_content {
  230. width: 100%;
  231. position: absolute;
  232. }
  233. .attestation-button {
  234. width: 156rpx;
  235. height: 54rpx;
  236. line-height: 54rpx;
  237. background: #FFFFFF;
  238. border: 1rpx solid #0FB160;
  239. }
  240. .line {
  241. width: 70rpx;
  242. height: 4rpx;
  243. background: #8EDBDA;
  244. margin-top: 22rpx;
  245. }
  246. button::after {
  247. border: none;
  248. }
  249. </style>