firmInfo.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <template>
  2. <div class="firmInfo">
  3. <h2
  4. style="margin-bottom: 20px;padding-bottom:7px;border-bottom:2px solid #ddd"
  5. >
  6. 企业信息
  7. </h2>
  8. <div class="left">
  9. <el-form ref="form" :model="form">
  10. <el-form-item label="企业名称">
  11. <el-input v-model="form.name"></el-input>
  12. </el-form-item>
  13. <el-form-item label="邮箱">
  14. <el-input v-model="form.email"></el-input>
  15. </el-form-item>
  16. <el-form-item label="企业简介">
  17. <el-input
  18. type="textarea"
  19. v-model="form.decription"
  20. autosize
  21. ></el-input>
  22. </el-form-item>
  23. <el-form-item label="国家地区">
  24. <el-input v-model="form.province"></el-input>
  25. </el-form-item>
  26. <el-form-item label="所在省市">
  27. <el-row type="flex" justify="space-between">
  28. <el-col :span="11">
  29. <el-input v-model="form.country"></el-input>
  30. </el-col>
  31. <el-col :span="11">
  32. <el-input v-model="form.city"></el-input>
  33. </el-col>
  34. </el-row>
  35. </el-form-item>
  36. <el-form-item label="详细地址">
  37. <el-input v-model="form.address"></el-input>
  38. </el-form-item>
  39. <el-form-item label="联系电话">
  40. <el-row type="flex" :gutter="19">
  41. <el-input v-model="form.tel"></el-input>
  42. </el-row>
  43. </el-form-item>
  44. <el-form-item>
  45. <el-button
  46. style="margin-left:60%"
  47. type="primary"
  48. @click="onSubmit"
  49. >更新信息</el-button
  50. >
  51. </el-form-item>
  52. </el-form>
  53. </div>
  54. </div>
  55. </template>
  56. <script>
  57. // import { reqFirminfo, reqUpdateFirm } from "@/api/fileInfo.js";
  58. export default {
  59. name: "firmInfo",
  60. data() {
  61. return {
  62. // 保留接口结构
  63. reqInfo: {},
  64. form: {
  65. name: "",
  66. email: "",
  67. decription: "",
  68. province: "",
  69. country: "",
  70. city: "",
  71. address: "",
  72. tel: ""
  73. }
  74. };
  75. },
  76. created() {
  77. // this.getFirminfo();
  78. },
  79. methods: {
  80. // 更新企业信息
  81. onSubmit() {
  82. let tempArr = [];
  83. for (const key in this.form) {
  84. tempArr.push({ key, val: this.form[key] });
  85. }
  86. this.reqInfo.conf = JSON.stringify({
  87. data: JSON.stringify(tempArr)
  88. });
  89. console.log(this.reqInfo);
  90. reqUpdateFirm(this.reqInfo)
  91. .then(res => {
  92. // this.$message.success("更新企业信息成功!");
  93. if (res.errCode) {
  94. this.$message.error(res.errMsg);
  95. } else {
  96. this.$message.success("成功");
  97. }
  98. })
  99. .catch(err => {
  100. console.log(err);
  101. this.$message.error("更新企业信息失败!");
  102. });
  103. },
  104. // 获取企业信息
  105. getFirminfo() {
  106. reqFirminfo()
  107. .then(res => {
  108. // 保留接口结构
  109. this.reqInfo = res;
  110. if (res.conf.data) {
  111. let obj = {};
  112. JSON.parse(res.conf.data).forEach(item => {
  113. obj[item.key] = item.val;
  114. });
  115. this.form = obj;
  116. }
  117. })
  118. .catch(err => {
  119. console.error(err);
  120. });
  121. }
  122. }
  123. };
  124. </script>
  125. <style lang="scss" scoped>
  126. .firmInfo {
  127. .left {
  128. width: 400px;
  129. margin-left: 50px;
  130. }
  131. }
  132. </style>