Browse Source

Merge branch 'zq-0627' of gitea.intra.yunpaper.com:zhangqi/acupuncture_admin into zq-0627

pull/1/head
zq 2 weeks ago
parent
commit
501e58375f
  1. 2
      src/components/GuipSelect.vue
  2. 2
      src/views/HomeView.vue
  3. 353
      src/views/HosInformation.vue

2
src/components/GuipSelect.vue

@ -3,7 +3,7 @@
:class="[{ 'column': column }, { 'w510': addClass == 'w510' }, { 'w388': addClass == 'w388' }, 'form-item']" :class="[{ 'column': column }, { 'w510': addClass == 'w510' }, { 'w388': addClass == 'w388' }, 'form-item']"
:label="label" :prop="prop" :rules="rules"> :label="label" :prop="prop" :rules="rules">
<p v-if="desc" class="desc_right">{{ desc }}</p> <p v-if="desc" class="desc_right">{{ desc }}</p>
<el-select :style="{ width: width }" :placeholder="placeholder1" @change="handleChange" v-model="selectedValue" <el-select :style="{ width: width }" :placeholder="placeholder1" @change="handleChange" v-model="selectedValue" :disabled="disabled"
v-bind="$attrs"> v-bind="$attrs">
<el-option v-for="item in processedOptions" :key="getItemValue(item)" :label="getItemLabel(item)" <el-option v-for="item in processedOptions" :key="getItemValue(item)" :label="getItemLabel(item)"
:disabled="item.disabled" :value="getItemValue(item)"> :disabled="item.disabled" :value="getItemValue(item)">

2
src/views/HomeView.vue

