Commit 781f9c70 by lichengming

添加了原始记录模板天平配置功能

parent 620538d9
......@@ -108,5 +108,19 @@ export default {
pageSummaryTemplate: data =>
http
.post('soil/v1/exp_report_template/page_summary_template', data)
.then(res => res),
originalTemplateBalance: data =>
http.post('soil/v1/original_template_balance/page', data).then(res => res),
originalTemplateBalanceSave: data =>
http.post('soil/v1/original_template_balance/', data).then(res => res),
originalTemplateBalanceGet: data =>
http.get('soil/v1/original_template_balance/' + data).then(res => res),
originalTemplateBalanceEdit: data =>
http
.put('soil/v1/original_template_balance/' + data.id, data.obj)
.then(res => res),
originalTemplateBalanceDelete: data =>
http
.delete('soil/v1/original_template_balance/?ids=' + data)
.then(res => res)
}
<template>
<div>
<Modal v-model="showModal" width="1000" class="modal-footer-none">
<div slot="header">{{modalTitle}}</div>
<div>
<Form id="index-right-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" placeholder="请输入天平名称" clearable/>
</Form-item>
<Form-item class="search-btn">
<Button @click="_formSearch" type="primary">搜索</Button>
</Form-item>
</Form>
<btn-list :msg="btn" @on-result-change="_btnClick" class="contHide" style="margin-bottom: 10px;"/>
<PTVXETable ref="pageTable" :tableHeight="tableHeight"
@on-result-change="_tableResultChange" :getPage="getPage" :iconMsg="iconMsg">
<vxe-table-column
:field="item.key"
:title="item.title"
:min-width="item.width?item.width:200"
:fixed="item.fixed?item.fixed:undefined"
v-for="item in pageColumns" :key="item.key">
<template slot-scope="scope">
<span v-if="item.key==='defaulted'">{{scope.row[item.key]?'是':'否'}}</span>
<span v-else-if="item.key==='itemed'">{{scope.row[item.key] === 1?'是':'否'}}</span>
<span v-else>{{scope.row[item.key]}}</span>
</template>
</vxe-table-column>
</PTVXETable>
</div>
</Modal>
<ConfigTemplateBalanceEdit ref="indexEdit" @on-result-change="_page"></ConfigTemplateBalanceEdit>
</div>
</template>
<script>
import { soilAptitude } from '../../api'
import ConfigTemplateBalanceEdit from './ConfigTemplateBalanceEdit'
export default {
components: { ConfigTemplateBalanceEdit },
data() {
return {
id: '',
modalTitle: '',
showModal: false,
btn: [
{ type: 'success', id: '', name: '添加配置' },
{ type: 'error', id: '', name: '删除' }
],
tableHeight: document.documentElement.clientHeight - 180,
pageColumns: [
{ title: '天平名称', key: 'name' },
{ title: 'IP地址', key: 'ipAddress', width: 120 },
{ title: '串口名称', key: 'comName', width: 120 },
{ title: '是否是首选天平', key: 'itemed', width: 120 },
{ title: '波特率', key: 'baudRate', width: 120 },
{ title: '采集命令', key: 'command', width: 120 }
],
getPage: {},
iconMsg: [{ type: 'md-create', id: '', name: '编辑' }],
selectIds: [],
formObj: {
attributeName: undefined,
templateId: undefined
},
// 资质信息
aptitudeItemInfo: {}
}
},
methods: {
_open(data) {
console.log(data)
this.aptitudeItemInfo = data
this.formObj = this.$resetFields(this.formObj)
this.formObj.templateId = data.id
this.id = data.id
this.modalTitle = data.name + ' 天平配置'
this.showModal = true
this._page()
},
_page: async function() {
Object.assign(this.formObj, this.$refs.pageTable._searchParams())
const result = await soilAptitude.originalTemplateBalance(
this.$serializeForm(this.formObj)
)
if (result) {
console.log(result)
this.getPage = result
this.$refs.pageTable._hideLoading()
}
},
_formSearch() {
this.$refs.pageTable._pageChange(1)
},
_tableResultChange(msg, data) {
switch (msg) {
case 'page':
break
case 'selectIds':
this.selectIds = data
break
case 'iconClick':
this._iconClick(data.name, data.rowData)
break
case 'changeSize':
this._page()
break
}
},
_iconClick(res, data) {
switch (res) {
case '编辑':
this._editModal(true, data)
break
}
},
_editModal(edit, data) {
if (edit) {
this._getById(data)
} else {
this.$refs.indexEdit._open(this.id, '')
}
},
_getById: async function(data) {
const result = await soilAptitude.originalTemplateBalanceGet(data.id)
console.log(result)
if (result) {
this.$refs.indexEdit._open('', result)
}
},
_btnClick(msg) {
switch (msg) {
case '添加配置':
this._editModal(false)
break
case '删除':
this._deleteByIds()
break
}
},
_deleteByIds() {
if (this.selectIds.length === 0) {
// this.$msgTip('warning')
this.$message.warning('请至少选择一条记录')
} else {
this.$Modal.confirm({
title: '提示',
content: '确定删除 ' + this.selectIds.length + ' 条记录?',
onOk: () => {
this._delOk(this.selectIds)
}
})
}
},
_delOk: async function(ids) {
const result = await soilAptitude.originalTemplateBalanceDelete(ids)
if (result) {
this.$Message.success('删除成功')
this._page()
}
}
}
}
</script>
<template>
<div>
<Modal v-model="showModal" :mask-closable="false" @on-visible-change="_visibleChange" width="900">
<p slot="header">{{modalTitle}}</p>
<div>
<Form ref="formObj" :id="formId" :model="formObj" :rules="ruleValidate" :label-width="100" inline>
<div>
<Form-item label="天平名称" prop="name" class="width-48">
<Input v-model="formObj.name" name="name" placeholder="请输入天平名称"/>
</Form-item>
<Form-item label="ip地址" prop="ipAddress" class="width-48">
<Input v-model="formObj.ipAddress" name="ipAddress"
placeholder="请输入ip地址"/>
</Form-item>
<Form-item label="采集命令" prop="command" class="width-48">
<Input v-model="formObj.command" name="command"
placeholder="请输入采集命令"/>
</Form-item>
<Form-item label="串口名称" prop="comName" class="width-48">
<Input v-model="formObj.comName" name="comName"
placeholder="请输入串口名称"/>
</Form-item>
<Form-item label="波特率" prop="baudRate" class="width-48">
<Input
v-model="formObj.baudRate"
@keydown.native="channelInputLimit"
name="baudRate"
type="number"
onmousewheel="return false"
placeholder="请输入波特率"
/>
</Form-item>
<Form-item label="是否是首选天平" prop="itemed" class="width-48">
<Select v-model="formObj.itemed" @change="_optionChange" placeholder="请选择">
<Option
v-for="(item,index) in options"
:key="index"
:label="item.value"
:value="index"
/>
</Select>
</Form-item>
</div>
</Form>
</div>
<div slot="footer">
<modal-footer ref="footerModal" @on-result-change="_footerResult" :footer="footerList"></modal-footer>
</div>
</Modal>
</div>
</template>
<script>
/**
* 添加编辑环境资质项目表
*/
import { soilAptitude } from '../../api'
export default {
components: {},
data() {
return {
activeName: '',
hideUserSel: true,
id: '',
modalTitle: '',
templateId: '',
formObj: {
name: ''
},
options: [
{
label: '否',
value: '否'
},
{
label: '是',
value: '是'
}
],
ruleValidate: {
name: [{ required: true, message: '指标名称不能为空', trigger: 'blur' }]
},
showModal: false,
footerList: [
{ name: '取消', type: '' },
{ name: '保存', type: 'primary' }
],
microbedList: [{ value: 0, name: '否' }, { value: 1, name: '是' }],
// 检测依据
testBasisData: [],
// 类别下拉数组
typeData: [],
// 检测科室
groupData: [],
groupName: '',
// 主检人
userData: [],
// 单位
unitData: [],
aptitudeData: [],
aptitude: '',
// testBasisName: '',
computeTypeList: [],
tester: '',
marksList: [],
detectionTypeList: [],
testItemData: [],
formId: ''
}
},
mounted() {
// 检测科室
// this._getUserGroup()
// 检测依据
// this._getTestBasisList()
// 资质
// this._getAptitudeList()
// this._getType()
},
methods: {
channelInputLimit(e) {
const key = e.key
// 不允许输入'e'和'.'
if (key === 'e' || key === '.') {
e.returnValue = false
return false
}
return true
},
inputChange(data) {
console.log('data>>>', data)
console.log('formObj>>>', this.formObj)
},
_selectJudgeType(data) {
this.formObj.microbed = data
},
_footerResult(name) {
switch (name) {
case '取消':
this._cancel()
break
case '保存':
this._ok()
break
}
},
_hideLoading() {
this.$refs.footerModal._hideLoading()
},
_open(id, formObj) {
this.formId = 'edit-form-template-config-balance'
this._hideLoading()
this.$refs.formObj.resetFields()
if (this.$string(formObj).isEmpty()) {
this.id = ''
this.templateId = id
this.modalTitle = '添加模板配置'
console.log('formObj>>>', this.formObj)
} else {
this.hideUserSel = true
this.id = formObj.id
this.formObj = formObj
this.modalTitle = '编辑模板配置'
console.log('formObj>>>', this.formObj)
}
this.showModal = true
},
// 获取表数据
_resultChange(msg) {
this.showModal = false
this.$refs.footerModal._hideLoading()
this.$Message.success(msg)
this.$emit('on-result-change')
this.$refs.footerModal._hideLoading()
},
_optionChange(data) {
this.formObj.itemed = data
console.log(this.formObj.itemed)
},
_ok() {
this.$refs.formObj.validate(valid => {
if (valid) {
const data = this.$serialize('edit-form-template-config-balance')
if (this.$string(this.id).isEmpty()) {
data.templateId = this.templateId
data.itemed = this.formObj.itemed
// 添加
this._save(data)
} else {
// 编辑
data.itemed = this.formObj.itemed
this._edit({ id: this.formObj.id, obj: data })
}
} else {
this.$refs.footerModal._hideLoading()
this.$Message.error('表单验证失败!')
}
})
},
_save: async function(data) {
console.log(data)
const result = await soilAptitude.originalTemplateBalanceSave(data)
console.log(result)
if (result) {
this._resultChange('添加成功!')
}
},
_edit: async function(data) {
const result = await soilAptitude.originalTemplateBalanceEdit(data)
if (result) {
this._resultChange('编辑成功!')
}
},
_cancel() {
this.showModal = false
this._hideLoading()
},
_visibleChange(data) {
if (!data && this.$showBtn('food-aptitude-item-step-edit')) {
this.$emit('on-result-change')
this.$refs.testStepByAptitude._clear()
}
}
}
}
</script>
......@@ -47,6 +47,7 @@
<SoilRecordTemplateEdit ref="editModal" @on-result-change="_search"></SoilRecordTemplateEdit>
<SoilRecordEdit ref="reportEdit" @on-result-change="_search"></SoilRecordEdit>
<ConfigTemplate ref="configTemplateModal" @on-result-change="_page"></ConfigTemplate>
<ConfigTemplateBalance ref="configTemplateBalanceModal" @on-result-change="_page"></ConfigTemplateBalance>
</div>
</template>
<script>
......@@ -55,8 +56,14 @@ import { soilAptitude } from '../../api'
import SoilRecordTemplateEdit from './SoilRecordTemplateEdit'
import SoilRecordEdit from './SoilRecordEdit'
import ConfigTemplate from './ConfigTemplate'
import ConfigTemplateBalance from './ConfigTemplateBalance'
export default {
components: { SoilRecordTemplateEdit, SoilRecordEdit, ConfigTemplate },
components: {
SoilRecordTemplateEdit,
SoilRecordEdit,
ConfigTemplate,
ConfigTemplateBalance
},
data() {
return {
pageColumns: [
......@@ -73,6 +80,7 @@ export default {
iconMsg: [
{ type: 'md-create', id: '', name: '编辑' },
{ type: 'ios-build-outline', id: '', name: '配置' },
{ type: 'ios-build-outline', id: '', name: '天平配置' },
{ type: 'ios-book', id: '', name: '预览/编辑' },
// { type: 'ios-download', id: '', name: '下载' },
{ type: 'md-remove-circle', id: '', name: '删除' }
......@@ -152,6 +160,9 @@ export default {
case '配置':
this._configData(data)
break
case '天平配置':
this._configBalanceData(data)
break
case '删除':
this._deleteByIds([data.id])
break
......@@ -160,6 +171,9 @@ export default {
_configData(data) {
this.$refs.configTemplateModal._open(data)
},
_configBalanceData(data) {
this.$refs.configTemplateBalanceModal._open(data)
},
_lookReport: async function(data) {
const result = await soilAptitude.originalTemplateGetById(data.id)
if (result) {
......
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