| | |
| | | </el-select> |
| | | <i class="el-icon-circle-plus-outline" @click="handleAdd"></i> |
| | | </el-form-item> |
| | | <el-form-item label="部门" prop="dwDeptName"> |
| | | <!-- <el-form-item label="部门" prop="dwDeptName"> |
| | | <el-select |
| | | v-model="objs.dwDeptName" |
| | | placeholder="请选择部门" |
| | |
| | | /> |
| | | </el-select> |
| | | <i class="el-icon-circle-plus-outline" @click="handleAddbumen"></i> |
| | | </el-form-item> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="分组" prop="payType"> |
| | | <el-select v-model="objs.payType" placeholder="请选择结算方式" style="width: 200px" clearable> |
| | | <el-option v-for="dict in groupingList" :key="dict.id" :label="dict.groupingName" :value="dict.id" /> |
| | |
| | | type="date" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | style="width: 220px" |
| | | style="width: 130px" |
| | | placeholder="请选择预约日期" |
| | | @change="selectTime" |
| | | :picker-options="setDisabled" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="有效天数" prop="yxts"> |
| | | <el-input |
| | | style="width: 100px" |
| | | v-model="objs.yxts" |
| | | placeholder="有效天数" |
| | | />天(可自定义) |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | |
| | | icon="el-icon-upload2" |
| | | size="mini" |
| | | @click="handleImport" |
| | | v-hasPermi="['system:user:import']" |
| | | >导入</el-button |
| | | > |
| | | </el-col> |
| | |
| | | type="primary" |
| | | icon="el-icon-upload2" |
| | | size="mini" |
| | | @click="importTemplate" |
| | | v-hasPermi="['system:user:import']" |
| | | @click="importTemplate" |
| | | >下载模板</el-button |
| | | > |
| | | </el-col> |
| | |
| | | align="center" |
| | | prop="company" |
| | | width="200" |
| | | /> |
| | | <el-table-column label="工号" align="center" prop="jobNo" width="80" /> |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="单位部门" |
| | | align="center" |
| | | prop="department" |
| | | width="200" |
| | | > |
| | | </el-table-column> |
| | | <!-- <el-table-column label="工号" align="center" prop="jobNo" width="80" /> --> |
| | | <el-table-column label="姓名" align="center" prop="name" width="75" /> |
| | | <el-table-column label="性别" align="center" prop="sex" width="75"> |
| | | <template slot-scope="scope"> |
| | |
| | | prop="birthday" |
| | | width="100" |
| | | /> |
| | | <el-table-column label="职位" align="center" prop="position" /> |
| | | <el-table-column label="部门" align="center" prop="department" /> |
| | | <el-table-column label="部门编号" align="center" prop="departmentId" /> |
| | | <!-- <el-table-column label="职位" align="center" prop="position" /> --> |
| | | <!-- <el-table-column label="部门" align="center" prop="department" /> --> |
| | | <!-- <el-table-column label="部门编号" align="center" prop="departmentId" /> --> |
| | | <el-table-column |
| | | label="联系电话" |
| | | align="center" |
| | | prop="phoe" |
| | | width="120" |
| | | width="140" |
| | | /> |
| | | <el-table-column label="地址" align="center" prop="address" /> |
| | | <el-table-column |
| | |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="联系邮箱" align="center" prop="email" /> |
| | | <!-- <el-table-column label="联系邮箱" align="center" prop="email" /> --> |
| | | <!-- <el-table-column label="体检类别" align="center" prop="tjCategory" /> --> |
| | | <el-table-column label="分组" align="center" prop="groupingName" /> |
| | | <el-table-column label="项目收费" align="center" prop="ysPrice" /> |
| | |
| | | <el-upload |
| | | ref="upload" |
| | | :limit="1" |
| | | :key="uploadKey" |
| | | accept=".xlsx, .xls" |
| | | :headers="upload.headers" |
| | | :data="data" |
| | |
| | | </div> |
| | | </el-upload> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitFileForm">确 定</el-button> |
| | | <el-button type="primary" @click="submitFileForm">保存信息</el-button> |
| | | <el-button @click="upload.open = false">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | label-width="100px" |
| | | :inline="true" |
| | | > |
| | | <el-form-item label="单位名称" prop="drugManufacturerId"> |
| | | <el-select |
| | | :remote-method="getRemoteData" |
| | | v-model="objs.drugManufacturerId" |
| | | remote |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="请选择单位名称" |
| | | clearable |
| | | @clear="getCompanyList" |
| | | @change="idFn1" |
| | | > |
| | | <el-option |
| | | v-for="dict in CompanyList" |
| | | :key="dict.cnName" |
| | | :label="dict.cnName" |
| | | :value="dict.drugManufacturerId" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="单位名称" prop="drugManufacturerId"> |
| | | <el-select |
| | | :remote-method="getRemoteData" |
| | | v-model="objs.drugManufacturerId" |
| | | remote |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="请选择单位名称" |
| | | clearable |
| | | @clear="getCompanyList" |
| | | @change="idFn1" |
| | | > |
| | | <el-option |
| | | v-for="dict in CompanyList" |
| | | :key="dict.cnName" |
| | | :label="dict.cnName" |
| | | :value="dict.drugManufacturerId" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="部门名称" prop="dwDeptName"> |
| | | <el-input v-model="form.dwDeptName" placeholder="请输入部门名称" /> |
| | | </el-form-item> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import Cookies from "js-cookie" |
| | | import { |
| | | addDept, |
| | | addComp, |
| | |
| | | getDwAndDwDept, |
| | | newExcelImport, |
| | | } from "@/api/system/comp"; |
| | | import { newConfirm, getCompany, queryCompany } from "@/api/team/tuanti"; |
| | | import { |
| | | newConfirm, |
| | | getCompany, |
| | | queryCompany, |
| | | getconfigKey, |
| | | } from "@/api/team/tuanti"; |
| | | import { getToken } from "@/utils/auth"; |
| | | import { read, utils } from "xlsx"; |
| | | |
| | | export default { |
| | | dicts: [ |
| | |
| | | } |
| | | }; |
| | | return { |
| | | uploadKey: 0, |
| | | leftList: "", |
| | | isdisabled: true, |
| | | setDisabled: { |
| | |
| | | data: { |
| | | dwId: "", |
| | | dwDeptId: "", |
| | | dwName:"", |
| | | dwName: "", |
| | | }, |
| | | |
| | | objs: { |
| | | drugManufacturerId: "", |
| | | dwDeptName: "", |
| | | reservationTime: "", |
| | | yxts: "", |
| | | }, |
| | | DataList: [], |
| | | tjOrderList: [], //单个项目集合 |
| | |
| | | // 是否更新已经存在的用户数据 |
| | | updateSupport: 0, |
| | | // 设置上传的请求头部 |
| | | headers: { Authorization: "Bearer " + getToken() }, |
| | | headers: { Authorization: "Bearer " + getToken(),hospId: Cookies.get("hospId") }, |
| | | // 上传的地址 |
| | | url: |
| | | process.env.VUE_APP_BASE_API + |
| | | "/reservation/reservation/newExcelImport", |
| | | "/reservation/reservation/newExcelImportNotDwDeptId", |
| | | }, |
| | | // 查询参数 |
| | | queryParam: { |
| | |
| | | reservationTime: [ |
| | | { required: true, validator: checkPhoneNum, trigger: "blur" }, |
| | | ], |
| | | dwDeptName: [ |
| | | { required: true, validator: checkPhoneNum, trigger: "change" }, |
| | | ], |
| | | // dwDeptName: [ |
| | | // { required: true, validator: checkPhoneNum, trigger: "change" }, |
| | | // ], |
| | | signingPic: [ |
| | | { required: true, validator: checkPhoneNum, trigger: "blur" }, |
| | | ], |
| | |
| | | methods: { |
| | | // 保存部门 |
| | | handleAddDept() { |
| | | let data = { |
| | | let data = { |
| | | dwName: this.data.dwName, |
| | | dwId: this.data.dwId, |
| | | dwDeptName: this.form.dwDeptName, |
| | |
| | | console.log(value); |
| | | if (value) { |
| | | this.data.dwId = value; |
| | | this.CompanyList.forEach(item=>{ |
| | | this.CompanyList.forEach((item) => { |
| | | console.log(item); |
| | | if(item.drugManufacturerId == this.data.dwId){ |
| | | this.data.dwName = item.cnName |
| | | if (item.drugManufacturerId == this.data.dwId) { |
| | | this.data.dwName = item.cnName; |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | }, |
| | | idBm(value) { |
| | |
| | | const { columns, data } = param; |
| | | const sums = []; |
| | | columns.forEach((column, index) => { |
| | | // if (index === 0) { |
| | | // sums[index] = "合计"; |
| | | // return; |
| | | // } |
| | | if (index === 0) { |
| | | sums[index] = "合计"; |
| | | return; |
| | | } |
| | | if (index === 1) { |
| | | sums[index] = "总计人数"; |
| | | return; |
| | | } |
| | | if (index === 2) { |
| | | if (index === 1) { |
| | | sums[index] = this.ListObj.count; |
| | | return; |
| | | } |
| | | if (index === 6) { |
| | | if (index === 2) { |
| | | sums[index] = "男组人数"; |
| | | return; |
| | | } |
| | | if (index === 7) { |
| | | if (index === 3) { |
| | | sums[index] = this.ListObj.manCount; |
| | | return; |
| | | } |
| | | if (index === 8) { |
| | | if (index === 4) { |
| | | sums[index] = "男组金额"; |
| | | return; |
| | | } |
| | | if (index === 9) { |
| | | if (index === 5) { |
| | | sums[index] = this.ListObj.manMoney; |
| | | return; |
| | | } |
| | | if (index === 11) { |
| | | if (index === 6) { |
| | | sums[index] = "女组人数"; |
| | | return; |
| | | } |
| | | if (index === 12) { |
| | | if (index === 7) { |
| | | sums[index] = this.ListObj.woManCount; |
| | | return; |
| | | } |
| | | if (index === 13) { |
| | | if (index === 8) { |
| | | sums[index] = "女组金额"; |
| | | return; |
| | | } |
| | | if (index === 14) { |
| | | if (index === 9) { |
| | | sums[index] = this.ListObj.woManMoney; |
| | | return; |
| | | } |
| | | if (index === 15) { |
| | | if (index === 10) { |
| | | sums[index] = "合计金额"; |
| | | return; |
| | | } |
| | | if (index === 16) { |
| | | if (index === 11) { |
| | | sums[index] = this.ListObj.hjMoney; |
| | | return; |
| | | } |
| | |
| | | }, |
| | | // 搜索 |
| | | getRemoteData(query) { |
| | | |
| | | if (query) { |
| | | let compName = query; |
| | | queryCompany(compName).then((response) => { |
| | |
| | | // 获取单位信息集合 |
| | | getCompanyList() { |
| | | this.loading = true; |
| | | getconfigKey('team_reservation_default_day').then((res) => { |
| | | console.log(res, 1111); |
| | | this.objs.yxts = res.msg; |
| | | }); |
| | | getCompany(this.queryParam).then((response) => { |
| | | this.CompanyList = response.data; |
| | | this.total = response.total; |
| | |
| | | this.TotalPrice = ""; |
| | | this.tableData[0] = []; |
| | | this.TotalPrice1 = ""; |
| | | this.userList = [] |
| | | // this.resetForm("form"); |
| | | this.form = {}; |
| | | }, |
| | |
| | | selectTime(val) { |
| | | this.objs.reservationTime = val; |
| | | }, |
| | | |
| | | /** 导入按钮操作 */ |
| | | handleImport() { |
| | | if (this.objs.drugManufacturerId && this.objs.reservationTime &&this.objs.dwDeptName) { |
| | | if (this.objs.drugManufacturerId && this.objs.reservationTime) { |
| | | // 清空组件内部状态(含已上传文件) |
| | | this.$refs.upload?.clearFiles(); |
| | | this.uploadKey = Date.now(); // 改变 key 强制重新渲染组件 |
| | | // 同步数据源(Vue2 需用 $set 确保响应式) |
| | | this.upload.title = "用户导入"; |
| | | this.upload.open = true; |
| | | } else { |
| | | this.$modal.msgError("请选择单位或部门"); |
| | | this.$modal.msgError("请选择单位或预约时间"); |
| | | } |
| | | }, |
| | | /** 下载模板操作 */ |
| | |
| | | this.upload.isUploading = true; |
| | | }, |
| | | // 文件上传成功处理 |
| | | // 文件上传成功处理 |
| | | handleFileSuccess(response, file, fileList) { |
| | | this.ListObj = response.data; |
| | | if (response.code == 500) { |
| | | this.isdisabled = true; |
| | | // Message.warning(response.msg); |
| | | // this.$modal.msgError(response.msg); |
| | | // this.$modal.msgError("人员"+ response.data.list + "信息错误"); |
| | | const errorList = response.data.list.join(", "); |
| | | |
| | | this.$confirm(`${errorList}`, `${response.msg}`, { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "error", |
| | | center: true, |
| | | dangerouslyUseHTMLString: true, |
| | | }); |
| | | }else{ |
| | | this.isdisabled = false; |
| | | this.ListObj = response.data; |
| | | this.userList = response.data.list; |
| | | |
| | | this.userList.forEach((item) => { |
| | | this.CompanyList.forEach((item1) => { |
| | | if (item1.drugManufacturerId == this.objs.drugManufacturerId) { |
| | | item.company = item1.cnName; |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | this.upload.open = false; |
| | | this.upload.isUploading = false; |
| | | this.$refs.upload.clearFiles(); |
| | | this.leftList = response.msg; |
| | | |
| | | if (this.leftList == "操作失败") { |
| | | this.isdisabled = true; |
| | | this.$alert( |
| | |
| | | "导入结果", |
| | | { dangerouslyUseHTMLString: true } |
| | | ); |
| | | } else { |
| | | this.isdisabled = false; |
| | | this.$alert( |
| | | "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" + |
| | | response.msg, |
| | | { dangerouslyUseHTMLString: true } |
| | | ); |
| | | this.rightList = response; |
| | | } |
| | | } |
| | | // else { |
| | | // console.log(11111) |
| | | // this.isdisabled = false; |
| | | // this.$alert( |
| | | // "<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" + |
| | | // response.msg, |
| | | // { dangerouslyUseHTMLString: true } |
| | | // ); |
| | | // this.rightList = response; |
| | | // } |
| | | for (let i = 0; i < fileList.length; i++) { |
| | | if (file.name != fileList[i].name) { |
| | | this.fileList.push({ |
| | |
| | | |
| | | /** 确认按钮 */ |
| | | submitForm() { |
| | | if (this.objs.reservationTime && this.data.dwDeptId) { |
| | | // if (this.objs.reservationTime && this.data.dwDeptId) { |
| | | if (this.objs.reservationTime) { |
| | | let data = { |
| | | copeWith: this.ListObj.hjMoney, |
| | | reservations: this.userList, |
| | | reservationTime: this.objs.reservationTime, |
| | | dwDeptId: this.data.dwDeptId, |
| | | yxts: this.objs.yxts, |
| | | dwId: this.data.dwId, |
| | | }; |
| | | newConfirm(data).then((res) => { |
| | | this.$modal.msgSuccess("提交成功"); |
| | | this.confirm = true; |
| | | this.userList = []; |
| | | this.userList = []; |
| | | }); |
| | | } else { |
| | | this.$modal.msgError("请填写带星号内容"); |