index.vue 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <template>
  2. <view class="main">
  3. <view class="message _info" v-if="item.state == 0 && item.updateTime">
  4. <text class="icon">&#xe642;</text>
  5. <text>后台审核信息中...</text>
  6. </view>
  7. <view class="message _success" v-if="item.state == 1">
  8. <text class="icon">&#xe612;</text>
  9. <text>审核信息通过</text>
  10. </view>
  11. <view class="message _error" v-if="item.state == 2">
  12. <view>信息审核失败:</view>
  13. <view class="msg">{{ item.msg }}</view>
  14. </view>
  15. <view class="form_group">
  16. <view class="lable re">企业名称</view>
  17. <input type="text" placeholder="请输入企业名称" v-model="item.name" :disabled="item.state == 1" />
  18. </view>
  19. <view class="form_group">
  20. <view class="lable re">法定代表人</view>
  21. <input type="text" placeholder="请输入法定代表人" v-model="item.legalPerson" :disabled="item.state == 1" />
  22. </view>
  23. <view class="form_group">
  24. <view class="lable re">电话</view>
  25. <input type="number" placeholder="请输入电话" v-model="item.phone" :disabled="item.state == 1" />
  26. </view>
  27. <view class="form_group">
  28. <view class="lable re">邮箱</view>
  29. <input type="text" placeholder="请输入邮箱" v-model="item.email" :disabled="item.state == 1" />
  30. </view>
  31. <view class="form_group">
  32. <view class="lable re">注册资本(万)</view>
  33. <input type="number" placeholder="请输入注册资本" v-model="item.capital" :disabled="item.state == 1" />
  34. </view>
  35. <view class="form_group">
  36. <view class="lable re">企业地址</view>
  37. <view class="bgm">
  38. <input type="text" placeholder="请输入详细地址" v-model="item.address" :disabled="item.state == 1" class="input" />
  39. <view class="msg" @click="select()">选择</view>
  40. </view>
  41. </view>
  42. <view class="form_group" style="border: 0px">
  43. <view class="lable re">企业简介</view>
  44. <textarea cols="30" rows="10" placeholder="请输入企业简介" v-model="item.contents" :disabled="item.state == 1"></textarea>
  45. </view>
  46. <view class="form_group" style="border: 0px">
  47. <view class="lable re">营业执照</view>
  48. <card v-model="item.p1" :read="item.state == 1"></card>
  49. </view>
  50. <button class="btn" @click="save()" v-if="item.state != 1">{{ item.id ? '编辑' : '提交' }}</button>
  51. </view>
  52. </template>
  53. <script>
  54. export default {
  55. data() {
  56. return {
  57. ip: this.http.ip,
  58. item: {}
  59. };
  60. },
  61. onLoad() {
  62. this.http.request({
  63. url: '/app/enterprise/index',
  64. success: (res) => {
  65. if (res.data.data) {
  66. this.item = res.data.data;
  67. }
  68. }
  69. });
  70. },
  71. methods: {
  72. select() {
  73. uni.chooseLocation({
  74. success: (res) => {
  75. this.item.address = res.address;
  76. this.item.longitude = res.longitude;
  77. this.item.latitude = res.latitude;
  78. this.$forceUpdate();
  79. }
  80. });
  81. },
  82. save() {
  83. let rule = [
  84. { name: 'name', checkType: 'notnull', errorMsg: '请输入企业名称' },
  85. { name: 'legalPerson', checkType: 'notnull', errorMsg: '请输入法定代表人' },
  86. { name: 'phone', checkType: 'notnull', errorMsg: '请输入电话' },
  87. { name: 'email', checkType: 'email', errorMsg: '请输入邮箱' },
  88. { name: 'address', checkType: 'notnull', errorMsg: '请输地址' },
  89. { name: 'contents', checkType: 'notnull', errorMsg: '请输入企业简介' },
  90. { name: 'p1', checkType: 'notnull', errorMsg: '请上传营业执照' }
  91. ];
  92. if (!this.verify.check(this.item, rule)) {
  93. uni.showModal({ content: this.verify.error, showCancel: false });
  94. return false;
  95. }
  96. this.http.request({
  97. url: '/app/enterprise/edit',
  98. data: this.item,
  99. method: 'POST',
  100. success: (res) => {
  101. uni.showModal({
  102. title: '提示',
  103. content: '提交成功,等待后台审核。',
  104. showCancel: false,
  105. success: (res) => {
  106. uni.navigateBack();
  107. }
  108. });
  109. }
  110. });
  111. }
  112. }
  113. };
  114. </script>
  115. <style lang="scss"></style>