@ -397,7 +397,7 @@ export default {
addHospital(item) { addHospital(item) {
this.$router.push({ this.$router.push({
name: '医院信息', name: '医院信息',
query: { doctor_id: item.doctor_id } query: { doctor_id: item.id }
}) })
}, },
editDoctor(item) { editDoctor(item) {

353
src/views/HosInformation.vue

@ -9,69 +9,62 @@
<GuipFormItem column="column" class="mb24" label="出诊医院省市" :required="true"> <GuipFormItem column="column" class="mb24" label="出诊医院省市" :required="true">
<div class="flex-between" slot="formDom"> <div class="flex-between" slot="formDom">
<div class="short-width"> <div class="short-width">
<GuipSelect width="100%" v-model="form.province" :options="options_province" <GuipSelect width="100%" v-model="form.province" :options="options_province" :disabled="(depart_id && doctor_id)?true:false"
placeholder="选择省份" @change="provinceChange"> placeholder="选择省份" @change="provinceChange">
</GuipSelect> </GuipSelect>
</div> </div>
<div class="short-width"> <div class="short-width">
<GuipSelect width="100%" v-model="form.city" :options="options_city" <GuipSelect width="100%" v-model="form.city" :options="options_city" :disabled="(depart_id && doctor_id)?true:false"
placeholder="选择城市"> placeholder="选择城市">
</GuipSelect> </GuipSelect>
</div> </div>
</div> </div>
</GuipFormItem> </GuipFormItem>
<GuipFormItem column="column" class="mb24" label="出诊医院名称" :required="true" style="margin-bottom: 0px;"> <GuipFormItem column="column" class="mb24" label="出诊医院名称" :required="true" style="margin-bottom: 0px;">
<!-- <GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.company_name" <GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.h_realname" :disabled="true" v-if="depart_id && doctor_id" prop="h_realname"></GuipInput>
prop="company_name" placeholder="请输入">
<img src="@/assets/input_search_ic.svg" slot="suffix" @click="handleClear" />
</GuipInput> -->
<!-- <GuipSelectFilter :options="hosipitalList"></GuipSelectFilter> -->
</GuipFormItem> </GuipFormItem>
<div class="mb24" style="margin-top:-24px;"> <div class="mb24" style="margin-top:-24px;" v-if="!depart_id && doctor_id">
<el-autocomplete <el-autocomplete
v-model="hospitalSearchState" v-model="hospitalSearchState"
style="width: 100%"
:fetch-suggestions="queryHospital" :fetch-suggestions="queryHospital"
placeholder="请输入医院名称或地址" placeholder="请输入医院名称或地址"
ref="hospitalAutocomplete" ref="hospitalAutocomplete"
:popper-class="((hospitalSearchFlag || hospitalRestaurants.length > 0) ? '' : ' el-autocomplete-noloading')"
@select="hospitalHandleSelect"> @select="hospitalHandleSelect">
<template #append> <template #append>
<el-button <el-button icon="el-icon-search" @click="handleSearch" style="padding: 12px;"></el-button>
icon="el-icon-search"
@click="handleSearch"
style="padding: 12px;"></el-button>
</template> </template>
</el-autocomplete> </el-autocomplete>
</div> </div>
<GuipFormItem column="column" class="mb24" label="医院简称"> <GuipFormItem column="column" class="mb24" label="医院简称">
<span slot="formRight" class="desc">方便患者记忆非必填</span> <span slot="formRight" class="desc">方便患者记忆非必填</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.h_name" <GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.h_shortname" prop="h_shortname" placeholder="请输入" />
prop="h_name" placeholder="请输入" />
</GuipFormItem> </GuipFormItem>
<GuipFormItem column="column" class="mb24" label="所在科室" :required="true"> <GuipFormItem column="column" class="mb24" label="所在科室">
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.depart_name" <GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.depart_name"
prop="depart_name" placeholder="请输入" /> prop="depart_name" :placeholder="(depart_id && doctor_id)?'无':'请输入'" :disabled="(depart_id && doctor_id)?true:false"/>
</GuipFormItem> </GuipFormItem>
</div> </div>
<div class="flex-line"></div> <div class="flex-line"></div>
<div class="flex-right"> <div class="flex-right">
<GuipFormItem column="column" class="mb24"> <GuipFormItem column="column" class="mb24" v-if="departIsFixed != -1">
<div slot="formLeft" class="form-top-icon">医保定点</div> <div slot="formLeft" class="form-top-icon">医保定点</div>
<div class="flex" slot="formDom" style="padding: 9px 0px;"> <div class="flex" slot="formDom" style="padding: 9px 0px;">
<GuipSwitch :modelValue="form.is_fixed" @change="onSwitchChange" activeText="非医保定点" <GuipSwitch :model-value="departIsFixed" @change="onSwitchChange" activeText="医保定点" inactiveText="非医保定点" :active-value="true" :inactive-value="false">
inactiveText="非医保定点" active-value="1" inactive-value="0">
</GuipSwitch> </GuipSwitch>
</div> </div>
</GuipFormItem> </GuipFormItem>
<GuipFormItem column="column" class="mb24" label="使用功能"> <GuipFormItem column="column" class="mb24" label="使用功能">
<!-- <el-checkbox-group slot="formDom" v-model="form.type" @change="validateSelection" class="checkboxGroup"> <el-checkbox-group slot="formDom" v-model="departType" @change="validateSelection" class="checkboxGroup">
<div class="flex"> <div class="flex">
<el-checkbox :label="2" >医生名片基础功能不可取消</el-checkbox>
<el-checkbox :label="0">患者预约</el-checkbox> <el-checkbox :label="0">患者预约</el-checkbox>
<el-checkbox :label="1">仅项目计数</el-checkbox>
</div> </div>
<el-checkbox :label="1">项目计数</el-checkbox> <el-checkbox :label="2" >仅医生名片</el-checkbox>
</el-checkbox-group> --> </el-checkbox-group>
</GuipFormItem> </GuipFormItem>
<GuipFormItem column="column" class="" label="就诊提醒"> <GuipFormItem column="column" class="" label="就诊提醒">
<div slot="formRight" class="desc">就诊前的注意事项非必填</div> <div slot="formRight" class="desc">就诊前的注意事项非必填</div>
@ -107,11 +100,11 @@
<div class="flex-line"></div> <div class="flex-line"></div>
<div class="flex-right" v-if="form.worktimes"> <div class="flex-right" v-if="form.worktimes">
<GuipFormItem column="column" label="每周出诊安排" :required="true"> <GuipFormItem column="column" label="每周出诊安排" :required="true">
<div class="flex weekPlan" slot="formDom"> <div class="flex weekPlan" slot="formDom">
<GuipSelect v-for="day in weekDays" :key="day.id" v-model="form.worktimes[day.id].plan" <GuipSelect v-for="day in weekDays" :key="day.id" v-model="form.worktimes[day.id].plan" :options="options_weekPlan" :label="day.name" placeholder="休息"></GuipSelect>
:options="options_weekPlan" @change="weekChange()" :label="day.name" placeholder="休息">
</GuipSelect>
</div> </div>
</GuipFormItem> </GuipFormItem>
</div> </div>
</div> </div>
@ -139,7 +132,7 @@
<GuipFormItem column="column" class="mb24" label="开放预约" :required="true"> <GuipFormItem column="column" class="mb24" label="开放预约" :required="true">
<span class="desc" slot="formRight">患者可提前多久约号</span> <span class="desc" slot="formRight">患者可提前多久约号</span>
<GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.visit_day" <GuipInput slot="formDom" ref="GuipInput" column="column" v-model="form.visit_day"
prop="visit_day" placeholder="请输入" unit="小时"> prop="visit_day" placeholder="请输入" unit="">
<span slot="prependshow">提前</span> <span slot="prependshow">提前</span>
</GuipInput> </GuipInput>
</GuipFormItem> </GuipFormItem>
@ -194,8 +187,7 @@
</GuipInput> </GuipInput>
</div> </div>
</div> </div>
<GuipTable :tableData="projectList" :key="tableKey" style="width: 100%" ref="multipleTable" <GuipTable :tableData="projectList" :key="tableKey" style="width: 100%" ref="multipleTable" @selection-change="handleSelectionChange" :loading="loading">
@selection-change="handleSelectionChange" :loading="loading" max-height="600px">
<el-table-column type="selection" label="选择" width="80"></el-table-column> <el-table-column type="selection" label="选择" width="80"></el-table-column>
<el-table-column prop="name" label="项目名称" min-width="185"></el-table-column> <el-table-column prop="name" label="项目名称" min-width="185"></el-table-column>
<el-table-column prop="price" label="项目价格" min-width="155"> <el-table-column prop="price" label="项目价格" min-width="155">
@ -225,10 +217,10 @@
</template> </template>
</el-table-column> --> </el-table-column> -->
</GuipTable> </GuipTable>
<el-pagination background @size-change='handleSizeChange' @current-change='handleCurrentChange' <!-- <el-pagination background @size-change='handleSizeChange' @current-change='handleCurrentChange'
:current-page="currentPage" :page-size=pageSize layout="prev, pager, next,jumper" :current-page="currentPage" :page-size=pageSize layout="prev, pager, next,jumper"
:total="projectList.length"> :total="projectList.length">
</el-pagination> </el-pagination> -->
</el-form> </el-form>
</div> </div>
<div class="siteMessage flex-common mt12" id="siteMessage5"> <div class="siteMessage flex-common mt12" id="siteMessage5">
@ -254,8 +246,7 @@
</div> </div>
</div> </div>
<GuipTable :tableData="courseList" style="width: 100%" ref="multipleTable1" max-height="600px" <GuipTable :tableData="courseList" style="width: 100%" ref="multipleTable1" @selection-change="handleSelectionChange1" :loading="loading1" :key="tableKey1" >
@selection-change="handleSelectionChange1" :loading="loading1" :key="tableKey1" >
<el-table-column type="selection" label="选择" width="80"></el-table-column> <el-table-column type="selection" label="选择" width="80"></el-table-column>
<el-table-column prop="name" label="套餐名称" min-width="225"></el-table-column> <el-table-column prop="name" label="套餐名称" min-width="225"></el-table-column>
<el-table-column prop="price" label="套餐价格" min-width="125"></el-table-column> <el-table-column prop="price" label="套餐价格" min-width="125"></el-table-column>
@ -279,10 +270,10 @@
</template> </template>
</el-table-column> </el-table-column>
</GuipTable> </GuipTable>
<el-pagination background @size-change='handleSizeChange' @current-change='handleCurrentChange' <!-- <el-pagination background @size-change='handleSizeChange' @current-change='handleCurrentChange'
:current-page="currentPage" :page-size=pageSize layout="prev, pager, next,jumper" :current-page="currentPage" :page-size=pageSize layout="prev, pager, next,jumper"
:total="courseList.length"> :total="courseList.length">
</el-pagination> </el-pagination> -->
</el-form> </el-form>
</div> </div>
<GuipDialog :dialogVisible="dialogVisible" :title="dialogTitle" :show-close-button="true" width="762" <GuipDialog :dialogVisible="dialogVisible" :title="dialogTitle" :show-close-button="true" width="762"
@ -340,6 +331,8 @@ export default {
data() { data() {
return { return {
doctorId: '', doctorId: '',
depart_id:false,
doctor_id:false,
dialogType: '1', dialogType: '1',
tableKey:Date.now(), tableKey:Date.now(),
tableKey1:Date.now(), tableKey1:Date.now(),
@ -352,9 +345,9 @@ export default {
nameRules: [{ required: true, message: '分组名称不得为空', trigger: 'blur' }], nameRules: [{ required: true, message: '分组名称不得为空', trigger: 'blur' }],
dialogTitle: '批量录入项目', dialogTitle: '批量录入项目',
currentPage: 1, currentPage: 1,
pageSize: 10, pageSize: 1000,
currentPage1: 1, currentPage1: 1,
pageSize1: 10, pageSize1: 1000,
loading: false, loading: false,
loading1: false, loading1: false,
selectedRows: [],// selectedRows: [],//
@ -363,48 +356,17 @@ export default {
isIndeterminate1: false, isIndeterminate1: false,
projectSearchId: 'all', projectSearchId: 'all',
projectSearchName: '', projectSearchName: '',
hospitalRestaurants: [], hospitalRestaurants: [],
hospitalSearchState: '', hospitalSearchState: '',
hospitalSearchFlag: false, hospitalSearchFlag: false,
hospitalSearchTimeout: false, hospitalSearchTimeout: false,
departIsFixed:-1,
projectList: [ projectList: [],
{ projectTagData: [],
name: '针灸',
price: '88',
group: '针灸1',
time: '2077 - 12 - 20',
status: true,
id: '1'
},
{
name: '拔罐',
price: '188',
group: '针灸2',
time: '2077 - 12 - 20',
status: true,
id: '2'
},
{
name: '火刺',
price: '55',
group: '针灸1',
time: '2077 - 12 - 20',
status: true,
id: '3'
},
],
projectTagData: [
{
name: '全部分类',
id: '0'
},
],
courseList: [], courseList: [],
selectAll: false, selectAll: false,
selectAll1: false, selectAll1: false,
departType:[],
numSettingForm: { numSettingForm: {
times: '', times: '',
hours: '', hours: '',
@ -482,25 +444,22 @@ export default {
depart_name: '', depart_name: '',
address:"", address:"",
afternoon_worktime:"", afternoon_worktime:"",
depart_id:"1", depart_id:"0",
h_name:"", h_name:"",
h_pos:"", h_pos:"",
hid:"0", hid:"0",
is_fixed:'0', is_fixed:'0',
morning_worktime:"", morning_worktime:"",
h_shortname:'',
notice:"", notice:"",
time_unit:"0", time_unit:"0",
time_unit_num:"0", time_unit_num:"0",
treat_expire:"0", treat_expire:"0",
visit_day:"0" visit_day:"0",
search_province:"",
search_city:"",
}, },
siteFormrules: { siteFormrules: {
depart_name: [
{ required: true, message: '请输入科室信息', trigger: 'blur' }
],
h_name: [
{ required: true, message: '请输入出诊医院信息', trigger: 'blur' }
],
}, },
siteForm1: { siteForm1: {
domain_set: '', domain_set: '',
@ -510,15 +469,12 @@ export default {
isApprove: '', isApprove: '',
phone: '' phone: ''
}, },
siteFormrules1: { siteFormrules1: {
domain_source: [ domain_source: [
{ required: true, message: '请输入站点简称', trigger: 'blur' } { required: true, message: '请输入站点简称', trigger: 'blur' }
] ]
}, },
// hosipitalList:[] // hosipitalList:[]
hosipitalList: [ hosipitalList: [
{ label: '选项1', value: '1' }, { label: '选项1', value: '1' },
{ label: '选项2', value: '2' }, { label: '选项2', value: '2' },
@ -533,15 +489,34 @@ export default {
}, },
async mounted() { async mounted() {
const { depart_id, doctor_id } = this.$route.query; // doctorId const { depart_id, doctor_id } = this.$route.query; // doctorId
if(doctor_id) this.doctor_id = doctor_id;
if (doctor_id && depart_id) { if (doctor_id && depart_id) {
// //
this.depart_id = depart_id; this.depart_id = depart_id;
this.doctor_id = doctor_id; this.doctor_id = doctor_id;
await this.fetchDoctorData()
console.log(this.doctor_id)
await this.getAreaData() await this.getAreaData()
this.fetchDoctorData()
this.fetchPackData() this.fetchPackData()
this.fetchProjectData() this.fetchProjectData()
this.geHosAdress() this.geHosAdress()
}else{
await this.getAreaData()
}
},
watch: {
'$route.query': {
immediate: true,
deep: true,
handler(newVal) {
this.doctor_id = newVal.doctor_id;
this.depart_id = newVal.depart_id;
this.getAreaData();
this.fetchDoctorData();
this.fetchPackData();
this.fetchProjectData();
this.geHosAdress();
}
} }
}, },
computed: { computed: {
@ -554,21 +529,22 @@ export default {
handleSearch() { handleSearch() {
if(this.hospitalSearchFlag) return if(this.hospitalSearchFlag) return
this.hospitalSearchFlag = true this.hospitalSearchFlag = true
this.$refs.hospitalAutocomplete.$refs.suggestions.loading = true if(!this.hospitalSearchState.trim()) {
this.queryHospital(this.hospitalSearchState, (results) => { this.$message.error('医院名称或地址不能为空');
console.log(results) this.hospitalSearchFlag = false
return
this.$refs.hospitalAutocomplete.$refs.suggestions.loading = false }
this.$refs.hospitalAutocomplete.hideLoading = true this.getInternetHospital(this.hospitalSearchState)
this.$refs.hospitalAutocomplete.$refs.suggestions.suggestions = results
console.log(this.hospitalSearchState)
this.$refs.hospitalAutocomplete.getData(this.hospitalSearchState)
})
}, },
hospitalHandleSelect(item) { hospitalHandleSelect(item) {
console.log(item); this.form.h_realname = item.value
}, this.form.search_province = item.province
queryHospital(queryString, cb) { this.form.search_city = item.city
this.form.address = item.address
this.form.h_pos = item.location.lat + ',' + item.location.lng
console.log(item)
},
getInternetHospital(queryString) {
if(!this.hospitalSearchFlag) return; if(!this.hospitalSearchFlag) return;
this.hospitalSearchTimeout = setTimeout(function(){ this.hospitalSearchTimeout = setTimeout(function(){
this.hospitalSearchFlag = false this.hospitalSearchFlag = false
@ -582,22 +558,28 @@ export default {
this.hospitalSearchFlag = false this.hospitalSearchFlag = false
clearTimeout(this.hospitalSearchTimeout) clearTimeout(this.hospitalSearchTimeout)
if(response.code !== 0) { if(response.code !== 0) {
cb([]); this.hospitalRestaurants = []
this.$refs.hospitalAutocomplete.getData(this.hospitalSearchState)
this.$message.error(response.msg); this.$message.error(response.msg);
return return
} }
this.hospitalRestaurants = Object.values(response.data) this.hospitalRestaurants = Object.values(response.data)
var restaurants = this.hospitalRestaurants; this.$refs.hospitalAutocomplete.activated = true
var results = queryString ? restaurants : []; this.$refs.hospitalAutocomplete.getData(this.hospitalSearchState)
cb(results);
if(this.hospitalRestaurants.length <= 0) this.$message.error('未查询相关信息');
}).catch(error => { }).catch(error => {
this.hospitalSearchFlag = false this.hospitalSearchFlag = false
clearTimeout(this.hospitalSearchTimeout) clearTimeout(this.hospitalSearchTimeout)
cb([]); this.hospitalRestaurants = []
console.error(error, 'error') console.error(error, 'error')
}) })
}, },
queryHospital(queryString, cb) {
console.log(queryString)
cb(this.hospitalRestaurants);
},
random() { random() {
var randomNumber = Math.random(); var randomNumber = Math.random();
return randomNumber return randomNumber
@ -621,17 +603,17 @@ export default {
console.error(error, 'error') console.error(error, 'error')
}) })
}, },
fetchDoctorData() { async fetchDoctorData() {
this.$http('POST', '/api/admin/get_depart_info', { this.$http('POST', '/api/admin/get_depart_info', {
depart_id: this.depart_id, depart_id: this.depart_id,
doctor_id: this.doctor_id doctor_id: this.doctor_id
}).then(response => { }).then(response => {
this.form = { ...this.form, ...response.data, this.form = { ...this.form, ...response.data,
type:response.type ? [Number(response.type)] : [2], 'morning_worktime':response.data.morning_worktime ? response.data.morning_worktime.split('-'):'',
'morning_worktime':response.data.morning_worktime.split('-'), 'afternoon_worktime':response.data.afternoon_worktime ? response.data.afternoon_worktime.split('-'):''
'afternoon_worktime':response.data.afternoon_worktime.split('-')
} }
this.departType = (response.data.type || response.data.type === 0 || response.data.type === "0") ? [Number(response.data.type)] : []
this.departIsFixed = response.data.is_fixed == "1" ? true : false
this.getAreaData(this.form.province) this.getAreaData(this.form.province)
}).catch(error => { }).catch(error => {
console.error(error, 'error') console.error(error, 'error')
@ -657,16 +639,26 @@ export default {
}, },
// //
fetchProjectData() { fetchProjectData() {
this.$http('POST', '/api/admin/get_project_list', { var param = {
depart_id: this.depart_id, depart_id: this.depart_id,
doctor_id: this.doctor_id doctor_id: this.doctor_id,
}).then(response => { name:this.projectSearchName,
classify_id:this.projectSearchId
}
this.$http('POST', '/api/admin/get_project_list', param).then(response => {
if(response.code == 0){ if(response.code == 0){
this.loading = false this.loading = false
this.$nextTick(()=>{ this.$nextTick(()=>{
if(response.data.classify) {
this.projectTagData = response.data.classify;// this.projectTagData = response.data.classify;//
if(response.data.list && response.data.list.length > 0) {
this.projectList = Object.values(response.data.list);// this.projectList = Object.values(response.data.list);//
}else{
this.projectList = []
}
this.tableKey = Date.now(); // this.tableKey = Date.now(); //
}
// this.$set('projectList',Object.values(response.data.list)) // this.$set('projectList',Object.values(response.data.list))
// this.$set('projectTagData',response.data.classify) // this.$set('projectTagData',response.data.classify)
}) })
@ -686,13 +678,8 @@ export default {
}) })
}, },
validateSelection(val) { validateSelection(val) {
// this.departType = []
if (!val.includes(2)) { if(val.length > 0) this.departType[0] = val[val.length-1]
this.$nextTick(() => {
this.form.type = [...val, 2];
this.$message.warning('基础功能不可取消');
});
}
}, },
selectTag(item) { selectTag(item) {
if(item == 'all'){ if(item == 'all'){
@ -701,33 +688,18 @@ export default {
this.projectSearchId = item.id; this.projectSearchId = item.id;
} }
// //
// this.getFilterProject() this.fetchProjectData()
}, },
getFilterProject(){ getFilterProject(){
// this.fetchProjectData()
this.$http('POST', '/supernew/ajax_get_type_batch_list', {
//
projectid:this.projectSearchId == 'all' ? '' : this.projectSearchId,
//
projectSearchName:this.projectSearchName
}).then(response => {
this.projectTagData = response.data;
}).catch(error => {
console.error(error, 'error')
})
}, },
// //
changePrice(row) { changePrice(row) {
if (row.sort) {
this.editorProjectInfo({ price: row.price, project_id: row.id }) this.editorProjectInfo({ price: row.price, project_id: row.id })
}
}, },
// //
changeClassify(row) { changeClassify(row) {
if (row.sort) {
this.editorProjectInfo({ classify_id: row.classify_id, project_id: row.id }) this.editorProjectInfo({ classify_id: row.classify_id, project_id: row.id })
}
}, },
editorProjectInfo(props) { editorProjectInfo(props) {
this.$http('POST', '/api/admin/edit_project', { this.$http('POST', '/api/admin/edit_project', {
@ -792,11 +764,17 @@ export default {
} else if (this.dialogVisible) {// } else if (this.dialogVisible) {//
let data = JSON.parse(JSON.stringify(this.$refs.channelProject.form)); let data = JSON.parse(JSON.stringify(this.$refs.channelProject.form));
let str = data.project_contents; let str = data.project_contents;
data.project_contents = str.replace(/\n/g, ' ').trim(); data.project_contents = str.trim();
if(!data.project_contents || (data.groupType == '1' && !data.classify_id) || (data.groupType == '2' && !data.classify_name)){ if((data.groupType == '1' && !data.classify_id) || (data.groupType == '2' && !data.classify_name)){
this.$Message.info('请填写完整信息!') this.$Message.info('分组不能为空')
return;
}
if(!data.project_contents) {
this.$Message.info('录入项目内容不能为空!')
return;
} }
else{
this.$http('POST', '/api/admin/mitil_add_project', { this.$http('POST', '/api/admin/mitil_add_project', {
depart_id: this.depart_id, depart_id: this.depart_id,
doctor_id: this.doctor_id, doctor_id: this.doctor_id,
@ -812,7 +790,6 @@ export default {
this.$Message.error(error || '错误!') this.$Message.error(error || '错误!')
}) })
} }
}
}, },
// //
handleCancel() { handleCancel() {
@ -824,12 +801,18 @@ export default {
console.log(data, 'data098908090'); console.log(data, 'data098908090');
}, },
onSwitchChange1(row) { onSwitchChange1(row) {
row.status = !row.status; row.status = row.status == 0 ? 1 : 0;
this.$set(this.projectList, row) this.$set(this.projectList, row)
this.editorProjectInfo({ status: row.status, project_id: row.id })
}, },
onSwitchChange2(row) { onSwitchChange2(row) {
row.status = !row.status; console.log(row.status)
var tmpstatus = row.status == 1 ? 0 : 1
this.$set(this.courseList, row) this.$set(this.courseList, row)
this.selectedRows1 = [row]
this.batchOperate(tmpstatus, 'group')
}, },
handleClick1(row) { handleClick1(row) {
console.log(row); console.log(row);
@ -1005,21 +988,37 @@ export default {
this.selectedItem = { ...item }; this.selectedItem = { ...item };
console.log(this.selectedItem, 'this.selectedItem===='); console.log(this.selectedItem, 'this.selectedItem====');
}, },
//
domain_radioChange(type) {
console.log(type, '--');
},
onSwitchChange(data) { onSwitchChange(data) {
this.form.is_fixed = data ? 1 : 0
this.departIsFixed = data
console.log(data, '---'); console.log(data, '---');
}, },
updateHosInfo(props){ updateHosInfo(props, url){
console.log(props) if(this.doctor_id) props.doctor_id = this.doctor_id;
this.$http('POST', '/api/admin/set_hospital_depart', {
if(this.doctor_id && this.depart_id) {
props.doctor_id = this.doctor_id;
props.depart_id = this.depart_id;
props.hid = this.form.hid;
}
this.$http('POST', url, {
...props ...props
}).then(response => { }).then(response => {
if(response.code == 0){ if(response.code == 0){
this.$Message.success('更新成功') this.$Message.success('更新成功')
if(this.doctor_id && !this.depart_id) {
var that = this
setTimeout(()=>{
that.$router.push({
name: '医院信息',
query: { doctor_id: this.doctor_id, depart_id: response.data.depart_id }
})
},1000)
} }
return;
}
this.$Message.error(response.msg)
}).catch(error => { }).catch(error => {
console.error(error, 'error') console.error(error, 'error')
}) })
@ -1027,33 +1026,66 @@ export default {
submitForm(form) { submitForm(form) {
this.$refs[form].validate((valid) => { this.$refs[form].validate((valid) => {
console.log(this[form], '======formxinxi8', '=============='+form); console.log(this[form], '======formxinxi8', '=============='+form);
var rqurl = '';
if (valid) { if (valid) {
alert('提交成功!');
let props = {} let props = {}
switch(form){ switch(form){
case 'siteForm1': case 'siteForm1':
var worktimesArray = Object.entries(this.form.worktimes).map(([key, value]) => ({
type: parseInt(key),
plan: value.plan
}));
props={ props={
morning_worktime:form.morning_worktime.join('-'), morning_worktime:this.form.morning_worktime.join('-'),
afternoon_worktime:form.afternoon_worktime.join('-') afternoon_worktime:this.form.afternoon_worktime.join('-'),
week_visit_plan:JSON.stringify(worktimesArray),
} }
rqurl = "/api/admin/set_depart_worktime";
break; break;
case 'siteForm': case 'siteForm':
if(this.doctor_id && !this.depart_id) {
if(!this.form.search_province.trim() || !this.form.search_city.trim() || !this.form.address.trim() || !this.form.h_pos.trim()) {
this.$Message.info('请选择搜索结果下拉中的出诊医院')
return;
}
}
if(this.departType.length <= 0) {
this.$Message.info('请选择使用功能')
return;
}
props={ props={
is_fixed:this.form.is_fixed, is_fixed:this.form.is_fixed,
type:form.type, type:this.departType[0],
notice:form.notice notice:this.form.notice,
h_shortname:this.form.h_shortname
}
if(this.doctor_id && !this.depart_id) {
if(this.departType.length <= 0) {
this.$Message.info('请选择使用功能')
return;
} }
props = this.form
props.type = this.departType[0]
}
rqurl = "/api/admin/set_hospital_depart";
break; break;
case 'numSettingForm': case 'numSettingForm':
props={ props={
time_unit:form.time_unit, time_unit:this.form.time_unit,
time_unit_num:form.time_unit_num, time_unit_num:this.form.time_unit_num,
visit_day:form.visit_day, visit_day:this.form.visit_day,
treat_expire:form.treat_expire, treat_expire:this.form.treat_expire,
} }
rqurl = "/api/admin/set_visit_num";
break; break;
} }
this.updateHosInfo(props) this.updateHosInfo(props, rqurl)
} else { } else {
return false; return false;
} }
@ -1070,11 +1102,14 @@ export default {
} }
</script> </script>
<style lang="scss"> <style lang="scss">
.el-autocomplete-noloading{
display: none !important;
}
.weekPlan { .weekPlan {
display: grid; display: grid;
grid-gap: 12px 44px; grid-gap: 12px 44px;
grid-template-columns: repeat(2, 1fr); grid-template-columns: repeat(2, 1fr);
} }
#siteMessage4 ::v-deep .el-form-item { #siteMessage4 ::v-deep .el-form-item {
margin-bottom: 0 !important; margin-bottom: 0 !important;

Loading…
Cancel
Save