Commit e31a325b by lichengming
parents 230d40c9 7e352150
......@@ -37,4 +37,5 @@ export { default as meterSampleQuote } from './meter/meter-sample-quote'
export { default as meterRecord } from './meter/meter-record'
export { default as meterSubContract } from './meter/meter-sub-contract'
export { default as meterPrint } from './meter/meter-print'
export { default as meterTemplate } from './meter/meter-template'
export { default as lmsBaseDict } from './lims/lms-base-dict'
......@@ -8,8 +8,6 @@ import { https } from '../https'
export default {
// page
page: data => http.post('meter/v1/sample/page', data).then(res => res),
pageTemplate: data =>
http.post('meter/v1/file_template/page', data).then(res => res),
templateList: data =>
http.post('base/v1/file_template_classify/list', data).then(res => res),
pageSubSample: data =>
......@@ -158,7 +156,15 @@ export default {
https
.post('meter/v1/sample/report_generate', JSON.stringify(data))
.then(res => res),
generateExcelReport: data =>
http
.post(
'meter/v1/sample/excel_report_generate?sampleId=' +
data.sampleId +
'&templateId=' +
data.id
)
.then(res => res),
subpackageInfoReg: data =>
http
.post('meter/v1/sample/subpackage_info_reg?ids=' + data.ids, data.reg)
......@@ -313,5 +319,7 @@ export default {
'&remark=' +
data.remark
)
.then(res => res)
.then(res => res),
getCertificateReport: data =>
http.post('meter/v1/sample/get_certificate_report?sampleId=' + data)
}
/**
* 工作台
*/
import http from '../http'
export default {
// 证书模板
pageTemplate: data =>
http.post('meter/v1/file_template/page', data).then(res => res),
getById: data => http.get('meter/v1/file_template/' + data).then(res => res),
deleteById: data =>
http.delete('meter/v1/file_template/?ids=' + data).then(res => res)
}
......@@ -89,10 +89,15 @@ export default {
}
],
iconMsg: [
// {
// type: 'ios-book',
// id: '',
// name: '查看证书'
// },
{
type: 'ios-book',
id: '',
name: '查看证书'
name: '在线查看证书'
},
// {
// type: 'ios-list-box',
......@@ -111,6 +116,7 @@ export default {
pageColumns: [
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 140 },
{ title: '型号规格', key: 'spec', width: 100 },
{ title: '出厂编号', key: 'factoryNumber' },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -258,6 +264,9 @@ export default {
case '查看证书':
this._itemOriginalRecordLook(data, 'write')
break
case '在线查看证书':
this._reportMakeLook(data)
break
case '资质项目':
this._itemModal(data.id)
break
......@@ -273,6 +282,24 @@ export default {
}
})
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemOriginalRecordLook(data)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_personModal(data) {
console.log(data)
this._previewEdit(data.id)
......
......@@ -111,6 +111,7 @@ export default {
pageColumns: [
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 140 },
{ title: '型号规格', key: 'spec', width: 100 },
{ title: '出厂编号', key: 'factoryNumber' },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -233,6 +234,17 @@ export default {
},
_itemOriginalRecordLook(data, name) {
this._reportMakeLook(data)
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemRecordLook(data)
}
},
_itemRecordLook(data, name) {
if (
data.recordId === null ||
undefined === data.recordId ||
......@@ -247,7 +259,16 @@ export default {
)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_iconClick(res, data, componentName) {
this.currentComponent = componentName
this.$nextTick(function() {
......
......@@ -98,10 +98,15 @@ export default {
}
],
iconMsg: [
// {
// type: 'ios-book',
// id: '',
// name: '查看证书'
// },
{
type: 'ios-book',
id: '',
name: '查看证书'
name: '在线查看证书'
},
{ type: 'md-cloud', id: '', name: '附件' }
],
......@@ -117,7 +122,7 @@ export default {
pageColumns: [
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 145 },
{ title: '型号规格', key: 'spec', width: 100 },
{ title: '出厂编号', key: 'factoryNumber' },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -244,6 +249,9 @@ export default {
case '查看证书':
this._itemOriginalRecordLook(data, 'write')
break
case '在线查看证书':
this._reportMakeLook(data)
break
case '删除':
this._deleteByIds([data.id])
break
......@@ -253,6 +261,24 @@ export default {
}
})
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemOriginalRecordLook(data, 'write')
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_itemOriginalRecordLook(data, name) {
if (
data.recordId === null ||
......
......@@ -245,6 +245,17 @@ export default {
})
},
_itemOriginalRecordLook(data, name) {
this._reportMakeLook(data)
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemRecordLook(data, 'only')
}
},
_itemRecordLook(data, name) {
if (
data.recordId === null ||
undefined === data.recordId ||
......@@ -259,6 +270,16 @@ export default {
)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_personModal(data) {
this._previewEdit(data.id)
},
......
......@@ -6,7 +6,7 @@
<Row>
<!--查询-->
<Col span="24" style="margin-top: 10px">
<Form id="formId" v-show="searchOpen" :label-width="90" inline onsubmit="return false">
<Form v-show="searchOpen" id="formId" :label-width="90" inline onsubmit="return false">
<label class="label-sign"></label>
<Form-item class="search-item" label="委托单位:">
<Input v-model="formObj.client" name="client" placeholder="请输入委托单位" clearable @on-enter="_formSearch"/>
......@@ -23,20 +23,20 @@
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">搜索</Button>
<Button type="primary" @click="_formSearch">搜索</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col span="24">
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"
class="contHide"></btn-list>
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" class="contHide"
@on-result-change="_btnClick"></btn-list>
</Col>
<!--表格-->
<Col span="24">
<PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :loading="true"
:get-page="getPage" :icon-msg="iconMsg" @on-result-change="_tableResultChange" select-data>
:get-page="getPage" :icon-msg="iconMsg" select-data @on-result-change="_tableResultChange">
<vxe-table-column
v-for="item in pageColumns"
:key="item.key"
......@@ -72,6 +72,8 @@
<InstruMentEdit ref="InstruEdit"></InstruMentEdit>
<operationModal ref="operationModal"></operationModal>
<FileManage ref="FileManage"></FileManage>
<SelectOriTempRecordExcel ref="SelectOriTempRecordExcel" @on-result-change="_certificateSelectExcelBack"></SelectOriTempRecordExcel>
</div>
</template>
<script>
......@@ -79,6 +81,7 @@ import CertificateMake from '../../meter-certificate/CertificateMake'
import CertificateMakeLook from '../../meter-certificate/CertificateMakeLook'
import { meterSample } from '../../../api'
import operationModal from '../../../components/operation/Operation'
import SelectOriTempRecordExcel from '../../meter-send/sample-input/SelectOriTempRecordExcel'
import CreateReport from './CreateReport'
import CarManage from './CarManage'
import InstruMentEdit from './InstrumentEdit'
......@@ -88,6 +91,7 @@ export default {
CreateReport,
CarManage,
InstruMentEdit,
SelectOriTempRecordExcel,
operationModal,
SelectOriTempRecord,
CertificateMake,
......@@ -113,10 +117,15 @@ export default {
iconMsg: [
{
type: 'ios-bookmarks',
id: '',
id: 'meter-certificate-make-spread-js-make',
name: '编制证书'
},
{
type: 'ios-bookmarks',
id: 'meter-certificate-make-pageoffice-make',
name: '在线编制证书'
},
{
type: 'md-create',
id: '',
name: '编辑'
......@@ -148,7 +157,7 @@ export default {
{ title: '样品编号', key: 'code', width: 120 },
{ title: '型号规格', key: 'spec', width: 100 },
{ title: '证书是否编制', key: 'onlineReported', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 150 },
{ title: '出厂编号', key: 'factoryNumber' },
{ title: '检测类型', key: 'type' },
{ title: '委托单位', key: 'client', width: 200 },
......@@ -291,6 +300,9 @@ export default {
case '编制证书':
this._makeCertificate(data)
break
case '在线编制证书':
this._makeCertificateExcel(data)
break
case '仪器领用':
this.$refs.InstruEdit._open()
break
......@@ -431,6 +443,58 @@ export default {
this._formSearch()
this.$Message.success('删除成功!')
}
},
_makeCertificateExcel(data) {
if (data.onlineReported === '否') {
this.$refs.SelectOriTempRecordExcel._open(data.id, data)
} else {
this._reportMakeLook(data)
}
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_certificateSelectExcelBack(data) {
if (data) {
this._makeCodeExcel(data)
} else {
const ids = this.selectIds
if (ids.length === 0) {
this.$Message.warning('请至少选择一条数据!')
} else {
// this._appendOriginalRecord()
}
}
},
_makeCodeExcel: async function(data) {
// this.$refs.pageTable._hideLoading()
this.$refs.pageTable._showLoading()
const result = await meterSample.generateExcelReport(data)
if (result) {
await this._page()
this.$refs.pageTable._hideLoading()
if (result === null || result === undefined) {
this.$Message.warning('证书编制失败,请联系管理员!')
return false
} else {
this.$emit('on-result-change')
this._viewReport(result)
}
}
}
}
}
......
......@@ -294,11 +294,22 @@ export default {
this._previewEdit(data.id)
},
_makeCertificate(data) {
if (data.onlineReported === '否' || undefined === data.recordId) {
console.log('click')
this.$refs.SelectOriTempRecord._open(data.id, data)
} else {
this._itemOriginalRecordLook(data, 'only')
this._reportMakeLook(data)
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_resultRecord() {
......
......@@ -83,10 +83,15 @@ export default {
// }
],
iconMsg: [
// {
// type: 'ios-book',
// id: '',
// name: '查看证书'
// },
{
type: 'ios-book',
id: '',
name: '查看证书'
name: '在线查看证书'
},
{ type: 'md-cloud', id: '', name: '附件' }
],
......@@ -100,6 +105,7 @@ export default {
pageColumns: [
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 145 },
{ title: '型号规格', key: 'spec', width: 100 },
{ title: '出厂编号', key: 'factoryNumber' },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -197,6 +203,9 @@ export default {
case '查看证书':
this._itemOriginalRecordLook(data, 'only')
break
case '在线查看证书':
this._reportMakeLook(data)
break
case '删除':
this._deleteByIds([data.id])
break
......@@ -206,6 +215,24 @@ export default {
}
})
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemOriginalRecordLook(data, 'only')
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_personModal(data) {
this._previewEdit(data.id)
},
......
......@@ -7,25 +7,25 @@
<Row>
<!--查询-->
<Col span="24">
<Form id="search-form" :label-width="80" v-show="searchOpen" inline onsubmit="return false">
<Form v-show="searchOpen" id="search-form" :label-width="80" inline onsubmit="return false">
<label class="label-sign"></label>
<Form-item class="search-item" label="模板名称:">
<Input v-model="formObj.name" @on-enter="_formSearch" name="name" placeholder="请输入模板名称"></Input>
<Input v-model="formObj.name" name="name" placeholder="请输入模板名称" @on-enter="_formSearch"></Input>
<input type="hidden" name="classifyId">
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">搜索</Button>
<Button type="primary" @click="_formSearch">搜索</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col span="24">
<btn-list :msg="btn" :open="searchOpen" @on-result-change="_btnClick" :showSearchBtn="true"></btn-list>
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"></btn-list>
</Col>
<!-- 表格 -->
<Col span="24">
<PTVXETable ref="pageTable" :pageColumns="pageColumns"
@on-result-change="_tableResultChange" :getPage="getPage" :optColWidth="120" :icon-msg="iconMsg">
<PTVXETable ref="pageTable" :page-columns="pageColumns"
:get-page="getPage" :opt-col-width="120" :icon-msg="iconMsg" @on-result-change="_tableResultChange">
<vxe-table-column
v-for="item in pageColumns"
:key="item.key"
......@@ -49,7 +49,7 @@
</template>
<script>
import global from '../../../api/config'
import { meterSample } from '../../../api'
import { meterTemplate } from '../../../api'
import FoodReportTemplateEdit from './MeterReportTemplateEdit'
export default {
......@@ -60,14 +60,15 @@ export default {
return {
pageColumns: [
{ title: '报告模板名称', key: 'name' },
{ title: '别名', key: 'alias' }
{ title: '别名', key: 'alias' },
{ title: '备注', key: 'remark' }
],
formObj: {
name: undefined
},
iconMsg: [
{ type: 'ios-book', id: '', name: '预览/编辑' },
{ type: 'ios-download', id: '', name: '下载' },
// { type: 'ios-download', id: '', name: '下载' },
{ type: 'md-remove-circle', id: '', name: '删除' }
],
getPage: {},
......@@ -137,13 +138,21 @@ export default {
this._download(data.id)
break
case '预览/编辑':
this._viewReport(data)
this._lookReport(data)
break
case '删除':
this._deleteById([data.id])
this._deleteByIds([data.id])
break
}
},
_lookReport: async function(data) {
const result = await meterTemplate.getById(data.id)
if (result) {
this._viewReport(result)
}
},
_viewReport(data) {
// window.open(global.baseURL + '/print/v1/oos?key=' + objectKey+'&edit=true', '', 'height=' + (screen.availHeight - 50) + ',' +
// 'width=' + (screen.availWidth - 10) + ',top=0,left=0,toolbar=no,menubar=no,scrollbars=auto,resizeable=no,' +
......@@ -152,6 +161,7 @@ export default {
this.$openWindowModeless({
objectKey: data.objectKey,
id: data.id,
idType: 11,
isReport: 4
})
}
......@@ -162,7 +172,7 @@ export default {
_page: async function() {
console.log('page')
Object.assign(this.formObj, this.$refs.pageTable._searchParams())
const result = await meterSample.pageTemplate(this.formObj)
const result = await meterTemplate.pageTemplate(this.formObj)
if (result) {
this.$refs.pageTable._hideLoading()
this.getPage = result
......@@ -182,24 +192,25 @@ export default {
if (ids.length === 0) {
this.$Message.warning('请至少选择一条数据!')
} else {
this._deleteById(ids)
this._deleteByIds(ids)
}
},
_deleteById(ids) {
// 删除一条记录
// 删除
_deleteByIds(ids, content) {
this.$Modal.confirm({
title: '提示',
content: '确定删除这 ' + ids.length + ' 条记录?',
content: content || '确定删除该记录?',
onOk: () => {
this.$store.dispatch('SysFileTemplate/deleteById', ids).then(() => {
if (this.$store.state.SysFileTemplate.success) {
this._page()
this.$Message.success('删除成功!')
this.selectIds = []
this._delete(ids)
}
})
},
_delete: async function(ids) {
const result = await meterTemplate.deleteById(ids)
if (result) {
this._formSearch()
this.$Message.success('删除成功!')
}
})
},
_download(id) {
this.$Modal.confirm({
......
......@@ -17,6 +17,9 @@
<Form-item label="别名" prop="alias">
<Input v-model="formObj.alias" name="alias" placeholder="请输入别名" @on-keyup="_onKeyUp"></Input>
</Form-item>
<Form-item label="项目代号" prop="remark">
<Input v-model="formObj.remark" name="remark" placeholder="请输入项目代号" @on-keyup="_onKeyUp"></Input>
</Form-item>
</Form>
</div>
<div slot="footer" class="btn-width clearfix">
......@@ -52,6 +55,7 @@ import global from '../../../api/config'
const defVal = {
alias: '',
classType: '',
remark: '',
classifyId: 0
}
......@@ -63,6 +67,9 @@ export default {
formObj: defVal,
ruleValidate: {
alias: [{ required: true, message: '别名不能为空', trigger: 'blur' }],
remark: [
{ required: true, message: '项目代号不能为空', trigger: 'blur' }
],
classType: [
{ required: true, message: '类别不能为空', trigger: 'blur' }
]
......@@ -80,7 +87,11 @@ export default {
},
methods: {
_onKeyUp() {
if (this.formObj.alias === '' || this.formObj.classType === '') {
if (
this.formObj.alias === '' ||
this.formObj.classType === '' ||
this.formObj.remark === ''
) {
this.isDisable = true
} else {
this.isDisable = false
......@@ -89,7 +100,9 @@ export default {
'/meter/v1/file_template/upload_template/?classType=' +
this.formObj.classType +
'&alias=' +
this.formObj.alias
this.formObj.alias +
'&remark=' +
this.formObj.remark
}
},
_selectZtree() {
......@@ -102,6 +115,7 @@ export default {
this.showEditModal = true
this.isLoad = false
this.formObj.alias = ''
this.formObj.remark = ''
this.modalTitle = '添加模板'
},
_beupload(file) {
......
......@@ -6,29 +6,29 @@
<Row>
<!--查询-->
<Col span="24" style="margin-top: 10px">
<Form id="formId" v-show="searchOpen" :label-width="90" inline onsubmit="return false">
<Form v-show="searchOpen" id="formId" :label-width="90" inline onsubmit="return false">
<label class="label-sign"></label>
<Form-item class="search-item" label="样品名称:">
<Input v-model="formObj.name" @on-enter="_formSearch" name="name" placeholder="请输入样品名称" clearable/>
<Input v-model="formObj.name" name="name" placeholder="请输入样品名称" clearable @on-enter="_formSearch"/>
</Form-item>
<Form-item class="search-item" label="样品编号:">
<Input v-model="formObj.code" @on-enter="_formSearch" name="aptitude" placeholder="请输入样品编号" clearable/>
<Input v-model="formObj.code" name="aptitude" placeholder="请输入样品编号" clearable @on-enter="_formSearch"/>
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">搜索</Button>
<Button type="primary" @click="_formSearch">搜索</Button>
</Form-item>
</Form>
</Col>
<!--操作-->
<Col span="24">
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"
class="contHide"></btn-list>
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" class="contHide"
@on-result-change="_btnClick"></btn-list>
</Col>
<!--表格-->
<Col span="24">
<PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :loading="true"
:get-page="getPage" :icon-msg="iconMsg" @on-result-change="_tableResultChange" select-data>
:get-page="getPage" :icon-msg="iconMsg" select-data @on-result-change="_tableResultChange">
<vxe-table-column
v-for="item in pageColumns"
:key="item.key"
......@@ -70,7 +70,7 @@
<MeterPersonItemTaskManage ref="personModal" @on-result-change="_page"></MeterPersonItemTaskManage>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
<CertificateMakeLook ref="itemOriginalRecordLookModal" @on-result-change="_resultRecord"></CertificateMakeLook>
<SelectOriTempRecordExcel ref="SelectOriTempRecordExcel" @on-result-change="_certificateSelectExcelBack"></SelectOriTempRecordExcel>
</div>
</template>
<script>
......@@ -79,6 +79,7 @@ import CertificateMake from '../../meter-certificate/CertificateMake'
import SelEquip from '../../../components/select-equip/SelEquip'
import operationModal from '../../../components/operation/Operation'
import CertificateMakeLook from '../../meter-certificate/CertificateMakeLook'
import SelectOriTempRecordExcel from '../../meter-send/sample-input/SelectOriTempRecordExcel'
import MeterSubcontractorEdit from './MeterGoOutTestEdit'
import CarManage from './CarManage'
import MeterPersonItemTaskManage from './MeterPersonItemTaskManage'
......@@ -89,6 +90,7 @@ export default {
components: {
CertificateMake,
CertificateMakeLook,
SelectOriTempRecordExcel,
SelectOriTempRecord,
docimasy,
MeterSubcontractorEdit,
......@@ -133,10 +135,15 @@ export default {
iconMsg: [
{
type: 'ios-bookmarks',
id: 'meter-out-personal-task-create-o',
id: 'meter-out-personal-task-spread-js-create',
name: '编制证书'
},
{
type: 'ios-bookmarks',
id: 'meter-out-personal-task-create-o',
name: '在线编制证书'
},
{
type: 'md-create',
id: 'meter-out-personal-task-result-o',
name: '检测结果'
......@@ -173,7 +180,7 @@ export default {
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书是否编制', key: 'onlineReported', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 130 },
{ title: '证书编号', key: 'reportCode', width: 150 },
{ title: '型号规格', key: 'spec', width: 120 },
{ title: '出厂编号', key: 'factoryNumber', width: 120 },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -306,6 +313,9 @@ export default {
case '编制证书':
this._makeCertificate(data)
break
case '在线编制证书':
this._makeCertificateExcel(data)
break
case '仪器领用':
this.$refs.InstruEdit._open(data.id)
break
......@@ -414,7 +424,57 @@ export default {
await this._page()
}
},
_makeCertificateExcel(data) {
if (data.onlineReported === '否') {
this.$refs.SelectOriTempRecordExcel._open(data.id, data)
} else {
this._reportMakeLook(data)
}
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_certificateSelectExcelBack(data) {
if (data) {
this._makeCodeExcel(data)
} else {
const ids = this.selectIds
if (ids.length === 0) {
this.$Message.warning('请至少选择一条数据!')
} else {
// this._appendOriginalRecord()
}
}
},
_makeCodeExcel: async function(data) {
// this.$refs.pageTable._hideLoading()
this.$refs.pageTable._showLoading()
const result = await meterSample.generateExcelReport(data)
if (result) {
await this._page()
this.$refs.pageTable._hideLoading()
if (result === null || result === undefined) {
this.$Message.warning('证书编制失败,请联系管理员!')
return false
} else {
this.$emit('on-result-change')
this._viewReport(result)
}
}
},
_record(id) {
this.$refs.operationModal._open(id)
},
......
......@@ -158,7 +158,7 @@ export default {
{ title: '样品名称', key: 'name', width: 120 },
{ title: '样品编号', key: 'code', width: 120 },
{ title: '证书是否编制', key: 'onlineReported', width: 120 },
{ title: '证书编号', key: 'reportCode', width: 130 },
{ title: '证书编号', key: 'reportCode', width: 150 },
{ title: '型号规格', key: 'spec', width: 120 },
{ title: '出厂编号', key: 'factoryNumber', width: 120 },
{ title: '检测类型', key: 'type', width: 100 },
......@@ -345,15 +345,24 @@ export default {
}
},
_makeCertificate(data) {
if (data.onlineReported === '否' || undefined === data.recordId) {
// console.log('click')
// this.$refs.SelectOriTempRecord._open(data.id, data)
this.$Message.warning('证书暂未编制!')
_makeCertificate: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemOriginalRecordLook(data, 'only')
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_itemOriginalRecordLook(data, name) {
if (
data.recordId === null ||
......
......@@ -124,12 +124,12 @@ export default {
iconMsg: [
{
type: 'ios-bookmarks',
id: 'meter-sample-input-create',
id: 'meter-sample-input-spread-js-create',
name: '编制证书'
},
{
type: 'ios-bookmarks',
id: '',
id: 'meter-sample-input-create',
name: '在线编制证书'
},
{
......@@ -336,10 +336,17 @@ export default {
},
_makeCertificateExcel(data) {
if (data.onlineReported === '否' || undefined === data.recordId) {
if (data.onlineReported === '否') {
this.$refs.SelectOriTempRecordExcel._open(data.id, data)
} else {
this._itemOriginalRecordLook(data, 'write')
this._reportMakeLook(data)
}
},
_reportMakeLook: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
}
},
......@@ -432,14 +439,18 @@ export default {
}
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_certificateSelectExcelBack(data) {
if (data) {
// this.$refs.itemOriginalRecordModal._open(
// data.sampleId,
// data.tempId,
// data.dataSource
// )
console.log('_certificateSelectBack--', data)
this._makeCodeExcel(data)
} else {
const ids = this.selectIds
......@@ -468,18 +479,19 @@ export default {
},
_makeCodeExcel: async function(data) {
const result = await meterSample.makeExcelReport(data)
// this.$refs.pageTable._hideLoading()
this.$refs.pageTable._showLoading()
const result = await meterSample.generateExcelReport(data)
if (result) {
if (result === '' || result === undefined) {
this.$Message.warning('证书编号暂未生成!')
await this._page()
this.$refs.pageTable._hideLoading()
if (result === null || result === undefined) {
this.$Message.warning('证书编制失败,请联系管理员!')
return false
} else {
this.$emit('on-result-change')
this._viewReport(result)
}
data.dataSource.cc = result
this.$refs.itemOriginalRecordModal._open(
data.sampleId,
data.tempId,
data.dataSource
)
}
},
......
......@@ -316,14 +316,24 @@ export default {
})
},
_makeCertificate(data) {
if (data.onlineReported === '否' || undefined === data.recordId) {
// this.$refs.SelectOriTempRecord._open(data.id, data)
this.$Message.warning('证书暂未编制!')
_makeCertificate: async function(data) {
const result = await meterSample.getCertificateReport(data.id)
if (result) {
this._viewReport(result)
} else {
this._itemOriginalRecordLook(data, 'only')
}
},
_viewReport(data) {
if (data) {
this.$openWindowModeless({
objectKey: data.objectKey,
idType: 10,
id: data.id,
isReport: 4
})
}
},
_itemOriginalRecordLook(data, name) {
if (
......
......@@ -13,13 +13,13 @@
<Col span="24" />
<Form v-model="formObj" :label-width="90" inline onsubmit="return false">
<Form-item class="search-item" label="证书模板名称:">
<Input v-model="formObj.code" @on-enter="_formSearch" placeholder="请输入证书模板名称" clearable />
<Input v-model="formObj.name" placeholder="请输入证书模板名称" clearable @on-enter="_formSearch" />
</Form-item>
<Form-item class="search-item" label="类别:">
<Input v-model="formObj.standardName" @on-enter="_formSearch" placeholder="请输入类别" clearable />
<Input v-model="formObj.classType" placeholder="请输入类别" clearable @on-enter="_formSearch" />
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">
<Button type="primary" @click="_formSearch">
搜索
</Button>
</Form-item>
......@@ -38,8 +38,8 @@
:icon-msg="iconMsg"
:is-radio="true"
select-data="true"
@on-result-change="_tableResultChange"
hide-checkbox>
hide-checkbox
@on-result-change="_tableResultChange">
<vxe-table-column
v-for="item in pageColumns"
:key="item.key"
......@@ -71,7 +71,7 @@
// import SampleItemSelect from './SampleItemSelect'
import DownloadTemplateImport from '../../../components/import/DownloadTemplateImport'
import ModalFooter from '../../../components/base/modalFooter'
import { meterManageItem, meterSample } from '../../../api'
import { meterTemplate } from '../../../api'
export default {
components: {
ModalFooter,
......@@ -82,10 +82,8 @@ export default {
return {
formId: 'SampleItemListFormId',
formObj: {
aptitudeId: '',
name: '',
code: '',
standardName: ''
classType: ''
},
showModal: false,
searchOpen: false,
......@@ -100,22 +98,21 @@ export default {
{ title: '类别', key: 'classType', width: 140 },
{ title: '备注', key: 'remark' }
],
catalogueId: '',
sampleId: '',
getPage: {},
selectData: []
}
},
methods: {
_open(aptitudeId) {
_open(sampleId) {
this.formObj = this.$resetFields(this.formObj)
this.showModal = true
this.formObj.aptitudeId = aptitudeId
this.sampleId = sampleId
this._page()
},
_page: async function() {
Object.assign(this.formObj, this.$refs.pageTable._searchParams())
console.log('this.formObj', this.formObj)
const result = await meterSample.pageTemplate(this.formObj)
const result = await meterTemplate.pageTemplate(this.formObj)
if (result) {
this.getPage = result
this.$refs.pageTable._hideLoading()
......@@ -137,17 +134,10 @@ export default {
// this._hideLoading()
this.$refs.pageTable._hideLoading()
} else {
// 校验多样品多项目原始记录模板
// const param = {
// sampleId: this.sampleId,
// tempId: this.selectData[0].id,
// remark: this.selectData[0].remark,
// dataSource: this.sampleData
// }
// console.log(param)
// this.$emit('on-result-change', param)
console.log('单选选中的值', this.selectData)
// this.showModal = false
const data = this.selectData[0]
data.sampleId = this.sampleId
this.$emit('on-result-change', data)
this.showModal = false
}
},
_cancel() {
......@@ -160,78 +150,23 @@ export default {
_formSearch() {
this.$refs.pageTable._pageChange(1)
},
// _page: async function() {
// Object.assign(this.formObj, this.$refs.pageTable._searchParams())
// const result = await drugCatalogueItem.pageCatalogueItem(
// this.$serializeForm(this.formObj)
// )
// if (result) {
// this.getPage = result
// this.$refs.pageTable._initTable()
// }
// },
_btnClick(msg) {
switch (msg) {
case '导入检测项目':
this.$refs.relItemModal._open(this.catalogueId)
break
}
},
_importItem() {
const data = {
importUrl:
'/meter/v1/aptitude_item/import_aptitude_item?aptitudeId=' +
this.formObj.aptitudeId,
downloadUrl: '/meter/v1/excel/template/MeterAptitudeItemImport',
title: '导入'
}
this.$refs.importModal._open(data, '授权资质项目导入')
},
// 操作列操作
_iconClick(res, data) {
switch (res) {
case '删除':
this._deleteById(data.id)
break
}
},
// 删除
_deleteById(id) {
this.$Modal.confirm({
title: '提示',
content: '确定删除该数据?',
onOk: () => {
this._deleteOk(id)
}
})
},
_deleteOk: async function(id) {
const result = await meterManageItem.deleteItemById(id)
if (result) {
await this._page()
this.$Message.success('删除成功')
}
},
_handleOrderValueEdit(id, value) {
this._edit({ id: id, obj: { orderBy: value } })
},
// _edit: async function(data) {
// const result = await drugCatalogueItem.edit(data)
// if (result) {
// this._page()
// }
// },
// _deleteOk: async function(id) {
// const result = await drugCatalogueItem.deleteById(id)
// if (result) {
// this.$Message.success('删除成功')
// this._page()
// }
// },
// table结果 返回整行
_tableResultChange(msg, data) {
switch (msg) {
case 'page':
......
......@@ -839,7 +839,9 @@ Vue.prototype.$openWindowModeless = function(data) {
'&companyId=' +
global.getUserInfo().companyId +
'&userName=' +
realname
realname +
'&idType=' +
data.idType
// eslint-disable-next-line no-undef
return POBrowser.openWindowModeless(uri, 'width=1200px;height=800px;')
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment