特易招,招聘小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

255 lines
5.1 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. <template>
  2. <!-- 实名认证 -->
  3. <view class="page">
  4. <navbar title="实名认证"
  5. leftClick
  6. @leftClick="$utils.navigateBack"/>
  7. <view class="info-tips">
  8. 完成实名认证<text>您将获得实名认证平台特权</text>
  9. </view>
  10. <view class="form">
  11. <view class="form-item">
  12. <view class="label">
  13. 姓名
  14. </view>
  15. <input type="text" class="form-input"
  16. placeholder="请输入姓名"
  17. v-model="form.name"/>
  18. </view>
  19. <view class="form-item">
  20. <view class="label">
  21. 身份证号码
  22. </view>
  23. <input type="text" class="form-input"
  24. placeholder="请输入身份证号码"
  25. v-model="form.cerNo"/>
  26. </view>
  27. <view class="form-item">
  28. <view class="label">
  29. 联系方式
  30. </view>
  31. <input type="text" class="form-input"
  32. placeholder="请输入联系方式"
  33. v-model="form.phone"/>
  34. </view>
  35. <view class="form-item">
  36. <view class="title">
  37. 请上传身份证人像面照片选填
  38. </view>
  39. <view class="tips">
  40. 信息仅用身份核实上传后可增加曝光机会
  41. </view>
  42. </view>
  43. <view class="form-item">
  44. <uv-upload
  45. :fileList="fileList"
  46. :maxCount="1"
  47. width="690rpx"
  48. height="280rpx"
  49. multiple
  50. @afterRead="afterRead"
  51. @delete="deleteImage">
  52. <view class="upload">
  53. <image src="../static/auth/cart.png"
  54. mode="aspectFit"
  55. style="width: 390rpx;height: 280rpx;" />
  56. <view class="btn-add">
  57. 点击上传
  58. </view>
  59. </view>
  60. </uv-upload>
  61. </view>
  62. <view class="form-item">
  63. <view class="tips"
  64. style="text-align: center;padding: 20rpx 0;">
  65. (确保文字清晰可辨避免遮挡不全反光)
  66. </view>
  67. </view>
  68. </view>
  69. <view class="uni-color-btn" @click="sumbit">
  70. 认证
  71. </view>
  72. <view class="config">
  73. <uv-checkbox-group
  74. v-model="checkboxValue"
  75. shape="circle">
  76. <view class="content">
  77. <view
  78. style="display: flex;">
  79. <uv-checkbox
  80. size="40rpx"
  81. icon-size="30rpx"
  82. activeColor="#3796F8"
  83. :name="1"
  84. ></uv-checkbox>
  85. 阅读并同意我们的<text @click="$refs.configPopup.open('getPrivacyPolicy')">服务协议与隐私条款</text>
  86. </view>
  87. <view class="">
  88. 以及<text @click="$refs.configPopup.open('getUserAgreement')">个人信息保护指引</text>
  89. </view>
  90. </view>
  91. </uv-checkbox-group>
  92. </view>
  93. <configPopup ref="configPopup"/>
  94. </view>
  95. </template>
  96. <script>
  97. export default {
  98. data() {
  99. return {
  100. checkboxValue : [],
  101. form : {},
  102. fileList: [],
  103. }
  104. },
  105. onLoad() {
  106. this.getAuthenticationPerson();
  107. },
  108. methods: {
  109. //获取个人实名信息
  110. getAuthenticationPerson(){
  111. this.$api('getAuthenticationPerson',{}, res =>{
  112. if(res.code == 200){
  113. this.form = res.result || {};
  114. this.fileList = this.form.image ? this.form.image.split(',').map(url => {
  115. return {
  116. url
  117. }
  118. }) : []
  119. }
  120. })
  121. },
  122. deleteImage(e){
  123. this.fileList.splice(e.index, 1)
  124. },
  125. afterRead(e){
  126. let self = this
  127. e.file.forEach(file => {
  128. self.$Oss.ossUpload(file.url).then(url => {
  129. self.fileList.push({
  130. url
  131. })
  132. })
  133. })
  134. },
  135. //提交实名认证信息 :lzx
  136. sumbit(){
  137. this.form.image = this.fileList.map((item) => item.url).join(",")
  138. if(this.$utils.verificationAll(this.form,{
  139. name:'请输入姓名',
  140. cerNo:'请输入身份证号码',
  141. phone:'请输入电话号码',
  142. image:'身份证照片不能为空',
  143. })) {
  144. return
  145. }
  146. // 清理不需要给后端的字段
  147. delete this.form.createBy
  148. delete this.form.createTime
  149. delete this.form.updateBy
  150. delete this.form.updateTime
  151. delete this.form.userId
  152. this.$api('addAuthenticationPerson',this.form, res =>{
  153. if(res.code == 200){
  154. uni.showToast({
  155. title:'提交成功!等待审核',
  156. icon: 'none'
  157. })
  158. setTimeout(uni.navigateBack,1000,-1)
  159. }
  160. })
  161. }
  162. }
  163. }
  164. </script>
  165. <style scoped lang="scss">
  166. .page{
  167. background-color: #fff;
  168. min-height: 100vh;
  169. .info-tips{
  170. width: 100%;
  171. padding: 30rpx 0;
  172. background-color: #f3f3f3;
  173. text-align: center;
  174. text{
  175. color: $uni-color;
  176. }
  177. }
  178. .form {
  179. padding: 30rpx;
  180. .form-item{
  181. .label{
  182. padding: 20rpx 0;
  183. }
  184. .form-input{
  185. border: 1px solid $uni-color;
  186. background: rgba($uni-color, 0.1);
  187. padding: 10rpx 20rpx;
  188. font-size: 28rpx;
  189. }
  190. .title{
  191. font-weight: 900;
  192. margin-top: 50rpx;
  193. padding: 10rpx 0;
  194. }
  195. .tips{
  196. font-size: 26rpx;
  197. color: #777;
  198. padding-bottom: 20rpx;
  199. }
  200. }
  201. .upload{
  202. display: flex;
  203. justify-content: center;
  204. align-items: center;
  205. width: 690rpx;
  206. background-color: #f3f3f3;
  207. border-radius: 10rpx;
  208. .btn-add{
  209. margin: auto;
  210. padding: 10rpx 20rpx;
  211. background-color: $uni-color;
  212. color: #fff;
  213. border-radius: 10rpx;
  214. }
  215. }
  216. }
  217. .config{
  218. font-size: 26rpx;
  219. line-height: 40rpx;
  220. width: 100%;
  221. display: flex;
  222. justify-content: center;
  223. .content{
  224. width: 100%;
  225. display: flex;
  226. flex-direction: column;
  227. align-items: center;
  228. }
  229. text{
  230. color: $uni-color;
  231. }
  232. }
  233. }
  234. </style>