| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | size="small" |
| | | :inline="true" |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label="套餐名称" prop="pacName"> |
| | | <el-input |
| | | v-model="queryParams.pacName" |
| | | placeholder="请输入套餐名称" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.pacName" placeholder="请输入套餐名称" clearable @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="套餐描述" prop="pacRemark"> |
| | | <el-input |
| | | v-model="queryParams.pacRemark" |
| | | placeholder="请输入套餐描述" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.pacRemark" placeholder="请输入套餐描述" clearable @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="体检类别" prop="tjCategory"> |
| | | <el-select |
| | | v-model="queryParams.tjCategory" |
| | | placeholder="请选择状态" |
| | | style="width: 200px" |
| | | filterable |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.dict_tjtype" |
| | | :key="dict.id" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-select v-model="queryParams.tjCategory" placeholder="请选择状态" style="width: 200px" filterable clearable> |
| | | <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.id" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuery" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | <el-button type="primary" 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> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | v-hasPermi="['system:package:add']" |
| | | >新增</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['system:package:add']">新增</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-edit" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUp" |
| | | v-hasPermi="['system:package:edit']" |
| | | >修改</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single" @click="handleUp" |
| | | v-hasPermi="['system:package:edit']">修改</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | v-hasPermi="['system:package:remove']" |
| | | >删除</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" |
| | | v-hasPermi="['system:package:remove']">删除</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | @click="handleExport" |
| | | v-hasPermi="['system:package:export']" |
| | | >导出</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport" |
| | | v-hasPermi="['system:package:export']">导出</el-button> |
| | | </el-col> |
| | | <right-toolbar |
| | | :showSearch.sync="showSearch" |
| | | @queryTable="getList" |
| | | ></right-toolbar> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <!-- |
| | |
| | | element-loading-spinner="el-icon-loading" |
| | | element-loading-text="正在加载中..." --> |
| | | <template> |
| | | <el-table |
| | | v-loading="loading" |
| | | style="width: 100%" |
| | | :data="packageList" |
| | | @selection-change="handleSelectionChange" |
| | | border |
| | | > |
| | | <el-table-column |
| | | fixed |
| | | type="selection" |
| | | width="40" |
| | | align="center" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="序号" |
| | | align="center" |
| | | width="50" |
| | | prop="newID" |
| | | fixed |
| | | /> |
| | | <el-table v-loading="loading" style="width: 100%" :data="packageList" @selection-change="handleSelectionChange" |
| | | border> |
| | | <el-table-column fixed type="selection" width="40" align="center" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="序号" align="center" width="50" prop="newID" fixed /> |
| | | <!-- <el-table-column label="编号" align="center" prop="pacId" /> --> |
| | | <el-table-column |
| | | label="体检类别" |
| | | width="100px" |
| | | align="center" |
| | | prop="categoryNames" |
| | | fixed |
| | | > |
| | | <el-table-column label="体检类别" width="100px" align="center" prop="categoryNames" fixed> |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.dict_tjtype" |
| | | :value="scope.row.tjCategory" |
| | | /> |
| | | <dict-tag :options="dict.type.dict_tjtype" :value="scope.row.tjCategory" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="套餐名称" |
| | | align="center" |
| | | prop="pacName" |
| | | width="150px" |
| | | fixed |
| | | /> |
| | | <el-table-column |
| | | label="原价" |
| | | width="80px" |
| | | align="center" |
| | | prop="price" |
| | | fixed |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="折扣" |
| | | width="80px" |
| | | align="center" |
| | | prop="limits" |
| | | fixed |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="优惠价" |
| | | width="80px" |
| | | align="center" |
| | | prop="newPrice" |
| | | fixed |
| | | > |
| | | <el-table-column label="套餐名称" align="center" prop="pacName" width="150px" fixed /> |
| | | <el-table-column label="原价" width="80px" align="center" prop="price" fixed></el-table-column> |
| | | <el-table-column label="折扣" width="80px" align="center" prop="limits" fixed></el-table-column> |
| | | <el-table-column label="优惠价" width="80px" align="center" prop="newPrice" fixed> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="单项列表" |
| | | align="center" |
| | | prop="allProName" |
| | | width="1200px" |
| | | > |
| | | <el-table-column label="单项列表" align="center" prop="allProName" width="1200px"> |
| | | </el-table-column> |
| | | <!-- <el-table-column |
| | | label="项目明细" |
| | |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | </el-table-column>--> |
| | | <el-table-column |
| | | label="套餐描述" |
| | | align="center" |
| | | :show-overflow-tooltip="true" |
| | | width="120px" |
| | | > |
| | | <el-table-column label="套餐描述" align="center" :show-overflow-tooltip="true" width="120px"> |
| | | <template slot-scope="scope"> |
| | | <div class="showInline">{{ scope.row.pacRemark }}</div> |
| | | </template> |
| | |
| | | </template> |
| | | </el-table-column> --> |
| | | |
| | | <el-table-column |
| | | label="关键字" |
| | | width="110px" |
| | | align="center" |
| | | prop="keyNames" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="是否上架" |
| | | width="94px" |
| | | align="center" |
| | | prop="isOnSale" |
| | | > |
| | | <el-table-column label="关键字" width="110px" align="center" prop="keyNames"></el-table-column> |
| | | <el-table-column label="是否上架" width="94px" align="center" prop="isOnSale"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.sys_yes_no" |
| | | :value="scope.row.isOnSale" |
| | | /> |
| | | <dict-tag :options="dict.type.sys_yes_no" :value="scope.row.isOnSale" /> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column |
| | |
| | | align="center" |
| | | prop="detail" |
| | | ></el-table-column> --> |
| | | <el-table-column |
| | | label="排序" |
| | | width="50px" |
| | | align="center" |
| | | prop="sort" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="小程序价格" |
| | | width="90px" |
| | | align="center" |
| | | prop="retailPrice" |
| | | ></el-table-column> |
| | | <el-table-column label="排序" width="50px" align="center" prop="sort"></el-table-column> |
| | | <el-table-column label="小程序价格" width="90px" align="center" prop="retailPrice"></el-table-column> |
| | | <!-- <el-table-column |
| | | label="原价" |
| | | width="90px" |
| | | align="center" |
| | | prop="counterPrice" |
| | | ></el-table-column> --> |
| | | <el-table-column |
| | | label="已售数量" |
| | | width="90px" |
| | | align="center" |
| | | prop="saleNum" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="状态" |
| | | align="center" |
| | | prop="pacStatus" |
| | | fixed="right" |
| | | width="100px" |
| | | > |
| | | <el-table-column label="已售数量" width="90px" align="center" prop="saleNum"></el-table-column> |
| | | <el-table-column label="状态" align="center" prop="pacStatus" fixed="right" width="100px"> |
| | | <template slot-scope="scope"> |
| | | <el-switch |
| | | v-model="scope.row.pacStatus" |
| | | active-value="0" |
| | | inactive-value="1" |
| | | @change="handleStatusChange(scope.row)" |
| | | ></el-switch> |
| | | <el-switch v-model="scope.row.pacStatus" active-value="0" inactive-value="1" |
| | | @change="handleStatusChange(scope.row)"></el-switch> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | width="80px" |
| | | fixed="right" |
| | | class-name="small-padding fixed-width" |
| | | > |
| | | <el-table-column label="操作" align="center" width="80px" fixed="right" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:package:edit']" |
| | | title="修改" |
| | | ></el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | v-hasPermi="['system:package:remove']" |
| | | title="删除" |
| | | ></el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:package:edit']" title="修改"></el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
| | | v-hasPermi="['system:package:remove']" title="删除"></el-button> |
| | | <!-- <el-button size="mini" type="text" icon="el-icon-circle-check" @click="handleSeach(scope.row)" |
| | | v-hasPermi="['system:package:Seach']" title="套餐详情"></el-button> --> |
| | | </template> |
| | |
| | | |
| | | <div class="pag"> |
| | | <div class="pag1"> |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" @pagination="getList" /> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <!-- 修改体检套餐对话框 --> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="open" |
| | | width="1400px" |
| | | append-to-body |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-form |
| | | ref="form" |
| | | :model="form" |
| | | :rules="rules" |
| | | label-width="100px" |
| | | :inline="true" |
| | | > |
| | | <el-dialog :title="title" :visible.sync="open" width="1400px" append-to-body :close-on-click-modal="false"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true"> |
| | | <!-- <div class="dialo"> |
| | | <div class="dialo1"> --> |
| | | <el-form-item label="套餐名称" prop="pacName"> |
| | | <span |
| | | slot="label" |
| | | style="display: inline-block; border-bottom: 2px solid blue" |
| | | @click="handlePackage" |
| | | > |
| | | <span slot="label" style="display: inline-block; border-bottom: 2px solid blue" @click="handlePackage"> |
| | | 套餐名称 |
| | | </span> |
| | | <el-input |
| | | v-model="form.pacName" |
| | | placeholder="请输入套餐名称" |
| | | style="width: 150px" |
| | | /> |
| | | <el-input v-model="form.pacName" placeholder="请输入套餐名称" style="width: 150px" /> |
| | | </el-form-item> |
| | | <el-form-item label="套餐状态" prop="pacStatus"> |
| | | <!-- <el-radio-group v-model="form.pacStatus"> |
| | | <el-radio :label="0">启用</el-radio> |
| | | <el-radio :label="1">停用</el-radio> |
| | | </el-radio-group> --> |
| | | <el-select |
| | | v-model="form.pacStatus" |
| | | placeholder="请选择状态" |
| | | style="width: 150px" |
| | | filterable |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_normal_disable" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-select v-model="form.pacStatus" placeholder="请选择状态" style="width: 150px" filterable clearable> |
| | | <el-option v-for="dict in dict.type.sys_normal_disable" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <el-form-item label="体检类别" prop="tjCategory"> |
| | | <el-select |
| | | v-model="form.tjCategory" |
| | | placeholder="请选择体检类别" |
| | | style="width: 150px" |
| | | filterable |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.dict_tjtype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-select v-model="form.tjCategory" placeholder="请选择体检类别" style="width: 150px" filterable clearable> |
| | | <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | |
| | | <el-radio :label="0">启用</el-radio> |
| | | <el-radio :label="1">停用</el-radio> |
| | | </el-radio-group> --> |
| | | <el-select |
| | | v-model="form.isOnSale" |
| | | placeholder="请选择是否上架" |
| | | style="width: 140px" |
| | | filterable |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_yes_no" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-select v-model="form.isOnSale" placeholder="请选择是否上架" style="width: 140px" filterable clearable> |
| | | <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="排序" prop="sort"> |
| | | <el-input |
| | | v-model="form.sort" |
| | | placeholder="请输入排序" |
| | | style="width: 150px" |
| | | /> |
| | | <el-input v-model="form.sort" placeholder="请输入排序" style="width: 150px" /> |
| | | </el-form-item> |
| | | <el-form-item label="小程序价格" prop="retailPrice"> |
| | | <el-input |
| | | v-model="form.retailPrice" |
| | | placeholder="请输入小程序价格" |
| | | style="width: 150px" |
| | | /> |
| | | <el-input v-model="form.retailPrice" placeholder="请输入小程序价格" style="width: 150px" /> |
| | | </el-form-item> |
| | | <el-form-item label="原价" prop="pics"> |
| | | <el-input |
| | | v-model="pics" |
| | | placeholder="请输入原价" |
| | | style="width: 150px" |
| | | /> |
| | | <el-input v-model="pics" placeholder="请输入原价" style="width: 150px" /> |
| | | </el-form-item> |
| | | <el-form-item label="折扣"> |
| | | <el-input-number |
| | | ref="inputNumber" |
| | | style="width: 150px" |
| | | v-model="youhui" |
| | | :precision="2" |
| | | :step="0.1" |
| | | :max="10" |
| | | :min="1" |
| | | @change="numberChange" |
| | | ></el-input-number> |
| | | <el-input-number style="width: 150px" v-model="youhui" :precision="2" :step="0.1" :max="10" :min="1" |
| | | @change="numberChange"></el-input-number> |
| | | </el-form-item> |
| | | <el-form-item label="优惠价"> |
| | | <el-input |
| | | ref="inputName" |
| | | v-model="form.xianprice" |
| | | placeholder="优惠价" |
| | | clearable |
| | | style="width: 140px" |
| | | /> |
| | | |
| | | <el-form-item label="现价" prop="xianprice"> |
| | | <el-input v-model="form.xianprice" placeholder="现价" clearable style="width: 140px" @input="changeXianjia" |
| | | @blur="numberChangeXianPrice(youhui, youhui)" /> |
| | | </el-form-item> |
| | | <el-form-item label="关键字" prop="keywords"> |
| | | <el-select |
| | | multiple |
| | | v-model="form.keywords" |
| | | placeholder="请选择关键字" |
| | | style="width: 160px" |
| | | @change="sel" |
| | | filterable |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="item in keywordList" |
| | | :key="item.id" |
| | | :label="item.keyword" |
| | | :value="item.id" |
| | | ></el-option> |
| | | <el-select multiple v-model="form.keywords" placeholder="请选择关键字" style="width: 160px" @change="sel" filterable |
| | | clearable> |
| | | <el-option v-for="item in keywordList" :key="item.id" :label="item.keyword" :value="item.id"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <div v-if="!isCollapsed" style="display: flex"> |
| | | <div> |
| | | <el-form-item label="套餐描述" prop="pacRemark"> |
| | | <el-input |
| | | type="textarea" |
| | | v-model="form.pacRemark" |
| | | placeholder="请输入套餐描述" |
| | | style="width: 670px" |
| | | rows="2" |
| | | ></el-input> |
| | | <el-input type="textarea" v-model="form.pacRemark" placeholder="请输入套餐描述" style="width: 670px" |
| | | rows="2"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="详细介绍" prop="detail"> |
| | | <!-- <el-input |
| | |
| | | placeholder="请输入详细介绍" |
| | | style="width: 200px" |
| | | /> --> |
| | | <editor |
| | | v-model="form.detail" |
| | | :min-height="192" |
| | | style="width: 670px" |
| | | /> |
| | | <editor v-model="form.detail" :min-height="192" style="width: 670px" /> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- </div> --> |
| | |
| | | |
| | | <el-row style="display: flex; width: 1300px"> |
| | | <el-col> |
| | | <div |
| | | style="text-align: center; margin-bottom: 10px; margin-top: 10px" |
| | | > |
| | | <div style="text-align: center; margin-bottom: 10px; margin-top: 10px"> |
| | | 项目列表 |
| | | </div> |
| | | <el-input |
| | | placeholder="输入关键字进行过滤" |
| | | @input="handleFilterInput" |
| | | v-model="queryParams1.nr" |
| | | clearable |
| | | /> |
| | | <el-input placeholder="输入关键字进行过滤" @input="handleFilterInput" v-model="queryParams1.nr" clearable /> |
| | | <div class="tab3" style="height: 365px"> |
| | | <el-tree |
| | | class="filter-tree" |
| | | v-loading="loading" |
| | | :data="Treedata" |
| | | :props="defaultProps" |
| | | show-checkbox |
| | | node-key="proId" |
| | | @check-change="handleCurrentChecked" |
| | | :default-checked-keys="checkedkey" |
| | | :filter-node-method="filterNode" |
| | | ref="tree" |
| | | :render-content="renderContent" |
| | | > |
| | | <el-tree class="filter-tree" v-loading="loading" :data="Treedata" :props="defaultProps" show-checkbox |
| | | node-key="proId" @check-change="handleCurrentChecked" :default-checked-keys="checkedkey" |
| | | :filter-node-method="filterNode" ref="tree" :render-content="renderContent"> |
| | | </el-tree> |
| | | <pagination |
| | | small |
| | | v-show="total1 > 0" |
| | | :total="total1" |
| | | :page.sync="queryParams1.page" |
| | | :limit.sync="queryParams1.pageSize" |
| | | @pagination="getDataList" |
| | | /> |
| | | <pagination small v-show="total1 > 0" :total="total1" :page.sync="queryParams1.page" |
| | | :limit.sync="queryParams1.pageSize" @pagination="getDataList" /> |
| | | </div> |
| | | </el-col> |
| | | <!-- <el-col :span="6"> |
| | |
| | | </el-col> --> |
| | | <el-col> |
| | | <div class="grid-content bg-purple"> |
| | | <div |
| | | style=" |
| | | <div style=" |
| | | text-align: center; |
| | | margin-bottom: 10px; |
| | | margin-top: 10px; |
| | | margin-left: 8%; |
| | | " |
| | | > |
| | | "> |
| | | 已选项目列表 |
| | | </div> |
| | | <el-table |
| | | :data="DataList" |
| | | border |
| | | style="width: 90%; margin-left: 20px" |
| | | height="400" |
| | | :span-method="objectSpanMethod" |
| | | > |
| | | <el-table :data="DataList" border style="width: 90%; margin-left: 20px" height="400" |
| | | :span-method="objectSpanMethod"> |
| | | <el-table-column prop="proName" label="检查项目"> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="priceOrd" |
| | | label="原价" |
| | | align="center" |
| | | width="80px" |
| | | > |
| | | <el-table-column prop="priceOrd" label="原价" align="center" width="80px"> |
| | | </el-table-column> |
| | | <el-table-column label="折扣" width="100px"> |
| | | <template slot-scope="scope"> |
| | | <!-- 只输入纯数字折扣 --> |
| | | <el-input |
| | | v-model.number="scope.row.limits" |
| | | @input="calculateDiscount(scope.row)" |
| | | placeholder="输入折扣" |
| | | size="small" |
| | | type="number" |
| | | min="0" |
| | | step="0.1" |
| | | max="10" |
| | | > |
| | | <el-input v-model.number="scope.row.limits" @input="calculateDiscount(scope.row)" placeholder="输入折扣" |
| | | size="small" type="number" min="0" step="0.1" max="10"> |
| | | </el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="priceNow" |
| | | label="优惠价" |
| | | width="80px" |
| | | align="center" |
| | | > |
| | | <el-table-column prop="priceNow" label="优惠价" width="80px" align="center"> |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" width="80px"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete1(scope.row)" |
| | | title="删除" |
| | | > |
| | | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete1(scope.row)" title="删除"> |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | // allpackage:[], |
| | | // 弹出层标题 |
| | | title: "", |
| | | lastXianPrice: 0, |
| | | // 是否显示弹出层 |
| | | open: false, |
| | | Seachopen: false, |
| | |
| | | console.log(this.categoryList, 9988); |
| | | }); |
| | | }, |
| | | shangpin(vals) {}, |
| | | shangpin(vals) { }, |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.open = false; |
| | |
| | | // this.loading = false; |
| | | // }); |
| | | getPacInFo(this.forms.pacId).then((response) => { |
| | | this.form = response.data; |
| | | // this.form = response.data; |
| | | Object.keys(response.data).forEach((key) => { |
| | | this.$set(this.form, key, response.data[key]); |
| | | }); |
| | | console.log(this.form, 2233); |
| | | |
| | | this.form.keywords = this.form.keywords.slice(0, -1); |
| | |
| | | this.title = "体检套餐信息维护"; |
| | | this.open = true; |
| | | getPacInFo(row.pacId).then((response) => { |
| | | this.form = response.data; |
| | | // this.form = response.data; |
| | | console.log(this.form, 445); |
| | | |
| | | Object.keys(response.data).forEach((key) => { |
| | | this.$set(this.form, key, response.data[key]); |
| | | }); |
| | | this.lastXianPrice = this.form.xianprice |
| | | this.form.keywords = this.form.keywords.slice(0, -1); |
| | | this.form.keywords = this.form.keywords.split(","); |
| | | this.DataList = []; |
| | |
| | | 0 |
| | | ); |
| | | }, |
| | | |
| | | changeXianjia() { |
| | | // 原始折扣率计算 |
| | | if (this.form.xianprice !== 0) { |
| | | this.youhui = |
| | | (Math.floor((this.form.xianprice / this.pics) * 100) / 100) * 10; |
| | | } |
| | | }, |
| | | |
| | | numberChangeXianPrice(currentValue, oldValue) { |
| | | // 如果现价没有变化,直接返回 |
| | | if (this.form.xianprice === this.lastXianPrice || !this.form.xianprice) { |
| | | return; |
| | | } |
| | | this.$confirm("确定修改所有子项的折扣吗?", "提示", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | this.youhui = currentValue; |
| | | if (this.youhui < this.getInfodis) { |
| | | this.youhui = this.getInfodis; |
| | | } |
| | | let totalYsprice = new Big(0); |
| | | this.DataList.forEach((item) => { |
| | | item.limits = this.youhui; |
| | | const ordPrice = new Big(item.priceOrd); |
| | | const discount = new Big(item.limits); |
| | | const result = ordPrice.times(discount.div(10)); |
| | | item.priceNow = result.toNumber(); |
| | | totalYsprice = totalYsprice.plus(new Big(item.priceNow)); |
| | | }); |
| | | if (!totalYsprice.eq(this.form.xianprice)) { |
| | | const diff = new Big(this.form.xianprice).minus(totalYsprice); |
| | | if (this.DataList.length > 0) { |
| | | const lastItem = this.DataList[this.DataList.length - 1]; |
| | | const newYsPrice = new Big(lastItem.priceNow) |
| | | .plus(diff) |
| | | .toNumber(); |
| | | console.log( |
| | | "hhh", |
| | | this.DataList[this.DataList.length - 1].priceNow, |
| | | newYsPrice |
| | | ); |
| | | this.$set( |
| | | this.DataList[this.DataList.length - 1], |
| | | "priceNow", |
| | | newYsPrice |
| | | ); |
| | | } |
| | | } |
| | | this.lastXianPrice = this.form.xianprice; |
| | | }) |
| | | .catch(() => { |
| | | this.youhui = oldValue; |
| | | }); |
| | | }, |
| | | spliceData() { |
| | | for (var i = 0; i < this.DataList.length; i++) { |
| | | for (var j = i + 1; j < this.DataList.length; j++) { |
| | |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { }); |
| | | }, |
| | | |
| | | /** 分配套餐内项目操作 */ |
| | |
| | | left: 40%; |
| | | bottom: 2%; |
| | | } |
| | | |
| | | .tab3 { |
| | | max-height: 400px; |
| | | overflow-y: auto; |
| | | border: 1px solid #d9d9d9; |
| | | } |
| | | |
| | | /* .custom-tree-node { |
| | | flex: 1; |
| | | display: flex; |