| | |
| | | <template> |
| | | <div class="Questionnairemanagement"> |
| | | <!-- 左侧栏 --> |
| | | <div class="sidecolumn"> |
| | | <!-- <div class="sidecolumn"> |
| | | <div class="sidecolumn-top"> |
| | | <div class="top-wj">医院患者</div> |
| | | </div> |
| | |
| | | v-model="queryParams.allhosp" |
| | | @tab-click="handleClick" |
| | | > |
| | | <!-- <el-tab-pane label="患者列表" name="0"></el-tab-pane> --> |
| | | <el-tab-pane label="出入院患者" name="1"></el-tab-pane> |
| | | <el-tab-pane label="门诊患者" name="2"></el-tab-pane> |
| | | <el-tab-pane label="体检患者" name="3"></el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | <!-- 右侧数据 --> |
| | | |
| | | <div class="leftvlue"> |
| | |
| | | v-show="showSearch" |
| | | label-width="98px" |
| | | > |
| | | <!-- <el-form-item label="院区" prop="userName"> |
| | | <el-select v-model="queryParams.value1" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="科室/病区" prop="userName"> |
| | | <el-select v-model="queryParams.value2" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <el-form-item |
| | | label-width="138px" |
| | | label="主治医生" |
| | | prop="userName" |
| | | > |
| | | <el-input |
| | | v-model="queryParams.drname" |
| | | placeholder="请输入医生姓名" |
| | | maxlength="30" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="门诊编号" prop="visitno"> |
| | | <el-input |
| | | v-model="queryParams.visitno" |
| | | placeholder="请输入编号" |
| | | maxlength="30" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="患者姓名" prop="name"> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="患者标签" prop="tagname"> |
| | | <el-input |
| | | v-model="queryParams.tagname" |
| | | placeholder="输入进行模糊查询" |
| | | maxlength="30" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="患者范围" prop="tagId"> |
| | | <el-select |
| | | v-model="queryParams.searchscope" |
| | | placeholder="请选择患者范围" |
| | | > |
| | | <el-option |
| | | v-for="item in source" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | <el-select |
| | | v-model="queryParams.searchscope" |
| | | placeholder="请选择患者范围" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-option |
| | | v-for="item in source" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="联系电话" prop="telcode"> |
| | | <el-input |
| | | v-model="queryParams.telcode" |
| | |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <!-- <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | |
| | | v-hasPermi="['system:user:add']" |
| | | >新增</el-button |
| | | > |
| | | </el-col> |
| | | </el-col> --> |
| | | |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="userList" |
| | | height="660" |
| | | height="660" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="50" align="center" /> |
| | |
| | | align="center" |
| | | key="age" |
| | | prop="age" |
| | | width="60" |
| | | /> |
| | | width="160" |
| | | > <template slot-scope="scope"> |
| | | <span v-if="scope.row.age">{{ scope.row.age }}{{scope.row.ageUnit }}</span><span v-if="scope.row.age2">{{ scope.row.age2 }}{{scope.row.ageUnit2 }}</span> |
| | | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="出生年月" |
| | | align="center" |
| | |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | <el-table-column |
| | | label="证件号码" |
| | | align="center" |
| | | key="idcardno" |
| | |
| | | prop="createTime" |
| | | width="160" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | ><i class="el-icon-edit"></i>患者过滤</span |
| | | ></el-button |
| | | > |
| | | <el-button |
| | | <!-- <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="Distributionservice(scope.row)" |
| | | ><span class="button-textxg" |
| | | ><i class="el-icon-menu"></i>服务</span |
| | | ></el-button |
| | | > |
| | | > --> |
| | | <!-- <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="RiskMarker(scope.row)" |
| | | ><span class="button-textxg" |
| | | ><i class="el-icon-menu"></i>风险标记</span |
| | | ></el-button |
| | | > --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="!amendtag"> |
| | | <el-row v-if="!amendtag"> |
| | | <el-col :span="8"> |
| | | <el-form-item label="民族" prop="name"> |
| | | <el-input |
| | |
| | | |
| | | <el-row v-if="!amendtag"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="出生地" prop="idcardno"> |
| | | <el-form-item label="出生地" prop="birthplace"> |
| | | <el-input |
| | | v-model="form.birthplace" |
| | | placeholder="国、省、地市、区县、街道等详细信息" |
| | |
| | | /> |
| | | </el-form-item> </el-col |
| | | ><el-col :span="12"> |
| | | <el-form-item label="居住地" prop="idcardno"> |
| | | <el-form-item label="居住地" prop="placeOfResidence"> |
| | | <el-input |
| | | v-model="form.placeOfResidence" |
| | | placeholder="国、省、地市、区县、街道等详细信息" |
| | |
| | | </el-row> |
| | | |
| | | <el-row> |
| | | <el-col :span="amendtag?12:24"v-if="!amendtag" > |
| | | <el-col :span="amendtag ? 12 : 24" v-if="!amendtag"> |
| | | <el-form-item label="患者类型"> |
| | | <el-select v-model="form.pattype" placeholder="请选择类型"> |
| | | <el-option |
| | |
| | | <el-button type="primary" @click="CreateService">创建服务</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <!-- 风险类型 --> |
| | | <el-dialog title="选择风险类型" :visible.sync="RiskVisible"> |
| | | <el-card class="box-card"> |
| | | <el-form> |
| | | <el-form-item label="风险类型"> |
| | | <el-radio-group v-model="Riskradio"> |
| | | <el-radio :label="1">正常</el-radio> |
| | | <el-radio :label="2">轻微</el-radio> |
| | | <el-radio :label="3">高危</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="活动性质"> |
| | | <el-checkbox-group v-model="Risklist"> |
| | | <el-checkbox label="情况1" name="type"></el-checkbox> |
| | | <el-checkbox label="情况2" name="type"></el-checkbox> |
| | | <el-checkbox label="情况3" name="type"></el-checkbox> |
| | | <el-checkbox label="情况4" name="type"></el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | </el-form> |
| | | </el-card> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="RiskVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="RiskService">确认修改</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | |
| | | export default { |
| | | name: "Patient", |
| | | dicts: ["sys_normal_disable", "task_status", "sys_user_sex",'futter_patient'], |
| | | dicts: [ |
| | | "sys_normal_disable", |
| | | "task_status", |
| | | "sys_user_sex", |
| | | "futter_patient", |
| | | ], |
| | | components: { Treeselect }, |
| | | data() { |
| | | return { |
| | |
| | | // 总条数 |
| | | total: 0, |
| | | tasktotal: 0, |
| | | Risklist: [], |
| | | // 用户表格数据 |
| | | userList: null, |
| | | taskuserList: null, |
| | |
| | | serviceVisible: false, |
| | | serviceradio: 1, |
| | | distributeVisible: false, |
| | | RiskVisible: false, |
| | | tasktopic: "5", //新增类型 |
| | | Riskradio: 1, |
| | | RiskObj: {}, |
| | | // 查询参数 |
| | | topqueryParams: { |
| | | pageNum: 1, |
| | |
| | | value: 2, |
| | | label: "女", |
| | | }, |
| | | |
| | | ], |
| | | |
| | | cardlist: [ |
| | |
| | | pageNum: 1, |
| | | allhosp: "1", |
| | | pageSize: 10, |
| | | searchscope:2, |
| | | searchscope: 2, |
| | | notrequiredFlag:1, |
| | | tagname: "", |
| | | idcardno: undefined, |
| | | name: undefined, |
| | | status: undefined, |
| | |
| | | ], |
| | | |
| | | idcardno: [ |
| | | { required: true, message: "证件号能为空", trigger: "blur" }, |
| | | { required: true, message: "证件号可能为空", trigger: "blur" }, |
| | | { |
| | | pattern: |
| | | /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/, |
| | |
| | | ], |
| | | placeOfResidence: [ |
| | | { required: true, message: "居住地不能为空", trigger: "blur" }, |
| | | ], |
| | | birthplace: [ |
| | | { required: true, message: "出生地不能为空", trigger: "blur" }, |
| | | ], |
| | | }, |
| | | }; |
| | |
| | | this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | | ); |
| | | this.queryParams.leavehospitaldistrictcodes=null; |
| | | this.queryParams.leavehospitaldistrictcodes = null; |
| | | } else if (this.queryParams.searchscope == 2) { |
| | | this.queryParams.leavehospitaldistrictcodes = |
| | | store.getters.belongWards.map((obj) => obj.districtCode); |
| | | this.queryParams.leaveldeptcodes=null; |
| | | this.queryParams.leaveldeptcodes = null; |
| | | } else { |
| | | this.queryParams.leaveldeptcodes = store.getters.belongDepts.map( |
| | | (obj) => obj.deptCode |
| | |
| | | Distributionservice(row) { |
| | | this.serviceVisible = true; |
| | | }, |
| | | RiskMarker(row) { |
| | | this.RiskVisible = true; |
| | | this.RiskObj = row; |
| | | }, |
| | | |
| | | // 取消按钮 |
| | | cancel() { |
| | |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | |
| | | this.queryParams.pageNum = 1; |
| | | this.getList(); |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.dateRange = []; |
| | | this.resetForm("queryForm"); |
| | | this.$refs.tree.setCurrentKey(null); |
| | | this.handleQuery(); |
| | | (this.queryParams = { |
| | | pageNum: 1, |
| | | allhosp: "1", |
| | | pageSize: 10, |
| | | searchscope: 2, |
| | | }), |
| | | this.handleQuery(); |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | |
| | | handleUpdate(row) { |
| | | const userIds = row.id || this.ids; |
| | | particularpatient(userIds).then((response) => { |
| | | console.log(response); |
| | | this.form = response.data; |
| | | }); |
| | | this.amendtag = true; |
| | |
| | | this.$router.push({ |
| | | path: "/followvisit/particty", |
| | | query: { type: this.serviceradio }, |
| | | }); |
| | | }, |
| | | RiskService() { |
| | | this.RiskObj.visitFlag = this.Risklist.join(", "); |
| | | this.RiskObj.visitType = this.Riskradio; |
| | | alterpatient(this.RiskObj).then((res) => { |
| | | if (res.code == 200) { |
| | | this.getList(); |
| | | this.Risklist = []; |
| | | this.Riskradio = 1; |
| | | this.$modal.msgSuccess("异常记录成功"); |
| | | } |
| | | }); |
| | | }, |
| | | distribute() { |
| | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .Questionnairemanagement { |
| | | display: flex; |
| | | } |
| | | // .Questionnairemanagement { |
| | | // display: flex; |
| | | // } |
| | | .sidecolumn { |
| | | width: 180px; |
| | | min-height: 100vh; |
| | |
| | | cursor: pointer; /* 鼠标悬浮时变为手形 */ |
| | | } |
| | | .leftvlue { |
| | | width: 80%; |
| | | margin-top: 10px; |
| | | width: 100%; |
| | | // margin-top: 10px; |
| | | } |
| | | .leftvlue-bg { |
| | | // display: flex; |