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

326 lines
7.1 KiB

2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 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
  9. @click="$refs.configPopup.open('permission_authentic_company')">
  10. 您将获得企业认证平台特权
  11. </text>
  12. </view>
  13. <view style="color: red;" v-if="status == 2">
  14. 已驳回原因{{form.remark}}
  15. </view>
  16. <view class="form">
  17. <view class="form-item">
  18. <view class="label">
  19. 职位名称
  20. </view>
  21. <input type="text" class="form-input"
  22. placeholder="请输入职位名称"
  23. v-model="form.career"/>
  24. </view>
  25. <view class="form-item">
  26. <view class="label">
  27. 企业名称
  28. </view>
  29. <input type="text" class="form-input"
  30. placeholder="请输入企业名称"
  31. v-model="form.companyName"/>
  32. </view>
  33. <view class="form-item"
  34. @click="selectAddr">
  35. <view class="label">
  36. 企业地址
  37. </view>
  38. <input type="text" class="form-input"
  39. placeholder="请输入企业地址"
  40. disabled
  41. v-model="form.companyAddress"/>
  42. </view>
  43. <view class="form-item">
  44. <view class="label">
  45. 法定代表人
  46. </view>
  47. <input type="text" class="form-input"
  48. placeholder="请输入法定代表人"
  49. v-model="form.legalPerson"/>
  50. </view>
  51. <view class="form-item">
  52. <view class="label">
  53. 社会统一新信用代码
  54. </view>
  55. <input type="text" class="form-input"
  56. placeholder="请输入社会统一新信用代码"
  57. v-model="form.socialCode"/>
  58. </view>
  59. <view class="form-item">
  60. <view class="title">
  61. 请上传工商营业执照
  62. </view>
  63. <view class="tips">
  64. 只能上传jpgpng,且不能超过1MB
  65. </view>
  66. </view>
  67. <view class="form-item">
  68. <uv-upload
  69. :fileList="fileList"
  70. :maxCount="1"
  71. width="690rpx"
  72. height="280rpx"
  73. multiple
  74. @afterRead="afterRead"
  75. @delete="deleteImage">
  76. <view class="upload">
  77. <image src="../static/auth/cart.png"
  78. mode="aspectFit"
  79. style="width: 390rpx;height: 280rpx;" />
  80. <view class="btn-add">
  81. 点击上传
  82. </view>
  83. </view>
  84. </uv-upload>
  85. </view>
  86. <view class="form-item">
  87. <view class="tips"
  88. style="text-align: center;padding: 20rpx 0;">
  89. (确保文字清晰可辨避免遮挡不全反光)
  90. </view>
  91. </view>
  92. </view>
  93. <view v-if="status==0" class="uni-color-btn" @click="sumbit">
  94. 认证
  95. </view>
  96. <view v-if="status==1" class="uni-uncolor-btn" @click="sumbit">
  97. 已审核通过
  98. </view>
  99. <view v-if="status==2" class="uni-redcolor-btn" @click="sumbit">
  100. 已驳回,请重新提交
  101. </view>
  102. <view class="config">
  103. <uv-checkbox-group
  104. v-model="checkboxValue"
  105. shape="circle">
  106. <view class="content">
  107. <view
  108. style="display: flex;">
  109. <uv-checkbox
  110. size="40rpx"
  111. icon-size="30rpx"
  112. activeColor="#3796F8"
  113. :name="1"
  114. ></uv-checkbox>
  115. 阅读并同意我们的<text
  116. @click="$refs.configPopup.open('service_authentic_company')">
  117. 企业认证服务协议
  118. </text>
  119. </view>
  120. </view>
  121. </uv-checkbox-group>
  122. </view>
  123. <configPopup ref="configPopup"/>
  124. </view>
  125. </template>
  126. <script>
  127. export default {
  128. data() {
  129. return {
  130. checkboxValue : [],
  131. form : {
  132. companyAddress : '',
  133. career : '',//职位
  134. },
  135. fileList: [],
  136. status : 0,
  137. }
  138. },
  139. onLoad() {
  140. this.getAuthenticationCompany();
  141. },
  142. methods: {
  143. //我的服务-查询企业实名认证信息
  144. getAuthenticationCompany(){
  145. this.$api('getAuthenticationCompany', {}, res =>{
  146. if(res.code == 200 && res.result){
  147. this.form = res.result;
  148. this.status = this.form.status || 0;
  149. this.fileList = this.form.businessLicense ? this.form.businessLicense
  150. .split(',').map(url => {
  151. return {
  152. url
  153. }
  154. }) : []
  155. }
  156. })
  157. },
  158. deleteImage(e){
  159. this.fileList.splice(e.index, 1)
  160. },
  161. afterRead(e){
  162. let self = this
  163. e.file.forEach(file => {
  164. self.$Oss.ossUpload(file.url).then(url => {
  165. self.fileList.push({
  166. url
  167. })
  168. })
  169. })
  170. },
  171. //提交企业认证信息 :lzx
  172. sumbit(){
  173. if(!this.checkboxValue.length){
  174. return uni.showToast({
  175. title: '请先同意企业认证服务协议',
  176. icon:'none'
  177. })
  178. }
  179. this.form.businessLicense = this.fileList.map((item) => item.url).join(",")
  180. if(this.$utils.verificationAll(this.form,{
  181. career : '请输入您的职位',
  182. companyName : '请输入企业名称',
  183. companyAddress : '请选择企业地址',
  184. legalPerson : '请输入企业法人',
  185. socialCode : '请输入社会统一信用代码',
  186. businessLicense : '工商营业执照不能为空',
  187. })) {
  188. return
  189. }
  190. // 清理不需要给后端的字段
  191. delete this.form.createBy
  192. delete this.form.createTime
  193. delete this.form.updateBy
  194. delete this.form.updateTime
  195. delete this.form.userId
  196. this.$api('addAuthenticationCompany', this.form, res =>{
  197. if(res.code == 200){
  198. uni.showToast({
  199. title:'提交成功!等待审核',
  200. icon: 'none'
  201. })
  202. setTimeout(uni.navigateBack,1000,-1)
  203. }
  204. })
  205. },
  206. //地图上选择地址
  207. selectAddr() {
  208. uni.chooseLocation({
  209. success: (res) => {
  210. //经纬度信息
  211. this.form.latitude = res.latitude
  212. this.form.longitude = res.longitude
  213. // if (res.name) { //用户直接选择城市的逻辑
  214. if (!res.address && res.name) { //用户直接选择城市的逻辑
  215. return this.form.companyAddress = res.name
  216. }
  217. if (res.address || res.name) {
  218. return this.form.companyAddress = res.address + res.name
  219. }
  220. this.form.companyAddress = '' //用户啥都没选就点击勾选
  221. this.form.latitude = ''
  222. this.form.longitude = ''
  223. }
  224. });
  225. },
  226. }
  227. }
  228. </script>
  229. <style scoped lang="scss">
  230. .page{
  231. background-color: #fff;
  232. min-height: 100vh;
  233. padding-bottom: 100rpx;
  234. .info-tips{
  235. width: 100%;
  236. padding: 30rpx 0;
  237. background-color: #f3f3f3;
  238. text-align: center;
  239. text{
  240. color: $uni-color;
  241. }
  242. }
  243. .form {
  244. padding: 30rpx;
  245. .form-item{
  246. .label{
  247. padding: 20rpx 0;
  248. }
  249. .form-input{
  250. border: 1px solid $uni-color;
  251. background: rgba($uni-color, 0.1);
  252. padding: 10rpx 20rpx;
  253. font-size: 28rpx;
  254. }
  255. .title{
  256. font-weight: 900;
  257. margin-top: 50rpx;
  258. padding: 10rpx 0;
  259. }
  260. .tips{
  261. font-size: 26rpx;
  262. color: #777;
  263. padding-bottom: 20rpx;
  264. }
  265. }
  266. .upload{
  267. display: flex;
  268. justify-content: center;
  269. align-items: center;
  270. width: 690rpx;
  271. background-color: #f3f3f3;
  272. border-radius: 10rpx;
  273. .btn-add{
  274. margin: auto;
  275. padding: 10rpx 20rpx;
  276. background-color: $uni-color;
  277. color: #fff;
  278. border-radius: 10rpx;
  279. }
  280. }
  281. }
  282. .config{
  283. font-size: 26rpx;
  284. line-height: 40rpx;
  285. width: 100%;
  286. display: flex;
  287. justify-content: center;
  288. .content{
  289. width: 100%;
  290. display: flex;
  291. flex-direction: column;
  292. align-items: center;
  293. }
  294. text{
  295. color: $uni-color;
  296. }
  297. }
  298. }
  299. </style>