feat:样品标签打印

This commit is contained in:
houjunxiang
2025-11-24 16:48:57 +08:00
parent c3630e74ec
commit c504c9b2a7
18 changed files with 97 additions and 712 deletions

View File

@@ -1,24 +0,0 @@
import request from '@/nx/request'
const taskPrefix = '/qms/bus/qmsBusAssayTask'
export const getConAssayTaskWithReportTemplateContent = id => {
return request({
url: '/qms/config/assay-task/getConTaskWithReportTemplateDataContent',
method: 'get',
params: {
id
}
})
}
export const queryTaskDetailListByAssayTaskId = params => {
return request({
url: taskPrefix + '/getAssayTaskDataWithDetailData',
method: 'get',
params: params
})
}
export default {
getConAssayTaskWithReportTemplateContent,
queryTaskDetailListByAssayTaskId
}

23
nx/api/report.js Normal file
View File

@@ -0,0 +1,23 @@
import request from '@/nx/request'
export const getBusinessSubSample = id => {
return request({
url: '/qms/business-sub-sample/get',
method: 'get',
params: {
id
}
})
}
export const getConfigReportTemplateByKey = params => {
return request({
url: '/qms/config-report-template/getByKey',
method: 'GET',
params: params
})
}
export default {
getBusinessSubSample,
getConfigReportTemplateByKey
}

View File

@@ -52,7 +52,7 @@ export default {
// 按样品添加内部调拨数据
addDispatchSample: data =>
request({
url: '/qms/business-sample-dispatch/addBySampleCode',
url: '/qms/business-sample-dispatch/addBySampleReturnCode',
method: 'POST',
data
}),

View File

@@ -1,4 +1,4 @@
import { getConAssayTaskWithReportTemplateContent, queryTaskDetailListByAssayTaskId } from '@/nx/api/auncel'
import { getConfigReportTemplateByKey, getBusinessSubSample } from '@/nx/api/report'
export default {
//打印机Map对象
printMap: new Map(),
@@ -178,36 +178,33 @@ export default {
//不存在则打开
this.open(printServerIp)
}
if (printer.socketTask) {
if (printer?.socketTask) {
printer.socketTask.send({
data: data
})
}
},
//获取打印模板并执行打印
getPrintTemplateAndPrint(currentTask) {
const id = currentTask.taskTypeId
getConAssayTaskWithReportTemplateContent(id)
getPrintTemplateAndPrint(businessSubId) {
getBusinessSubSample(businessSubId)
.then(res => {
this.print(currentTask, res)
this.print(res)
})
.catch(err => {
console.log(err)
})
},
//调用send方法执行打印
print(currentTask, conAssayTask) {
print(businessSubData) {
const { printTemplate } = businessSubData
const me = this
let id = currentTask.id
const reportTemplate = conAssayTask.reportTemplateDataContent
me.getReportData(id, function (res) {
const data = res.data || []
me.getReportData(printTemplate, function (res) {
const reportData = {
data: data
data: [businessSubData]
}
let printData = {
type: 'print',
reportTemplate: reportTemplate,
type: 'preview',
reportTemplate: res.content,
reportData: JSON.stringify(reportData)
}
//连接打印服务
@@ -220,12 +217,11 @@ export default {
})
},
//获取打印模板
getReportData(id, onComplete) {
getReportData(templateKey, onComplete) {
const param = {
taskId: id,
hideResultFlag: 'true'
key: templateKey
}
queryTaskDetailListByAssayTaskId(param).then(res => {
getConfigReportTemplateByKey(param).then(res => {
onComplete(res)
})
}

View File

@@ -204,7 +204,8 @@ http.interceptors.response.use(
if (code !== 0) {
uni.showToast({
title: msg || response.config.custom.errorMsg,
icon: 'none'
icon: 'none',
duration: 3000
})
if (code === 401) {
userStore.logout(true)