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

315 lines
6.8 KiB

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