This commit is contained in:
曹辉 2023-03-31 10:03:14 +08:00
parent be89915243
commit f4aa91d415
3 changed files with 198 additions and 634 deletions

View File

@ -13,22 +13,17 @@
v-model="queryParams.nurseStationId" v-model="queryParams.nurseStationId"
placeholder="请选择护理站" placeholder="请选择护理站"
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
@change='handleQuery' @change="handleQuery"
> >
<el-option <el-option
v-for="item in handstationlist" v-for="item in handstationlist"
:key="item.id" :key="item.id"
:label="item.nurseStationName" :label="item.nurseStationName"
:value="item.id" :value="item.id"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="所属科室" prop="departmentName" style="margin-left: 25px">
label="所属科室"
prop="departmentName"
style="margin-left: 25px"
>
<el-input <el-input
v-model="queryParams.departmentName" v-model="queryParams.departmentName"
placeholder="请输入所属科室" placeholder="请输入所属科室"
@ -45,19 +40,10 @@
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -67,8 +53,7 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['system:person:add']" v-hasPermi="['system:person:add']"
>新增</el-button >新增</el-button>
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -79,8 +64,7 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['system:person:edit']" v-hasPermi="['system:person:edit']"
>修改</el-button >修改</el-button>
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -91,8 +75,7 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['system:person:remove']" v-hasPermi="['system:person:remove']"
>删除</el-button >删除</el-button>
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@ -102,15 +85,10 @@
size="mini" size="mini"
@click="handleImport" @click="handleImport"
v-hasPermi="['system:person:importStationPerson']" v-hasPermi="['system:person:importStationPerson']"
>导入</el-button >导入</el-button>
>
</el-col> </el-col>
<right-toolbar <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row> </el-row>
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="nurseStationPersonList" :data="nurseStationPersonList"
@ -135,20 +113,11 @@
</el-table-column> </el-table-column>
<el-table-column label="联系电话" align="center" prop="phone" /> <el-table-column label="联系电话" align="center" prop="phone" />
<el-table-column <el-table-column label="居住地址" align="center" prop="address" :show-overflow-tooltip="true" />
label="居住地址"
align="center"
prop="address"
:show-overflow-tooltip="true"
/>
<el-table-column label="创建人" align="center" prop="createBy" /> <el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createTime" /> <el-table-column label="创建时间" align="center" prop="createTime" />
<el-table-column <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
@ -156,20 +125,17 @@
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['system:person:edit']" v-hasPermi="['system:person:edit']"
>修改</el-button >修改</el-button>
>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['system:person:remove']" v-hasPermi="['system:person:remove']"
>删除</el-button >删除</el-button>
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="total > 0" v-show="total > 0"
:total="total" :total="total"
@ -177,282 +143,7 @@
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 护理站弹框 -->
<!-- 添加护理站人员信息对话框 -->
<el-dialog
:title="title"
:visible.sync="open2"
width="1048px"
append-to-body
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="80px"
:inline="true"
>
<div
v-for="(item, index) in form.nurseStationPersonList"
:key="index"
style="margin-top: 10px"
>
<el-form-item
label="所属护理站"
label-width="120px"
:rules="rules.nurseStationPersonList.nurseStationId"
:prop="`nurseStationPersonList.${index}.nurseStationId`"
>
<el-button
type=""
@click="clickinnerVisible(item, index)"
v-if="item.nurseStationName == '请选择所属护理站'"
style="
width: 200px;
text-align: left;
height: 36px;
color: #c0c4cc;
overflow: hidden;
"
>{{ item.nurseStationName }}</el-button
>
<el-button
type=""
@click="clickinnerVisible(item, index)"
v-else
style="
width: 200px;
text-align: left;
height: 36px;
padding-left: -10px;
overflow: hidden;
"
>{{ item.nurseStationName }}</el-button
>
</el-form-item>
<el-form-item
label="所属科室"
label-width="120px"
:rules="rules.nurseStationPersonList.departmentCode"
:prop="`nurseStationPersonList.${index}.departmentCode`"
>
<el-button
type=""
@click="departclick(item, index)"
v-if="item.departmentName == '请选择所属科室'"
style="
width: 200px;
text-align: left;
height: 36px;
color: #c0c4cc;
"
>{{ item.departmentName }}</el-button
>
<el-button
type=""
@click="departclick(item, index)"
v-else
style="
width: 200px;
text-align: left;
height: 36px;
padding-left: -10px;
"
>{{ item.departmentName }}</el-button
>
</el-form-item>
<el-form-item
label="护理人姓名"
label-width="120px"
:rules="rules.nurseStationPersonList.nursePersonName"
:prop="`nurseStationPersonList.${index}.nursePersonName`"
>
<el-input
maxlength="15"
v-model="item.nursePersonName"
placeholder="请输入护理人姓名"
/>
</el-form-item>
<el-form-item
label="护理人职称"
label-width="120px"
:rules="rules.nurseStationPersonList.nursePersonType"
:prop="`nurseStationPersonList.${index}.nursePersonType`"
>
<el-select
v-model="item.nursePersonType"
clearable
placeholder="请选择"
style="width: 200px"
>
<el-option
v-for="item in nursePersonTypes"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="性别"
style="margin-left: 42px"
:rules="rules.nurseStationPersonList.sex"
:prop="`nurseStationPersonList.${index}.sex`"
>
<el-select
v-model="item.sex"
clearable
placeholder="请选择"
style="width: 200px"
>
<el-option
v-for="item in sexs"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="联系电话"
label-width="120px"
:rules="rules.nurseStationPersonList.phone"
:prop="`nurseStationPersonList.${index}.phone`"
>
<el-input
v-model="item.phone"
placeholder="请输入联系电话"
maxlength="11"
/>
</el-form-item>
<el-form-item
label="居住地址"
label-width="120px"
:rules="rules.nurseStationPersonList.address"
:prop="`nurseStationPersonList.${index}.address`"
>
<el-input
v-model="item.address"
placeholder="请输入居住地址"
maxlength="50"
style="width: 200px"
/>
</el-form-item>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 新增护理站名称弹框 -->
<el-dialog
:title="title2"
:visible.sync="innerVisible"
width="1000px"
append-to-body
:before-close="addcancel"
>
<el-form
ref="queryForm"
:model="nurseStationqueryParams"
:rules="rules"
label-width="80px"
:inline="true"
>
<el-form-item
label="护理站编码"
prop="nurseStationCode"
label-width="120"
>
<el-input
v-model="nurseStationqueryParams.nurseStationCode"
placeholder="请输入护理站编码"
clearable
/>
</el-form-item>
<el-form-item
label="护理站名称"
prop="nurseStationName"
label-width="120"
>
<el-input
v-model="nurseStationqueryParams.nurseStationName"
placeholder="请输入护理站名称"
clearable
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery2"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery2"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table
:data="nurseStationlist"
@cell-dblclick="nurseclick"
v-loading="loading"
>
<el-table-column label="请选择" width="100" align="center">
<template slot-scope="scope">
<el-button
type="primary"
style="width: 15px; height: 15px"
v-if="stationid == scope.row.id"
circle
@click="nurseclick(scope.row)"
></el-button>
<el-button
v-else
style="width: 15px; height: 15px"
circle
@click="nurseclick(scope.row)"
></el-button>
</template>
</el-table-column>
<el-table-column
property="nurseStationCode"
label="护理站编码"
align="center"
>
</el-table-column>
<el-table-column
property="nurseStationName"
label="护理站名称"
align="center"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
<el-table-column
property="address"
label="护理站地址"
align="center"
:show-overflow-tooltip="true"
>
</el-table-column>
</el-table>
<pagination
v-show="nursetotal > 0"
:total="nursetotal"
:page.sync="nurseStationqueryParams.pageNum"
:limit.sync="nurseStationqueryParams.pageSize"
@pagination="info"
/>
</el-dialog>
<!-- 修改护理站名称弹框 -->
<el-dialog <el-dialog
:title="title2" :title="title2"
:visible.sync="innerVisiblexg" :visible.sync="innerVisiblexg"
@ -467,22 +158,14 @@
label-width="80px" label-width="80px"
:inline="true" :inline="true"
> >
<el-form-item <el-form-item label="护理站编码" prop="nurseStationCode" label-width="120">
label="护理站编码"
prop="nurseStationCode"
label-width="120"
>
<el-input <el-input
v-model="nurseStationqueryParams.nurseStationCode" v-model="nurseStationqueryParams.nurseStationCode"
placeholder="请输入护理站编码" placeholder="请输入护理站编码"
clearable clearable
/> />
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="护理站名称" prop="nurseStationName" label-width="120">
label="护理站名称"
prop="nurseStationName"
label-width="120"
>
<el-input <el-input
v-model="nurseStationqueryParams.nurseStationName" v-model="nurseStationqueryParams.nurseStationName"
placeholder="请输入护理站名称" placeholder="请输入护理站名称"
@ -490,16 +173,8 @@
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery4">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery4">重置</el-button>
icon="el-icon-search"
size="mini"
@click="handleQuery4"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery4"
>重置</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="nurseStationlist" @cell-dblclick="nurseclick2"> <el-table :data="nurseStationlist" @cell-dblclick="nurseclick2">
@ -520,22 +195,10 @@
></el-button> ></el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column property="nurseStationCode" label="护理站编码" align="center"></el-table-column>
property="nurseStationCode" <el-table-column property="nurseStationName" label="护理站名称" align="center"></el-table-column>
label="护理站编码" <el-table-column property="phone" label="联系电话" align="center"></el-table-column>
align="center" <el-table-column property="address" label="护理站地址" align="center"></el-table-column>
>
</el-table-column>
<el-table-column
property="nurseStationName"
label="护理站名称"
align="center"
>
</el-table-column>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
<el-table-column property="address" label="护理站地址" align="center">
</el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="nursetotal > 0" v-show="nursetotal > 0"
@ -546,105 +209,6 @@
/> />
</el-dialog> </el-dialog>
<!-- 所属科室弹框 --> <!-- 所属科室弹框 -->
<el-dialog
:title="title3"
:visible.sync="innerVisible2"
width="1000px"
append-to-body
:before-close="departcancel"
>
<el-form
ref="queryForm"
:model="queryParams3"
:rules="rules"
label-width="80px"
:inline="true"
>
<el-form-item label="科室编码" prop="departmentCode" label-width="120">
<el-input
v-model="queryParams3.departmentCode"
placeholder="请输入科室编码"
clearable
/>
</el-form-item>
<el-form-item label="科室名称" prop="" label-width="120">
<el-input
v-model="queryParams3.departmentName"
placeholder="请输入科室名称"
clearable
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery3"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery3"
>重置</el-button
>
</el-form-item>
</el-form>
<el-table
:data="StationDepartmentLists"
@cell-dblclick="StationDepartmentclick"
>
<el-table-column label="请选择" width="100" align="center">
<template slot-scope="scope">
<el-button
type="primary"
style="width: 15px; height: 15px; overflow: hidden"
v-if="departid == scope.row.departmentCode"
circle
@click="StationDepartmentclick(scope.row)"
></el-button>
<el-button
v-else
style="width: 15px; height: 15px; overflow: hidden"
circle
@click="StationDepartmentclick(scope.row)"
></el-button>
</template>
</el-table-column>
<el-table-column
property="nurseStationName"
label="护理站名称"
align="center"
>
</el-table-column>
<el-table-column
property="departmentCode"
label="科室编码"
align="center"
>
</el-table-column>
<el-table-column
property="departmentName"
label="科室名称"
align="center"
>
</el-table-column>
<el-table-column
property="departmentPerson"
label="科室负责人"
align="center"
>
</el-table-column>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
</el-table>
<pagination
v-show="departtotal > 0"
:total="departtotal"
:page.sync="queryParams3.pageNum"
:limit.sync="queryParams3.pageSize"
@pagination="getList3"
/>
</el-dialog>
<!-- 修改所属科室弹框 -->
<el-dialog <el-dialog
:title="title3" :title="title3"
:visible.sync="innerVisiblexg2" :visible.sync="innerVisiblexg2"
@ -660,36 +224,17 @@
:inline="true" :inline="true"
> >
<el-form-item label="科室编码" prop="departmentCode" label-width="120"> <el-form-item label="科室编码" prop="departmentCode" label-width="120">
<el-input <el-input v-model="queryParams3.departmentCode" placeholder="请输入科室编码" clearable />
v-model="queryParams3.departmentCode"
placeholder="请输入科室编码"
clearable
/>
</el-form-item> </el-form-item>
<el-form-item label="科室名称" prop="" label-width="120"> <el-form-item label="科室名称" prop label-width="120">
<el-input <el-input v-model="queryParams3.departmentName" placeholder="请输入科室名称" clearable />
v-model="queryParams3.departmentName"
placeholder="请输入科室名称"
clearable
/>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery3">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery3">重置</el-button>
icon="el-icon-search"
size="mini"
@click="handleQuery3"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery3"
>重置</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table <el-table :data="StationDepartmentLists" @cell-dblclick="StationDepartmentclick2">
:data="StationDepartmentLists"
@cell-dblclick="StationDepartmentclick2"
>
<el-table-column label="请选择" width="100" align="center"> <el-table-column label="请选择" width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -707,33 +252,12 @@
></el-button> ></el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column property="nurseStationName" label="护理站名称" align="center"></el-table-column>
property="nurseStationName" <el-table-column property="departmentCode" label="科室编码" align="center"></el-table-column>
label="护理站名称" <el-table-column property="departmentName" label="科室名称" align="center"></el-table-column>
align="center"
>
</el-table-column>
<el-table-column
property="departmentCode"
label="科室编码"
align="center"
>
</el-table-column>
<el-table-column
property="departmentName"
label="科室名称"
align="center"
>
</el-table-column>
<el-table-column <el-table-column property="departmentPerson" label="科室负责人" align="center"></el-table-column>
property="departmentPerson" <el-table-column property="phone" label="联系电话" align="center"></el-table-column>
label="科室负责人"
align="center"
>
</el-table-column>
<el-table-column property="phone" label="联系电话" align="center">
</el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="departtotal > 0" v-show="departtotal > 0"
@ -744,66 +268,57 @@
/> />
</el-dialog> </el-dialog>
<!-- 修改 --> <!-- 修改 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog
<el-form ref="form" :model="form" :rules="rules" label-width="100px"> :title="title"
<el-form-item :visible.sync="open"
label="所属护理站" width="1300px"
label-width="120px" append-to-body
prop="nurseStationId" :before-close="cancel"
style="margin-left: -20px"
> >
<el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true">
<el-form-item label="所属护理站" prop="nurseStationId">
<el-button <el-button
type="" type
@click="departclickxg" @click="departclickxg"
v-if="nurseStationName == '请选择所属护理站'" v-if="nurseStationName == '请选择所属护理站'"
style="width: 362px; text-align: left; height: 36px; color: #c0c4cc" style="width: 300px; text-align: left; height: 36px; color: #c0c4cc"
>{{ nurseStationName }}</el-button >{{ nurseStationName }}</el-button>
>
<el-button <el-button
type="" type
@click="departclickxg()" @click="departclickxg()"
v-else v-else
style=" style="
width: 362px; width: 300px;
text-align: left; text-align: left;
height: 36px; height: 36px;
padding-left: -10px;
" "
>{{ nurseStationName }}</el-button >{{ nurseStationName }}</el-button>
>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="所属科室" prop="departmentName">
label="所属科室"
label-width="120px"
style="margin-left: -20px"
prop="departmentName"
>
<el-button <el-button
type="" type
@click="departclick2" @click="departclick2"
v-if="departmentName == '请选择所属科室'" v-if="departmentName == '请选择所属科室'"
style="width: 362px; text-align: left; height: 36px; color: #c0c4cc" style="width: 300px; text-align: left; height: 36px; color: #c0c4cc"
>{{ departmentName }}</el-button >{{ departmentName }}</el-button>
>
<el-button <el-button
type="" type
@click="departclick2()" @click="departclick2()"
v-else v-else
style=" style="
width: 362px; width: 300px;
text-align: left; text-align: left;
height: 36px; height: 36px;
padding-left: -10px;
" "
>{{ departmentName }}</el-button >{{ departmentName }}</el-button>
>
</el-form-item> </el-form-item>
<el-form-item label="姓名" prop="nursePersonName"> <el-form-item label="姓名" prop="nursePersonName">
<el-input <el-input
maxlength="15" maxlength="15"
v-model="form.nursePersonName" v-model="form.nursePersonName"
placeholder="请输入姓名" placeholder="请输入姓名"
style="width: 300px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="护理人职称" prop="nursePersonType"> <el-form-item label="护理人职称" prop="nursePersonType">
@ -811,47 +326,72 @@
v-model="form.nursePersonType" v-model="form.nursePersonType"
clearable clearable
placeholder="请选择" placeholder="请选择"
style="width: 363px" style="width: 300px"
> >
<el-option <el-option
v-for="item in nursePersonTypes" v-for="item in nursePersonTypes"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="性别" prop="sex"> <el-form-item label="性别" prop="sex">
<el-select <el-select v-model="form.sex" clearable placeholder="请选择" style="width: 300px">
v-model="form.sex"
clearable
placeholder="请选择"
style="width: 363px"
>
<el-option <el-option
v-for="item in sexs" v-for="item in sexs"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
> ></el-option>
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="联系电话" prop="phone"> <el-form-item label="联系电话" prop="phone">
<el-input <el-input v-model="form.phone" placeholder="请输入联系电话" maxlength="11" style="width: 300px" />
v-model="form.phone"
placeholder="请输入联系电话"
maxlength="11"
/>
</el-form-item> </el-form-item>
<el-form-item label="居住地址" prop="address"> <el-form-item label="居住地址" prop="address">
<el-input <el-input
v-model="form.address" v-model="form.address"
placeholder="请输入居住地址" placeholder="请输入居住地址"
maxlength="50" maxlength="50"
style="width: 300px"
/> />
</el-form-item> </el-form-item>
<el-form-item label="证书资质" required>
<el-table :data="form.nurseStationPersonCertificateList" style="width: 1100px">
<el-table-column property="consumableCount" label="证书名称" align="center">
<template slot-scope="scope">
<el-input maxlength="50" v-model="scope.row.certificateName" placeholder="请输入证书名称"></el-input>
</template>
</el-table-column>
<el-table-column property="certificateUrl" label="证书图片" align="center">
<template slot-scope="scope">
<stationAcatar
@imgUrl="imgUrl"
@item="imgclassifyItem"
:img="scope.row.certificateUrl"
:item="scope.row"
:type="'personCertificateUrl'"
/>
</template>
</el-table-column>
<el-table-column property="sort" label="证书排序" align="center">
<template slot-scope="scope">
<el-input
v-model.number="scope.row.sort"
placeholder="请输入排序(只能输入数字)"
oninput="value=value.replace(/[^\d]/g,'')"
/>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="addCertificate">新增</el-button>
<el-button size="mini" type="text" @click="delCertificate(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button> <el-button type="primary" @click="submitForm"> </el-button>
@ -859,12 +399,7 @@
</div> </div>
</el-dialog> </el-dialog>
<!-- 导入 --> <!-- 导入 -->
<el-dialog <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
:title="upload.title"
:visible.sync="upload.open"
width="400px"
append-to-body
>
<el-upload <el-upload
ref="upload" ref="upload"
:limit="1" :limit="1"
@ -878,7 +413,10 @@
drag drag
> >
<i class="el-icon-upload"></i> <i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处<em>点击上传</em></div> <div class="el-upload__text">
将文件拖到此处
<em>点击上传</em>
</div>
<div class="el-upload__tip text-center" slot="tip"> <div class="el-upload__tip text-center" slot="tip">
<span>仅允许导入xlsxlsx格式文件</span> <span>仅允许导入xlsxlsx格式文件</span>
<el-link <el-link
@ -886,8 +424,7 @@
:underline="false" :underline="false"
style="font-size: 12px; vertical-align: baseline" style="font-size: 12px; vertical-align: baseline"
@click="importTemplate" @click="importTemplate"
>下载模板</el-link >下载模板</el-link>
>
</div> </div>
</el-upload> </el-upload>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">

