Commit 58cbfe47 by lichengming

修改了委托评审查看详情

parent dba98a21
<template>
<div>
<vxe-grid
ref="xTable"
:show-overflow="hideOverflow === undefined || hideOverflow === true?true:false"
:auto-resize="true"
:height="500"
:loading="loading"
:pager-config="
hidePage === undefined?{total:getPage.total,currentPage:getPage.current,pageSize:getPage.size,pageSizes:pageSizeOpts,background:true}:null"
:scroll-y="setOptimization === undefined?defOptimization:setOptimization"
:checkbox-config="selectConfig"
@checkbox-all="_selectAll"
@checkbox-change="_selectRowChange"
@page-change="_pageSizeChange"
:cell-class-name="_tableCellClassName"
:row-class-name="_tableRowClassName"
:edit-config="editConfig"
:row-key="true"
:tooltip-config="{enterable:true}"
size="mini"
border
resizable
stripe
show-header-overflow
>
<vxe-table-column
v-if="hideCheckbox===undefined || hideCheckbox === false"
type="checkbox"
fixed="left"
width="50"
align="center"/>
<vxe-table-column
type="seq"
fixed="left"
title="序号"
width="50"
align="center"/>
<slot></slot>
<vxe-table-column
:width="$optColWidth(iconMsg)"
v-if="$optColWidth(iconMsg)>0?true:false"
title="操作"
align="center" fixed="right">
<template slot-scope="scope">
<VXEIconList :msg="iconMsg" @on-result-change="_iconClick" :rowData="scope.row"
:rowIndex="scope.rowIndex"></VXEIconList>
</template>
</vxe-table-column>
<slot name="col"></slot>
</vxe-grid>
<!--自定义表格列-->
<div style="position: absolute;right:0;top:0;z-index:2000">
<slot name="setting"></slot>
</div>
</div>
</template>
<script>
/**
* VXE-TABLE 数据录入用(分包数据录入,检测数据录入 专用)
*/
import VXEIconList from '../base/VXEIconList'
export default {
components: { VXEIconList },
props: {
hideOverflow: null,
hidePage: null,
pageColumns: null,
// tableHeight: 500,
hideCheckbox: null,
optColWidth: null,
getPage: null,
iconMsg: null,
warnKey: null,
selectData: null,
hideElevator: null,
hideTotal: null,
hideSizer: null,
clickValue: null, // 单击返回值
noWarning: null, // 不显示警告提示
isDataTest: null, // 判断是否是数据检测
tableName: null, // 该值存在,则支持自定义表格
setOptimization: null, // 加载滚动配置项
rows: null
},
data() {
return {
formId: '',
extendsData: {},
loading: false,
pageParams: {
page: 1,
rows: this.rows !== undefined ? this.rows : this.$defRow
},
rowData: {},
checkData: [],
sampleHandleValue: '',
// 一系列配置
pageSizeOpts: [50, 100, 500, 1000],
// 默认的配置
defOptimization: this.$setOptimization(),
selectConfig: { checkField: 'checked', trigger: 'row' },
editConfig: {
trigger: 'click',
mode: 'cell',
showIcon: true,
autoClear: false,
showStatus: true
}
}
},
watch: {
// // 监听数据
'getPage.records': function(newVal, oldVal) {
this._loadData(newVal)
}
},
methods: {
_loadData(data) {
// 阻断 vue 对大数组的双向绑定,大数据性能翻倍提升
if (this.$refs.xTable) {
this.$refs.xTable.loadData(data)
}
},
// 刷新column 和刷新数据
_refreshColumn() {
this.$refs.xTable.refreshColumn()
this.$refs.xTable.syncData()
},
_pageSizeChange(row) {
switch (row.type) {
case 'size':
this.pageParams.page = 1
this.pageParams.rows = row.pageSize
this._pageParamsChange()
break
case 'current':
this._pageChange(row.currentPage)
break
}
},
_pageChange(page) {
this.pageParams.page = page
this._pageParamsChange()
},
_pageParamsChange() {
this.$emit('on-result-change', 'changeSize')
},
_searchParams() {
const data = {}
const serData = this.$serialize(this.formId)
Object.assign(data, serData, this.extendsData)
if (this.hidePage === undefined) {
return this.$extend(data, this.pageParams)
} else {
return this.$extend(data)
}
},
_page(formId, uri, extendsData) {
this.loading = true
if (this.tableName !== undefined) {
// tableName存在-----支持自定义表格
this._settingCol(formId, uri, extendsData)
} else {
this._pageTemp(formId, uri, extendsData)
}
},
_settingCol(formId, uri, extendsData) {
if (uri) {
// 为了避免uri为undefined
this.$store
.dispatch('SysTableColumn/getByTableName', this.tableName)
.then(() => {
// 查询用户下的表格数据
const userTableCode = this.$store.state.SysTableColumn.model
this.$emit(
'on-result-change',
'table-col',
this.$tableColumns(this.pageColumns, userTableCode)
)
this._pageTemp(formId, uri, extendsData)
})
}
},
// 临时
_pageTemp(formId, uri, extendsData) {
this.formId = formId
if (extendsData) {
this.extendsData = extendsData
}
this.$store.dispatch(uri, this._searchParams()).then(() => {
this.loading = false
this.$emit('on-result-change', 'page', '')
this._refreshColumn()
})
},
// 多选
_selectAll: function(data) {
this._selectRowChange(data)
},
_selectRowChange(data) {
// 可编辑单元格
if (this.hideCheckbox === undefined || this.hideCheckbox === false) {
const selData = data.selection
this.checkData = selData
// 默认返回的是id数组
if (this.selectData === undefined) {
const idList = []
for (let i = 0; i < selData.length; i++) {
idList.push(selData[i].id)
}
this.$emit('on-result-change', 'selectIds', idList)
this.$emit('on-result-change', 'selectData', selData)
} else {
// 有selectData参数时执行
this.$emit('on-result-change', 'selectData', selData)
}
}
},
// 单元格变色
_tableCellClassName({ row, column, rowIndex, columnIndex }) {
// if (column.property === 'name' && row['progress'] && row.progress.display.indexOf('退回') !== -1) {//含有退回就变红
// return 'cell-red';
// }
if (
column.property === 'serviceType' &&
row.serviceType &&
row.serviceType.indexOf('加急') !== -1
) {
// 含有加急就变红
return 'cell-red'
}
// if (column.property === 'name' && row['name'] && row.name.indexOf('复测') !== -1) {//含有加急就变红
// return 'cell-red';
// }
},
// 整行变色
_tableRowClassName({ row, rowIndex }) {
// console.log('row==', row, rowIndex)
if (this.checkData.length !== 0) {
/* 选中的进行高亮显示 */
const index = this.checkData.indexOf(row)
if (index !== -1) {
return 'high-light-row'
}
} else {
/* 没选中的根据页面逻辑变色 */
}
},
// 操作列回调
_iconClick(name, rowData, componentName, rowIndex, obj) {
this.$emit('on-result-change', 'iconClick', {
name: name,
rowData: rowData,
componentName: componentName,
rowIndex: rowIndex,
obj: obj
})
},
// 关闭loading
_hideLoading() {
this.loading = false
},
// 打开loading
_showLoading() {
this.loading = true
},
// 清空选中checkbox状态
_clearSelection() {
this.$nextTick(function() {
this.$refs.xTable.clearCheckboxRow()
})
this.checkData = []
if (this.hideCheckbox === undefined || this.hideCheckbox === false) {
if (this.selectData === undefined) {
this.$emit('on-result-change', 'selectIds', [])
} else {
this.$emit('on-result-change', 'selectData', [])
}
}
},
// 激活单元格编辑 row:当前行数据,field:单元格的英文名称
_activeCell(obj) {
this.$refs.xTable.setActiveCell(obj.row, obj.field)
if (obj.msg === 'left') {
// 向左返回的时候 清除滚动状态
this.$refs.xTable.clearScroll()
}
},
// 只刷新选中行的数据
_refreshRows(rowList) {
const records = this.getPage.records
for (let i = 0; i < rowList.length; i++) {
const index = records.findIndex(item => item.id === rowList[i].id)
if (index !== -1) {
this.$set(this.getPage.records, index, rowList[i])
}
}
}
}
}
</script>
<template>
<div>
<!--阿里巴巴图标-->
<div>
<div class="col-setting">
<span @click="_checkClick" style="cursor: pointer">
<i class="pt-ivu-icon pt-setting" style="color: #00a0e9;font-size: 20px"></i>
</span>
</div>
</div>
<!--阿里巴巴图标-->
<!--select-table-start-modal-->
<div>
<Modal v-model="showSelectModal" width="700" class="zIndex-1300">
<p slot="header">{{modalTitle}}</p>
<div>
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="_checkAll">{{title}}</el-checkbox>
<el-checkbox-group v-model="checkList" @change="_selectChange" style="margin-top:10px">
<el-checkbox :label="item.key" v-for="item in tableColumns" :key="item.key"
style="width:25%;margin-left: 0">{{item.title}}
</el-checkbox>
</el-checkbox-group>
</div>
<div slot="footer" class="btn-width">
<Button @click="_cancel" type="ghost" style="margin-left: 8px">取消</Button>
<Button @click="_ok" :loading="isLoading" type="primary">保存</Button>
</div>
</Modal>
</div>
<!--select-table-end-modal-->
</div>
</template>
<script>
/* VXE-TABLE 自定义表格列 */
export default {
props: {
pageColumns: null, // table 列(自己选中需要展示的)
tableName: null, // 表格的名字(英文)
userColumns: null // 用户自己选中的列 code
},
data() {
return {
// 自定义列
checkList: [],
modalTitle: '自定义列',
showSelectModal: false,
checkAll: false,
isIndeterminate: true, // 设置 indeterminate 状态,只负责样式控制
title: '',
tableColumns: [], // 从企业中获得的表格数据
isLoading: false
}
},
methods: {
_checkClick() {
this.showSelectModal = true
this.isLoading = false
// 查询该企业下表格列(根据表格名称)
this._getByNameCompany()
},
_getByNameCompany() {
this.$store
.dispatch('SysTableColumn/getByNameCompany', this.tableName)
.then(() => {
const result = this.$store.state.SysTableColumn.model
/** *********企业的表格信息与本地pageColumns比较(如果企业没有选择表格,则显示全部表格列信息)***********/
const tableColumns = []
for (let i = 0; i < this.pageColumns.length; i++) {
result.map(item => {
if (item === this.pageColumns[i].key) {
tableColumns.push(this.pageColumns[i])
}
})
}
this.tableColumns = tableColumns
/** ********************************************用户选中的数据*************************************/
// 用户没选中则勾选的是企业的表格数据
const userData =
this.userColumns.length === 0 ? this.tableColumns : this.userColumns
const checkList = []
for (let k = 0; k < userData.length; k++) {
checkList.push(userData[k].key)
}
this.checkList = checkList
/** **********************************************是否全部选中*************************************/
if (checkList.length === this.tableColumns.length) {
// 全部选中
this.checkAll = true
this.isIndeterminate = false
this.title = '全不选'
} else {
this.checkAll = false
this.isIndeterminate = true
this.title = '全选'
}
})
},
// 选中的checkbox
_selectChange(data) {
this.checkList = data
const checkedCount = data.length
this.checkAll = checkedCount === this.tableColumns.length
this.isIndeterminate =
checkedCount > 0 && checkedCount < this.tableColumns.length
if (this.checkAll) {
this.title = '全不选'
} else {
this.title = '全选'
}
},
// 全选
_checkAll(val) {
this.isIndeterminate = false
if (val) {
// 全选
const checkList = []
for (let k = 0; k < this.tableColumns.length; k++) {
checkList.push(this.tableColumns[k].key)
}
this.checkList = checkList
this.title = '全不选'
} else {
// 全不选
this.checkList = []
this.title = '全选'
}
},
// 保存
_ok() {
if (this.checkList.length === 0) {
this.$Message.warning('请至少选择一项数据!')
} else {
this.isLoading = true
const data = {
tableName: this.tableName,
codes: this.checkList
}
this.$store.dispatch('SysTableColumn/userSave', data).then(() => {
if (this.$store.state.SysTableColumn.success) {
this.$Message.success('保存成功')
this.$emit('on-result-change')
this._cancel()
this.isLoading = false
} else {
this.isLoading = false
}
})
}
},
// 取消
_cancel() {
this.showSelectModal = false
}
}
}
</script>
<style>
.col-setting {
padding: 0px 5px;
border-top: 1px solid #ebeef5;
border-right: 1px solid #ebeef5;
background: #f8f8f9;
height: 30px;
line-height: 42px;
}
</style>
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterSendOperation ref="operationModal"></MeterSendOperation> <MeterSendOperation ref="operationModal"></MeterSendOperation>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit> <MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
</div> </div>
...@@ -256,7 +257,7 @@ export default { ...@@ -256,7 +257,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterEntrust.getVOById(id) const result = await meterEntrust.getVOById(id)
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
</div> </div>
<Reason ref="reasonModal" @on-result-change="_reasonResult"></Reason> <Reason ref="reasonModal" @on-result-change="_reasonResult"></Reason>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
<FileManage ref="FileManage"></FileManage>
</div> </div>
</template> </template>
<script> <script>
...@@ -316,7 +317,7 @@ export default { ...@@ -316,7 +317,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
</div> </div>
</div> </div>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
<FileManage ref="FileManage"></FileManage>
</div> </div>
</template> </template>
...@@ -270,7 +271,7 @@ export default { ...@@ -270,7 +271,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -49,6 +49,7 @@ ...@@ -49,6 +49,7 @@
<CarManage ref="carEdit"></CarManage> <CarManage ref="carEdit"></CarManage>
<InstruMentEdit ref="InstruEdit"></InstruMentEdit> <InstruMentEdit ref="InstruEdit"></InstruMentEdit>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
<FileManage ref="FileManage"></FileManage>
</div> </div>
</template> </template>
<script> <script>
...@@ -328,7 +329,7 @@ export default { ...@@ -328,7 +329,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit> <MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
</div> </div>
...@@ -248,7 +248,7 @@ export default { ...@@ -248,7 +248,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterEntrust.getVOById(id) const result = await meterEntrust.getVOById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
<SelEquip ref="SelEquip" @on-result-change="_equipSelectBack"></SelEquip> <SelEquip ref="SelEquip" @on-result-change="_equipSelectBack"></SelEquip>
<CarManage ref="carEdit"></CarManage> <CarManage ref="carEdit"></CarManage>
...@@ -318,7 +319,7 @@ export default { ...@@ -318,7 +319,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterOutTaskAlloca ref="taskAllocaModal"></MeterOutTaskAlloca> <MeterOutTaskAlloca ref="taskAllocaModal"></MeterOutTaskAlloca>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit> <MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
<MeterOutTaskOperation ref="operationModal"></MeterOutTaskOperation> <MeterOutTaskOperation ref="operationModal"></MeterOutTaskOperation>
...@@ -259,7 +260,7 @@ export default { ...@@ -259,7 +260,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterEntrust.getVOById(id) const result = await meterEntrust.getVOById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterSampleManage ref="meterSampleManageModal" @on-result-change="_componentResult"></MeterSampleManage> <MeterSampleManage ref="meterSampleManageModal" @on-result-change="_componentResult"></MeterSampleManage>
<MeterEntrustDetail ref="meterSampleEdit" @on-result-change="_componentResult"></MeterEntrustDetail> <MeterEntrustDetail ref="meterSampleEdit" @on-result-change="_componentResult"></MeterEntrustDetail>
<Operation ref="operation"></Operation> <Operation ref="operation"></Operation>
...@@ -294,7 +295,7 @@ export default { ...@@ -294,7 +295,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSubcontractor.getById(id) const result = await meterSubcontractor.getById(id)
......
...@@ -10,24 +10,24 @@ ...@@ -10,24 +10,24 @@
<Form id="formId" :label-width="80" inline onsubmit="return false"> <Form id="formId" :label-width="80" inline onsubmit="return false">
<label class="label-sign"></label> <label class="label-sign"></label>
<Form-item label="样品名称:" class="search-item"> <Form-item label="样品名称:" class="search-item">
<Input v-model="formObj.name" placeholder="请输入样品名称" clearable @on-enter="_formSearch"/> <Input v-model="formObj.name" @on-enter="_formSearch" placeholder="请输入样品名称" clearable/>
</Form-item> </Form-item>
<Form-item label="样品编号:" class="search-item"> <Form-item label="样品编号:" class="search-item">
<Input v-model="formObj.code" placeholder="请输入样品编号" clearable @on-enter="_formSearch"/> <Input v-model="formObj.code" @on-enter="_formSearch" placeholder="请输入样品编号" clearable/>
</Form-item> </Form-item>
<Form-item class="search-btn" style="margin-left: -10px"> <Form-item class="search-btn" style="margin-left: -10px">
<Button type="primary" @click="_formSearch">搜索</Button> <Button @click="_formSearch" type="primary">搜索</Button>
</Form-item> </Form-item>
</Form> </Form>
</Col> </Col>
<Col span="24"> <Col span="24">
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" class="contHide" <btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"
@on-result-change="_btnClick"></btn-list> class="contHide"></btn-list>
</Col> </Col>
<Col span="24"> <Col span="24">
<PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :get-page="getPage" <PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :get-page="getPage"
:icon-msg="iconMsg" select-data @on-result-change="_tableResultChange"> :icon-msg="iconMsg" @on-result-change="_tableResultChange" select-data>
<vxe-table-column <vxe-table-column
v-for="item in pageColumns" v-for="item in pageColumns"
:key="item.key" :key="item.key"
...@@ -57,12 +57,18 @@ ...@@ -57,12 +57,18 @@
</Row> </Row>
</div> </div>
</Modal> </Modal>
<importModal ref="importModal"></importModal>
<MeterSampleManageEdit ref="sampleEditModal"></MeterSampleManageEdit>
</div> </div>
</template> </template>
<script> <script>
import { meterSample } from '../../api' import { meterSample } from '../../api'
import MeterSampleManageEdit from './MeterSampleManageEdit'
import importModal from './contractTab/ContractTab'
export default { export default {
components: { components: {
MeterSampleManageEdit,
importModal
// FoodSampleGovernDetail, // FoodSampleGovernDetail,
// CopyModal, // CopyModal,
// FoodSampleGovernLYEdits // FoodSampleGovernLYEdits
...@@ -70,6 +76,7 @@ export default { ...@@ -70,6 +76,7 @@ export default {
data() { data() {
return { return {
currentComponent: '', currentComponent: '',
searchOpen: 'false',
// btn: [ // btn: [
// {type: 'success', id: '', name: '添加', componentName: 'FoodSampleGovernEdit'}, // {type: 'success', id: '', name: '添加', componentName: 'FoodSampleGovernEdit'},
// {id: 'food-gov-sample-batch-add', name: '批量添加', componentName: 'FoodSampleGovernBatchAdd'}, // {id: 'food-gov-sample-batch-add', name: '批量添加', componentName: 'FoodSampleGovernBatchAdd'},
...@@ -81,7 +88,8 @@ export default { ...@@ -81,7 +88,8 @@ export default {
// ], // ],
iconMsg: [ iconMsg: [
{ type: 'compose', id: '', name: '编辑' }, { type: 'compose', id: '', name: '编辑' },
{ type: 'ios-copy', id: '', name: '复制', componentName: 'CopyModal' }, { type: 'ios-copy', id: '', name: '管理检测样品' },
// { type: 'ios-copy', id: '', name: '复制', componentName: 'CopyModal' },
{ type: 'trash-a', id: '', name: '删除' } { type: 'trash-a', id: '', name: '删除' }
], ],
btn: [ btn: [
...@@ -96,6 +104,11 @@ export default { ...@@ -96,6 +104,11 @@ export default {
type: 'success', type: 'success',
id: '', id: '',
name: '取消分包' name: '取消分包'
},
{
type: 'success',
id: '',
name: '导入检测项目'
} }
], ],
options: [ options: [
...@@ -182,6 +195,9 @@ export default { ...@@ -182,6 +195,9 @@ export default {
this.currentComponent = componentName this.currentComponent = componentName
this.$nextTick(function() { this.$nextTick(function() {
switch (res) { switch (res) {
case '管理检测样品':
this._sampleEditModal(data)
break
case '编辑': case '编辑':
localStorage.setItem('type', data.type) localStorage.setItem('type', data.type)
if (data.type === 2) { if (data.type === 2) {
...@@ -202,6 +218,10 @@ export default { ...@@ -202,6 +218,10 @@ export default {
} }
}) })
}, },
_sampleEditModal(data) {
console.log(data)
this.$refs.sampleEditModal._open(data.id)
},
_tableResultChange(msg, data) { _tableResultChange(msg, data) {
switch (msg) { switch (msg) {
case 'selectData': case 'selectData':
...@@ -379,7 +399,7 @@ export default { ...@@ -379,7 +399,7 @@ export default {
if (this.selectIds.length === 0) { if (this.selectIds.length === 0) {
this.$Message.warning('请至少选中一条样品数据!') this.$Message.warning('请至少选中一条样品数据!')
} else { } else {
this.$refs.refModal._open(this.selectIds, this.selectData[0]) this.$refs.importModal._open(this.selectIds, this.selectData[0])
} }
}, },
_subpackageSample() { _subpackageSample() {
......
<template>
<div>
<Row>
<!--查询-->
<Col span="24">
<Form id="data-input-contract-left" :label-width="70" inline onsubmit="return false">
<label class="label-sign"></label>
<Form-item class="search-item-select">
<SelectInput ref="selInput1" :optionList="optionList" @on-result-change="_selInputResult1"
keyword="code" placeholder="请输入委托编号"></SelectInput>
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">搜索</Button>
</Form-item>
</Form>
</Col>
<!--//操作-->
<Col span="24">
<btn-list :msg="btn" @on-result-change="_btnClick" class="contHide">
<!--切换待认领任务-->
<template slot="processTask" v-if="$showBtn('food-data-input-contract-task')">
<div class="fr process-task" style="margin-right: 10px">
<el-checkbox v-model="personal" @change="_page" :true-label="1"
:false-label="0" size="medium">个人任务
</el-checkbox>
</div>
</template>
</btn-list>
</Col>
<!-- 表格 -->
<Col span="24">
<PTVXETable ref="pageTable" :pageColumns="pageColumns"
:table-name="tableName"
:tableHeight="tableHeight"
@on-result-change="_tableResultChange"
:getPage="getPage"
:rows="100" is-task>
<vxe-table-column
v-for="item in userColumns.length > 0 ?userColumns:pageColumns"
:key="item.key"
:field="item.key"
:title="item.title"
:min-width="item.width"
:fixed="item.fixed?item.fixed:undefined"
sortable
>
<template slot-scope="scope">
<a v-if="item.detail" @click.stop="_detailModal(scope.row)">{{scope.row[item.key]}}</a>
<span
v-else-if="item.date">{{scope.row[item.key]?$dateformat(scope.row[item.key],'yyyy-mm-dd'):''}}</span>
<span v-else>{{scope.row[item.key]}}</span>
</template>
</vxe-table-column>
<VXESettingCol slot="setting" :pageColumns="pageColumns" :userColumns="userColumns"
@on-result-change="_page" :table-name="tableName"></VXESettingCol>
</PTVXETable>
</Col>
</Row>
<!-- <component ref="refModal" :is="currentComponent"></component>-->
</div>
</template>
<script>
import SelectInput from './SelectInput'
// import FoodContractCompanyDetail from '../../../marketManage/food-contract-company/FoodContractCompanyDetail'
// import FoodContractGovernDetail from '../../../marketManage/food-contract-govern/FoodContractGovernDetail'
export default {
components: {
// FoodContractCompanyDetail,
// FoodContractGovernDetail,
SelectInput
},
data() {
return {
currentComponent: '',
tableName: 'food-data-input-contract-left',
// 用户自己选中的列
userColumns: [],
personal: 1,
btn: [],
optionList: [
{ key: 'code', name: '委托编号', placeholder: '请输入委托编号' },
{ key: 'cname', name: '委托单位', placeholder: '请输入委托单位' },
{ key: 'name', name: '委托名称', placeholder: '请输入委托名称' },
{
key: 'reportDueDate',
name: '应出报告日期',
placeholder: '请选择应出报告日期',
date: true
}
],
getPage: {},
pageColumns: [
{ title: '委托名称', key: 'name', width: 160 },
{ title: '委托编号', key: 'code', width: 180, detail: true },
{ title: '委托单位', key: 'cname', width: 200 },
{ title: '服务类型', key: 'serviceType', width: 120 },
{ title: '应出报告日期', key: 'reportDueDate', width: 140, date: true }
]
}
},
computed: {
tableHeight: function() {
return this.$tableHeight('tabSearch')
}
},
methods: {
_dicSearch() {
this.$store
.dispatch('LmsBaseDict/getItem', '个人任务是否勾选')
.then(() => {
const resultData = this.$store.state.LmsBaseDict.item
if (resultData.length > 0) {
this.personal = resultData[0].name === '是' ? 1 : 0
} else {
this.personal = 1
}
this._page()
})
},
_btnClick() {},
_selInputResult1(msg, data) {
switch (msg) {
case 'search':
this._formSearch()
break
}
},
_open() {
// this._dicSearch()
},
_searchParams() {
const obj = {}
const obj1 = this.$refs.selInput1._getFormObj()
Object.assign(obj, obj1)
if (this.personal) {
obj.personal = this.personal
}
return obj
},
_page() {
this.$refs.pageTable._page(
'data-input-contract-left',
'FoodContract/dataInputContractLeft',
this._searchParams()
)
},
_tableResultChange(msg, data) {
switch (msg) {
case 'page':
this.getPage = this.$store.state.FoodContract.page
break
case 'selectIds':
this.$emit('on-result-change', data, this.personal)
break
case 'changeSize':
this._page()
this._clear()
break
case 'table-col':
// 用户选中的表格列
this.userColumns = data
break
}
},
_clear() {
this.selectIds = []
this.$emit('on-result-change', [])
},
_formSearch() {
this.$refs.pageTable._pageChange(1)
this._clear()
}
// 委托详情
// _detailModal(data) {
// this.$store.dispatch('FoodContract/getById', data.id).then(() => {
// if (data.type === 1) {
// this.currentComponent = 'FoodContractGovernDetail'
// } else {
// this.currentComponent = 'FoodContractCompanyDetail'
// }
// this.$nextTick(function() {
// this.$refs.refModal._open(this.$store.state.FoodContract.model)
// })
// })
// }
}
}
</script>
<template>
<div>
<Modal v-model="showModal" width="1200">
<TwoColumnPage>
<template slot="left">
<ContractLeftList ref="leftModal" @on-result-change="_leftResult"></ContractLeftList>
</template>
<template slot="right">
<ContractRightList ref="rightModal" @on-result-change="_rightResult"></ContractRightList>
</template>
</TwoColumnPage>
</Modal>
</div>
</template>
<script>
import TwoColumnPage from '../../../components/base/TwoColumnPage'
import ContractLeftList from './ContractLeftList'
import ContractRightList from './ContractRightList'
export default {
components: {
TwoColumnPage,
ContractLeftList,
ContractRightList
},
data() {
return {
showModal: false
}
},
methods: {
_open() {
// this.formObj.entrustId = id
this.showModal = true
// this._page()
},
_leftResult(data, personal) {
// this.$refs.rightModal._open(data, personal)
console.log(data, personal)
},
_rightResult() {
// this.$refs.leftModal._page()
}
// _open() {
// this.$refs.leftModal._open()
// }
}
}
</script>
<template>
<div>
<!--有时间组件-->
<div v-if="date === true && multiple === false" class="search-item-select-date">
<Select slot="prepend" v-model="key" @on-change="_selKeyChange" style="width:90px">
<Option v-for="item in optionList" :value="item.key" :key="item.key" v-if="compareKey!==item.key">
{{item.name}}
</Option>
</Select>
<template v-if="dateToMin">
<Date-picker :placeholder="msg" :editable="false"
@on-change="_dateChange"
type="datetimerange" format="yyyy-MM-dd HH:mm" style="width:185px;"
placement="bottom-start">
</Date-picker>
</template>
<template v-else>
<Date-picker :placeholder="msg" :editable="false" @on-change="_dateChange"
type="daterange" format="yyyy-MM-dd" style="width:185px;"
placement="bottom-start">
</Date-picker>
</template>
</div>
<!--结果判定单选组件-->
<div v-else-if="date === false && multiple === true" class="search-item-select-date">
<Select slot="prepend" v-model="key" @on-change="_selKeyChange" style="width:90px">
<Option v-for="item in optionList" :value="item.key" :key="item.key" v-if="compareKey!==item.key">
{{item.name}}
</Option>
</Select>
<el-select v-model="qualifiedValue" :placeholder="msg" size="small" clearable>
<el-option :label="item.name" :value="item.value" v-for="item in judgeList"
:key="item.value"></el-option>
</el-select>
</div>
<!--正常-->
<Input v-model="inputValue" :placeholder="msg" @on-enter="_formSearch" v-else-if="date === false && multiple === false"
style="width: 275px">
<Select slot="prepend" v-model="key" @on-change="_selKeyChange" style="width:90px">
<!--:key 渲染时key很有用,不写可能渲染错-->
<Option v-for="item in optionList" :value="item.key" :key="item.key" v-if="compareKey!==item.key">
{{item.name}}
</Option>
</Select>
</Input>
</div>
</template>
<script>
export default {
props: {
placeholder: null,
keyword: null,
optionList: null,
compareKeyword: null,
isDate: null,
judgeList: null
},
data() {
return {
formObj: {},
inputValue: '',
msg: this.placeholder, // 必须重新赋值 ,因前面不是变量
key: this.keyword, // 必须重新赋值 ,因前面不是变量
compareKey: this.compareKeyword, // 必须重新赋值 ,因前面不是变量
date: this.isDate !== undefined,
multiple: false,
qualifiedValue: '',
// 日期精确到分,动态设置日期格式不行
dateToMin: false
}
},
methods: {
_formSearch() {
if (this.inputValue) {
this.formObj[this.key] = this.inputValue
// this.$emit('on-result-change', 'search', this.formObj)
this.$emit('on-result-change', 'search')
} else {
this.formObj[this.key] = ''
// this.$emit('on-result-change', 'search', this.$serializeFormSearch(this.formObj))
this.$emit('on-result-change', 'search')
}
},
_setCompareKeyword(data) {
this.compareKey = data
},
_getFormObj() {
if (this.inputValue) {
this.formObj[this.key] = this.inputValue
} else {
this.formObj[this.key] = ''
}
return this.$serializeFormSearch(this.formObj)
},
_qualifiedValue() {
const obj = {}
if (this.qualifiedValue) {
obj.qualifiedValue = this.qualifiedValue
} else {
obj.qualifiedValue = ''
}
return this.$serializeFormSearch(obj)
},
_selKeyChange(data) {
this.$emit('on-result-change', 'keyword', this.key)
this.formObj = {}
this.inputValue = ''
const obj = this.optionList.find(item => item.key === data)
if (obj.date) {
if (obj.dateToMin !== undefined) {
this.dateToMin = true
} else {
this.dateToMin = false
}
this.date = true
this.multiple = false
this.qualifiedValue = ''
} else if (obj.multiple) {
this.multiple = true
this.date = false
} else {
this.multiple = false
this.date = false
this.qualifiedValue = ''
}
this.key = obj.key
this.msg = obj.placeholder
},
_dateChange(date) {
if (date[0]) {
this.formObj[this.key + 'Begin'] = date[0]
this.formObj[this.key + 'End'] = date[1]
} else {
this.formObj = {}
}
},
_selJudge() {}
}
}
</script>
...@@ -6,24 +6,24 @@ ...@@ -6,24 +6,24 @@
<Row> <Row>
<!--查询--> <!--查询-->
<Col span="24" style="margin-top: 10px"> <Col span="24" style="margin-top: 10px">
<Form v-show="searchOpen" id="formId" :label-width="90" inline onsubmit="return false"> <Form id="formId" v-show="searchOpen" :label-width="90" inline onsubmit="return false">
<label class="label-sign"></label> <label class="label-sign"></label>
<Form-item class="search-item" label="实验室名称:"> <Form-item class="search-item" label="实验室名称:">
<Input v-model="formObj.name" name="name" placeholder="请输入实验室名称" clearable @on-enter="_formSearch"/> <Input v-model="formObj.name" @on-enter="_formSearch" name="name" placeholder="请输入实验室名称" clearable/>
</Form-item> </Form-item>
<Form-item class="search-item" label="资质:"> <Form-item class="search-item" label="资质:">
<Input v-model="formObj.aptitude" name="aptitude" placeholder="请输入资质" clearable @on-enter="_formSearch"/> <Input v-model="formObj.aptitude" @on-enter="_formSearch" name="aptitude" placeholder="请输入资质" clearable/>
</Form-item> </Form-item>
<Form-item class="search-btn"> <Form-item class="search-btn">
<Button type="primary" @click="_formSearch">搜索</Button> <Button @click="_formSearch" type="primary">搜索</Button>
</Form-item> </Form-item>
</Form> </Form>
</Col> </Col>
<!--操作--> <!--操作-->
<Col span="24"> <Col span="24">
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" class="contHide" <btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"
@on-result-change="_btnClick"></btn-list> class="contHide"></btn-list>
</Col> </Col>
<!--表格--> <!--表格-->
<Col span="24"> <Col span="24">
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
</div> </div>
<MeterSampleManage ref="meterSampleManageModal" @on-result-change="_page"></MeterSampleManage> <MeterSampleManage ref="meterSampleManageModal" @on-result-change="_page"></MeterSampleManage>
<MeterEntrustDetail ref="meterSampleEdit" @on-result-change="_componentResult"></MeterEntrustDetail> <MeterEntrustDetail ref="meterSampleEdit" @on-result-change="_componentResult"></MeterEntrustDetail>
<FileManage ref="FileManage"></FileManage>
</div> </div>
</template> </template>
<script> <script>
...@@ -292,7 +293,7 @@ export default { ...@@ -292,7 +293,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSubcontractor.getById(id) const result = await meterSubcontractor.getById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterPersonItemTaskManage ref="personModal"></MeterPersonItemTaskManage> <MeterPersonItemTaskManage ref="personModal"></MeterPersonItemTaskManage>
<personModal ref="personModal"></personModal> <personModal ref="personModal"></personModal>
<ListModal ref="ListModal" @on-result-change="_page"></ListModal> <ListModal ref="ListModal" @on-result-change="_page"></ListModal>
...@@ -313,7 +314,7 @@ export default { ...@@ -313,7 +314,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -6,24 +6,24 @@ ...@@ -6,24 +6,24 @@
<Row> <Row>
<!--查询--> <!--查询-->
<Col span="24" style="margin-top: 10px"> <Col span="24" style="margin-top: 10px">
<Form v-show="searchOpen" id="formId" :label-width="90" inline onsubmit="return false"> <Form id="formId" v-show="searchOpen" :label-width="90" inline onsubmit="return false">
<label class="label-sign"></label> <label class="label-sign"></label>
<Form-item class="search-item" label="实验室名称:"> <Form-item class="search-item" label="实验室名称:">
<Input v-model="formObj.name" name="name" placeholder="请输入实验室名称" clearable @on-enter="_formSearch"/> <Input v-model="formObj.name" @on-enter="_formSearch" name="name" placeholder="请输入实验室名称" clearable/>
</Form-item> </Form-item>
<Form-item class="search-item" label="资质:"> <Form-item class="search-item" label="资质:">
<Input v-model="formObj.aptitude" name="aptitude" placeholder="请输入资质" clearable @on-enter="_formSearch"/> <Input v-model="formObj.aptitude" @on-enter="_formSearch" name="aptitude" placeholder="请输入资质" clearable/>
</Form-item> </Form-item>
<Form-item class="search-btn"> <Form-item class="search-btn">
<Button type="primary" @click="_formSearch">搜索</Button> <Button @click="_formSearch" type="primary">搜索</Button>
</Form-item> </Form-item>
</Form> </Form>
</Col> </Col>
<!--操作--> <!--操作-->
<Col span="24"> <Col span="24">
<btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" class="contHide" <btn-list :msg="btn" :open="searchOpen" :show-search-btn="true" @on-result-change="_btnClick"
@on-result-change="_btnClick"></btn-list> class="contHide"></btn-list>
</Col> </Col>
<!--表格--> <!--表格-->
<Col span="24"> <Col span="24">
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<SelEquip ref="SelEquip" @on-result-change="_equipSelectBack"></SelEquip> <SelEquip ref="SelEquip" @on-result-change="_equipSelectBack"></SelEquip>
<CarManage ref="carEdit"></CarManage> <CarManage ref="carEdit"></CarManage>
<InstruMentEdit ref="InstruEdit"></InstruMentEdit> <InstruMentEdit ref="InstruEdit"></InstruMentEdit>
...@@ -315,7 +316,7 @@ export default { ...@@ -315,7 +316,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSample.getById(id) const result = await meterSample.getById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<MeterOutTaskAlloca ref="taskAllocaModal" @on-result-change="_page"></MeterOutTaskAlloca> <MeterOutTaskAlloca ref="taskAllocaModal" @on-result-change="_page"></MeterOutTaskAlloca>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit> <MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
<MeterOutTaskOperation ref="operationModal"></MeterOutTaskOperation> <MeterOutTaskOperation ref="operationModal"></MeterOutTaskOperation>
...@@ -259,7 +260,7 @@ export default { ...@@ -259,7 +260,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterEntrust.getVOById(id) const result = await meterEntrust.getVOById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
<MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit> <MeterSubcontractorEdit ref="editSubcontractorModal" @on-result-change="_formSearch"></MeterSubcontractorEdit>
</div> </div>
...@@ -214,7 +215,7 @@ export default { ...@@ -214,7 +215,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSubcontractor.getById(id) const result = await meterSubcontractor.getById(id)
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<subSampleManage ref="subSampleManage"></subSampleManage> <subSampleManage ref="subSampleManage"></subSampleManage>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
</div> </div>
...@@ -229,7 +230,7 @@ export default { ...@@ -229,7 +230,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSubcontractor.getById(id) const result = await meterSubcontractor.getById(id)
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<!-- <InputNumber v-model.number="formObj.outFee" :min="0" :step="1"--> <!-- <InputNumber v-model.number="formObj.outFee" :min="0" :step="1"-->
<!-- name="outFee" style="width:100%" placeholder="">--> <!-- name="outFee" style="width:100%" placeholder="">-->
<!-- </InputNumber>--> <!-- </InputNumber>-->
<Input v-model="formObj.inner" readonly name="inner" @click.native="_selectStaff"></Input> <Input v-model="formObj.inner" @click.native="_selectStaff" readonly name="inner"></Input>
</Form-item> </Form-item>
<Form-item label="返库时间:" prop="inStockTime"> <Form-item label="返库时间:" prop="inStockTime">
<div class="block"> <div class="block">
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
</Modal> </Modal>
<!--选择实验室--> <!--选择实验室-->
<EditLabSelect ref="labModal" @on-result-change="_labResult"></EditLabSelect> <EditLabSelect ref="labModal" @on-result-change="_labResult"></EditLabSelect>
<UserInfo ref="userModal" is-change @on-result-change="_userData"></UserInfo> <UserInfo ref="userModal" @on-result-change="_userData" is-change></UserInfo>
</div> </div>
</template> </template>
<script> <script>
...@@ -77,6 +77,9 @@ export default { ...@@ -77,6 +77,9 @@ export default {
} }
}, },
methods: { methods: {
_labResult(data) {
console.log(data)
},
getNowTime() { getNowTime() {
const now = new Date() const now = new Date()
const year = now.getFullYear() // 得到年份 const year = now.getFullYear() // 得到年份
......
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
</Row> </Row>
</div> </div>
</div> </div>
<FileManage ref="FileManage"></FileManage>
<subSampleManage ref="subSampleManage"></subSampleManage> <subSampleManage ref="subSampleManage"></subSampleManage>
<operationModal ref="operationModal"></operationModal> <operationModal ref="operationModal"></operationModal>
</div> </div>
...@@ -230,7 +231,7 @@ export default { ...@@ -230,7 +231,7 @@ export default {
_upload(id) { _upload(id) {
// 上传文件 // 上传文件
this.$refs.refModal._open(id, 'subcontractorId') this.$refs.FileManage._open(id, 'subcontractorId')
}, },
_getById: async function(id) { _getById: async function(id) {
const result = await meterSubcontractor.getById(id) const result = await meterSubcontractor.getById(id)
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<!-- <InputNumber v-model.number="formObj.outFee" :min="0" :step="1"--> <!-- <InputNumber v-model.number="formObj.outFee" :min="0" :step="1"-->
<!-- name="outFee" style="width:100%" placeholder="">--> <!-- name="outFee" style="width:100%" placeholder="">-->
<!-- </InputNumber>--> <!-- </InputNumber>-->
<Input v-model="formObj.outer" readonly name="outer" @click.native="_selectStaff"></Input> <Input v-model="formObj.outer" @click.native="_selectStaff" readonly name="outer"></Input>
</Form-item> </Form-item>
<Form-item label="出库时间:" prop="outStockTime"> <Form-item label="出库时间:" prop="outStockTime">
<div class="block"> <div class="block">
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
</Modal> </Modal>
<!--选择实验室--> <!--选择实验室-->
<EditLabSelect ref="labModal" @on-result-change="_labResult"></EditLabSelect> <EditLabSelect ref="labModal" @on-result-change="_labResult"></EditLabSelect>
<UserInfo ref="userModal" is-change @on-result-change="_userData"></UserInfo> <UserInfo ref="userModal" @on-result-change="_userData" is-change></UserInfo>
</div> </div>
</template> </template>
<script> <script>
...@@ -100,6 +100,9 @@ export default { ...@@ -100,6 +100,9 @@ export default {
this.formObj.outStockTime = defaultDate this.formObj.outStockTime = defaultDate
// this.$set(this.searchFormField, 'date', defaultDate) // this.$set(this.searchFormField, 'date', defaultDate)
}, },
_labResult(data) {
console.log(data)
},
_userData(data, msg, contractTempData) { _userData(data, msg, contractTempData) {
if (msg === 'salesman') { if (msg === 'salesman') {
// 选择业务员 // 选择业务员
......
...@@ -9,8 +9,10 @@ import iconList from '../components/base/iconList' ...@@ -9,8 +9,10 @@ import iconList from '../components/base/iconList'
import elementTable from '../components/table/elementTable' import elementTable from '../components/table/elementTable'
import modalFooter from '../components/base/modalFooter' import modalFooter from '../components/base/modalFooter'
import PTVXETable from '../components/table/PTVXETable' import PTVXETable from '../components/table/PTVXETable'
import PTVXETableData from '../components/base/PTVXETableData'
import VXEIconList from '../components/base/VXEIconList' import VXEIconList from '../components/base/VXEIconList'
import FileManage from '../components/file/file-manage/FileManage' import FileManage from '../components/file/file-manage/FileManage'
import VXESettingCol from '../components/base/VXESettingCol'
Vue.use(VXETable) Vue.use(VXETable)
Vue.component('btn-list', btnList) Vue.component('btn-list', btnList)
...@@ -18,5 +20,7 @@ Vue.component('icon-list', iconList) ...@@ -18,5 +20,7 @@ Vue.component('icon-list', iconList)
Vue.component('element-table', elementTable) Vue.component('element-table', elementTable)
Vue.component('modal-footer', modalFooter) Vue.component('modal-footer', modalFooter)
Vue.component('PTVXETable', PTVXETable) Vue.component('PTVXETable', PTVXETable)
Vue.component('PTVXETableData', PTVXETableData)
Vue.component('VXEIconList', VXEIconList) Vue.component('VXEIconList', VXEIconList)
Vue.component('VXESettingCol', VXESettingCol)
Vue.component('FileManage', FileManage) Vue.component('FileManage', FileManage)
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