| | |
| | | export * from './external' |
| | | export * from './patientexternal' |
| | | export * from './EChartsdata' |
| | | export * from './satisfaction' |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import request from "@/utils/request"; |
| | | import { parseStrEmpty } from "@/utils/ruoyi"; //å¤çå符串 |
| | | |
| | | // æ¥è¯¢æ»¡æåº¦å表 |
| | | export function listsatisfaction(query) { |
| | | return request({ |
| | | url: "/smartor/satisfaction/list", |
| | | method: "post", |
| | | data: query, |
| | | }); |
| | | } |
| | | |
| | | // æ¹éæ°å¢æ»¡æåº¦ |
| | | export function addsatisfaction(data) { |
| | | return request({ |
| | | url: "/smartor/satisfaction/batchinsert", |
| | | method: "post", |
| | | data: data, |
| | | }); |
| | | } |
| | | |
| | | // ä¿®æ¹æ»¡æåº¦ |
| | | export function updatesatisfaction(data) { |
| | | return request({ |
| | | url: "/smartor/satisfaction/edit", |
| | | method: "post", |
| | | data: data, |
| | | }); |
| | | } |
| | | |
| | | // å 餿»¡æåº¦ |
| | | export function delsatisfaction(satisfactionId) { |
| | | return request({ |
| | | url: "/smartor/satisfaction/remove/" + satisfactionId, |
| | | method: "get", |
| | | }); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |
| | | <el-image |
| | | style="width: 100px; height: 100px" |
| | | :src="item.picturePath" |
| | | :preview-src-list="[...item.picturePath]" |
| | | :preview-src-list=" |
| | | item.picturePath ? [item.picturePath] : [] |
| | | " |
| | | > |
| | | </el-image> |
| | | </div> |
| | |
| | | <el-table-column |
| | | label="åºå·" |
| | | align="center" |
| | | key="userId" |
| | | prop="userId" |
| | | key="id" |
| | | prop="id" |
| | | /> |
| | | |
| | | <el-table-column |
| | | label="ä½é¢ç¼å·" |
| | | label="ç
åº" |
| | | align="center" |
| | | sortable |
| | | key="userName" |
| | | prop="userName" |
| | | key="hospitaldistrictname" |
| | | prop="hospitaldistrictname" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="ç§å®¤" |
| | | width="100" |
| | | align="center" |
| | | sortable |
| | | key="deptname" |
| | | prop="deptname" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="å§å" |
| | | width="100" |
| | | align="center" |
| | | sortable |
| | | key="userName" |
| | | prop="userName" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="å¹´é¾" |
| | | align="center" |
| | | key="age" |
| | | prop="age" |
| | | width="120" |
| | | /> |
| | | <el-table-column |
| | | label="è°æ¥æ¨¡æ¿" |
| | | label="èç³»çµè¯" |
| | | align="center" |
| | | key="types" |
| | | prop="types" |
| | | key="phone" |
| | | prop="phone" |
| | | /> |
| | | <el-table-column |
| | | label="è°æ¥ç±»å" |
| | | label="ç宿§(20)" |
| | | align="center" |
| | | key="types" |
| | | prop="types" |
| | | key="authenticity" |
| | | prop="authenticity" |
| | | /> |
| | | <el-table-column |
| | | label="è°æ¥å
容" |
| | | label="ä¸å¨å
宿(20)" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | key="weekFinish" |
| | | prop="weekFinish" |
| | | /> |
| | | <el-table-column |
| | | label="ä½é¢ç
åº" |
| | | label="è§èæ§(10)" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | key="standard" |
| | | prop="standard" |
| | | /> |
| | | <el-table-column |
| | | label="åºå·" |
| | | label="åæ¶æ§(10)" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | key="timeliness" |
| | | prop="timeliness" |
| | | /> |
| | | <el-table-column |
| | | label="主治å»ç" |
| | | label="宣ææ
åµ(10)" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | key="library" |
| | | prop="library" |
| | | /> |
| | | <el-table-column |
| | | label="ç®¡åºæ¤å£«" |
| | | label="ç¯å¢æ»¡æåº¦(10)" |
| | | align="center" |
| | | key="nickName" |
| | | prop="nickName" |
| | | key="environment" |
| | | prop="environment" |
| | | /> |
| | | |
| | | <el-table-column |
| | | label="æ§è¡ç¶æ" |
| | | label="å»ç满æåº¦(10)" |
| | | align="center" |
| | | key="topicnumber" |
| | | prop="topicnumber" |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div>æ§è¡å®æ/æ§è¡å¤±è´¥</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="è¯æ" |
| | | align="center" |
| | | key="topicnumberaa" |
| | | prop="topicnumberaa" |
| | | sortable |
| | | width="120" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | key="doctorSatisfaction" |
| | | prop="doctorSatisfaction" |
| | | |
| | | /> |
| | | <el-table-column |
| | | label="å
¥é¢æ¶é´" |
| | | label="æ¤å£«æ»¡æåº¦(10)" |
| | | align="center" |
| | | key="nurseSatisfaction" |
| | | prop="nurseSatisfaction" |
| | | sortable |
| | | align="center" |
| | | prop="createTime" |
| | | width="160" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ formatTime(scope.row.createTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | /> |
| | | <el-table-column |
| | | label="ä»»å¡è¯¦æ
" |
| | | label="æ»å" |
| | | align="center" |
| | | width="200" |
| | | class-name="small-padding fixed-width" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-xq" |
| | | ><i class="el-icon-s-data"></i>详æ
</span |
| | | ></el-button |
| | | > |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-bb" |
| | | ><i class="el-icon-s-order"></i>æ¥è¡¨</span |
| | | ></el-button |
| | | > |
| | | <el-button |
| | | size="medium" |
| | | type="text" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:user:edit']" |
| | | ><span class="button-sc" |
| | | ><i class="el-icon-delete"></i>å é¤</span |
| | | ></el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | key="total" |
| | | prop="total" |
| | | sortable |
| | | /> |
| | | </el-table> |
| | | |
| | | <pagination |
| | |
| | | |
| | | <script> |
| | | import { |
| | | listUser, |
| | | getUser, |
| | | delUser, |
| | | addUser, |
| | | updateUser, |
| | | resetUserPwd, |
| | | listsatisfaction, |
| | | delsatisfaction, |
| | | updatesatisfaction, |
| | | changeUserStatus, |
| | | } from "@/api/system/user"; |
| | | } from "@/api/AiCentre/index"; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | |
| | |
| | | list: [], |
| | | loading: false, |
| | | states: [ |
| | | "Alabama", |
| | | "Alaska", |
| | | "Arizona", |
| | | "Arkansas", |
| | | "California", |
| | | "Colorado", |
| | | "Connecticut", |
| | | "Delaware", |
| | | "Florida", |
| | | "Georgia", |
| | | "Hawaii", |
| | | "Idaho", |
| | | "Illinois", |
| | | "Indiana", |
| | | "Iowa", |
| | | "Kansas", |
| | | "Kentucky", |
| | | "Louisiana", |
| | | "Maine", |
| | | "Maryland", |
| | | "Massachusetts", |
| | | "Michigan", |
| | | "Minnesota", |
| | | "Mississippi", |
| | | "Missouri", |
| | | "Montana", |
| | | "Nebraska", |
| | | "Nevada", |
| | | "New Hampshire", |
| | | "New Jersey", |
| | | "New Mexico", |
| | | "New York", |
| | | "North Carolina", |
| | | "North Dakota", |
| | | "Ohio", |
| | | "Oklahoma", |
| | | "Oregon", |
| | | "Pennsylvania", |
| | | "Rhode Island", |
| | | "South Carolina", |
| | | "South Dakota", |
| | | "Tennessee", |
| | | "Texas", |
| | | "Utah", |
| | | "Vermont", |
| | | "Virginia", |
| | | "Washington", |
| | | "West Virginia", |
| | | "Wisconsin", |
| | | "Wyoming", |
| | | ], |
| | | pickerOptions: { |
| | | disabledDate(time) { |
| | |
| | | /** æ¥è¯¢å½±åé访å表 */ |
| | | getList() { |
| | | this.loading = true; |
| | | listUser(this.addDateRange(this.topqueryParams, this.dateRange)).then( |
| | | listsatisfaction(this.topqueryParams).then( |
| | | (response) => { |
| | | this.userList = response.rows; |
| | | this.total = response.total; |
| | |
| | | } else { |
| | | this.options = []; |
| | | } |
| | | }, |
| | | // å½±åéè®¿ç¶æä¿®æ¹ |
| | | handleStatusChange(row) { |
| | | let text = row.status === "0" ? "å¯ç¨" : "åç¨"; |
| | | this.$modal |
| | | .confirm('确认è¦"' + text + '""' + row.userName + '"ç¨æ·åï¼') |
| | | .then(function () { |
| | | return changeUserStatus(row.userId, row.status); |
| | | }) |
| | | .then(() => { |
| | | this.$modal.msgSuccess(text + "æå"); |
| | | }) |
| | | .catch(function () { |
| | | row.status = row.status === "0" ? "1" : "0"; |
| | | }); |
| | | }, |
| | | // åæ¶æé® |
| | | cancel() { |
| | |
| | | path: "/Intelligentcenter/satisfaction/particulars", |
| | | query: { type: this.tasktopic }, |
| | | }); |
| | | // getUser().then((response) => { |
| | | // this.postOptions = response.posts; |
| | | // this.roleOptions = response.roles; |
| | | // this.title = "æ°å¢å½±åé访"; |
| | | // this.form.password = this.initPassword; |
| | | // }); |
| | | |
| | | }, |
| | | /** ä¿®æ¹æé®æä½ */ |
| | | handleUpdate(row) { |
| | | this.reset(); |
| | | const userId = row.userId || this.ids; |
| | | getUser(userId).then((response) => { |
| | | this.form = response.data; |
| | | this.postOptions = response.posts; |
| | | this.roleOptions = response.roles; |
| | | this.$set(this.form, "postIds", response.postIds); |
| | | this.$set(this.form, "roleIds", response.roleIds); |
| | | this.addalteropen = true; |
| | | this.title = "ä¿®æ¹ç¨æ·"; |
| | | this.form.password = ""; |
| | | }); |
| | | }, |
| | | /** éç½®å¯ç æé®æä½ */ |
| | | handleResetPwd(row) { |
| | | this.$prompt('请è¾å
¥"' + row.userName + '"çæ°å¯ç ', "æç¤º", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | closeOnClickModal: false, |
| | | inputPattern: /^.{5,20}$/, |
| | | inputErrorMessage: "ç¨æ·å¯ç é¿åº¦å¿
é¡»ä»äº 5 å 20 ä¹é´", |
| | | }) |
| | | .then(({ value }) => { |
| | | resetUserPwd(row.userId, value).then((response) => { |
| | | this.$modal.msgSuccess("ä¿®æ¹æåï¼æ°å¯ç æ¯ï¼" + value); |
| | | }); |
| | | }) |
| | | .catch(() => {}); |
| | | |
| | | }, |
| | | |
| | | /** æäº¤æé® */ |
| | |
| | | this.$refs["form"].validate((valid) => { |
| | | if (valid) { |
| | | if (this.form.userId != undefined) { |
| | | updateUser(this.form).then((response) => { |
| | | updatesatisfaction(this.form).then((response) => { |
| | | this.$modal.msgSuccess("ä¿®æ¹æå"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } else { |
| | | addUser(this.form).then((response) => { |
| | | this.$modal.msgSuccess("æ°å¢æå"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | |
| | | this.$modal |
| | | .confirm('æ¯å¦ç¡®è®¤å é¤ç¨æ·ç¼å·ä¸º"' + userIds + '"çæ°æ®é¡¹ï¼') |
| | | .then(function () { |
| | | return delUser(userIds); |
| | | return delsatisfaction(userIds); |
| | | }) |
| | | .then(() => { |
| | | this.getList(); |
| | |
| | | <el-image |
| | | style="width: 100px; height: 100px" |
| | | :src="topicobj.picturePath" |
| | | :preview-src-list="[...topicobj.picturePath]" |
| | | :preview-src-list=" |
| | | topicobj.picturePath ? [topicobj.picturePath] : [] |
| | | " |
| | | > |
| | | </el-image> |
| | | </div> |
| | |
| | | <el-image |
| | | style="width: 100px; height: 100px" |
| | | :src="item.picturePath" |
| | | :preview-src-list="[...item.picturePath]" |
| | | :preview-src-list=" |
| | | item.picturePath ? [item.picturePath] : [] |
| | | " |
| | | > |
| | | </el-image> |
| | | </div> |
| | |
| | | <el-image |
| | | style="width: 100px; height: 100px" |
| | | :src="item.picturePath" |
| | | :preview-src-list="[...item.picturePath]" |
| | | :preview-src-list=" |
| | | item.picturePath ? [item.picturePath] : [] |
| | | " |
| | | > |
| | | </el-image> |
| | | </div> |
| | |
| | | <el-image |
| | | style="width: 100px; height: 100px" |
| | | :src="item.picturePath" |
| | | :preview-src-list="[...item.picturePath]" |
| | | :preview-src-list=" |
| | | item.picturePath ? [item.picturePath] : [] |
| | | " |
| | | > |
| | | </el-image> |
| | | </div> |
| | |
| | | <el-select |
| | | style="margin-left: 10px;" |
| | | v-if="queryParams.statisticaltype == 1" |
| | | v-model="queryParams.leavehospitaldistrictCode" |
| | | v-model="queryParams.leavehospitaldistrictcodes" |
| | | size="medium" |
| | | multiple |
| | | filterable |
| | |
| | | </el-select> |
| | | <el-select |
| | | v-else-if="queryParams.statisticaltype == 2" |
| | | v-model="queryParams.deptCode" |
| | | v-model="queryParams.deptcodes" |
| | | size="medium" |
| | | multiple |
| | | filterable |