Commit 1f327831 by wangweidong

Merge remote-tracking branch 'origin/dev' into dev

# Conflicts:
#	pages/soil-sample-manage/sample-preparation/Preparation.vue
parents e7faccba bc1ebfda
...@@ -132,6 +132,8 @@ export default { ...@@ -132,6 +132,8 @@ export default {
http.post('res/v1/dict/dict_query?type=' + data).then(res => res), http.post('res/v1/dict/dict_query?type=' + data).then(res => res),
editBackup: data => editBackup: data =>
http.put('soil/v1/sample_backup/' + data.id, data.obj).then(res => res), http.put('soil/v1/sample_backup/' + data.id, data.obj).then(res => res),
editItem: data =>
http.post('soil/v1/experiment/bath_update_info', data).then(res => res),
// 余样编辑 // 余样编辑
editPrepare: data => editPrepare: data =>
http.put('soil/v1/prepare/' + data.id, data.obj).then(res => res), http.put('soil/v1/prepare/' + data.id, data.obj).then(res => res),
......
...@@ -34,5 +34,10 @@ export default { ...@@ -34,5 +34,10 @@ export default {
.post('soil/v1/statistics/page_coordinate_statistics', data) .post('soil/v1/statistics/page_coordinate_statistics', data)
.then(res => res), .then(res => res),
filePage: data => filePage: data =>
http.post('soil/v1/standard_annex/page', data).then(res => res) http.post('soil/v1/standard_annex/page', data).then(res => res),
// 待完成委托量
pageWaitEnd: data =>
http
.post('soil/v1/statistics/page_wait_end_entrust_statistics', data)
.then(res => res)
} }
...@@ -142,7 +142,7 @@ export default { ...@@ -142,7 +142,7 @@ export default {
// 'LmsEquipInfo/page', // 'LmsEquipInfo/page',
// this.$serializeFormSearch(this.formObj) // this.$serializeFormSearch(this.formObj)
// ) // )
const result = await equip.page() const result = await equip.page(this.$serializeFormSearch(this.formObj))
console.log('仪器结果', result) console.log('仪器结果', result)
if (result) { if (result) {
this.getPage = result this.getPage = result
......
...@@ -71,15 +71,15 @@ ...@@ -71,15 +71,15 @@
</el-input> </el-input>
</div> </div>
<div v-if="item.key==='mainType'" @click="_handleRow(scope)"> <div v-if="item.key==='mainType'" @click="_handleRow(scope)">
<el-input v-model="scope.row.mainType" @change="inputMainTypeChange(scope.row)" name="mainType" placeholder="请输入英文简写"> <el-input v-model="scope.row.mainType" @change="inputMainTypeChange(scope.row)" name="mainType" placeholder="请输入大类">
</el-input> </el-input>
</div> </div>
<div v-if="item.key==='smallType'" @click="_handleRow(scope)"> <div v-if="item.key==='smallType'" @click="_handleRow(scope)">
<el-input v-model="scope.row.smallType" @change="inputSmallTypeChange(scope.row)" name="smallType" placeholder="请输入英文简写"> <el-input v-model="scope.row.smallType" @change="inputSmallTypeChange(scope.row)" name="smallType" placeholder="请输入小类">
</el-input> </el-input>
</div> </div>
<div v-if="item.key==='testMethod'" @click="_handleRow(scope)"> <div v-if="item.key==='testMethod'" @click="_handleRow(scope)">
<el-input v-model="scope.row.testMethod" @change="methodChange(scope.row)" name="testMethod" placeholder="请输入英文简写"> <el-input v-model="scope.row.testMethod" @change="methodChange(scope.row)" name="testMethod" placeholder="请输入试验方法">
</el-input> </el-input>
</div> </div>
<div v-if="item.key==='groupName'" @click="_handleRow(scope)"> <div v-if="item.key==='groupName'" @click="_handleRow(scope)">
...@@ -93,12 +93,12 @@ ...@@ -93,12 +93,12 @@
<!-- </el-select>--> <!-- </el-select>-->
<AutoCompletes v-model="scope.row.groupName" :handle-obj="scope.row" :down-data="groupoptions" @on-result-change="_selGroup" <AutoCompletes v-model="scope.row.groupName" :handle-obj="scope.row" :down-data="groupoptions" @on-result-change="_selGroup"
style="editable:false" clearable style="editable:false" clearable
placeholder="输入或选择试验室" show-key="name"></AutoCompletes> placeholder="选择试验室" show-key="name"></AutoCompletes>
</div> </div>
<div v-if="item.key==='testBasis'" @click="_handleRow(scope)"> <div v-if="item.key==='testBasis'" @click="_handleRow(scope)">
<AutoCompletes v-model="scope.row.testBasis" :handle-obj="scope.row" :down-data="testBasisList" @on-result-change="_selTestBasis" <AutoCompletes v-model="scope.row.testBasis" :handle-obj="scope.row" :down-data="testBasisList" @on-result-change="_selTestBasis"
style="editable:false" clearable style="editable:false" clearable
placeholder="输入或选择检测依据" show-key="name"></AutoCompletes> placeholder="选择检测依据" show-key="name"></AutoCompletes>
</div> </div>
</template> </template>
</vxe-table-column> </vxe-table-column>
......
<template>
<div>
<Modal v-model="showModal" :mask-closable="false">
<p slot="header">填写存放信息</p>
<div>
<Form id="storage-location-form" ref="formObj" :model="formObj" :rules="ruleValidate" :label-width="100">
<Form-item label="存储条件:">
<el-select :value="formObj.conditions" @change="selCondi" style="width:100%" size="small">
<el-option v-for="item in conditionList" :value="item.name" :key="item.name">{{ item.name }}
</el-option>
</el-select>
</Form-item>
<Form-item label="备样位置:" prop="backupLocation">
<Input v-model="formObj.backupLocation" clearable placeholder="请输入备样位置"></Input>
</Form-item>
<Form-item label="备样数量">
<Input v-model="formObj.quantity" clearable placeholder="请输入备样数量"></Input>
</Form-item>
<Form-item label="备样人:">
<el-select :value="formObj.backupUser" @change="selUser" style="width:100%" size="small">
<el-option v-for="item in backupUserList" :value="item.id" :label="item.realname" :key="item.realname">{{ item.realname }}
</el-option>
</el-select>
</Form-item>
</Form>
</div>
<div slot="footer">
<modal-footer ref="footerModal" @on-result-change="_footerResult" :footer="footerList"></modal-footer>
</div>
</Modal>
</div>
</template>
<script>
import { soilSample } from '../../../api'
export default {
components: {},
data() {
return {
ids: [], // 委托ids
showModal: false,
formObj: {},
ruleValidate: {
backupLocation: [
{ required: true, message: '备样位置不能为空', trigger: 'blur' }
]
},
footerList: [
{ id: '', name: '取消', type: '' },
{ id: '', name: '保存', type: 'primary' }
],
conditionList: [],
locList: [],
backupUserList: [],
sampleUnit: ''
}
},
mounted() {
this._getConditionList()
this._getUserList()
},
methods: {
_locChange(msg, data) {
switch (msg) {
case 'select':
this.formObj.backupPlace = data.backupPlace
this._getCondition(data.backupPlace)
break
case 'query':
this.formObj.backupPlace = data.backupPlace
this._getLocList(data.backupPlace)
break
}
},
selCondi(data) {
this.$forceUpdate()
this.formObj.conditions = data
},
selUser(data) {
this.$forceUpdate()
if (data) {
for (let i = 0; i < this.backupUserList.length; i++) {
if (this.backupUserList[i].id === data) {
this.formObj.backupUser = this.backupUserList[i].realname
}
}
} else {
this.getPage.records[this.currentIndex].backupUser = ''
}
this.formObj.backupUserId = data
// this.$forceUpdate()
// this.getPage.records[this.currentIndex].backupUser = data
// this.getPage.records[this.currentIndex].backupUser = data
},
// 存储条件 回调
_locChangeCondition(msg, data) {
switch (msg) {
case 'select':
this.formObj.storageCondition = data.name
this._getLocCondition(data.name)
break
case 'query':
this.formObj.storageCondition = data.name
this._getLocConditionList(data.name)
break
}
},
_footerResult(name) {
switch (name) {
case '取消':
this._cancel()
break
case '保存':
this._ok()
break
}
},
_open(data) {
this.showModal = true
this.formObj = this.$resetFields(this.formObj)
this.sampleUnit = ''
this.$refs.footerModal._hideLoading()
this.ids = data
// 循环遍历数据
},
_getConditionList: async function() {
const result = await soilSample.getDictList('存储条件')
if (result) {
this.conditionList = result
}
},
_getUserList: async function() {
const result = await soilSample.getUserList()
if (result) {
console.log(result)
this.backupUserList = result.records
}
},
//
_dateChange(data) {
this.formObj.endDate = data
},
_cancel() {
this.showModal = false
this.$refs.footerModal._hideLoading()
},
_hideLoading() {
this.$refs.footerModal._hideLoading()
},
_ok() {
this.$refs.formObj.validate(valid => {
if (valid) {
const data = this.formObj
this._saveInfo({ id: this.ids.join(','), obj: data })
} else {
this.$Message.error('表单验证失败!')
this.$refs.footerModal._hideLoading()
}
})
},
_saveInfo: async function(data) {
const result = await soilSample.editBackup(data)
if (result) {
this.$Message.success('保存成功')
}
}
}
}
</script>
...@@ -93,11 +93,13 @@ ...@@ -93,11 +93,13 @@
</div> </div>
<SampleParpareApply ref="applyModal" @on-result-change="_page"></SampleParpareApply> <SampleParpareApply ref="applyModal" @on-result-change="_page"></SampleParpareApply>
<Operation ref="recordModal"></Operation> <Operation ref="recordModal"></Operation>
<SampleParpareBatchEdit ref="batchEdit"></SampleParpareBatchEdit>
</div> </div>
</template> </template>
<script> <script>
// import AutoCompletes from '../../../../components/base/AutoCompletes' // import AutoCompletes from '../../../../components/base/AutoCompletes'
import SampleParpareApply from '../SampleParpareApply' import SampleParpareApply from '../SampleParpareApply'
import SampleParpareBatchEdit from '../SampleParpareBatchEdit'
// eslint-disable-next-line no-unused-vars // eslint-disable-next-line no-unused-vars
import http from '../../../../api/http' import http from '../../../../api/http'
import { soilEntrust, soilSample } from '../../../../api' import { soilEntrust, soilSample } from '../../../../api'
...@@ -106,6 +108,7 @@ export default { ...@@ -106,6 +108,7 @@ export default {
components: { components: {
// AutoCompletes, // AutoCompletes,
SampleParpareApply, SampleParpareApply,
SampleParpareBatchEdit,
Operation Operation
}, },
data() { data() {
...@@ -130,6 +133,11 @@ export default { ...@@ -130,6 +133,11 @@ export default {
}, },
{ {
type: 'primary', type: 'primary',
id: '',
name: '批量填写存放信息'
},
{
type: 'primary',
id: 'food-sample-preparation-his-all', id: 'food-sample-preparation-his-all',
name: '制备' name: '制备'
}, },
...@@ -423,6 +431,9 @@ export default { ...@@ -423,6 +431,9 @@ export default {
case '申请处理': case '申请处理':
this._applyDispose() this._applyDispose()
break break
case '批量填写存放信息':
this._writeInfo()
break
case '完成处理': case '完成处理':
this._handleApply() this._handleApply()
break break
...@@ -453,6 +464,13 @@ export default { ...@@ -453,6 +464,13 @@ export default {
break break
} }
}, },
_writeInfo() {
if (this.selectIds.length === 0) {
this.$Message.warning('请选择一条或多条数据!')
} else {
this.$refs.batchEdit._open(this.selectIds)
}
},
_handleApply() { _handleApply() {
if (this.selectIds.length === 0) { if (this.selectIds.length === 0) {
this.$Message.warning('请选择一条或多条数据!') this.$Message.warning('请选择一条或多条数据!')
...@@ -521,104 +539,6 @@ export default { ...@@ -521,104 +539,6 @@ export default {
switch (msg) { switch (msg) {
case 'page': case 'page':
this._page() this._page()
// this.getPage.records = []
// this.getPage = {
// total: this.$store.state.LmsFoodSamplePrepare.page.total,
// pages: this.$store.state.LmsFoodSamplePrepare.page.pages,
// current: this.$store.state.LmsFoodSamplePrepare.page.current,
// size: this.$store.state.LmsFoodSamplePrepare.page.size,
// records: []
// }
// const tableList = this.$store.state.LmsFoodSamplePrepare.page.records
// for (let i = 0; i < tableList.length; i++) {
// this.getPage.records.push({
// sampleId:
// tableList[i].sampleId !== undefined
// ? tableList[i].sampleId
// : '',
// sampleSn:
// tableList[i].sampleSn !== undefined
// ? tableList[i].sampleSn
// : '',
// sampleName:
// tableList[i].sampleName !== undefined
// ? tableList[i].sampleName
// : '',
// backupPlace:
// tableList[i].backupPlace !== undefined
// ? tableList[i].backupPlace
// : '',
// cname: tableList[i].cname !== undefined ? tableList[i].cname : '',
// storageCondition:
// tableList[i].storageCondition !== undefined
// ? tableList[i].storageCondition
// : '',
// quantity:
// tableList[i].quantity !== undefined
// ? tableList[i].quantity
// : '',
// sampleQuantity:
// tableList[i].sampleQuantity !== undefined
// ? tableList[i].sampleQuantity
// : '',
// handleQuantity:
// tableList[i].handleQuantity !== undefined
// ? tableList[i].handleQuantity
// : '',
// sampleUnit:
// tableList[i].sampleUnit !== undefined
// ? tableList[i].sampleUnit
// : '',
// endDate:
// tableList[i].endDate !== undefined
// ? new Date(tableList[i].endDate)
// : '',
// handleMethod:
// tableList[i].handleMethod !== undefined
// ? tableList[i].handleMethod
// : '',
// id: tableList[i].id !== undefined ? tableList[i].id : '',
// contractName:
// tableList[i].contractName !== undefined
// ? tableList[i].contractName
// : '',
// code: tableList[i].code !== undefined ? tableList[i].code : '',
// contractSn:
// tableList[i].contractSn !== undefined
// ? tableList[i].contractSn
// : '',
// progress:
// tableList[i].progress !== undefined
// ? tableList[i].progress
// : '',
// type: tableList[i].type !== undefined ? tableList[i].type : '',
// issueDate:
// tableList[i].issueDate !== undefined
// ? tableList[i].issueDate
// : '',
// sampleRemark:
// tableList[i].sampleRemark !== undefined
// ? tableList[i].sampleRemark
// : '',
// contractRemark:
// tableList[i].contractRemark !== undefined
// ? tableList[i].contractRemark
// : '',
// isEligible:
// tableList[i].isEligible !== undefined
// ? tableList[i].isEligible
// : '',
// remark:
// tableList[i].remark !== undefined ? tableList[i].remark : '',
// contractId:
// tableList[i].contractId !== undefined
// ? tableList[i].contractId
// : ''
// })
// }
// this.selectIds = []
// this.selectData = []
// this.selectSampleIds = []
break break
case 'selectData': case 'selectData':
this.selectData = data this.selectData = data
......
...@@ -65,30 +65,6 @@ ...@@ -65,30 +65,6 @@
<el-date-picker v-model="scope.row.prepareDate" type="datetime" format="yyyy-MM-dd HH:mm" style="width:100%;" placeholder="请选择日期" <el-date-picker v-model="scope.row.prepareDate" type="datetime" format="yyyy-MM-dd HH:mm" style="width:100%;" placeholder="请选择日期"
@change="timeChange(scope.row)"></el-date-picker> @change="timeChange(scope.row)"></el-date-picker>
</div> </div>
<!-- <div v-else-if="item.key==='prepareDate' && isAccurate === '是'" @click="_handleRow(scope)">-->
<!-- <date-picker :editable="false" :transfer="true" v-model="scope.row.prepareDate" type="datetime"-->
<!-- placeholder="选择时间"-->
<!-- format="yyyy-MM-dd HH:mm" style="width:100%"></date-picker>-->
<!-- </div>-->
<!-- <div v-else-if="item.key==='prepareDate' && isAccurate === '否'" @click="_handleRow(scope)">-->
<!-- <date-picker :editable="false" :transfer="true" v-model="scope.row.prepareDate" type="datetime"-->
<!-- placeholder="选择时间"-->
<!-- format="yyyy-MM-dd" style="width:100%"></date-picker>-->
<!-- </div>-->
<!-- <div v-else-if="item.key==='prepareDate' && !isAccurate" @click="_handleRow(scope)">-->
<!-- <date-picker :editable="false" :transfer="true" v-model="scope.row.prepareDate" type="datetime"-->
<!-- placeholder="选择时间"-->
<!-- format="yyyy-MM-dd" style="width:100%"></date-picker>-->
<!-- </div>-->
<!-- <div v-else-if="item.key==='prepareDate'" @click="_handleRow(scope)">-->
<!-- <el-date-picker-->
<!-- v-model="scope.row.prepareDate"-->
<!-- @change="timeChange($event)"-->
<!-- type="datetime"-->
<!-- size="mini"-->
<!-- placeholder="选择日期时间">-->
<!-- </el-date-picker>-->
<!-- </div>-->
<div v-else-if="item.key==='preparer'" @click="_handleRow(scope)"> <div v-else-if="item.key==='preparer'" @click="_handleRow(scope)">
<el-input v-model="scope.row.preparer" placeholder="制备人" <el-input v-model="scope.row.preparer" placeholder="制备人"
size="small" name="preparer" @focus="_handleRow(scope)"></el-input> size="small" name="preparer" @focus="_handleRow(scope)"></el-input>
...@@ -126,21 +102,24 @@ ...@@ -126,21 +102,24 @@
</Modal> </Modal>
<!--下载插件--> <!--下载插件-->
<downloadPlugin ref="downloadPlugin" /> <downloadPlugin ref="downloadPlugin" />
<SampleParpareBatchEdit ref="batchEdit" @on-result-change="backData"></SampleParpareBatchEdit>
</div> </div>
</template> </template>
<script> <script>
import AutoComplete from '../../../components/base/AutoCompletes' import AutoComplete from '../../../components/base/AutoCompletes'
import Global from '../../../api/config'
import { soilEntrust } from '../../../api' import { soilEntrust } from '../../../api'
import { getLodop } from '../../../plugins/clodop/LodopFuncs' import { getLodop } from '../../../plugins/clodop/LodopFuncs'
// eslint-disable-next-line no-unused-vars // eslint-disable-next-line no-unused-vars
import downloadPlugin from '../../../plugins/download/downloadPlugin' import downloadPlugin from '../../../plugins/download/downloadPlugin'
import SampleParpareBatchEdit from './SampleParpareBatchEdit'
let LODOP let LODOP
export default { export default {
components: { components: {
AutoComplete, AutoComplete,
downloadPlugin downloadPlugin,
SampleParpareBatchEdit
}, },
data() { data() {
return { return {
...@@ -156,7 +135,8 @@ export default { ...@@ -156,7 +135,8 @@ export default {
], ],
btn: [ btn: [
{ type: 'success', id: '', name: '打印标签' }, { type: 'success', id: '', name: '打印标签' },
{ type: 'error', id: '', name: '删除' } { type: 'error', id: '', name: '删除' },
{ type: 'success', id: '', name: '批量填写制备信息' }
], ],
iconMsg: [ iconMsg: [
// { type: 'md-create', id: '', name: '批量赋值' }, // { type: 'md-create', id: '', name: '批量赋值' },
...@@ -288,6 +268,15 @@ export default { ...@@ -288,6 +268,15 @@ export default {
this.isAccurate = result[5][0].name this.isAccurate = result[5][0].name
}) })
}, },
backData(data) {
this.$forceUpdate()
console.log(data)
console.log(this.selectData)
for (let i = 0; i < this.selectData.length; i++) {
Object.assign(this.selectData[i], data)
}
console.log('合并后', this.selectData)
},
_preparationChange(msg, data, handleObj) { _preparationChange(msg, data, handleObj) {
this._handleRow(handleObj) this._handleRow(handleObj)
this.currentRow.prepareWay = data this.currentRow.prepareWay = data
...@@ -439,59 +428,9 @@ export default { ...@@ -439,59 +428,9 @@ export default {
this.$refs.footerModal._hideLoading() this.$refs.footerModal._hideLoading()
}, },
_tableResultChange(msg, data) { _tableResultChange(msg, data) {
const user = Global.getUserInfo()
switch (msg) { switch (msg) {
case 'page': case 'page':
let times = '' this._page()
const list = this.$store.state.FoodSample.list
console.log(list)
for (let i = 0; i < list.length; i++) {
this.getPage.records.push({
currentIndex: i,
id: list[i].id === undefined ? '' : list[i].id,
num: list[i].num,
name: list[i].name,
groupName: list[i].groupName,
groupId: list[i].groupId,
itemName: list[i].itemName,
preparationWay: list[i].preparationWay,
receiveQuantity: list[i].receiveQuantity,
resultQuantity: list[i].resultQuantity
? list[i].resultQuantity
: 0,
unit: list[i].unit,
resultState: list[i].resultState ? list[i].resultState : '泥状',
saveWay: list[i].saveWay ? list[i].saveWay : '冷冻',
pack: list[i].pack ? list[i].pack : '',
storePlace: list[i].storePlace ? list[i].storePlace : '',
preparationDate: list[i].preparationDate
? list[i].preparationDate
: (times =
times === ''
? new Date()
: new Date(
new Date(times).getTime() +
Math.round(Math.random() * 1 * 5) * 1000
)),
remark: list[i].remark,
sampleQuantity: list[i].sampleQuantity
? list[i].sampleQuantity
: '',
preparationPerson: list[i].preparationPerson
? list[i].preparationPerson
: user.realname,
preparationPersonId: list[i].preparationPersonId
? list[i].preparationPersonId
: user.id,
sampleId: list[i].sampleId,
resultDate: list[i].resultDate,
groupNameRel: list[i].groupNameRel,
contractName: list[i].contractName,
printNum: 1,
itemPreparation: list[i].itemPreparation
})
}
this.$refs.pageTable._hideLoading()
break break
case 'selectData': case 'selectData':
this.selectData = data this.selectData = data
...@@ -520,6 +459,9 @@ export default { ...@@ -520,6 +459,9 @@ export default {
this.$Message.warning('请至少选择一条数据') this.$Message.warning('请至少选择一条数据')
} }
break break
case '批量填写制备信息':
this._writeInfo()
break
case '删除': case '删除':
this._deleteSelected() this._deleteSelected()
break break
...@@ -590,6 +532,13 @@ export default { ...@@ -590,6 +532,13 @@ export default {
date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds() date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return YY + MM + DD + ' ' + hh + mm + ss return YY + MM + DD + ' ' + hh + mm + ss
}, },
_writeInfo() {
if (this.selectIds.length === 0) {
this.$Message.warning('请选择一条或多条数据!')
} else {
this.$refs.batchEdit._open(this.selectIds)
}
},
_printerResult(data) { _printerResult(data) {
this.$refs.printNumber._open(this.selectData, data.printerVal) this.$refs.printNumber._open(this.selectData, data.printerVal)
}, },
......
<template>
<div>
<Modal v-model="showModal" :mask-closable="false">
<p slot="header">填写试验项目信息</p>
<div>
<Form id="storage-location-form" ref="formObj" :model="formObj" :rules="ruleValidate" :label-width="100">
<Form-item label="英文简写:" prop="shortName">
<el-input v-model="formObj.shortName" name="shortName" placeholder="请输入英文简写">
</el-input>
</Form-item>
<Form-item label="大类:" prop="mainType">
<el-input v-model="formObj.mainType" name="mainType" placeholder="请输入大类">
</el-input>
</Form-item>
<Form-item label="小类:" prop="smallType">
<el-input v-model="formObj.smallType" name="smallType" placeholder="请输入小类">
</el-input>
</Form-item>
<Form-item label="试验方法:" prop="testMethod">
<el-input v-model="formObj.testMethod" name="testMethod" placeholder="请输入试验方法">
</el-input>
</Form-item>
<Form-item label="试验科室:">
<el-select :value="formObj.groupName" @change="selGroupName" style="width:100%" size="small">
<el-option v-for="item in groupoptions" :value="item.id" :label="item.name" :key="item.name">{{ item.name }}
</el-option>
</el-select>
</Form-item>
<Form-item label="检测依据:">
<AutoCompletes v-model="formObj.testBasis" :down-data="testBasisList" @on-result-change="_selTestBasis"
style="editable:false" clearable
placeholder="请选择检测依据" show-key="name"></AutoCompletes>
</Form-item>
</Form>
</div>
<div slot="footer">
<modal-footer ref="footerModal" @on-result-change="_footerResult" :footer="footerList"></modal-footer>
</div>
</Modal>
</div>
</template>
<script>
import { soilAptitude, soilSample } from '../../../api'
import AutoCompletes from '../../../components/base/AutoCompletes'
export default {
components: { AutoCompletes },
data() {
return {
ids: [], // 委托ids
showModal: false,
formObj: {},
ruleValidate: {},
footerList: [
{ id: '', name: '取消', type: '' },
{ id: '', name: '保存', type: 'primary' }
],
conditionList: [],
locList: [],
backupUserList: [],
prepareWayList: [],
keepWayList: [],
keepContainerList: [],
groupoptions: [],
testBasisList: [],
sampleUnit: ''
}
},
mounted() {
this._getGroupList()
this._getTestBasisList()
},
methods: {
_locChange(msg, data) {
switch (msg) {
case 'select':
this.formObj.backupPlace = data.backupPlace
this._getCondition(data.backupPlace)
break
case 'query':
this.formObj.backupPlace = data.backupPlace
this._getLocList(data.backupPlace)
break
}
},
_getGroupList: async function() {
const result = await soilAptitude.getGroupList()
if (result) {
this.groupoptions = result
console.log('试验科室', result)
}
},
_getTestBasisList: async function() {
const result = await soilAptitude.getBasisList()
if (result) {
this.testBasisList = result
}
},
_selTestBasis(msg, data) {
if (msg === 'select') {
this.formObj.testBasis = data.name
}
},
channelInputLimit(e) {
const key = e.key
// 不允许输入'e'和'.'
if (key === 'e' || key === '.') {
e.returnValue = false
return false
}
return true
},
selPrepareWay(data) {
this.$forceUpdate()
this.formObj.prepareWay = data
},
selKeepWay(data) {
this.$forceUpdate()
this.formObj.keepWay = data
},
selKeepContainer(msg, data) {
this.$forceUpdate()
if (msg === 'select') {
this.formObj.keepContainer = data.name
} else if (msg === 'query') {
this.formObj.keepContainer = data.name
}
},
selGroupName(data) {
this.$forceUpdate()
if (data) {
for (let i = 0; i < this.groupoptions.length; i++) {
if (this.groupoptions[i].id === data) {
this.formObj.groupName = this.groupoptions[i].name
}
}
} else {
this.getPage.records[this.currentIndex].groupName = ''
}
this.formObj.groupId = data
// this.$forceUpdate()
// this.getPage.records[this.currentIndex].backupUser = data
// this.getPage.records[this.currentIndex].backupUser = data
},
// 存储条件 回调
_locChangeCondition(msg, data) {
switch (msg) {
case 'select':
this.formObj.storageCondition = data.name
this._getLocCondition(data.name)
break
case 'query':
this.formObj.storageCondition = data.name
this._getLocConditionList(data.name)
break
}
},
_footerResult(name) {
switch (name) {
case '取消':
this._cancel()
break
case '保存':
this._ok()
break
}
},
_open(data) {
this.showModal = true
this.formObj = this.$resetFields(this.formObj)
this.sampleUnit = ''
this.$refs.footerModal._hideLoading()
this.ids = data
// 循环遍历数据
},
_getPrepareWay: async function() {
const result = await soilSample.getDictList('制备方式')
if (result) {
this.prepareWayList = result
}
},
_getkeepWayList: async function() {
const result = await soilSample.getDictList('保存方式')
if (result) {
this.keepWayList = result
}
},
_getkeepContainerList: async function() {
const result = await soilSample.getDictList('保存容器')
if (result) {
this.keepContainerList = result
}
},
_getUserList: async function() {
const result = await soilSample.getUserList()
if (result) {
console.log(result)
this.backupUserList = result.records
}
},
//
_dateChange(data) {
this.formObj.endDate = data
},
_cancel() {
this.showModal = false
this.$refs.footerModal._hideLoading()
},
_hideLoading() {
this.$refs.footerModal._hideLoading()
},
_ok() {
this.$refs.formObj.validate(valid => {
if (valid) {
console.log(this.formObj)
const tempData = this.formObj
tempData.ids = this.ids.join(',')
this._saveInfo(tempData)
} else {
this.$Message.error('表单验证失败!')
this.$refs.footerModal._hideLoading()
}
})
},
_saveInfo: async function(data) {
const result = await soilSample.editItem(data)
if (result) {
this.showModal = false
this.$refs.footerModal._hideLoading()
this.$emit('on-result-change')
this.$Message.success('保存成功')
}
}
}
}
</script>
<template>
<div>
<Modal v-model="showModal" :mask-closable="false">
<p slot="header">填写制备信息</p>
<div>
<Form id="storage-location-form" ref="formObj" :model="formObj" :rules="ruleValidate" :label-width="100">
<Form-item label="制备方式:" prop="prepareWay">
<el-select :value="formObj.prepareWay" @change="selPrepareWay" style="width:100%" size="small">
<el-option v-for="item in prepareWayList" :value="item.name" :key="item.name">{{ item.name }}
</el-option>
</el-select>
</Form-item>
<Form-item label="制备数量:" prop="quantity">
<el-input
v-model="formObj.quantity"
@keydown.native="channelInputLimit"
clearable
type="number"
placeholder="请输入或选择数量"
/>
</Form-item>
<Form-item label="单位:">
<Input v-model="formObj.unit" clearable placeholder="请输入单位"></Input>
</Form-item>
<Form-item label="保存方式:">
<el-select :value="formObj.keepWay" @change="selKeepWay" style="width:100%" size="small">
<el-option v-for="item in keepWayList" :value="item.name" :key="item.name">{{ item.name }}
</el-option>
</el-select>
</Form-item>
<Form-item label="保存容器:">
<AutoCompletes v-model="formObj.keepContainer" :handle-obj="formObj" :down-data="keepContainerList" @on-result-change="selKeepContainer"
style="editable:false" clearable
placeholder="请选择保存容器" show-key="name"></AutoCompletes>
<!-- <el-select :value="formObj.keepContainer" @change="selKeepContainer" style="width:100%" size="small">-->
<!-- <el-option v-for="item in keepContainerList" :value="item.name" :key="item.name">{{ item.name }}-->
<!-- </el-option>-->
<!-- </el-select>-->
</Form-item>
<Form-item label="制备人:">
<el-select :value="formObj.preparer" @change="selUser" style="width:100%" size="small">
<el-option v-for="item in backupUserList" :value="item.id" :label="item.realname" :key="item.realname">{{ item.realname }}
</el-option>
</el-select>
</Form-item>
</Form>
</div>
<div slot="footer">
<modal-footer ref="footerModal" @on-result-change="_footerResult" :footer="footerList"></modal-footer>
</div>
</Modal>
</div>
</template>
<script>
import { soilSample } from '../../../api'
import AutoCompletes from '../../../components/base/AutoCompletes'
export default {
components: { AutoCompletes },
data() {
return {
ids: [], // 委托ids
showModal: false,
formObj: {},
ruleValidate: {},
footerList: [
{ id: '', name: '取消', type: '' },
{ id: '', name: '保存', type: 'primary' }
],
conditionList: [],
locList: [],
backupUserList: [],
prepareWayList: [],
keepWayList: [],
keepContainerList: [],
sampleUnit: ''
}
},
mounted() {
this._getPrepareWay()
this._getkeepWayList()
this._getkeepContainerList()
this._getUserList()
},
methods: {
_locChange(msg, data) {
switch (msg) {
case 'select':
this.formObj.backupPlace = data.backupPlace
this._getCondition(data.backupPlace)
break
case 'query':
this.formObj.backupPlace = data.backupPlace
this._getLocList(data.backupPlace)
break
}
},
channelInputLimit(e) {
const key = e.key
// 不允许输入'e'和'.'
if (key === 'e' || key === '.') {
e.returnValue = false
return false
}
return true
},
selPrepareWay(data) {
this.$forceUpdate()
this.formObj.prepareWay = data
},
selKeepWay(data) {
this.$forceUpdate()
this.formObj.keepWay = data
},
selKeepContainer(msg, data) {
this.$forceUpdate()
if (msg === 'select') {
this.formObj.keepContainer = data.name
} else if (msg === 'query') {
this.formObj.keepContainer = data.name
}
},
selUser(data) {
this.$forceUpdate()
if (data) {
for (let i = 0; i < this.backupUserList.length; i++) {
if (this.backupUserList[i].id === data) {
this.formObj.preparer = this.backupUserList[i].realname
}
}
} else {
this.getPage.records[this.currentIndex].preparer = ''
}
this.formObj.preparerId = data
// this.$forceUpdate()
// this.getPage.records[this.currentIndex].backupUser = data
// this.getPage.records[this.currentIndex].backupUser = data
},
// 存储条件 回调
_locChangeCondition(msg, data) {
switch (msg) {
case 'select':
this.formObj.storageCondition = data.name
this._getLocCondition(data.name)
break
case 'query':
this.formObj.storageCondition = data.name
this._getLocConditionList(data.name)
break
}
},
_footerResult(name) {
switch (name) {
case '取消':
this._cancel()
break
case '保存':
this._ok()
break
}
},
_open(data) {
this.showModal = true
this.formObj = this.$resetFields(this.formObj)
this.sampleUnit = ''
this.$refs.footerModal._hideLoading()
this.ids = data
// 循环遍历数据
},
_getPrepareWay: async function() {
const result = await soilSample.getDictList('制备方式')
if (result) {
this.prepareWayList = result
}
},
_getkeepWayList: async function() {
const result = await soilSample.getDictList('保存方式')
if (result) {
this.keepWayList = result
}
},
_getkeepContainerList: async function() {
const result = await soilSample.getDictList('保存容器')
if (result) {
this.keepContainerList = result
}
},
_getUserList: async function() {
const result = await soilSample.getUserList()
if (result) {
console.log(result)
this.backupUserList = result.records
}
},
//
_dateChange(data) {
this.formObj.endDate = data
},
_cancel() {
this.showModal = false
this.$refs.footerModal._hideLoading()
},
_hideLoading() {
this.$refs.footerModal._hideLoading()
},
_ok() {
this.$refs.formObj.validate(valid => {
if (valid) {
this.$emit('on-result-change', this.formObj)
this.showModal = false
this.$refs.footerModal._hideLoading()
} else {
this.$Message.error('表单验证失败!')
this.$refs.footerModal._hideLoading()
}
})
},
_saveInfo: async function(data) {
const result = await soilSample.editBackup(data)
if (result) {
this.$Message.success('保存成功')
}
}
}
}
</script>
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
<!-- 表格 --> <!-- 表格 -->
<Col span="24"> <Col span="24">
<PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :loading="true" <PTVXETable ref="pageTable" :table-height="tableHeight" :form-id="formId" :loading="true"
:get-page="getPage" @on-result-change="_tableResultChange" is-edit> :get-page="getPage" @on-result-change="_tableResultChange" is-edit select-data>
<vxe-table-column <vxe-table-column
v-for="item in pageColumns" v-for="item in pageColumns"
:key="item.key" :key="item.key"
...@@ -110,19 +110,27 @@ ...@@ -110,19 +110,27 @@
<modal-footer ref="footerModal" :footer="footerList" @on-result-change="_footerResult" /> <modal-footer ref="footerModal" :footer="footerList" @on-result-change="_footerResult" />
</div> </div>
</Modal> </Modal>
<PrepareItemBatchEdit ref="batchEdit" @on-result-change="_page"></PrepareItemBatchEdit>
</div> </div>
</template> </template>
<script> <script>
import http from '../../../api/http' import http from '../../../api/http'
import { soilAptitude, soilEntrust } from '../../../api' import { soilAptitude, soilEntrust } from '../../../api'
import AutoCompletes from '../../../components/base/AutoCompletes' import AutoCompletes from '../../../components/base/AutoCompletes'
import PrepareItemBatchEdit from './PrepareItemBatchEdit'
export default { export default {
components: { AutoCompletes }, components: { AutoCompletes, PrepareItemBatchEdit },
data() { data() {
return { return {
formId: 'SampleItemManage', formId: 'SampleItemManage',
currentComponent: '', currentComponent: '',
btn: [], btn: [
{
type: 'success',
id: '',
name: '批量填写试验项目信息'
}
],
iconMsg: [{ type: 'pt-a-end', id: '', name: '删除' }], iconMsg: [{ type: 'pt-a-end', id: '', name: '删除' }],
sampleId: '', // 样品id sampleId: '', // 样品id
entrustId: '', entrustId: '',
...@@ -307,6 +315,9 @@ export default { ...@@ -307,6 +315,9 @@ export default {
this.currentComponent = componentName this.currentComponent = componentName
this.$nextTick(function() { this.$nextTick(function() {
switch (msg) { switch (msg) {
case '批量填写试验项目信息':
this._writeInfo()
break
case '提交分包': case '提交分包':
this._submitOutPack() this._submitOutPack()
break break
...@@ -346,6 +357,13 @@ export default { ...@@ -346,6 +357,13 @@ export default {
} }
}) })
}, },
_writeInfo() {
if (this.selectIds.length === 0) {
this.$Message.warning('请选择一条或多条数据!')
} else {
this.$refs.batchEdit._open(this.selectIds)
}
},
_backData(data) { _backData(data) {
this.getPage.records[this.index].code = data.code this.getPage.records[this.index].code = data.code
this._codeEdit({ id: this.itemId, obj: { code: data.code } }) this._codeEdit({ id: this.itemId, obj: { code: data.code } })
......
...@@ -30,7 +30,6 @@ ...@@ -30,7 +30,6 @@
<PTVXETable <PTVXETable
ref="pageTable" :tableHeight="tableHeight" @on-result-change="_tableResultChange" ref="pageTable" :tableHeight="tableHeight" @on-result-change="_tableResultChange"
:getPage="getPage" :getPage="getPage"
is-edit
is-group is-group
select-data> select-data>
<vxe-table-column <vxe-table-column
...@@ -149,27 +148,7 @@ export default { ...@@ -149,27 +148,7 @@ export default {
// {type: '', id: 'food-sampling-list-reset-sc-id', name: '重置省局ID',}, // {type: '', id: 'food-sampling-list-reset-sc-id', name: '重置省局ID',},
], ],
sampleId: '', sampleId: '',
formObj: { formObj: {},
contractId: '',
samplingNum: '',
name: '',
num: '',
samplingDateBegin: '',
samplingDateEnd: '',
receiveDateBegin: '',
receiveDateEnd: '',
ctimeBegin: '',
ctimeEnd: '',
testBasis: '',
detectType: '',
mateTestBasisSm: 0,
hasProvinceId: 0,
groupIds: '',
sampleName: '',
firstClass: '',
onlyAbort: 0,
qced: 0
},
receiveDateList: [], receiveDateList: [],
ctimeList: [], ctimeList: [],
samplingDateList: [], samplingDateList: [],
...@@ -663,13 +642,6 @@ export default { ...@@ -663,13 +642,6 @@ export default {
_open(id, type) { _open(id, type) {
this.sampleId = id this.sampleId = id
this.formObj = this.$resetFields(this.formObj) this.formObj = this.$resetFields(this.formObj)
this.formObj.hasProvinceId = 0
this.formObj.mateTestBasisSm = 0
this.formObj.onlyAbort = 0
this.formObj.contractId = id
this.receiveDateList = []
this.ctimeList = []
this.samplingDateList = []
this.type = type this.type = type
this.showModal = true this.showModal = true
this.currentRow = {} this.currentRow = {}
......
...@@ -88,14 +88,7 @@ export default { ...@@ -88,14 +88,7 @@ export default {
selectData: [], selectData: [],
currentComponent: '', currentComponent: '',
showSampleModal: false, showSampleModal: false,
formObj: { formObj: {},
samplingNum: '',
name: '',
num: '',
detectType: '',
standard: '',
samplingLinkList: []
},
stdList: [], stdList: [],
sampleLinkList: [ sampleLinkList: [
{ value: 0, name: '食品生产' }, { value: 0, name: '食品生产' },
...@@ -220,7 +213,7 @@ export default { ...@@ -220,7 +213,7 @@ export default {
this._editModal(true, data) this._editModal(true, data)
break break
case '试验项目': case '试验项目':
this._itemManage(data.id) this._itemManage(data.sampleId)
break break
case '复制': case '复制':
this._copySample(data) this._copySample(data)
......
...@@ -51,6 +51,7 @@ ...@@ -51,6 +51,7 @@
<SelectOriTempRecord ref="recordModal" @on-result-change="_page"></SelectOriTempRecord> <SelectOriTempRecord ref="recordModal" @on-result-change="_page"></SelectOriTempRecord>
<OriginalRecordEdit ref="editModal"></OriginalRecordEdit> <OriginalRecordEdit ref="editModal"></OriginalRecordEdit>
<IndexManage ref="indexModal" @on-result-change="_page"></IndexManage> <IndexManage ref="indexModal" @on-result-change="_page"></IndexManage>
<SelEquip ref="selEquip" @on-result-change="_equipResult"></SelEquip>
</div> </div>
</template> </template>
<script> <script>
...@@ -60,12 +61,14 @@ import AssignPerson from '../../../../components/user-info-single/AssignPerson' ...@@ -60,12 +61,14 @@ import AssignPerson from '../../../../components/user-info-single/AssignPerson'
import SelectOriTempRecord from '../SelectOriTempRecord' import SelectOriTempRecord from '../SelectOriTempRecord'
import OriginalRecordEdit from '../OriginalRecordEdit' import OriginalRecordEdit from '../OriginalRecordEdit'
import IndexManage from '../IndexManage' import IndexManage from '../IndexManage'
import SelEquip from '../../../../components/select-equip/SelEquip'
export default { export default {
components: { components: {
AssignPerson, AssignPerson,
SelectOriTempRecord, SelectOriTempRecord,
OriginalRecordEdit, OriginalRecordEdit,
IndexManage IndexManage,
SelEquip
}, },
data() { data() {
return { return {
...@@ -105,6 +108,7 @@ export default { ...@@ -105,6 +108,7 @@ export default {
btn: [ btn: [
{ type: 'success', id: '', name: '填写原始记录' }, { type: 'success', id: '', name: '填写原始记录' },
{ type: 'success', id: '', name: '完成提交' }, { type: 'success', id: '', name: '完成提交' },
{ type: 'success', id: '', name: '设备' },
{ type: '', id: 'food-task-assign-adjust-group', name: '调整分组' }, { type: '', id: 'food-task-assign-adjust-group', name: '调整分组' },
{ {
type: '', type: '',
...@@ -206,6 +210,24 @@ export default { ...@@ -206,6 +210,24 @@ export default {
this.userColumns = colList this.userColumns = colList
this.$refs.pageTable._loadColumn(colList) this.$refs.pageTable._loadColumn(colList)
}, },
_equipResult(res) {
console.log(res)
// let equipIds = []
// for (let i = 0; i < res.length; i++) {
// equipIds.push(res[i].id)
// }
// this.$layxLoading()
// this.$store.dispatch('FoodItem/selectEquip', {
// ids: this.selectIds.join(','),
// equipIds: equipIds.join(',')
// }).then(() => {
// if (this.$store.state.FoodItem.success) {
// this.$Message.success('操作成功!');
// this._updateRows('selected');
// }
// this.$layxLoading(false);
// });
},
// 从字典查预警期 // 从字典查预警期
_dicSearch() { _dicSearch() {
const data = ['食品检测预警天数', '食品默认计划完成时间'] const data = ['食品检测预警天数', '食品默认计划完成时间']
...@@ -333,6 +355,9 @@ export default { ...@@ -333,6 +355,9 @@ export default {
case '完成提交': case '完成提交':
this._submitItem(this.selectData) this._submitItem(this.selectData)
break break
case '设备':
this._selectEquipment()
break
case '按组分配': case '按组分配':
await this._reportDueDate() await this._reportDueDate()
await this._groupAssign() await this._groupAssign()
...@@ -358,6 +383,13 @@ export default { ...@@ -358,6 +383,13 @@ export default {
break break
} }
}, },
_selectEquipment() {
if (this.selectIds.length === 0) {
this.$Message.warning('请至少选择一条数据!')
} else {
this.$refs.selEquip._open('sample-input')
}
},
_submitItem(data) { _submitItem(data) {
console.log(data) console.log(data)
if (data[0].recorded !== '是') { if (data[0].recorded !== '是') {
......
...@@ -5,31 +5,31 @@ ...@@ -5,31 +5,31 @@
<p class="fl">待完成委托 {{total}} </p> <p class="fl">待完成委托 {{total}} </p>
<div class="fr"> <div class="fr">
<Tooltip content="刷新" placement="left-start"> <Tooltip content="刷新" placement="left-start">
<Icon @click="_request" type="ios-refresh" size="30" color="#2d8cf0" style="cursor:pointer;"></Icon> <Icon @click="_page" type="ios-refresh" size="30" color="#2d8cf0" style="cursor:pointer;"></Icon>
</Tooltip>
<Tooltip content="查看更多" placement="left-start" style="margin-left: 5px">
<Icon @click="_detail" type="ios-more" size="30" color="#2d8cf0" style="cursor:pointer;"></Icon>
</Tooltip> </Tooltip>
<!-- <Tooltip content="查看更多" placement="left-start" style="margin-left: 5px">-->
<!-- <Icon @click="_detail" type="ios-more" size="30" color="#2d8cf0" style="cursor:pointer;"></Icon>-->
<!-- </Tooltip>-->
</div> </div>
<div class="clear"></div> <div class="clear"></div>
</div> </div>
<div style="width: 100%;"> <div style="width: 100%;">
<element-table ref="pageTable" :pageColumns="pageColumns" <PTVXETableHeight ref="pageTable" :table-height="300" :loading="true"
:tableHeight="tableHeight" :getPage="tableData" hide-checkbox> :get-page="getPage" hide-checkbox="true">
<el-table-column <vxe-table-column
:prop="item.key"
:label="item.title"
:min-width="item.width?item.width:200"
:fixed="item.fixed?item.fixed:undefined"
v-for="item in pageColumns" v-for="item in pageColumns"
:key="item.key" :key="item.key"
show-overflow-tooltip sortable> :field="item.key"
:title="item.title"
:min-width="item.width?item.width:200"
:fixed="item.fixed?item.fixed:undefined" sortable>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="item.date">{{$dateformat(scope.row[item.key],'yyyy-mm-dd')}}</span> <span v-if="item.date">{{scope.row[item.key]?$dateformat(scope.row[item.key],'yyyy-mm-dd'):''}}</span>
<span v-else-if="item.status">{{scope.row[item.key].display}}</span>
<span v-else>{{scope.row[item.key]}}</span> <span v-else>{{scope.row[item.key]}}</span>
</template> </template>
</el-table-column> </vxe-table-column>
</element-table> </PTVXETableHeight>
</div> </div>
</Card> </Card>
<!--未完成委托列表--> <!--未完成委托列表-->
...@@ -37,16 +37,19 @@ ...@@ -37,16 +37,19 @@
</template> </template>
<script> <script>
import { soilStatistics } from '../../api'
export default { export default {
components: {}, components: {},
data() { data() {
return { return {
tableData: { records: [] }, tableData: { records: [] },
getPage: {},
pageColumns: [ pageColumns: [
{ title: '委托单位', key: 'cname' }, { title: '委托单位', key: 'client' },
{ title: '委托编号', key: 'code', width: 180 }, { title: '委托编号', key: 'entrustCode', width: 180 },
{ title: '应出报告日期', key: 'reportDueDate', date: true }, { title: '状态', key: 'progress', width: 110, status: true },
{ title: '状态', key: 'progress', width: 110 } { title: '委托日期', key: 'entrustDate', date: true }
], ],
tableHeight: '280', tableHeight: '280',
total: '' total: ''
...@@ -54,11 +57,19 @@ export default { ...@@ -54,11 +57,19 @@ export default {
}, },
mounted() { mounted() {
// this._request() // this._request()
this._page()
}, },
methods: { methods: {
_detail() { _detail() {
this.$refs.unfinishedDetail._open() this.$refs.unfinishedDetail._open()
}, },
_page: async function() {
const result = await soilStatistics.pageWaitEnd()
if (result) {
console.log(result)
this.getPage = result
}
},
_request() { _request() {
this.$refs.pageTable._hideLoading() this.$refs.pageTable._hideLoading()
this.$store this.$store
......
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
<myTask /> <myTask />
</Col> </Col>
<Col span="12" style="margin-bottom: 10px"> <Col span="12" style="margin-bottom: 10px">
<taskFlow /> <TaskFlow />
</Col> </Col>
<Col span="12" style="margin-bottom: 10px"> <Col span="12" style="margin-bottom: 10px">
<taskCalendar /> <taskCalendar />
...@@ -72,7 +72,7 @@ import statisticalPanel from './statisticalPanel' ...@@ -72,7 +72,7 @@ import statisticalPanel from './statisticalPanel'
import messagePanel from './messagePanel' import messagePanel from './messagePanel'
import toDoTask from './ToDoTask' import toDoTask from './ToDoTask'
import myTask from './MyTask' import myTask from './MyTask'
import taskFlow from './TaskFlow' import TaskFlow from './TaskFlow'
import taskCalendar from './task-calendar/TaskCalendar' import taskCalendar from './task-calendar/TaskCalendar'
import UnfinishedContract from './UnfinishedContract' import UnfinishedContract from './UnfinishedContract'
import UnfinishedItem from './UnfinishedItem' import UnfinishedItem from './UnfinishedItem'
...@@ -90,7 +90,7 @@ export default { ...@@ -90,7 +90,7 @@ export default {
messagePanel, messagePanel,
myTask, myTask,
toDoTask, toDoTask,
taskFlow, TaskFlow,
taskCalendar, taskCalendar,
UnfinishedContract, UnfinishedContract,
UnfinishedItem, UnfinishedItem,
......
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