View File

@ -9,8 +9,10 @@ import {
} from "@/api/system/person"; } from "@/api/system/person";
import { getToken } from "@/utils/auth"; import { getToken } from "@/utils/auth";
import { getListByUser } from "@/api/system/userlist.js"; import { getListByUser } from "@/api/system/userlist.js";
import stationAcatar from "../stationAvatar/index.vue";
export default { export default {
components: { stationAcatar },
name: "Person", name: "Person",
data() { data() {
// 验证手机号的规则 // 验证手机号的规则
@ -154,6 +156,8 @@ export default {
// 表单参数 // 表单参数
form: {}, form: {},
index: "", index: "",
idd: 1,
// 表单校验 // 表单校验
rules: { rules: {
nurseStationId: [ nurseStationId: [
@ -216,6 +220,47 @@ export default {
this.info(); this.info();
}, },
methods: { methods: {
//删除Certificate
delCertificate(index) {
if (this.form.nurseStationPersonCertificateList.length == 1) {
this.$message.error("不可全部删除");
} else {
this.form.nurseStationPersonCertificateList.splice(index, 1);
}
},
//添加Certificate
addCertificate() {
this.idd++;
var obj = {
certificateName: null,
certificateUrl: null,
idd: this.idd
};
if (this.form.nurseStationPersonCertificateList.length == 5) {
this.$message.error("最多只能5条");
} else {
this.form.nurseStationPersonCertificateList.push(obj);
}
},
imgUrl(imgUrl) {},
//接收图片所属的item
imgclassifyItem(item) {
let items = JSON.parse(item);
console.log(items)
if (items.idd && !items.id) {
this.form.nurseStationPersonCertificateList.forEach((e) => {
if (e.idd == items.idd) {
e.certificateUrl = items.certificateUrl;
}
});
} else if (!items.idd && items.id) {
this.form.nurseStationPersonCertificateList.forEach((e) => {
if (e.id == items.id) {
e.certificateUrl = items.certificateUrl;
}
});
}
},
// // 新增所属科室按钮 // // 新增所属科室按钮
departclick(item, index) { departclick(item, index) {
if (this.form.nurseStationId != null) { if (this.form.nurseStationId != null) {
@ -265,7 +310,6 @@ export default {
this.innerVisiblexg = false; this.innerVisiblexg = false;
this.form.nursename = row.nurseStationName; this.form.nursename = row.nurseStationName;
}, },
// 护理站名称 // 护理站名称
nurseclick(row) { nurseclick(row) {
this.nursename = row.nurseStationName; this.nursename = row.nurseStationName;
@ -278,7 +322,6 @@ export default {
row.nurseStationName; row.nurseStationName;
this.form.nurseStationPersonList[this.index].nurseStationId = row.id; this.form.nurseStationPersonList[this.index].nurseStationId = row.id;
}, },
// 所属科室 // 所属科室
StationDepartmentclick(row) { StationDepartmentclick(row) {
console.log(row); console.log(row);
@ -314,7 +357,6 @@ export default {
this.loading = false; this.loading = false;
}); });
}, },
getList3() { getList3() {
this.loading = true; this.loading = true;
StationDepartmentList(this.queryParams3).then((res) => { StationDepartmentList(this.queryParams3).then((res) => {
@ -336,8 +378,7 @@ export default {
reset() { reset() {
this.form = { this.form = {
id: null, id: null,
pageNum: 1, nurseStationId: null,
pageSize: 10,
departmentCode: null, departmentCode: null,
userId: null, userId: null,
nursePersonCode: null, nursePersonCode: null,
@ -351,19 +392,11 @@ export default {
updateTime: null, updateTime: null,
nurseStationName: "请选择所属护理站", nurseStationName: "请选择所属护理站",
departmentName: "请选择所属科室", departmentName: "请选择所属科室",
nurseStationPersonList: [{ nurseStationPersonCertificateList: [{
id: "", certificateName: null,
nurseStationId: "", certificateUrl: null,
departmentCode: "", idd: this.idd
nursePersonCode: "", }]
nursePersonName: "",
nursePersonType: "",
nurseStationName: "请选择所属护理站",
phone: "",
address: "",
sex: "",
departmentName: "请选择所属科室",
}, ],
}; };
this.resetForm("form"); this.resetForm("form");
}, },
@ -438,9 +471,9 @@ export default {
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.queryParams3.nurseStationId = null; this.queryParams3.nurseStationId = null
this.reset(); this.reset();
this.open2 = true; this.open = true;
this.title = "添加护理站人员信息"; this.title = "添加护理站人员信息";
this.title2 = "请选择所属护理站"; this.title2 = "请选择所属护理站";
this.title3 = "请选择科室"; this.title3 = "请选择科室";
@ -453,6 +486,14 @@ export default {
this.departmentName = response.data.departmentName; this.departmentName = response.data.departmentName;
this.nurseStationName = response.data.nurseStationName; this.nurseStationName = response.data.nurseStationName;
this.form = response.data; this.form = response.data;
var obj = {
certificateName: null,
certificateUrl: null,
idd: this.idd
};
if (this.form.nurseStationPersonCertificateList.length == 0) {
this.form.nurseStationPersonCertificateList.push(obj);
}
this.queryParams3.nurseStationId = response.data.nurseStationId; this.queryParams3.nurseStationId = response.data.nurseStationId;
this.open = true; this.open = true;
this.title = "修改护理站人员信息"; this.title = "修改护理站人员信息";
@ -465,16 +506,6 @@ export default {
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
if (this.form.id == null) {
this.form.nursePersonName = this.form.nurseStationPersonList[0].nursePersonName
this.form.nursePersonType = this.form.nurseStationPersonList[0].nursePersonType
this.form.sex = this.form.nurseStationPersonList[0].sex
this.form.address = this.form.nurseStationPersonList[0].address
this.form.departmentCode = this.form.nurseStationPersonList[0].departmentCode
this.form.departmentName = this.form.nurseStationPersonList[0].departmentName
this.form.phone = this.form.nurseStationPersonList[0].phone
}
console.log(this.form);
this.$refs["form"].validate((valid) => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.id != null) { if (this.form.id != null) {

View File

@ -1,19 +1,13 @@
<template> <template>
<div> <div>
<div <div class="user-info-head" :class="video.VideoPath ? 'wihi' : ''" @click="editCropper()">
class="user-info-head"
:class="video.VideoPath ? 'wihi' : ''"
@click="editCropper()"
>
<video <video
style="width: 208px; height: 208px" style="width: 208px; height: 208px"
v-if="video.VideoPath" v-if="video.VideoPath"
v-bind:src="video.VideoPath" v-bind:src="video.VideoPath"
class="avatar video-avatar" class="avatar video-avatar"
controls="controls" controls="controls"
> >您的浏览器不支持视频播放</video>
您的浏览器不支持视频播放
</video>
<img <img
v-if="options.img" v-if="options.img"
v-bind:src="options.img" v-bind:src="options.img"
@ -62,19 +56,14 @@
v-bind:src="videoForm.showVideoPath" v-bind:src="videoForm.showVideoPath"
class="avatar video-avatar" class="avatar video-avatar"
controls="controls" controls="controls"
> >您的浏览器不支持视频播放</video>
您的浏览器不支持视频播放 <img style="width: 100%; height: 100%" v-if="previews.url" :src="previews.url" />
</video>
<img
style="width: 100%; height: 100%"
v-if="previews.url"
:src="previews.url"
/>
<div v-else></div> <div v-else></div>
</div> </div>
<div class="title" v-if="types != 'posterVideoUrl'&&types!='posterPictureUrl'"> <div
请上传图片为800x800px的正方形 class="title"
</div> v-if="types != 'posterVideoUrl'&&types!='posterPictureUrl'"
>请上传图片为800x800px的正方形</div>
</el-col> </el-col>
</el-row> </el-row>
<br /> <br />
@ -119,11 +108,9 @@
size="small" size="small"
@click="rotateRight()" @click="rotateRight()"
></el-button> ></el-button>
</el-col> --> </el-col>-->
<el-col :lg="{ span: 2, offset: 20 }" :md="2"> <el-col :lg="{ span: 2, offset: 20 }" :md="2">
<el-button type="primary" size="small" @click="uploadImg()" <el-button type="primary" size="small" @click="uploadImg()"> </el-button>
> </el-button
>
</el-col> </el-col>
</el-row> </el-row>
</el-dialog> </el-dialog>
@ -136,7 +123,7 @@ import baseurl from "@/api/baseurl.js";
import { import {
updateNurseStationHeads, updateNurseStationHeads,
posts, posts,
updatePoserHeads, updatePoserHeads
} from "@/api/system/stationAvatar.js"; } from "@/api/system/stationAvatar.js";
export default { export default {
@ -158,17 +145,17 @@ export default {
autoCrop: true, // autoCrop: true, //
autoCropWidth: 300, // autoCropWidth: 300, //
autoCropHeight: 300, // autoCropHeight: 300, //
fixedBox: true, // fixedBox: true //
}, },
previews: {}, previews: {},
items: {}, items: {},
// //
videoForm: { videoForm: {
showVideoPath: null, // showVideoPath: null //
}, },
video: { video: {
VideoPath: null, // VideoPath: null //
}, }
}; };
}, },
created() { created() {
@ -197,12 +184,12 @@ export default {
}, },
watch: { watch: {
tovideo: { tovideo: {
handler(newimg, oldimg) {}, handler(newimg, oldimg) {}
}, },
item: { item: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
this.items = this.item; this.items = this.item;
}, }
}, },
img: { img: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
@ -213,13 +200,13 @@ export default {
} else { } else {
this.options.img = baseurl + this.img; this.options.img = baseurl + this.img;
} }
}, }
}, },
type: { type: {
handler(newimg, oldimg) { handler(newimg, oldimg) {
this.types = this.type; this.types = this.type;
}, }
}, }
}, },
methods: { methods: {
// //
@ -279,13 +266,13 @@ export default {
formData.append("file", this.previews.data); formData.append("file", this.previews.data);
formData.append("type", this.types); formData.append("type", this.types);
if (this.types == "posterVideoUrl") { if (this.types == "posterVideoUrl") {
updatePoserHeads(formData).then((response) => { updatePoserHeads(formData).then(response => {
this.video.VideoPath = baseurl + response.imgUrl; this.video.VideoPath = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
this.openimg = false; this.openimg = false;
}); });
} else { } else {
updateNurseStationHeads(formData).then((response) => { updateNurseStationHeads(formData).then(response => {
this.options.img = baseurl + response.imgUrl; this.options.img = baseurl + response.imgUrl;
this.$emit("imgUrl", response.imgUrl); this.$emit("imgUrl", response.imgUrl);
if (this.types == "attributePitureUrl") { if (this.types == "attributePitureUrl") {
@ -304,6 +291,15 @@ export default {
this.items.posterPictureUrl = response.imgUrl; this.items.posterPictureUrl = response.imgUrl;
this.$emit("item", JSON.stringify(this.items)); this.$emit("item", JSON.stringify(this.items));
} }
if (this.types == "certificateUrl") {
this.items.certificateUrl = response.imgUrl;
this.$emit("item", JSON.stringify(this.items));
console.log(this.item);
}
if (this.types == "personCertificateUrl") {
this.items.certificateUrl = response.imgUrl;
this.$emit("item", JSON.stringify(this.items));
}
this.openimg = false; this.openimg = false;
}); });
} }
@ -319,8 +315,8 @@ export default {
closeDialog() { closeDialog() {
this.imgs = ""; this.imgs = "";
this.visible = false; this.visible = false;
}, }
}, }
}; };
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">