src/pages/resourceManage/materialsCenter/list.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/pages/resourceManage/product/details/apis.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/pages/resourceManage/product/details/details.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/pages/resourceManage/materialsCenter/list.vue
@@ -52,15 +52,19 @@ </div> </template> <template slot="action" slot-scope="{ record }"> <div> <a @click="addLink(record)">增加关联</a> <a @click="addLink(record)">增加关联</a> <template v-if="record.mproductHistorys.length"> <a-divider type="vertical"></a-divider> <a v-if="record.mproductHistorys.length" @click="removeLink(record)" >解除关联</a > </div> <a @click="removeLink(record)">解除关联</a> </template> <template v-if="record.dwgUrl"> <a-divider type="vertical"></a-divider> <a @click="dwgReview(record.dwgUrl)">预览</a> <template v-if="downloadFlag"> <a-divider type="vertical"></a-divider> <a @click="downloadLog(record)">下载</a> </template> </template> </template> </advance-table> </a-card> @@ -124,6 +128,8 @@ import getWebUrl from "@/assets/js/tools/getWebUrl"; import { getList, zipParse } from "./apis"; import { dwgReview } from "@/pages/workplace/apis"; import { downloadLog } from "@/pages/system/logs/apis"; import { mapGetters } from "vuex"; import createWs from "@/assets/js/websocket"; @@ -299,6 +305,7 @@ return this.isAdd ? "批量增加关联关系" : "批量解除关联关系"; }, ...mapGetters("setting", ["affixed"]), ...mapGetters("account", ["downloadFlag"]), }, components: { AdvanceTable, @@ -455,6 +462,35 @@ cancelSubmit() { this.submitShow = false; }, dwgReview(url) { this.spinning = true; dwgReview(url) .then((res) => { this.spinning = false; let rs = res.data; if (rs.code == 1 && rs.data) { window.open(this.webUrl + rs.data); } else { this.$message.error(rs.msg); } }) .catch((error) => { this.spinning = false; console.log(error); }); }, downloadLog(record) { const { parentModel, subModel, dwgUrl } = record; const url = this.webUrl + dwgUrl; let link = document.createElement("a"); link.style.display = "none"; link.href = url; // link.download = fileName; document.body.appendChild(link); link.click(); document.body.removeChild(link); downloadLog(parentModel, subModel); }, }, watch: { update(n) { src/pages/resourceManage/product/details/apis.js
@@ -35,3 +35,15 @@ responseType: 'blob' }) } /** * 产品指定版本详情 * @returns */ export const getBomHistoryAndMaterial = (productId, version) => { return axios({ method: "GET", url: "product/getBomHistoryAndMaterial", params: { productId, version } }) } src/pages/resourceManage/product/details/details.vue
@@ -36,10 +36,10 @@ :data-source="dataSource" :pagination="false" :expandRowByClick="true" :row-key="(record, index) => record.subCode + '_' + index" :rowClassName=" (record) => (record.children && record.children.length ? 'is-replace' : '') " rowKey="subcode" > <template slot="pictureUrl" slot-scope="text"> <div class="img-wraper"> @@ -79,8 +79,7 @@ import ImageView from "@/pages/components/ImageView"; import List from "./list"; import getWebUrl from "@/assets/js/tools/getWebUrl"; import { getVersions, zipDownload } from "./apis"; import { getBomAndMaterial } from "../apis"; import { getVersions, zipDownload, getBomHistoryAndMaterial } from "./apis"; import { dwgReview } from "@/pages/workplace/apis"; import { downloadLog } from "@/pages/system/logs/apis"; import { mapGetters } from "vuex"; @@ -107,7 +106,7 @@ dataIndex: "category", key: "category", align: "center", fixed: "left", // fixed: "left", width: 180, searchAble: true, }, @@ -280,24 +279,26 @@ info, } = this; this.spinning = true; getBomAndMaterial(id, version).then((res) => { getBomHistoryAndMaterial(id, version).then((res) => { res = res.data; console.log(res, '909009') // console.log(res, '909009') let list = []; this.spinning = false; if (res.code && res.data) { list = res.data2.map((v) => ({ ...v, children: v.materials })); if (!info.parentModel) { const obj = list[0]; debugger; info.parentModel = obj.parentModel; info.parentName = obj.parentName; info.parentCode = obj.parentCode; info.customCode = obj.customCode; } list = res.data2.map((v) => { if (v.materials.length) { v.children = v.materials; } return v; }); // if (!info.parentModel) { // const obj = list[0]; // debugger; // info.parentModel = obj.parentModel; // info.parentName = obj.parentName; // info.parentCode = obj.parentCode; // info.customCode = obj.customCode; // } } this.dataSource = list; if (-1 == this.update) { @@ -452,5 +453,16 @@ /deep/.is-replace > td { background: #00eaff; } /deep/.is-replace.is-replace.ant-table-row-hover > td, /deep/.is-replace.is-replace:hover > td { background: #affaff; } /deep/.ant-table-row-level-1 > td { background: #ff8ea2; } /deep/.ant-table-row-level-1.ant-table-row-level-1.ant-table-row-hover > td, /deep/.ant-table-row-level-1.ant-table-row-level-1:hover > td { background: #ffbcc9; } } </style>