Commit 11496ea9 authored by 何鹏程's avatar 何鹏程

增加划拨功能

parent 244a959c
......@@ -79,3 +79,12 @@ export function unBindSiteToEmergencyCar(params) {
data: params
})
}
export function transferHospitalCar(params) {
return request({
url: '/api/team/car/transferHospitalCar',
method: 'POST',
data: params
})
}
\ No newline at end of file
......@@ -22,10 +22,27 @@
label="车辆使用单位(全称):"
prop="vehicleUsingUnit"
>
<el-input
<!-- <el-input
placeholder="请输入车辆使用单位"
v-model="dataForm.vehicleUsingUnit"
/> -->
<el-select
v-model="dataForm.vehicleUsingUnit"
placeholder="请选择车辆使用单位"
style="width: 100%"
filterable
remote
:loading="selectLoading"
:remote-method="remoteMethod"
:clearable="true"
>
<el-option
v-for="item in hospitalList"
:label="item.hospitalName"
:key="item.id"
:value="item.hospitalName"
/>
</el-select>
</el-form-item>
<el-form-item
label="单位性质:"
......@@ -318,6 +335,7 @@
<script>
import { getDic } from '../../../util/dict'
import { Auth } from '@/util/auth'
import { queryHospitalList } from '@/api/common'
import { saveOrUpdateEmergencyCar, queryTeamEmergencyCarInfo } from '@/api/emergencyCar'
import fileUpload from '../../../components/fileUpload.vue'
export default {
......@@ -380,9 +398,11 @@ export default {
remark: '',
specialDevice: []
},
hospitalList: [],
selectLoading: false,
rules: {
vehicleUsingUnit: [
{ required: true, message: '请输入车辆使用单位' },
{ required: true, message: '请选择车辆使用单位' },
],
emergencyCarUrl: [
{ required: true, message: '请上传车辆图片' },
......@@ -448,6 +468,10 @@ export default {
this.areaList = res.area
this.vechieSpecialPurposeList = res.vechie_special_purpose
})
//获取可选择的医院
queryHospitalList().then(res => {
this.hospitalList = res.respData
})
console.log(process.env.NODE_ENV)
},
methods: {
......@@ -492,6 +516,7 @@ export default {
...res.respData,
specialDevice: res.respData.specialDevice ? res.respData.specialDevice.split(',') : []
}
this.remoteMethod(res.respData.vehicleUsingUnit)
this.fileList = res.respData.fileList || []
this.$nextTick(() => {
this.loading = false
......@@ -532,7 +557,14 @@ export default {
this.$message.error('上传头像图片大小不能超过 2MB!');
}
return isJPG && isLt2M;
}
},
remoteMethod(query) {
this.selectLoading = true;
queryHospitalList(query).then(res => {
this.hospitalList = res.respData
this.selectLoading = false;
})
},
}
}
</script>
......
<template>
<el-dialog
title="划拨"
:visible.sync="dialogVisible"
width="500px"
@closed="closedHandler"
:close-on-click-modal="false"
>
<el-form
ref="dataForm"
:model="dataForm"
size="small"
label-width="150px"
:rules="rules"
v-loading="loading"
>
<el-form-item
label="划拨车辆使用单位"
prop="vehicleUsingUnit"
>
<el-select
v-model="dataForm.vehicleUsingUnit"
placeholder="请选择车辆使用单位"
style="width: 100%"
filterable
remote
:loading="selectLoading"
:remote-method="remoteMethod"
>
<el-option
v-for="item in hospitalList"
:label="item.hospitalName"
:key="item.id"
:value="item.hospitalName"
/>
</el-select>
</el-form-item>
</el-form>
<span
slot="footer"
class="dialog-footer"
>
<el-button
size="small"
@click="dialogVisible = false"
>取 消</el-button>
<el-button
type="primary"
size="small"
@click="submitForm()"
>确 定</el-button>
</span>
</el-dialog>
</template>
<script>
import { queryHospitalList } from '@/api/common'
import { transferHospitalCar } from '@/api/emergencyCar'
export default {
data() {
return {
dialogVisible: false,
loading: false,
selectLoading: false,
row: {},
dataForm: {
vehicleUsingUnit: '',
},
hospitalList: [],
rules: {
vehicleUsingUnit: [
{ required: true, message: '请选择车辆使用单位' },
],
}
}
},
mounted() {
//获取可选择的医院
queryHospitalList().then(res => {
this.hospitalList = res.respData
})
},
methods: {
init(row) {
this.dialogVisible = true
this.loading = true
this.row = row
this.$nextTick(() => {
this.loading = false
this.$refs.dataForm.clearValidate()
})
},
submitForm() {
this.$refs.dataForm.validate((valid) => {
if (valid) {
const params = {
...this.dataForm,
id: this.row.id
}
transferHospitalCar(params).then(res => {
if (res.msg === 201) {
this.dialogVisible = false
this.$message.success('操作成功')
this.$emit('subsucc')
} else {
this.$message.error(res.content)
}
})
}
})
},
remoteMethod(query) {
this.selectLoading = true;
queryHospitalList(query).then(res => {
this.hospitalList = res.respData
this.selectLoading = false;
})
},
closedHandler() {
this.$refs.dataForm.resetFields()
}
}
}
</script>
<style>
</style>
\ No newline at end of file
......@@ -222,6 +222,11 @@
v-if="scope.row.siteId && checkPermission() && !isRoleDisabled"
@click="unboundHandler(scope.row.id)"
>解绑</el-link>
<el-link
type="primary"
v-if="checkPermission()"
@click="transferHandler(scope.row)"
>划拨</el-link>
</template>
</el-table-column>
</el-table>
......@@ -234,6 +239,10 @@
ref="bindSiteDialog"
@subsucc="search"
/>
<TransferDialog
ref="transferDialog"
@subsucc="search"
/>
</div>
</div>
</div>
......@@ -243,6 +252,7 @@ import { tableDataMixin } from '../../common/js/mixin'
import { roleMixin } from '../../common/js/roleMixin'
import EmergencyCarDialog from './components/emergencyCarDialog.vue'
import BindSiteDialog from './components/bindSiteDialog.vue'
import TransferDialog from './components/transferDialog'
import { queryEmergencyCarPageList, deleteEmergencyCar, toExamineEmergencyCar, unBindSiteToEmergencyCar } from '@/api/emergencyCar'
import { exportEmergencyResources } from '@/api/common'
import { queryEmergencySiteList } from '@/api/site'
......@@ -252,7 +262,8 @@ export default {
mixins: [tableDataMixin, roleMixin],
components: {
EmergencyCarDialog,
BindSiteDialog
BindSiteDialog,
TransferDialog
},
data() {
......@@ -475,6 +486,10 @@ export default {
})
})
},
transferHandler(row) {
this.$refs.transferDialog.init(row)
console.log(row)
}
}
}
......
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