Explorar el Código

门店信息完善

WIN-B904R0U0NNS\Administrator hace 2 años
padre
commit
bc766f9cff

+ 60 - 5
src/api/hotel.js

@@ -3,8 +3,8 @@ import { axios } from '@/utils/request'
 
 /**
  * 添加酒店
- * @param {参数} parameter 
- * @returns 
+ * @param {参数} parameter
+ * @returns
  */
 export function newHotel(parameter) {
     return axios({
@@ -16,12 +16,67 @@ export function newHotel(parameter) {
 
 /**
  * 当前租户的酒店列表
- * @param {参数} parameter 
- * @returns 
+ * @param {参数} parameter
+ * @returns
  */
  export function hotelList(parameter) {
     return axios({
         url: '/business/busHotel/list?pageNo='+(parameter.pageNo||1)+'&pageSize='+(parameter.pageSize||10)+"&key="+parameter.key,
         method: 'get',
     })
-}
+}
+
+/**
+ * 获取单个酒店信息
+ * @param {参数} parameter
+ * @returns
+ */
+export function getHotelInfo(parameter) {
+    return axios({
+        url: '/business/busHotel/queryById?id='+parameter.id,
+        method: 'get',
+    })
+}
+
+
+/**
+ * 编辑酒店基本信息
+ * @param {参数} parameter
+ * @returns
+ */
+export function editMainInfo(parameter) {
+    return axios({
+        url: '/business/busHotel/editMainInfo',
+        method: 'post',
+        data: parameter
+    })
+}
+
+/**
+ * 编辑酒店图片信息
+ * @param {参数} parameter
+ * @returns
+ */
+export function editImage(parameter) {
+    return axios({
+        url: '/business/busHotel/editImage',
+        method: 'post',
+        data: parameter
+    })
+}
+
+/**
+ * 编辑酒店认证信息
+ * @param {参数} parameter
+ * @returns
+ */
+export function editAuthInfo(parameter) {
+    return axios({
+        url: '/business/busHotel/editAuthInfo',
+        method: 'post',
+        data: parameter
+    })
+}
+
+
+

+ 252 - 0
src/views/settings/components/marketMemberForm.vue

@@ -0,0 +1,252 @@
+<template>
+  <a-spin :spinning="confirmLoading">
+    <j-form-container :disabled="formDisabled">
+      <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
+        <a-row>
+          <a-col :span="24">
+            <a-form-model-item label="关联租户" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tenantId">
+              <a-input v-model="model.tenantId" placeholder="请输入关联租户"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="关联酒店" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hotelId">
+              <a-input v-model="model.hotelId" placeholder="请输入关联酒店"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
+              <a-input v-model="model.name" placeholder="请输入会员名称"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员类型(0-会员折扣;1-房价方案)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="type">
+              <a-input-number v-model="model.type" placeholder="请输入会员类型(0-会员折扣;1-房价方案)" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员折扣值" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="discount">
+              <a-input-number v-model="model.discount" placeholder="请输入会员折扣值" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="关联房价方案" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="schemeId">
+              <a-input v-model="model.schemeId" placeholder="请输入关联房价方案"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="是否需要支付(0-否;1-是)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payFlag">
+              <a-input-number v-model="model.payFlag" placeholder="请输入是否需要支付(0-否;1-是)" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="支付金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payAmount">
+              <a-input-number v-model="model.payAmount" placeholder="请输入支付金额" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="购买会员卡所需积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payIntegral">
+              <a-input-number v-model="model.payIntegral" placeholder="请输入购买会员卡所需积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="是否可以储值(0-否;1-是)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="payStored">
+              <a-input-number v-model="model.payStored" placeholder="请输入是否可以储值(0-否;1-是)" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="level">
+              <a-input-number v-model="model.level" placeholder="请输入会员等级" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员优惠(每一积分可抵扣金额)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hyyh">
+              <a-input-number v-model="model.hyyh" placeholder="请输入会员优惠(每一积分可抵扣金额)" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="充值是否自动续期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="renewal">
+              <a-input v-model="model.renewal" placeholder="请输入充值是否自动续期"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="自动续期天数" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="renewalDay">
+              <a-input-number v-model="model.renewalDay" placeholder="请输入自动续期天数" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="积分类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="integralTypes">
+              <a-input v-model="model.integralTypes" placeholder="请输入积分类型"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="客房积分模式(1-所有的消费转成积分;2-只房费转积分;)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tenantPoints">
+              <a-input v-model="model.tenantPoints" placeholder="请输入客房积分模式(1-所有的消费转成积分;2-只房费转积分;)"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="客房消费金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tenantRoomIntegral">
+              <a-input-number v-model="model.tenantRoomIntegral" placeholder="请输入客房消费金额" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="客房消费可增加积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="addTenantRoomIntegral">
+              <a-input-number v-model="model.addTenantRoomIntegral" placeholder="请输入客房消费可增加积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="储值卡消费金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="roomIntegral">
+              <a-input-number v-model="model.roomIntegral" placeholder="请输入储值卡消费金额" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="储值卡消费可增加积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="addRoomIntegral">
+              <a-input-number v-model="model.addRoomIntegral" placeholder="请输入储值卡消费可增加积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="入住天数" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dayIntegral">
+              <a-input-number v-model="model.dayIntegral" placeholder="请输入入住天数" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="入住可增加积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="addDayIntegral">
+              <a-input-number v-model="model.addDayIntegral" placeholder="请输入入住可增加积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="充值金额" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="rechargeIntegral">
+              <a-input-number v-model="model.rechargeIntegral" placeholder="请输入充值金额" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="充值可增加积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="addRechargeIntegral">
+              <a-input-number v-model="model.addRechargeIntegral" placeholder="请输入充值可增加积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="自动升级所需积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upLevelIntegral">
+              <a-input-number v-model="model.upLevelIntegral" placeholder="请输入自动升级所需积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="自动升级等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="upLevel">
+              <a-input-number v-model="model.upLevel" placeholder="请输入自动升级等级" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="升级后剩余积分" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="subLevelIntegral">
+              <a-input-number v-model="model.subLevelIntegral" placeholder="请输入升级后剩余积分" style="width: 100%" />
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="会员图标" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="icon">
+              <a-input v-model="model.icon" placeholder="请输入会员图标"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="卡片背景" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bgImage">
+              <a-input v-model="model.bgImage" placeholder="请输入卡片背景"  ></a-input>
+            </a-form-model-item>
+          </a-col>
+          <a-col :span="24">
+            <a-form-model-item label="卡片描述" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="content">
+              <a-textarea v-model="model.content" rows="4" placeholder="请输入卡片描述" />
+            </a-form-model-item>
+          </a-col>
+        </a-row>
+      </a-form-model>
+    </j-form-container>
+  </a-spin>
+</template>
+
+<script>
+
+  import { httpAction, getAction } from '@/api/manage'
+  import { validateDuplicateValue } from '@/utils/util'
+
+  export default {
+    name: 'marketMemberForm',
+    components: {
+    },
+    props: {
+      //表单禁用
+      disabled: {
+        type: Boolean,
+        default: false,
+        required: false
+      }
+    },
+    data () {
+      return {
+        model:{
+         },
+        labelCol: {
+          xs: { span: 24 },
+          sm: { span: 5 },
+        },
+        wrapperCol: {
+          xs: { span: 24 },
+          sm: { span: 16 },
+        },
+        confirmLoading: false,
+        validatorRules: {
+           name: [
+              { required: true, message: '请输入会员名称!'},
+           ],
+        },
+        url: {
+          add: "/business/busMarketMember/add",
+          edit: "/business/busMarketMember/edit",
+          queryById: "/business/busMarketMember/queryById"
+        }
+      }
+    },
+    computed: {
+      formDisabled(){
+        return this.disabled
+      },
+    },
+    created () {
+       //备份model原始值
+      this.modelDefault = JSON.parse(JSON.stringify(this.model));
+    },
+    methods: {
+      add () {
+        this.edit(this.modelDefault);
+      },
+      edit (record) {
+        this.model = Object.assign({}, record);
+        this.visible = true;
+      },
+      submitForm () {
+        const that = this;
+        // 触发表单验证
+        this.$refs.form.validate(valid => {
+          if (valid) {
+            that.confirmLoading = true;
+            let httpurl = '';
+            let method = '';
+            if(!this.model.id){
+              httpurl+=this.url.add;
+              method = 'post';
+            }else{
+              httpurl+=this.url.edit;
+               method = 'put';
+            }
+            httpAction(httpurl,this.model,method).then((res)=>{
+              if(res.success){
+                that.$message.success(res.message);
+                that.$emit('ok');
+              }else{
+                that.$message.warning(res.message);
+              }
+            }).finally(() => {
+              that.confirmLoading = false;
+            })
+          }
+
+        })
+      },
+    }
+  }
+</script>

+ 84 - 0
src/views/settings/components/marketMemberModal.Style#Drawer.vue

@@ -0,0 +1,84 @@
+<template>
+  <a-drawer
+    :title="title"
+    :width="width"
+    placement="right"
+    :closable="false"
+    @close="close"
+    destroyOnClose
+    :visible="visible">
+    <bus-market-member-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" normal></bus-market-member-form>
+    <div class="drawer-footer">
+      <a-button @click="handleCancel" style="margin-bottom: 0;">关闭</a-button>
+      <a-button v-if="!disableSubmit"  @click="handleOk" type="primary" style="margin-bottom: 0;">提交</a-button>
+    </div>
+  </a-drawer>
+</template>
+
+<script>
+
+  import marketMemberForm from './marketMemberForm'
+
+  export default {
+    name: 'marketMemberModal',
+    components: {
+      marketMemberForm
+    },
+    data () {
+      return {
+        title:"操作",
+        width:800,
+        visible: false,
+        disableSubmit: false
+      }
+    },
+    methods: {
+      add () {
+        this.visible=true
+        this.$nextTick(()=>{
+          this.$refs.realForm.add();
+        })
+      },
+      edit (record) {
+        this.visible=true
+        this.$nextTick(()=>{
+          this.$refs.realForm.edit(record);
+        });
+      },
+      close () {
+        this.$emit('close');
+        this.visible = false;
+      },
+      submitCallback(){
+        this.$emit('ok');
+        this.visible = false;
+      },
+      handleOk () {
+        this.$refs.realForm.submitForm();
+      },
+      handleCancel () {
+        this.close()
+      }
+    }
+  }
+</script>
+
+<style lang="less" scoped>
+/** Button按钮间距 */
+  .ant-btn {
+    margin-left: 30px;
+    margin-bottom: 30px;
+    float: right;
+  }
+  .drawer-footer{
+    position: absolute;
+    bottom: -8px;
+    width: 100%;
+    border-top: 1px solid #e8e8e8;
+    padding: 10px 16px;
+    text-align: right;
+    left: 0;
+    background: #fff;
+    border-radius: 0 0 2px 2px;
+  }
+</style>

+ 60 - 0
src/views/settings/components/marketMemberModal.vue

@@ -0,0 +1,60 @@
+<template>
+  <j-modal
+    :title="title"
+    :width="width"
+    :visible="visible"
+    switchFullscreen
+    @ok="handleOk"
+    :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
+    @cancel="handleCancel"
+    cancelText="关闭">
+    <bus-market-member-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></bus-market-member-form>
+  </j-modal>
+</template>
+
+<script>
+
+  import marketMemberForm from './marketMemberForm'
+  export default {
+    name: 'marketMemberModal',
+    components: {
+      marketMemberForm
+    },
+    data () {
+      return {
+        title:'',
+        width:800,
+        visible: false,
+        disableSubmit: false
+      }
+    },
+    methods: {
+      add () {
+        this.visible=true
+        this.$nextTick(()=>{
+          this.$refs.realForm.add();
+        })
+      },
+      edit (record) {
+        this.visible=true
+        this.$nextTick(()=>{
+          this.$refs.realForm.edit(record);
+        })
+      },
+      close () {
+        this.$emit('close');
+        this.visible = false;
+      },
+      handleOk () {
+        this.$refs.realForm.submitForm();
+      },
+      submitCallback(){
+        this.$emit('ok');
+        this.visible = false;
+      },
+      handleCancel () {
+        this.close()
+      }
+    }
+  }
+</script>

+ 38 - 13
src/views/settings/components/storeAuthInfo.vue

@@ -4,28 +4,29 @@
             经营执照
             <span class="red-txt">(*必填)</span>
         </a-divider>
+        <a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
         <a-form-item label="营业执照">
             <j-image-upload class="avatar-uploader" text="上传"
-                v-decorator="['certImg', { rules: [{ required: true, message: '请上传营业执照!' }] }]"></j-image-upload>
+                v-decorator="['yyImg', { rules: [{ required: true, message: '请上传营业执照!' }] }]"></j-image-upload>
         </a-form-item>
         <a-form-item label="特种行业许可">
             <j-image-upload class="avatar-uploader" text="上传"
-                v-decorator="['tzImg', { rules: [{ required: false, message: '请上传营业执照!' }] }]"></j-image-upload>
+                v-decorator="['tzhyImg', { rules: [{ required: false, message: '请上传营业执照!' }] }]"></j-image-upload>
         </a-form-item>
 
         <a-form-item label="企业法人">
             <a-input type="text" placeholder="请填写企业法人"
-                v-decorator="['faren', { rules: [{ required: true, message: '请填写企业法人!' }] }]"></a-input>
+                v-decorator="['legalPerson', { rules: [{ required: true, message: '请填写企业法人!' }] }]"></a-input>
         </a-form-item>
 
         <a-form-item label="经营场所">
             <a-input type="text" placeholder="请填写经营场所"
-                v-decorator="['jyAddress', { rules: [{ required: true, message: '请填写经营场所!' }] }]"></a-input>
+                v-decorator="['registeredAddress', { rules: [{ required: true, message: '请填写经营场所!' }] }]"></a-input>
         </a-form-item>
 
         <a-form-item label="有效期">
             <a-date-picker type="text" placeholder="请填写经营场所"
-                v-decorator="['valideDate', { rules: [{ required: false, message: '请填写经营场所!' }] }]"></a-date-picker>
+                v-decorator="['businessTerm', { rules: [{ required: false, message: '请填写经营场所!' }] }]"></a-date-picker>
         </a-form-item>
         <a-divider orientation="left">
             个人证件
@@ -36,41 +37,62 @@
         </a-divider>
         <a-form-item label="身份证照(正面)">
             <j-image-upload class="avatar-uploader" text="上传"
-                v-decorator="['idcardFront', { rules: [{ required: true, message: '请上传身份证照(正面)!' }] }]"></j-image-upload>
+                v-decorator="['sfzImg1', { rules: [{ required: true, message: '请上传身份证照(正面)!' }] }]"></j-image-upload>
         </a-form-item>
 
         <a-form-item label="身份证照(反面)">
             <j-image-upload class="avatar-uploader" text="上传"
-                v-decorator="['idcardBack', { rules: [{ required: true, message: '请上传身份证照(反面)!' }] }]"></j-image-upload>
+                v-decorator="['sfzImg2', { rules: [{ required: true, message: '请上传身份证照(反面)!' }] }]"></j-image-upload>
         </a-form-item>
 
         <a-form-item label="手持身份证照">
             <j-image-upload class="avatar-uploader" text="上传"
-                v-decorator="['idcardHand', { rules: [{ required: true, message: '请上传手持身份证照!' }] }]"></j-image-upload>
+                v-decorator="['sfzImg3', { rules: [{ required: true, message: '请上传手持身份证照!' }] }]"></j-image-upload>
             <a-button type="link" @click="warning">手持证件要求</a-button>
         </a-form-item>
 
         <a-form-item label="联系人姓名">
             <a-input type="text" placeholder="请填写联系人姓名"
-                v-decorator="['lxrName', { rules: [{ required: true, message: '请填写联系人姓名!' }] }]"></a-input>
+                v-decorator="['sfzName', { rules: [{ required: true, message: '请填写联系人姓名!' }] }]"></a-input>
         </a-form-item>
 
         <a-form-item label="身份证号">
             <a-input type="text" placeholder="请填写身份证号"
-                v-decorator="['idcardNo', { rules: [{ required: true, message: '请填写身份证号!' }] }]"></a-input>
+                v-decorator="['idCard', { rules: [{ required: true, message: '请填写身份证号!' }] }]"></a-input>
         </a-form-item>
 
         <a-button type="primary" @click="submit">确定</a-button>
 
-       
+
     </a-form>
 </template>
 
 <script>
 import { Modal } from 'ant-design-vue';
+import { editAuthInfo} from "../../../api/hotel";
+
 export default {
     created() {
         // alert("这里获取当前缓存门店信息,照片信息");
+        var info = JSON.parse(localStorage.getItem("storeInfo"));
+        console.log(info)
+        setTimeout(() => {
+            this.form.setFieldsValue(
+                {
+                    id: info.id,
+                    yyImg: info.yyImg,
+                    tzhyImg: info.tzhyImg,
+                    legalPerson: info.legalPerson,
+                    registeredAddress: info.registeredAddress,
+                    businessTerm: info.businessTerm,
+                    sfzImg1: info.sfzImg1,
+                    sfzImg2: info.sfzImg2,
+                    sfzImg3: info.sfzImg3,
+                    sfzName: info.sfzName,
+                    idCard: info.idCard
+                }
+            )
+        },100)
     },
     data() {
         return {
@@ -116,7 +138,10 @@ export default {
             this.form.validateFields((err, values) => {
                 console.log(values)
                 if (!err) {
-                    console.info('success');
+                    editAuthInfo(values).then(res=>{
+                        this.$message.success('编辑成功')
+                        localStorage.setItem("storeInfo", JSON.stringify(res.result))
+                    })
                 }
             });
         }
@@ -128,4 +153,4 @@ export default {
 .red-txt {
     color: red;
 }
-</style>
+</style>

+ 25 - 1
src/views/settings/components/storeImages.vue

@@ -1,5 +1,6 @@
 <template>
     <a-form-model ref="form" :model="model" :label-col="{ span: 3 }" :wrapper-col="{ span: 17 }">
+        <a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
         <a-form-model-item label="门头照" >
             <j-image-upload class="avatar-uploader" text="上传" v-model="model.ewm" ></j-image-upload>
           </a-form-model-item>
@@ -11,13 +12,27 @@
 </template>
 
 <script>
+import { editImage} from "../../../api/hotel";
+
 export default {
     created() {
         // alert("这里获取当前缓存门店信息,照片信息");
+        var _info = JSON.parse(localStorage.getItem("storeInfo"));
+        console.log(_info)
+        if(_info){
+            this.model.id = _info.id;
+            if (_info.ewmLogo){
+                this.model.ewm = _info.ewmLogo
+            }
+            if (_info.imgs){
+                this.model.imgList = _info.imgs;
+            }
+        }
     },
     data() {
         return {
             model: {
+                id: 0,
                 ewm: null,
                 imgList: null
             }
@@ -26,10 +41,19 @@ export default {
     methods: {
         submit() {
             console.log(this.model)
+            var values = {};
+            values['id'] = this.model.id
+            values['ewmLogo'] = this.model.ewm
+            values['imgs'] = this.model.imgList;
+
+            editImage(values).then(res=>{
+                this.$message.success('编辑成功')
+                localStorage.setItem("storeInfo", JSON.stringify(res.result))
+            })
         }
     },
 }
 </script>
 
 <style scoped>
-</style>
+</style>

+ 490 - 0
src/views/settings/components/storeInfos.vue

@@ -0,0 +1,490 @@
+<template>
+    <a-form ref="form" :model="model" :form="form" :rules="validatorRules"  :label-col="{ span: 2 }" :wrapper-col="{ span: 22 }">
+        <a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
+        <a-form-item label="酒店名称">
+            <a-input type="text" placeholder="请填写酒店名称"
+                     v-decorator="['name', { rules: [{ required: true, message: '请填写酒店名称!' }] }]"></a-input>
+        </a-form-item>
+
+        <a-form-item label="星级" :wrapper-col="{ span: 5 }">
+<!--            <j-dict-select-tag v-model="model.tenantId" placeholder="请选择关联租户" dictCode="sys_tenant,name,id" />-->
+<!--            v-model="form.sex"-->
+            <a-select placeholder="请选择星级"
+                      v-decorator="['star', {rules: [{ required: true, message: '请选择项目名称!' }]}]">
+                <a-select-option :value="1">一星及以下/经济</a-select-option>
+                <a-select-option :value="2">二星/实惠</a-select-option>
+                <a-select-option :value="3">三星/舒适</a-select-option>
+                <a-select-option :value="4">四星/高档</a-select-option>
+                <a-select-option :value="5">五星/豪华</a-select-option>
+            </a-select>
+        </a-form-item>
+
+        <a-form-item label="酒店地址">
+            <a-input type="text" placeholder="请填写酒店地址"
+                     v-decorator="['address', { rules: [{ required: true, message: '请填写酒店地址!' }] }]"></a-input>
+        </a-form-item>
+
+        <a-form-item label="经纬度">
+            <a-row>
+                <a-col :span="10">
+                    <a-input type="text" placeholder="请填写经纬度"
+                             v-decorator="['latlng', { rules: [{ required: true, message: '请填写经纬度!' }] }]"></a-input>
+                </a-col>
+                <a-col :span="3" class="padding_left_10">
+                    <a-button @click="getLonAndLat()" >获取经纬度</a-button>
+                </a-col>
+                <a-col :span="3" class="padding_left_10">
+                    <a-button @click="getLonAndLat()" >地图选点</a-button>
+                </a-col>
+            </a-row>
+        </a-form-item>
+
+        <a-form-item label="联系人">
+            <a-input type="text" placeholder="请填写联系人"
+                     v-decorator="['linkName']"></a-input>
+        </a-form-item>
+
+        <a-form-item label="联系电话">
+            <a-input type="text" placeholder="请填写电话"
+                     v-decorator="['linkTel']"></a-input>
+        </a-form-item>
+
+        <a-form-item label="酒店电话">
+            <a-input type="text" placeholder="请填写酒店电话"
+                     v-decorator="['tel', { rules: [{ required: true, message: '请填写酒店电话!' }] }]"></a-input>
+        </a-form-item>
+
+        <a-form-item label="开业时间">
+            <a-date-picker type="text" placeholder="请选择开业时间"
+                           v-decorator="['openTime', { rules: [{ required: false, message: '请选择开业时间!' }] }]"></a-date-picker>
+        </a-form-item>
+
+        <a-form-item label="装修时间">
+            <a-date-picker type="text" placeholder="请选择装修时间"
+                           v-decorator="['renovationTime', { rules: [{ required: false, message: '请选择装修时间!' }] }]"></a-date-picker>
+        </a-form-item>
+
+        <a-form-item label="集团品牌">
+<!--            <a-input type="text" placeholder="请选择集团品牌"-->
+<!--                     v-decorator="['linkTel']"></a-input>-->
+        </a-form-item>
+
+        <a-form-item label="退订规则">
+            <a-input type="text" placeholder="请填写退订规则"
+                     v-decorator="['rule']"></a-input>
+        </a-form-item>
+
+        <a-form-item label="酒店标签">
+<!--            <a-row>-->
+<!--                <a-col>-->
+<!--                    <div><span>1</span><span>3</span></div>-->
+<!--                </a-col>-->
+<!--                <a-col class="padding_left_10">-->
+<!--                    <a-button @click="addHotelLable()" >添加</a-button>-->
+<!--                </a-col>-->
+<!--            </a-row>-->
+            <template v-for="(tag, index) in tags">
+                <a-tooltip v-if="tag.length > 20" :key="tag" :title="tag">
+                    <a-tag :key="tag" :closable="index !== -1" @close="() => handleClose(tag)">
+                        {{ `${tag.slice(0, 20)}...` }}
+                    </a-tag>
+                </a-tooltip>
+                <a-tag v-else :key="tag" :closable="index !== -1" @close="() => handleClose(tag)">
+                    {{ tag }}
+                </a-tag>
+            </template>
+            <a-input
+                    v-if="inputVisible"
+                    ref="input"
+                    type="text"
+                    size="small"
+                    :style="{ width: '78px' }"
+                    :value="inputValue"
+                    @change="handleInputChange"
+                    @blur="handleInputConfirm"
+                    @keyup.enter="handleInputConfirm"
+            />
+            <a-tag v-else style="background: #fff; borderStyle: dashed;" @click="showInput">
+                <a-icon type="plus" />添加
+            </a-tag>
+        </a-form-item>
+
+        <a-form-item label="酒店设施">
+            <a-row>
+                <a-col span="3">
+                    <a-checkbox @change="onChange" value="1">
+                        温泉
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        租车
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        有餐饮
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        游泳池
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        叫早
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        有早餐
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        WIFI
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        电热水壶
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        电梯
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        吹风机
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        免费停车
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        会议室
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        残疾人设施
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        邮政服务
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        婚宴服务
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        全天前台
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        接待外宾
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        棋牌室
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        收费停车
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        送餐服务
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        洗衣服务
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        商务中心
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        叫车服务
+                    </a-checkbox>
+                </a-col>
+                <a-col span="3">
+                    <a-checkbox @change="onChange">
+                        房间WIFI
+                    </a-checkbox>
+                </a-col>
+            </a-row>
+        </a-form-item>
+
+        <a-form-item label="酒店主题" :wrapper-col="{ span: 5 }">
+            <!--            <j-dict-select-tag v-model="model.tenantId" placeholder="请选择关联租户" dictCode="sys_tenant,name,id" />-->
+            <!--            v-model="form.sex"-->
+            <a-select placeholder="请选择酒店主题"
+                      v-decorator="['topic']">
+                <a-select-option :value="1">情侣约会</a-select-option>
+                <a-select-option :value="2">亲子家庭</a-select-option>
+                <a-select-option :value="3">快捷连锁</a-select-option>
+                <a-select-option :value="4">主题特色</a-select-option>
+                <a-select-option :value="5">海滨风光</a-select-option>
+            </a-select>
+        </a-form-item>
+
+        <a-form-item label="酒店支持">
+            <a-row>
+                <a-col span="4">
+                    <a-checkbox v-decorator="['unionpay', { valuePropName: 'checked' }]">
+                        银联支付
+                    </a-checkbox>
+                </a-col>
+                <a-col span="4">
+                    <a-checkbox v-decorator="['wxOpen', { valuePropName: 'checked' }]">
+                        微信支付
+                    </a-checkbox>
+                </a-col>
+                <a-col span="4">
+                    <a-checkbox v-decorator="['ddOpen', { valuePropName: 'checked' }]">
+                        到店支付
+                    </a-checkbox>
+                </a-col>
+                <a-col span="4">
+                    <a-checkbox v-decorator="['yeOpen', { valuePropName: 'checked' }]">
+                        余额支付
+                    </a-checkbox>
+                </a-col>
+            </a-row>
+        </a-form-item>
+        <a-form-item label="酒店政策">
+            <j-editor v-model="model.policy" />
+        </a-form-item>
+        <a-form-item label="酒店介绍">
+            <j-editor v-model="model.introduction"/>
+        </a-form-item>
+        <a-form-item label="预定提醒">
+            <j-editor v-model="model.reserveRemind"/>
+        </a-form-item>
+        <a-form-item label="交通和周边">
+            <j-editor v-model="model.traffic"/>
+        </a-form-item>
+
+        <a-button type="primary" @click="submit">确定</a-button>
+
+    </a-form>
+</template>
+<script>
+    import { Modal } from 'ant-design-vue';
+    import {getHotelInfo, editMainInfo, hotelList} from "../../../api/hotel";
+    export default {
+        created() {
+            // alert("这里获取当前缓存门店信息");
+            var _info = JSON.parse(localStorage.getItem("storeInfo"));
+            setTimeout(() => {
+                getHotelInfo({
+                    id: _info.id
+                }).then(res => {
+                    console.log(res)
+                    if (res.code == 200 && res.result ) {
+                        var info = res.result
+
+                        this.form.setFieldsValue(
+                            {
+                                id: info.id,
+                                name: info.name,
+                                star: info.star,
+                                address: info.address,
+                                latlng: info.lat+','+info.lng,
+                                linkName: info.linkName,
+                                linkTel: info.linkTel,
+                                tel: info.tel,
+                                openTime: info.openTime,
+                                renovationTime: info.renovationTime,
+                                superiorSellerId: info.superiorSellerId,
+                                rule: info.rule,
+                                topic: info.topic,
+                                unionpay: info.unionpay,
+                                wxOpen: info.wxOpen,
+                                ddOpen: info.ddOpen,
+                                yeOpen: info.yeOpen,
+                                policy:info.policy,
+                                introduction:info.introduction,
+                                reserveRemind:info.reserveRemind,
+                                traffic:info.traffic,
+                            }
+                        )
+
+                        this.model = {
+                            policy:info.policy,
+                            introduction:info.introduction,
+                            reserveRemind:info.reserveRemind,
+                            traffic:info.traffic
+                        };
+
+                        this.tags = info.tagList.split(',')
+                    }
+                })
+            }, 100)
+        },
+        data() {
+            return {
+                visible: false,
+                formLayout: 'horizontal',
+                validatorRules: {
+                    name: [{
+                        required: true, message: '请输入酒店名称!'
+                    }],
+                    linkName: [{
+                        required: true, message: '请输入联系人!'
+                    }],
+                    linkTel: [{
+                        required: true, message: '请输入联系电话!'
+                    }, {validator: this.validatePhone}],//, {validator: this.validatePhone}
+                    tel: [{
+                        required: true, message: '请输入酒店电话!'
+                    }],
+                    address: [{
+                        required: true, message: '请输入酒店地址!'
+                    }],
+                    star: [{
+                        required: true, message: '请输入星级!'
+                    }],
+                    lng: [{
+                        required: true, message: '请输入经度!'
+                    }],
+                    lat: [{
+                        required: true, message: '请输入纬度!'
+                    }],
+                    roomCount: [{
+                        required: true, message: '请输入客房总数!'
+                    }],
+                    // openTime: [{
+                    //     required: true, message: '请输入开业时间!'
+                    // }],
+                    // renovationTime: [{
+                    //     required: true, message: '请输入装修时间!'
+                    // }],
+                    checkStatus: [{
+                        required: true, message: '请选择审核状态', trigger: 'change'
+                    }]
+                },
+                form: this.$form.createForm(this),
+                model: {
+                    policy:'',
+                    introduction:'',
+                    reserveRemind:'',
+                    traffic:'',
+                },
+                tags: [],
+                inputVisible: false,
+                inputValue: '',
+            }
+        },
+        computed: {
+            formItemLayout() {
+                const { formLayout } = this;
+                return formLayout === 'horizontal'
+                    ? {
+                        labelCol: { span: 4 },
+                        wrapperCol: { span: 14 },
+                    }
+                    : {};
+            },
+        },
+        methods: {
+            submit() {
+                // console.log(this.form.values.certImg)
+                this.form.validateFields((err, values) => {
+                    console.log(values.lnglat)
+                    if (!err) {
+                        values['lat'] = values.latlng.split(',')[0]
+                        values['lng'] = values.latlng.split(',')[1]
+                        values['tagList'] = this.tags.join(",");
+                        if(this.model.policy) values['policy'] = this.model.policy
+                        if(this.model.introduction) values['introduction'] = this.model.introduction
+                        if(this.model.reserveRemind) values['reserveRemind'] = this.model.reserveRemind
+                        if(this.model.traffic) values['traffic'] = this.model.traffic
+                        editMainInfo(values).then(res=>{
+                            this.$message.success('编辑成功')
+                            localStorage.setItem("storeInfo", JSON.stringify(res.result))
+                        })
+                    }
+                });
+            },
+            getLonAndLat() {
+                const that = this
+                let params = {address: this.model.address}
+                getAction(this.url.getLonAndLat, params).then((res) => {
+                    if (res.success) {
+                        if (res.code === 200) {
+                            console.log(res.result)
+                            that.model.lat = res.result.lat
+                            that.model.lng = res.result.lng
+                            that.model = Object.assign({}, that.model)
+                        } else {
+                            that.$message.warning(res.message)
+                        }
+                    }
+                })
+            },
+            addHotelLable(){
+                console.log('添加酒店标签')
+            },
+            onChange(e) {
+                console.log(`checked = ${e.target.checked}`);
+            },
+            handleClose(removedTag) {
+                const tags = this.tags.filter(tag => tag !== removedTag);
+                console.log(tags);
+                this.tags = tags;
+            },
+
+            showInput() {
+                this.inputVisible = true;
+                this.$nextTick(function() {
+                    this.$refs.input.focus();
+                });
+            },
+
+            handleInputChange(e) {
+                this.inputValue = e.target.value;
+            },
+
+            handleInputConfirm() {
+                const inputValue = this.inputValue;
+                let tags = this.tags;
+                if (inputValue && tags.indexOf(inputValue) === -1) {
+                    tags = [...tags, inputValue];
+                }
+                console.log(tags);
+                Object.assign(this, {
+                    tags,
+                    inputVisible: false,
+                    inputValue: '',
+                });
+            },
+        },
+    }
+</script>
+
+<style scoped>
+    .padding_left_10{
+        padding-left: 10px;
+    }
+
+</style>

+ 5 - 3
src/views/settings/hotelInfo.vue

@@ -20,7 +20,7 @@
                     <a-icon type="shop" />
                     门店信息
                 </span>
-                门店信息
+                <store-infos></store-infos>
             </a-tab-pane>
         </a-tabs>
     </a-card>
@@ -29,10 +29,12 @@
 <script>
 import storeImages from './components/storeImages.vue';
 import storeAuthInfo from './components/storeAuthInfo.vue';
+import storeInfos from './components/storeInfos.vue';
 export default {
     components:{
         storeImages,
-        storeAuthInfo
+        storeAuthInfo,
+        storeInfos
     },
     data() {
         return {
@@ -46,4 +48,4 @@ export default {
 .main{
     height: 70% !important;
 }
-</style>
+</style>

+ 345 - 0
src/views/settings/marketMemberList.vue

@@ -0,0 +1,345 @@
+<template>
+  <a-card :bordered="false">
+    <!-- 查询区域 -->
+    <div class="table-page-search-wrapper">
+      <a-form layout="inline" @keyup.enter.native="searchQuery">
+        <a-row :gutter="24">
+        </a-row>
+      </a-form>
+    </div>
+    <!-- 查询区域-END -->
+
+    <!-- 操作按钮区域 -->
+    <div class="table-operator">
+      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
+      <a-button type="primary" icon="download" @click="handleExportXls('bus_market_member_info')">导出</a-button>
+      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
+        <a-button type="primary" icon="import">导入</a-button>
+      </a-upload>
+      <!-- 高级查询区域 -->
+      <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
+      <a-dropdown v-if="selectedRowKeys.length > 0">
+        <a-menu slot="overlay">
+          <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
+        </a-menu>
+        <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
+      </a-dropdown>
+    </div>
+
+    <!-- table区域-begin -->
+    <div>
+      <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
+        <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
+        <a style="margin-left: 24px" @click="onClearSelected">清空</a>
+      </div>
+
+      <a-table
+        ref="table"
+        size="middle"
+        :scroll="{x:true}"
+        bordered
+        rowKey="id"
+        :columns="columns"
+        :dataSource="dataSource"
+        :pagination="ipagination"
+        :loading="loading"
+        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
+        class="j-table-force-nowrap"
+        @change="handleTableChange">
+
+        <template slot="htmlSlot" slot-scope="text">
+          <div v-html="text"></div>
+        </template>
+        <template slot="imgSlot" slot-scope="text,record">
+          <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
+          <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
+        </template>
+        <template slot="fileSlot" slot-scope="text">
+          <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
+          <a-button
+            v-else
+            :ghost="true"
+            type="primary"
+            icon="download"
+            size="small"
+            @click="downloadFile(text)">
+            下载
+          </a-button>
+        </template>
+
+        <span slot="action" slot-scope="text, record">
+          <a @click="handleEdit(record)">编辑</a>
+
+          <a-divider type="vertical" />
+          <a-dropdown>
+            <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
+            <a-menu slot="overlay">
+              <a-menu-item>
+                <a @click="handleDetail(record)">详情</a>
+              </a-menu-item>
+              <a-menu-item>
+                <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
+                  <a>删除</a>
+                </a-popconfirm>
+              </a-menu-item>
+            </a-menu>
+          </a-dropdown>
+        </span>
+
+      </a-table>
+    </div>
+
+    <bus-market-member-modal ref="modalForm" @ok="modalFormOk"></bus-market-member-modal>
+  </a-card>
+</template>
+
+<script>
+
+  import '@/assets/less/TableExpand.less'
+  import { mixinDevice } from '@/utils/mixin'
+  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+  import marketMemberModal from './components/marketMemberModal'
+
+  export default {
+    name: 'marketMemberList',
+    mixins:[JeecgListMixin, mixinDevice],
+    components: {
+      marketMemberModal
+    },
+    data () {
+      return {
+        description: 'bus_market_member_info管理页面',
+        // 表头
+        columns: [
+          {
+            title: '#',
+            dataIndex: '',
+            key:'rowIndex',
+            width:60,
+            align:"center",
+            customRender:function (t,r,index) {
+              return parseInt(index)+1;
+            }
+          },
+          {
+            title:'关联租户',
+            align:"center",
+            dataIndex: 'tenantId'
+          },
+          {
+            title:'关联酒店',
+            align:"center",
+            dataIndex: 'hotelId'
+          },
+          {
+            title:'会员名称',
+            align:"center",
+            dataIndex: 'name'
+          },
+          {
+            title:'会员类型(0-会员折扣;1-房价方案)',
+            align:"center",
+            dataIndex: 'type'
+          },
+          {
+            title:'会员折扣值',
+            align:"center",
+            dataIndex: 'discount'
+          },
+          {
+            title:'关联房价方案',
+            align:"center",
+            dataIndex: 'schemeId'
+          },
+          {
+            title:'是否需要支付(0-否;1-是)',
+            align:"center",
+            dataIndex: 'payFlag'
+          },
+          {
+            title:'支付金额',
+            align:"center",
+            dataIndex: 'payAmount'
+          },
+          {
+            title:'购买会员卡所需积分',
+            align:"center",
+            dataIndex: 'payIntegral'
+          },
+          {
+            title:'是否可以储值(0-否;1-是)',
+            align:"center",
+            dataIndex: 'payStored'
+          },
+          {
+            title:'会员等级',
+            align:"center",
+            dataIndex: 'level'
+          },
+          {
+            title:'会员优惠(每一积分可抵扣金额)',
+            align:"center",
+            dataIndex: 'hyyh'
+          },
+          {
+            title:'充值是否自动续期',
+            align:"center",
+            dataIndex: 'renewal'
+          },
+          {
+            title:'自动续期天数',
+            align:"center",
+            dataIndex: 'renewalDay'
+          },
+          {
+            title:'积分类型',
+            align:"center",
+            dataIndex: 'integralTypes'
+          },
+          {
+            title:'客房积分模式(1-所有的消费转成积分;2-只房费转积分;)',
+            align:"center",
+            dataIndex: 'tenantPoints'
+          },
+          {
+            title:'客房消费金额',
+            align:"center",
+            dataIndex: 'tenantRoomIntegral'
+          },
+          {
+            title:'客房消费可增加积分',
+            align:"center",
+            dataIndex: 'addTenantRoomIntegral'
+          },
+          {
+            title:'储值卡消费金额',
+            align:"center",
+            dataIndex: 'roomIntegral'
+          },
+          {
+            title:'储值卡消费可增加积分',
+            align:"center",
+            dataIndex: 'addRoomIntegral'
+          },
+          {
+            title:'入住天数',
+            align:"center",
+            dataIndex: 'dayIntegral'
+          },
+          {
+            title:'入住可增加积分',
+            align:"center",
+            dataIndex: 'addDayIntegral'
+          },
+          {
+            title:'充值金额',
+            align:"center",
+            dataIndex: 'rechargeIntegral'
+          },
+          {
+            title:'充值可增加积分',
+            align:"center",
+            dataIndex: 'addRechargeIntegral'
+          },
+          {
+            title:'自动升级所需积分',
+            align:"center",
+            dataIndex: 'upLevelIntegral'
+          },
+          {
+            title:'自动升级等级',
+            align:"center",
+            dataIndex: 'upLevel'
+          },
+          {
+            title:'升级后剩余积分',
+            align:"center",
+            dataIndex: 'subLevelIntegral'
+          },
+          {
+            title:'会员图标',
+            align:"center",
+            dataIndex: 'icon'
+          },
+          {
+            title:'卡片背景',
+            align:"center",
+            dataIndex: 'bgImage'
+          },
+          {
+            title:'卡片描述',
+            align:"center",
+            dataIndex: 'content'
+          },
+          {
+            title: '操作',
+            dataIndex: 'action',
+            align:"center",
+            fixed:"right",
+            width:147,
+            scopedSlots: { customRender: 'action' }
+          }
+        ],
+        url: {
+          list: "/business/busMarketMember/list",
+          delete: "/business/busMarketMember/delete",
+          deleteBatch: "/business/busMarketMember/deleteBatch",
+          exportXlsUrl: "/business/busMarketMember/exportXls",
+          importExcelUrl: "business/busMarketMember/importExcel",
+
+        },
+        dictOptions:{},
+        superFieldList:[],
+      }
+    },
+    created() {
+    this.getSuperFieldList();
+    },
+    computed: {
+      importExcelUrl: function(){
+        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
+      },
+    },
+    methods: {
+      initDictConfig(){
+      },
+      getSuperFieldList(){
+        let fieldList=[];
+        fieldList.push({type:'string',value:'tenantId',text:'关联租户'})
+        fieldList.push({type:'string',value:'hotelId',text:'关联酒店'})
+        fieldList.push({type:'string',value:'name',text:'会员名称'})
+        fieldList.push({type:'int',value:'type',text:'会员类型(0-会员折扣;1-房价方案)'})
+        fieldList.push({type:'number',value:'discount',text:'会员折扣值'})
+        fieldList.push({type:'string',value:'schemeId',text:'关联房价方案'})
+        fieldList.push({type:'int',value:'payFlag',text:'是否需要支付(0-否;1-是)'})
+        fieldList.push({type:'number',value:'payAmount',text:'支付金额'})
+        fieldList.push({type:'number',value:'payIntegral',text:'购买会员卡所需积分'})
+        fieldList.push({type:'int',value:'payStored',text:'是否可以储值(0-否;1-是)'})
+        fieldList.push({type:'int',value:'level',text:'会员等级'})
+        fieldList.push({type:'number',value:'hyyh',text:'会员优惠(每一积分可抵扣金额)'})
+        fieldList.push({type:'string',value:'renewal',text:'充值是否自动续期'})
+        fieldList.push({type:'number',value:'renewalDay',text:'自动续期天数'})
+        fieldList.push({type:'string',value:'integralTypes',text:'积分类型'})
+        fieldList.push({type:'string',value:'tenantPoints',text:'客房积分模式(1-所有的消费转成积分;2-只房费转积分;)'})
+        fieldList.push({type:'number',value:'tenantRoomIntegral',text:'客房消费金额'})
+        fieldList.push({type:'number',value:'addTenantRoomIntegral',text:'客房消费可增加积分'})
+        fieldList.push({type:'number',value:'roomIntegral',text:'储值卡消费金额'})
+        fieldList.push({type:'number',value:'addRoomIntegral',text:'储值卡消费可增加积分'})
+        fieldList.push({type:'number',value:'dayIntegral',text:'入住天数'})
+        fieldList.push({type:'number',value:'addDayIntegral',text:'入住可增加积分'})
+        fieldList.push({type:'number',value:'rechargeIntegral',text:'充值金额'})
+        fieldList.push({type:'number',value:'addRechargeIntegral',text:'充值可增加积分'})
+        fieldList.push({type:'number',value:'upLevelIntegral',text:'自动升级所需积分'})
+        fieldList.push({type:'int',value:'upLevel',text:'自动升级等级'})
+        fieldList.push({type:'number',value:'subLevelIntegral',text:'升级后剩余积分'})
+        fieldList.push({type:'string',value:'icon',text:'会员图标'})
+        fieldList.push({type:'string',value:'bgImage',text:'卡片背景'})
+        fieldList.push({type:'string',value:'content',text:'卡片描述'})
+        this.superFieldList = fieldList
+      }
+    }
+  }
+</script>
+<style scoped>
+  @import '~@assets/less/common.less';
+</style>

+ 3 - 3
src/views/user/LoginAccount.vue

@@ -43,8 +43,8 @@
         currdatetime: '',
         loginType: 0,
         model:{
-          username: 'admin',
-          password: '123456',
+          username: 'htl002',
+          password: 'Aa@@1144',
           inputCode: ''
         },
         validatorRules:{
@@ -157,4 +157,4 @@
 
 <style scoped>
 
-</style>
+</style>