Compare commits

...

3 Commits

Author SHA1 Message Date
zzyuan 3c7a0cc56e 文件查看类型判断添加大写 2025-01-23 15:23:38 +08:00
zzyuan 0d4cb9f3e4 报表-维修报表接口对接 2025-01-23 15:23:19 +08:00
zzyuan 9a2d298449 电子档案文件查看 2025-01-23 15:22:45 +08:00
15 changed files with 100 additions and 50 deletions

View File

@ -74,4 +74,31 @@ export function getBackDetailsInputListApi(query) {
method: 'get',
params: query
})
}
// 维修报表查询
export function getRepairListApi(query) {
return request({
url: '/material/bm_report/getRepairList',
method: 'get',
params: query
})
}
// 维修报表查询-无分页
export function getRepairListNoPageApi(query) {
return request({
url: '/material/bm_report/getRepairListNoPage',
method: 'get',
params: query
})
}
// 维修报表-弹窗查询
export function getRepairDetailsListApi(query) {
return request({
url: '/material/bm_report/getRepairDetailsList',
method: 'get',
params: query
})
}

View File

@ -137,7 +137,7 @@
</el-table-column>
<el-table-column label="" align="center" width="200">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleView(scope.row)">
<el-button size="mini" type="text" icon="el-icon-search" @click="handleView(scope.row)" v-if="scope.row.docType!='文件夹'">
查看
</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">
@ -251,7 +251,7 @@
</el-form-item>
</el-row>
</el-form>
</el-dialog>
</el-dialog>
</div>
</template>
@ -575,7 +575,24 @@ export default {
}
this.breadcrumbList.push(obj)
this.getList()
}else{
//
this.picturePreview(row)
}
},
//-
picturePreview(file) {
console.log(file)
this.dialogImageUrl = file.docUrl.replaceAll('#','%23');
const parts = file.docName.split('.');
const extension = parts.pop();
console.log(extension)
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.docName;
window.open(file.docUrl, windowName)
} else {
this.dialogVisible = true
}
},
// -
handleNodeClick(data, node) {
@ -652,9 +669,10 @@ export default {
return true;
}
},
//******************
//
handleView(row) {
console.log(row)
// console.log(row)
this.picturePreview(row)
},
//
handleReName(){

View File

@ -1195,7 +1195,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23')
const parts = file.name.split('.')
const extension = parts.pop()
if (extension === 'doc' || extension === 'docx' || extension === 'pdf') {
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.name
window.open(file.url, windowName)
} else {

View File

@ -939,7 +939,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{

View File

@ -836,7 +836,7 @@ export default {
this.dialogImageUrl = file.url;
const parts = file.name.split(".");
const extension = parts.pop();
if (extension === "doc" || extension === "docx" || extension === "pdf") {
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.name;
window.open(file.url, windowName);
} else {

View File

@ -381,7 +381,7 @@
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{
@ -476,7 +476,7 @@
})
}
fileList.forEach(file=>{
if(extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
this.urlTemp = require('../../../../assets/file.png');
}

View File

@ -515,7 +515,7 @@ export default {
this.dialogImageUrl = file.url;
const parts = file.name.split(".");
const extension = parts.pop();
if (extension === "doc" || extension === "docx" || extension === "pdf") {
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.name;
window.open(file.url, windowName);
} else {

View File

@ -880,7 +880,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{

View File

@ -329,7 +329,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{

View File

@ -475,7 +475,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split(".");
const extension = parts.pop();
if (extension === "doc" || extension === "docx" || extension === "pdf") {
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.name;
window.open(file.url, windowName);
} else {

View File

@ -976,7 +976,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll("#","%23")
const parts = file.name.split('.')
const extension = parts.pop()
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name
window.open(file.url,windowName)
}else{

View File

@ -306,7 +306,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{

View File

@ -752,7 +752,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split(".");
const extension = parts.pop();
if (extension === "doc" || extension === "docx" || extension === "pdf") {
if (extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF') {
const windowName = file.name;
window.open(file.url, windowName);
} else {

View File

@ -513,7 +513,7 @@ export default {
this.dialogImageUrl = file.url.replaceAll('#','%23');
const parts = file.name.split('.');
const extension = parts.pop();
if(extension === 'doc'||extension === 'docx'||extension === 'pdf'){
if(extension === 'doc' || extension === 'DOC' || extension === 'docx' || extension === 'DOCX' || extension === 'pdf' || extension === 'PDF'){
const windowName = file.name;
window.open(file.url,windowName)
}else{

View File

@ -35,19 +35,30 @@
<span v-else>{{ (queryParams.pageNum - 1) * 10 + scope.$index }}</span>
</template>
</el-table-column>
<el-table-column label="物资名称" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="规格型号" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="计量单位" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="退料数量" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="维修合格数量" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="待报废数量" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="待修数量" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="退料日期" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="维修日期" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="领料单位" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="领料工程" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="维修人" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="维修单号" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="物资名称" align="center" prop="typeName" :show-overflow-tooltip="true"/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true"/>
<el-table-column label="计量单位" align="center" prop="unitName" :show-overflow-tooltip="true"/>
<el-table-column label="退料数量" align="center" prop="backNum" :show-overflow-tooltip="true">
<template scope="scope">
<!-- manageType '编码' 使用可点击的 span -->
<span class="clickText" v-if="scope.row.manageType=='0'" @click="openRecords(scope.row)">
{{ scope.row.backNum }}
</span>
<!-- 否则直接显示数字 -->
<span v-else>
{{ scope.row.backNum }}
</span>
</template>
</el-table-column>
<el-table-column label="维修合格数量" align="center" prop="repairedNum" :show-overflow-tooltip="true"/>
<el-table-column label="待报废数量" align="center" prop="pendingScrapNum" :show-overflow-tooltip="true"/>
<el-table-column label="待修数量" align="center" prop="pendingRepairNum" :show-overflow-tooltip="true"/>
<el-table-column label="退料日期" align="center" prop="backTime" :show-overflow-tooltip="true"/>
<el-table-column label="维修日期" align="center" prop="repairTime" :show-overflow-tooltip="true"/>
<el-table-column label="领料单位" align="center" prop="leaseUnitName" :show-overflow-tooltip="true"/>
<el-table-column label="领料工程" align="center" prop="leaseProjectName" :show-overflow-tooltip="true"/>
<el-table-column label="维修人" align="center" prop="repairPersonName" :show-overflow-tooltip="true"/>
<el-table-column label="维修单号" align="center" prop="code" :show-overflow-tooltip="true"/>
</el-table>
<pagination
@ -95,14 +106,10 @@
<el-table-column label="序号" align="center" width="80" type="index" :index="indexContinuation(dialogQuery.pageNum, dialogQuery.pageSize)">
</el-table-column>
<el-table-column label="机具名称" align="center" prop="typeName" :show-overflow-tooltip="true"/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true"/>
<el-table-column label="入库数量" align="center" prop="storeNum" :show-overflow-tooltip="true"/>
<el-table-column label="原值(元)" align="center" prop="buyPrice" :show-overflow-tooltip="true"/>
<el-table-column label="设备编码" align="center" prop="maCode" :show-overflow-tooltip="true"/>
<el-table-column label="库管员" align="center" prop="maKeeper" :show-overflow-tooltip="true"/>
<el-table-column label="操作人" align="center" prop="inputUser" :show-overflow-tooltip="true"/>
<el-table-column label="入库时间" align="center" prop="inputTime" :show-overflow-tooltip="true"/>
<el-table-column label="入库方式" align="center" prop="inputType" :show-overflow-tooltip="true"/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true"/>
<el-table-column label="设备编码" align="center" prop="maCode" :show-overflow-tooltip="true"/>
<el-table-column label="维修人员" align="center" prop="repairPersonName" :show-overflow-tooltip="true"/>
<el-table-column label="维修时间" align="center" prop="repairTime" :show-overflow-tooltip="true"/>
</el-table>
<pagination
v-show="dialogTotal > 0"
@ -116,7 +123,7 @@
</template>
<script>
import { getPurChaseReportListApi,getPurChaseReportListNoPageApi,getPurChaseReportDetailsListApi } from "@/api/report/report";
import { getRepairListApi, getRepairListNoPageApi, getRepairDetailsListApi } from "@/api/report/report";
export default {
name: "Report",
data() {
@ -188,7 +195,7 @@
pageSize: this.queryParams.pageSize,
pageNum: this.queryParams.pageNum
}
const res = await getPurChaseReportListApi(params)
const res = await getRepairListApi(params)
if(res.data.rows.length>0){
this.tableList = res.data.rows;
}else{
@ -200,14 +207,12 @@
startTime: this.dateRange && this.dateRange[0],
endTime: this.dateRange && this.dateRange[1],
}
const response = await getPurChaseReportListNoPageApi(param)
const response = await getRepairListNoPageApi(param)
let obj = {
purchaseNum: response.data.purchaseNum||0,//
passNum: response.data.passNum||0,//
inputNum: response.data.inputNum||0,//
purchasePrice: response.data.purchasePrice||0,//()
purchasePriceNoTax: response.data.purchasePriceNoTax||0,//()
pendingInputNum: response.data.pendingInputNum||0,//
backNum: response.data.backNum||0,//退
repairedNum: response.data.repairedNum||0,//
pendingScrapNum: response.data.pendingScrapNum||0,//
pendingRepairNum: response.data.pendingRepairNum||0,//
}
this.tableList.unshift(obj)
this.loading = false
@ -227,7 +232,7 @@
},
handleExport() {
this.download(
"/material/bm_report/exportPurChaseReportList",
"/material/bm_report/exportRepairList",
{keyWord: this.queryParams.keyWord,startTime: this.dateRange && this.dateRange[0],endTime: this.dateRange && this.dateRange[1]},
`维修报表_${new Date().getTime()}.xlsx`
);
@ -242,7 +247,7 @@
},
/** 查询弹框列表 */
getDialogDataList() {
getPurChaseReportDetailsListApi(this.dialogQuery).then((response) => {
getRepairDetailsListApi(this.dialogQuery).then((response) => {
this.dialogList = response.data.rows
this.dialogTotal = response.data.total
})
@ -260,7 +265,7 @@
/** 弹框导出操作 */
handleDialogExport() {
this.download(
'material/bm_report/exportPurChaseReportDetailsList',
'material/bm_report/exportRepairDetailsList',
{ ...this.dialogQuery},
`维修报表_退料设备_${new Date().getTime()}.xlsx`,
)