特易招,招聘小程序
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.

271 lines
5.4 KiB

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