|
|
@@ -9,9 +9,10 @@
|
|
|
:rules="validatorRules"
|
|
|
slot="detail"
|
|
|
>
|
|
|
+ <!-- 1 -->
|
|
|
<div class="item-wrapper">
|
|
|
<div class="wrapper-content">1、进店时间在</div>
|
|
|
- <div class="wrapper-form-item">
|
|
|
+ <div class="wrapper-form-item" style="width: 128px">
|
|
|
<a-form-model-item
|
|
|
label=""
|
|
|
:labelCol="labelCol"
|
|
|
@@ -39,20 +40,191 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <a-form-model-item
|
|
|
- label=""
|
|
|
- :labelCol="labelCol"
|
|
|
- :wrapperCol="wrapperCol"
|
|
|
- prop="ass"
|
|
|
- >
|
|
|
- <a-input v-model="model.ass"></a-input>
|
|
|
- </a-form-model-item>
|
|
|
+ <!-- 2 -->
|
|
|
+ <div class="item-wrapper">
|
|
|
+ <div class="wrapper-content">2、全天房中午退房时间</div>
|
|
|
+ <div class="wrapper-form-item">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="leaveTime"
|
|
|
+ >
|
|
|
+ <a-time-picker
|
|
|
+ :open.sync="open2"
|
|
|
+ v-model="model.leaveTime"
|
|
|
+ format="HH:mm"
|
|
|
+ >
|
|
|
+ <a-button
|
|
|
+ slot="addon"
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ @click="open2 = false"
|
|
|
+ >
|
|
|
+ 确定
|
|
|
+ </a-button>
|
|
|
+ </a-time-picker>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">,超时则</div>
|
|
|
+ <div class="wrapper-form-item">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="timeOutRule"
|
|
|
+ >
|
|
|
+ <a-select
|
|
|
+ default-value="1"
|
|
|
+ style="width: 150px"
|
|
|
+ v-model="model.timeOutRule"
|
|
|
+ >
|
|
|
+ <a-select-option
|
|
|
+ :value="item.value"
|
|
|
+ v-for="item in rulesMap"
|
|
|
+ :key="item.value"
|
|
|
+ >
|
|
|
+ {{ item.name }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">,直到</div>
|
|
|
+ <div class="wrapper-form-item">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="endTime"
|
|
|
+ >
|
|
|
+ <a-time-picker
|
|
|
+ :open.sync="open3"
|
|
|
+ v-model="model.endTime"
|
|
|
+ format="HH:mm"
|
|
|
+ >
|
|
|
+ <a-button
|
|
|
+ slot="addon"
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ @click="open3 = false"
|
|
|
+ >
|
|
|
+ 确定
|
|
|
+ </a-button>
|
|
|
+ </a-time-picker>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">,加收全天房费</div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 按分钟加收规则 -->
|
|
|
+ <div v-if="model.timeOutRule == 1">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="ruleType"
|
|
|
+ >
|
|
|
+ <a-radio-group
|
|
|
+ name="radioGroup"
|
|
|
+ :default-value="1"
|
|
|
+ v-model="model.ruleType"
|
|
|
+ >
|
|
|
+ <a-radio :value="1"> 统一设置 </a-radio>
|
|
|
+ <a-radio :value="2"> 根据房型设置 </a-radio>
|
|
|
+ </a-radio-group>
|
|
|
+ </a-form-model-item>
|
|
|
+ <!-- 统一配置分钟房费加收 -->
|
|
|
+ <div class="item-wrapper" v-if="model.timeOutRule == 1 && model.ruleType == 1">
|
|
|
+ <div class="wrapper-content">超时之后,每隔</div>
|
|
|
+ <div class="wrapper-form-item" style="width: 98px">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="minute"
|
|
|
+ >
|
|
|
+ <a-input-number :min="1" v-model="model.minute"></a-input-number>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">
|
|
|
+ 分钟收取
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-form-item" style="width: 98px">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="price"
|
|
|
+ >
|
|
|
+ <a-input-number :min="0" v-model="model.price"></a-input-number>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">
|
|
|
+ 元,不足 {{ model.minute }} 分钟,超过
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-form-item" style="width: 98px">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="moreThenMinute"
|
|
|
+ >
|
|
|
+ <a-input-number :min="0" v-model="model.moreThenMinute"></a-input-number>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">
|
|
|
+ 分钟加收
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-form-item" style="width: 98px">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="moreThenPrice"
|
|
|
+ >
|
|
|
+ <a-input-number :min="0" v-model="model.moreThenPrice"></a-input-number>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">
|
|
|
+ 元。
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 按房型配置分钟房费加收 -->
|
|
|
+ <div class="item-wrapper" v-if="model.timeOutRule == 1 && model.ruleType == 2">
|
|
|
+
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 3 -->
|
|
|
+ <div class="item-wrapper">
|
|
|
+ <div class="wrapper-content">3、全天房超过退房时间可以再宽限</div>
|
|
|
+ <div class="wrapper-form-item" style="width: 98px">
|
|
|
+ <a-form-model-item
|
|
|
+ label=""
|
|
|
+ :labelCol="labelCol"
|
|
|
+ :wrapperCol="wrapperCol"
|
|
|
+ prop="dayTime"
|
|
|
+ >
|
|
|
+ <a-input-number
|
|
|
+ v-model="model.dayTime"
|
|
|
+ style="width: 100px"
|
|
|
+ ></a-input-number>
|
|
|
+ </a-form-model-item>
|
|
|
+ </div>
|
|
|
+ <div class="wrapper-content">分钟</div>
|
|
|
+ </div>
|
|
|
+ <div class="buttons">
|
|
|
+ <a-button style="margin-right: 10px" @click="reload">刷新</a-button>
|
|
|
+ <a-button type="primary" @click="save">保存</a-button>
|
|
|
+ </div>
|
|
|
</a-form-model>
|
|
|
</j-form-container>
|
|
|
</a-spin>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { fetch } from "@/api/allDaysPriceRuleApi";
|
|
|
+import { getAllLayouts } from '@/api/roomLayout'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -65,30 +237,86 @@ export default {
|
|
|
sm: { span: 24 },
|
|
|
},
|
|
|
open1: false,
|
|
|
+ open2: false,
|
|
|
+ open3: false,
|
|
|
enterTime: "",
|
|
|
confirmLoading: false,
|
|
|
+ rulesMap: [
|
|
|
+ {
|
|
|
+ name: "按分钟加收房费",
|
|
|
+ value: 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "按半天房费加收",
|
|
|
+ value: 2,
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ name: "不加收房费",
|
|
|
+ value: 3,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ layouts: [],
|
|
|
model: {
|
|
|
enterTime: null,
|
|
|
- ass: null,
|
|
|
+ timeOutRule: 1,
|
|
|
+ leaveTime: null,
|
|
|
+ endTime: null,
|
|
|
+ dayTime: null,
|
|
|
+ ruleType: 1,
|
|
|
+ layoutRules: [],
|
|
|
+ minute: null,
|
|
|
+ price: null,
|
|
|
+ moreThenMinute: null,
|
|
|
+ moreThenPrice: null
|
|
|
},
|
|
|
validatorRules: {
|
|
|
enterTime: [
|
|
|
{
|
|
|
required: true,
|
|
|
- message: "进!",
|
|
|
+ message: "进店时间在多少分钟之后的,算第二天退房不能为空!",
|
|
|
},
|
|
|
],
|
|
|
- ass: [{ required: true, message: "测试" }],
|
|
|
+ leaveTime: [{ required: true, message: "退房时间不能为空" }],
|
|
|
+ dayTime: [{ required: true, message: "超时宽限多少分钟不能为空" }],
|
|
|
},
|
|
|
};
|
|
|
},
|
|
|
+ mounted() {
|
|
|
+ this.loadLayouts()
|
|
|
+ this.loadRules();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ loadLayouts() {
|
|
|
+ getAllLayouts().then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ res.result.records.forEach
|
|
|
+ this.layouts = res.result.records
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ loadRules() {
|
|
|
+ fetch().then((res) => {});
|
|
|
+ },
|
|
|
+ reload() {},
|
|
|
+ save() {},
|
|
|
+ },
|
|
|
};
|
|
|
</script>
|
|
|
|
|
|
<style lang="css" scoped>
|
|
|
-.item-wrapper{
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- height: 50px;
|
|
|
+/deep/ .ant-form-explain {
|
|
|
+ width: 300% !important;
|
|
|
+}
|
|
|
+.item-wrapper {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ height: 50px;
|
|
|
+ margin-top: 22px;
|
|
|
+ margin-bottom: 22px;
|
|
|
+}
|
|
|
+.wrapper-form-item {
|
|
|
+ height: 38px;
|
|
|
+ /* margin-top: 22px; */
|
|
|
}
|
|
|
</style>
|