index.vue 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  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" v-if="item.state != 1">
  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. <input v-else v-model="item.address" :disabled="item.state == 1" />
  42. </view>
  43. <view class="form_group" style="border: 0px">
  44. <view class="lable re">企业简介</view>
  45. <textarea cols="30" rows="10" placeholder="请输入企业简介" v-model="item.contents" :disabled="item.state == 1"></textarea>
  46. </view>
  47. <view class="form_group" style="border: 0px">
  48. <view class="lable re">营业执照</view>
  49. <card v-model="item.p1" :read="item.state == 1"></card>
  50. </view>
  51. <button class="btn" @click="save()" v-if="item.state != 1">{{ item.id ? '编辑' : '提交' }}</button>
  52. </view>
  53. </template>
  54. <script>
  55. export default {
  56. data() {
  57. return {
  58. ip: this.http.ip,
  59. item: {}
  60. };
  61. },
  62. onLoad() {
  63. this.http.request({
  64. url: '/app/enterprise/index',
  65. success: (res) => {
  66. if (res.data.data) {
  67. this.item = res.data.data;
  68. }
  69. }
  70. });
  71. },
  72. methods: {
  73. select() {
  74. uni.chooseLocation({
  75. success: (res) => {
  76. this.item.address = res.address;
  77. this.item.longitude = res.longitude;
  78. this.item.latitude = res.latitude;
  79. this.$forceUpdate();
  80. }
  81. });
  82. },
  83. save() {
  84. let rule = [
  85. { name: 'name', checkType: 'notnull', errorMsg: '请输入企业名称' },
  86. { name: 'legalPerson', checkType: 'notnull', errorMsg: '请输入法定代表人' },
  87. { name: 'phone', checkType: 'notnull', errorMsg: '请输入电话' },
  88. { name: 'email', checkType: 'email', errorMsg: '请输入邮箱' },
  89. { name: 'address', checkType: 'notnull', errorMsg: '请输地址' },
  90. { name: 'contents', checkType: 'notnull', errorMsg: '请输入企业简介' },
  91. { name: 'p1', checkType: 'notnull', errorMsg: '请上传营业执照' }
  92. ];
  93. if (!this.verify.check(this.item, rule)) {
  94. uni.showModal({ content: this.verify.error, showCancel: false });
  95. return false;
  96. }
  97. this.http.request({
  98. url: '/app/enterprise/edit',
  99. data: this.item,
  100. method: 'POST',
  101. success: (res) => {
  102. uni.showModal({
  103. title: '提示',
  104. content: '提交成功,等待后台审核。',
  105. showCancel: false,
  106. success: (res) => {
  107. uni.navigateBack();
  108. }
  109. });
  110. }
  111. });
  112. }
  113. }
  114. };
  115. </script>
  116. <style lang="scss"></style>