index.vue 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <template>
  2. <div class="p-2">
  3. <el-card style="width: 100%;margin-bottom: 16px;" v-loading="qyxxLoadding">
  4. <el-descriptions title="企业信息" :column="4" border direction="vertical">
  5. <template #extra>
  6. <el-button @click="eidtCpy" type="primary" text>
  7. <el-icon><EditPen /></el-icon>
  8. 编辑
  9. </el-button>
  10. </template>
  11. <el-descriptions-item label="企业logo">
  12. <template #default>
  13. <HAvatar :src="form.storePhoto" :name="form.cpyName"></HAvatar>
  14. </template>
  15. </el-descriptions-item>
  16. <el-descriptions-item label="企业名称">{{ form.cpyName }}</el-descriptions-item>
  17. <el-descriptions-item label="企业类型">
  18. {{ selectDictLabel(cpy_type, form.cpyType) }}
  19. <template v-if="form.supervisionType">
  20. {{ '>' + selectDictLabel(supervision_type, form.supervisionType) }}
  21. </template>
  22. </el-descriptions-item>
  23. <!-- 监管类型 -->
  24. <el-descriptions-item label="监管类型">{{ selectDictLabel(supervision_type, form.supervisionType) }}</el-descriptions-item>
  25. <el-descriptions-item label="监管区域">
  26. {{ form.supervisionAreaName || '-' }}
  27. </el-descriptions-item>
  28. <el-descriptions-item label="统一社会信用代码">{{ form.creditCode }}</el-descriptions-item>
  29. <el-descriptions-item label="营业执照" class="d-flex a-c">
  30. <template #default>
  31. <FileLook v-model="form.license"></FileLook>
  32. </template>
  33. </el-descriptions-item>
  34. <el-descriptions-item label="所在行政区" class="d-flex a-c">
  35. <template #default>
  36. {{ form.adcdCodeName || '-'}}
  37. </template>
  38. </el-descriptions-item>
  39. <el-descriptions-item label="具体地址" class="d-flex a-c">
  40. <template #default>
  41. {{ form.address || '-'}}
  42. </template>
  43. </el-descriptions-item>
  44. <el-descriptions-item label="企业联系人">{{ form.contactPerson }}</el-descriptions-item>
  45. <el-descriptions-item label="企业联系电话">{{ form.tel }}</el-descriptions-item>
  46. </el-descriptions>
  47. </el-card>
  48. <el-card style="width: 100%;margin-bottom: 16px;">
  49. <div class="f-14 f-w-b mb15">普通资质</div>
  50. <baseAuthInfo :cpyid="(query.cpyid as string)"></baseAuthInfo>
  51. <div class="f-14 f-w-b mb15" style="padding-top: 16px;">特殊资质</div>
  52. <specialAuthInfo :cpyid="(query.cpyid as string)"></specialAuthInfo>
  53. </el-card>
  54. <el-card style="width: 100%;margin-bottom: 16px;">
  55. <div class="d-flex j-sb mb10">
  56. <div class="f-14 f-w-b mb15">授权应用</div>
  57. <el-button @click="addApp(authAppRef)" type="primary" text>
  58. <el-icon><Plus /></el-icon>
  59. 新增应用
  60. </el-button>
  61. </div>
  62. <authApp ref="authAppRef" :cpyid="(query.cpyid as string)"></authApp>
  63. </el-card>
  64. </div>
  65. <!-- 添加或修改企业备案信息对话框 -->
  66. <editCpy v-model:show="show1" title="编辑企业信息" :info="formItem" @seccess="changeForm"></editCpy>
  67. </template>
  68. <script setup name="Staff" lang="ts">
  69. import { companyDetail } from '@/api/settled';
  70. import { AreaView } from '@/views/components';
  71. import { FileLook } from '@/views/models';
  72. import { editCpy, baseAuthInfo, specialAuthInfo, authApp } from '@/views/settled';
  73. const { proxy } = getCurrentInstance() as ComponentInternalInstance;
  74. const { cpy_res_status, cpy_type, supervision_type } = toRefs<any>(proxy?.useDict('cpy_res_status', 'cpy_type', 'supervision_type'));
  75. const { query } = useRoute();
  76. const form = ref<any>({});
  77. const show1 = ref(false);
  78. const qyxxLoadding = ref(false);
  79. const authAppRef = ref();
  80. const formItem = ref<any>(null);
  81. const getDetail = async () => {
  82. qyxxLoadding.value = true;
  83. const res = await companyDetail(query.cpyid);
  84. qyxxLoadding.value = false;
  85. if (!res) return;
  86. Object.assign(form.value, res.data);
  87. };
  88. const eidtCpy = () => {
  89. formItem.value = { ...form.value };
  90. show1.value = true;
  91. };
  92. const changeForm = (event: any) => {
  93. Object.assign(form.value, event);
  94. };
  95. const addApp = (authAppRef: any) => {
  96. if (!authAppRef) return
  97. authAppRef.addApp()
  98. }
  99. onMounted(() => {
  100. getDetail();
  101. });
  102. </script>
  103. <style lang="scss" scoped></style>