main.vue 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <template>
  2. <div style="display: flex;">
  3. <el-select v-model="value" placeholder="请选择" filterable clearable allow-create default-first-option
  4. @input="$emit('balabala', value)" @change="getKeyId(value)" :disabled="disabled">
  5. <template v-if="zhKey">
  6. <el-option v-for="item in corpList" :key="item.id" :label="item.cname" :value="item.cname">
  7. </el-option>
  8. </template>
  9. <template v-else>
  10. <el-option v-for="item in corpList" :key="item.cname" :label="item.cname" :value="item.id">
  11. </el-option>
  12. </template>
  13. </el-select>
  14. <el-tooltip class="item" effect="dark" content="获取最新客户资料" placement="top-start">
  15. <el-button icon="el-icon-refresh" size="mini" v-if="label != 'shortName'"
  16. @click="refreshData"></el-button>
  17. </el-tooltip>
  18. </div>
  19. </template>
  20. <script>
  21. import { allCropList } from "@/api/basicData/customerInformation";
  22. import { kMaxLength } from "buffer";
  23. export default {
  24. name: "main",
  25. data() {
  26. return {
  27. form: {},
  28. corpList: []
  29. };
  30. },
  31. props: {
  32. value: String,
  33. disabled: Boolean,
  34. zhKey: Boolean
  35. },
  36. model: {
  37. prop: "value",
  38. event: "balabala"
  39. },
  40. created() {
  41. this.getCorpList()
  42. },
  43. methods: {
  44. getCorpList() {
  45. let userObj = JSON.parse(localStorage.getItem("saber-userInfo")).content;
  46. allCropList({ corpType: 'KH', adminProfiles: userObj.role_name != "admin" ? userObj.user_id : null }).then(res => {
  47. this.corpList = res.data.data;
  48. });
  49. },
  50. refreshData() {
  51. this.getCorpList()
  52. },
  53. getKeyId(row) {
  54. if (this.zhKey) {
  55. if (row) {
  56. let res = this.corpList.find(e => { return e.cname == row })
  57. if (res) {
  58. this.$emit('getCropId', res.id)
  59. } else {
  60. this.$emit('getCropId', null)
  61. }
  62. } else {
  63. this.$emit('getCropId', null)
  64. }
  65. }
  66. }
  67. },
  68. watch: {
  69. }
  70. };
  71. </script>
  72. <style lang="scss" scoped>
  73. </style>