index.vue 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  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. let reg = /.+?(省|市|自治区|自治州|县|区)/g;
  77. let addressList = res.address.match(reg).toString().split(',');
  78. //注意区分直辖市;
  79. let city = addressList.length >= 3 ? addressList[1] : addressList[0];
  80. let region = addressList.length >= 3 ? addressList[2] : addressList[1];
  81. this.item.regionName = region;
  82. this.item.address = res.address;
  83. this.item.longitude = res.longitude;
  84. this.item.latitude = res.latitude;
  85. this.$forceUpdate();
  86. }
  87. });
  88. },
  89. save() {
  90. let rule = [
  91. { name: 'name', checkType: 'notnull', errorMsg: '请输入企业名称' },
  92. { name: 'legalPerson', checkType: 'notnull', errorMsg: '请输入法定代表人' },
  93. { name: 'phone', checkType: 'notnull', errorMsg: '请输入电话' },
  94. { name: 'email', checkType: 'email', errorMsg: '请输入邮箱' },
  95. { name: 'address', checkType: 'notnull', errorMsg: '请输地址' },
  96. { name: 'contents', checkType: 'notnull', errorMsg: '请输入企业简介' },
  97. { name: 'p1', checkType: 'notnull', errorMsg: '请上传营业执照' }
  98. ];
  99. if (!this.verify.check(this.item, rule)) {
  100. uni.showModal({ content: this.verify.error, showCancel: false });
  101. return false;
  102. }
  103. this.http.request({
  104. url: '/app/enterprise/edit',
  105. data: this.item,
  106. method: 'POST',
  107. success: (res) => {
  108. uni.showModal({
  109. title: '提示',
  110. content: '提交成功,等待后台审核。',
  111. showCancel: false,
  112. success: (res) => {
  113. uni.navigateBack();
  114. }
  115. });
  116. }
  117. });
  118. }
  119. }
  120. };
  121. </script>
  122. <style lang="scss"></style>