|
@@ -21,7 +21,9 @@
|
|
|
|
|
|
<template #customer="{ item }">
|
|
|
<div style="width: 100%">
|
|
|
- <span class="public-class">{{ item.buyCorporationName }}</span>
|
|
|
+ <span class="public-class" @click="clickCorporationName(item)">{{
|
|
|
+ item.buyCorporationName
|
|
|
+ }}</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -225,9 +227,46 @@
|
|
|
v-model="openRecords"
|
|
|
width="600"
|
|
|
>
|
|
|
- <el-button type="primary" @click="handleClickAddRecord()"
|
|
|
- >添加记录</el-button
|
|
|
- >
|
|
|
+ <div style="padding-left: 50px; margin-bottom: 20px">
|
|
|
+ <el-button type="primary" @click="handleClickAddRecord()"
|
|
|
+ >添加记录</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ <el-timeline>
|
|
|
+ <el-timeline-item
|
|
|
+ v-for="(activity, index) in recordsData"
|
|
|
+ :key="index"
|
|
|
+ :timestamp="activity.timestamp"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ style="
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ color: #bfb9b9;
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <div>{{ activity.documentaryTime }}</div>
|
|
|
+ <div>{{ activity.userName }}</div>
|
|
|
+ </div>
|
|
|
+ <div style="width: 100%; margin-top: 8px">
|
|
|
+ {{ activity.documentaryRemark }}
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ style="width: 100%; margin-top: 8px"
|
|
|
+ v-if="activity.fileList && activity.fileList.length > 0"
|
|
|
+ >
|
|
|
+ <div v-for="(item, index) in activity.fileList" :key="index">
|
|
|
+ <div
|
|
|
+ style="cursor: pointer; color: #409eff"
|
|
|
+ @click="openFile(item)"
|
|
|
+ >
|
|
|
+ {{ item.fileName }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-timeline-item>
|
|
|
+ </el-timeline>
|
|
|
|
|
|
<template #footer>
|
|
|
<el-button @click="openRecords = false" size="large">关 闭</el-button>
|
|
@@ -568,11 +607,23 @@ const formLoading = ref(false);
|
|
|
const openRemarks = ref(false);
|
|
|
const remarksForm = ref(null);
|
|
|
const handleClickLookRemarks = (row) => {
|
|
|
+ let id = row.id;
|
|
|
formData.remarksFormData = {
|
|
|
id: row.id,
|
|
|
remarkFileList: [],
|
|
|
documentaryRemark: row.documentaryRemark,
|
|
|
};
|
|
|
+ proxy
|
|
|
+ .post("/fileInfo/getList", {
|
|
|
+ businessIdList: [id],
|
|
|
+ })
|
|
|
+ .then((fileObj) => {
|
|
|
+ if (fileObj[id] && fileObj[id].length > 0) {
|
|
|
+ formData.filesFormData.fileList = fileObj[id]
|
|
|
+ .filter((x) => x.businessType === "30")
|
|
|
+ .map((x) => ({ raw: x, name: x.fileName, url: x.fileUrl }));
|
|
|
+ }
|
|
|
+ });
|
|
|
openRemarks.value = true;
|
|
|
};
|
|
|
const submitRemarks = () => {
|
|
@@ -664,8 +715,31 @@ const getRecordsData = () => {
|
|
|
})
|
|
|
.then((res) => {
|
|
|
recordsData.value = res.rows;
|
|
|
+ const idList = recordsData.value.map((x) => x.id);
|
|
|
+ // 请求文件数据并回显
|
|
|
+ if (idList.length > 0) {
|
|
|
+ proxy
|
|
|
+ .post("/fileInfo/getList", {
|
|
|
+ businessIdList: idList,
|
|
|
+ })
|
|
|
+ .then((fileObj) => {
|
|
|
+ if (fileObj) {
|
|
|
+ for (let i = 0; i < recordsData.value.length; i++) {
|
|
|
+ const e = recordsData.value[i];
|
|
|
+ for (const key in fileObj) {
|
|
|
+ if (e.id === key) {
|
|
|
+ e.fileList = fileObj[key];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
});
|
|
|
};
|
|
|
+const openFile = (item) => {
|
|
|
+ window.open(item.fileUrl, "_blank");
|
|
|
+};
|
|
|
const handleClickLook = (row, purchase, node) => {
|
|
|
contractData.value = row;
|
|
|
purchaseData.value = purchase;
|
|
@@ -747,6 +821,28 @@ const handleClickLookContractFile = (row, flag) => {
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
+
|
|
|
+const openDetails = (row) => {
|
|
|
+ // currentContractId.value = row.id;
|
|
|
+ // openDetailsDialog.value = true;
|
|
|
+ // 新页面打开方式
|
|
|
+ const page = proxy.$router.resolve({
|
|
|
+ name: "contractDetails",
|
|
|
+ query: {
|
|
|
+ currentContractId: row.id,
|
|
|
+ },
|
|
|
+ });
|
|
|
+ window.open(page.href, "_blank");
|
|
|
+};
|
|
|
+
|
|
|
+const clickCorporationName = (row) => {
|
|
|
+ proxy.$router.push({
|
|
|
+ name: "Portrait",
|
|
|
+ query: {
|
|
|
+ id: row.buyCorporationId,
|
|
|
+ },
|
|
|
+ });
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|