Tang 2 vuotta sitten
vanhempi
commit
a9d51ecab5

+ 1 - 0
src/views/financed/components/dislogOrderDetails.vue

@@ -94,6 +94,7 @@
         :orderSn="orderSn"
         :orderFrom="orderFrom"
         :ShowStatus="ShowStatus"
+        :checkStatus="detailInfo.checkStatus"
       ></student-details>
     </BaseDialog>
   </div>

+ 28 - 3
src/views/financed/components/studentDetails.vue

@@ -51,10 +51,18 @@
             >查询</el-button
           >
           <el-button size="small" @click="search('init')">重置</el-button>
-          <el-button v-if="ShowStatus" type="success" size="small" @click="orderCheck(1,'')"
+          <el-button
+            v-if="ShowStatus && isShow"
+            type="success"
+            size="small"
+            @click="orderCheck(1, '')"
             >学员审核通过</el-button
           >
-          <el-button v-if="ShowStatus" type="danger" size="small" @click="orderCheck(2, '不')"
+          <el-button
+            v-if="ShowStatus && isShow"
+            type="danger"
+            size="small"
+            @click="orderCheck(2, '不')"
             >学员审核不通过</el-button
           >
         </div>
@@ -107,6 +115,10 @@ export default {
       type: Boolean,
       default: false,
     },
+    checkStatus: {
+      type: Number,
+      default: null,
+    },
   },
   data() {
     return {
@@ -329,10 +341,23 @@ export default {
       tabType: "1",
     };
   },
+  computed: {
+    isShow: {
+      get() {
+        if (this.checkStatus === 1) {
+          return true;
+        } else {
+          return true;
+        }
+      },
+    },
+  },
   created() {
     this.search("init");
   },
-  mounted() {},
+  mounted() {
+    console.log(this.checkStatus, "--checkStatus");
+  },
 
   methods: {
     orderCheck(e, ch) {

+ 43 - 21
src/views/integralManagement/chargeManagement/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="mechanism">
+  <div id="">
     <search-box-new
       ref="searchBox"
       :formData="formData"
@@ -14,16 +14,12 @@
       :tableData="tableData"
       :navText="navText"
       :loading="loading"
-      @addClick="addClick"
     >
       <template slot="customize">
-        <el-button type="warning"> 批量删除 </el-button>
+        <el-button> 导出excel </el-button>
       </template>
-      <template slot="domainName" slot-scope="props"> </template>
-      <template slot="btn" slot-scope="props">
-        <el-button type="text" @click="addClick(props.scope.row)"
-          >修改</el-button
-        >
+      <template slot="integral" slot-scope="props">
+        {{ props.scope.row["g"] }}积分
       </template>
     </table-list>
     <pagination
@@ -46,19 +42,20 @@ import searchBoxNew from "@/components/searchBoxNew";
 import tableList from "@/components/tableList";
 import pagination from "@/components/pagination";
 export default {
-  name: "Mechanism",
+  name: "",
   components: { searchBoxNew, tableList, pagination, dislog },
   data() {
     return {
       loading: false,
       navText: {
-        title: "机构列表",
+        title: "核销管理",
         index: 0,
         ch: "条",
         num: true,
         choice: false,
-        addHide: false,
+        addHide: true,
         custom: false,
+        tableHide: true,
       },
       formList: [
         {
@@ -69,32 +66,53 @@ export default {
       formData: {},
       tableSet: [
         {
-          label: "机构名称",
+          label: "合作商户",
           prop: "a",
           hidden: true,
         },
         {
-          label: "是否有商户号",
+          label: "会员手机号",
           prop: "b",
           hidden: true,
+        },
+        {
+          label: "会员名称",
+          prop: "c",
+          hidden: true,
+        },
+        {
+          label: "核销人",
+          prop: "d",
+          hidden: true,
+        },
+        {
+          label: "核销时间",
+          prop: "e",
+          hidden: true,
+          scope: "aTimeList",
+        },
+        {
+          label: "付款方式",
+          prop: "f",
+          hidden: true,
           scope: "isOptions",
           options: [
             {
-              label: "是",
+              label: "扫码付款",
               value: 1,
             },
             {
-              label: "否",
-              value: 0,
+              label: "现金支付",
+              value: 2,
             },
           ],
         },
         {
-          label: "银行账号信息",
-          prop: "c",
+          label: "消费积分",
+          prop: "g",
           hidden: true,
           scope: "solt",
-          soltName: "status",
+          soltName: "integral",
         },
       ],
       tableData: [],
@@ -115,8 +133,12 @@ export default {
       this.tableData = [
         {
           a: "深圳桥恩心理咨询有限公司",
-          b: 1,
-          c: 1234567891,
+          b: 13800138000,
+          c: "张三",
+          d: "李四",
+          e: 1234567891,
+          f: 1,
+          g: 2000,
         },
       ];
       //   this.loading = true;

+ 36 - 5
src/views/integralManagement/exchangeRules/index.vue

@@ -1,9 +1,21 @@
 <template>
   <div id="">
-    <div>
-      <el-input v-model="formData.a" placeholder="输入积分" />积分 =
-      <el-input v-model="formData.b" placeholder="输入金额" />元
-      <el-button type="primary">确定</el-button>
+    <div class="dis_fx">
+      <el-input-number
+        :controls="false"
+        v-model="formData.a"
+        placeholder="输入积分"
+        :min="0"
+        :precision="0"
+      /><span>积分 =</span>
+      <el-input-number
+        :controls="false"
+        v-model="formData.b"
+        placeholder="输入金额"
+        :min="0"
+        :precision="2"
+      /><span>元</span>
+      <el-button type="primary" @click="submit">确定</el-button>
       <el-button @click="record">修改记录</el-button>
     </div>
     <record
@@ -30,6 +42,13 @@ export default {
     this.search();
   },
   methods: {
+    submit() {
+      this.$alert("确定更改兑换规则吗?", "提示", {
+        dangerouslyUseHTMLString: true,
+      })
+        .then(() => {})
+        .catch(() => {});
+    },
     record() {
       this.activeData = {};
       this.dialogVisible = true;
@@ -39,4 +58,16 @@ export default {
 };
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.dis_fx {
+  display: flex;
+  align-items: center;
+  span {
+    flex-shrink: 0;
+    margin: 0px 10px;
+  }
+  .el-input-number {
+    width: 120px;
+  }
+}
+</style>

+ 111 - 167
src/views/integralManagement/giftGoods/dislog.vue

@@ -3,7 +3,7 @@
     <BaseDialog
       width="800px"
       :isShow.sync="isShow"
-      :title="activeData.tenantId ? '修改' : '新增'"
+      :title="activeData.id ? '修改' : '新增'"
       @submit="submitForm"
       @close="close"
     >
@@ -14,138 +14,84 @@
         label-width="100px"
         class="demo-ruleForm"
       >
-        <el-form-item label="机构名称:" prop="tenantName">
+        <el-form-item label="合作商户:" prop="a">
           <el-input
             clearable
-            v-model="formData.tenantName"
-            placeholder="输入机构名称"
+            v-model="formData.a"
+            placeholder="输入合作商户"
           ></el-input> </el-form-item
-        ><el-form-item label="h5域名:" prop="hostH5"
-          ><el-input
+        ><el-form-item label="关联使用:" prop="b">
+          <el-select
+            multiple
             clearable
-            v-model="formData.hostH5"
-            placeholder="输入h5域名"
-          ></el-input></el-form-item
-        ><el-form-item label="PC域名:" prop="hostPc"
-          ><el-input
+            v-model="formData.b"
+            placeholder="请选择关联使用"
+          >
+            <el-option label="积分商城" :value="1"> </el-option
+            ><el-option label="会员卡" :value="2"> </el-option>
+          </el-select> </el-form-item
+        ><el-form-item label="产品名称:" prop="c">
+          <el-input
             clearable
-            v-model="formData.hostPc"
-            placeholder="输入PC域名"
-          ></el-input
-        ></el-form-item>
-        <el-form-item label="账期设置:" required>
-          <el-col :span="9">
-            <el-form-item label="" prop="billType">
-              <el-select
-                v-model="formData.billType"
-                placeholder="选择账期类型"
-                clearable
-              >
-                <el-option label="月度" :value="1"> </el-option
-                ><el-option label="季度" :value="2"> </el-option
-                ><el-option label="半年" :value="3"> </el-option>
-                <el-option label="年度" :value="4"> </el-option>
-              </el-select> </el-form-item
-          ></el-col>
-          <el-col :span="9"
-            ><el-form-item label="" prop="billDay">
-              <el-select
-                v-model="formData.billDay"
-                placeholder="选择次月"
-                clearable
-              >
-                <el-option
-                  v-for="(item, index) in days"
-                  :label="item.label"
-                  :value="item.value"
-                >
-                </el-option>
-              </el-select> </el-form-item
-          ></el-col>
-        </el-form-item>
-        <el-form-item label="收款账号:" required>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'accountList.' + 0 + '.openingName'"
-              :rules="rules['openingName']"
-            >
-              <el-input
-                clearable
-                v-model="formData.accountList[0].openingName"
-                placeholder="输入开户名"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'accountList.' + 0 + '.openingBank'"
-              :rules="rules['openingBank']"
-            >
-              <el-input
-                clearable
-                v-model="formData.accountList[0].openingBank"
-                placeholder="输入开户行"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'accountList.' + 0 + '.proceedsAccount'"
-              :rules="rules['proceedsAccount']"
-            >
-              <el-input
-                style="margin-top: 20px"
-                clearable
-                v-model="formData.accountList[0].proceedsAccount"
-                placeholder="输入账号"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-form-item>
-        <el-form-item label="开票信息:" required>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'invoiceBo.' + 'invoiceType'"
-              :rules="rules['invoiceType']"
+            v-model="formData.c"
+            placeholder="输入产品名称"
+          ></el-input> </el-form-item
+        ><el-form-item label="产品主图:" prop="urls">
+          <ul class="imgList">
+            <li
+              class="imgLi"
+              v-for="(item, index) in formData.urls"
+              :key="index"
             >
-              <el-select
-                v-model="formData.invoiceBo.invoiceType"
-                placeholder="选择发票类型"
-                clearable
+              <el-image
+                style="width: 90px; height: 90px"
+                :src="item"
+                :preview-src-list="formData.urls"
+                :initial-index="index"
               >
-                <el-option label="普票" :value="1"> </el-option
-                ><el-option label="专票" :value="2"> </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'invoiceBo.' + 'invoice'"
-              :rules="rules['invoice']"
-              ><el-input
-                clearable
-                v-model="formData.invoiceBo.invoice"
-                placeholder="输入发票抬头(企业或个人)"
-              ></el-input> </el-form-item
-          ></el-col>
-          <el-col :span="9">
-            <el-form-item
-              label=""
-              :prop="'invoiceBo.' + 'taxpayer'"
-              :rules="rules['taxpayer']"
-            >
-              <el-input
-                style="margin-top: 20px"
-                clearable
-                v-model="formData.invoiceBo.taxpayer"
-                placeholder="输入纳税人"
-              ></el-input> </el-form-item
-          ></el-col>
+              </el-image>
+            </li>
+            <li class="imgactive">
+              <i class="el-icon-plus" @click="uploadImg"></i>
+            </li>
+            <label for="file1"> </label>
+            <input type="file" v-show="false" id="file1" />
+            <div style="clear: both"></div>
+          </ul>
+          <p style="color: #a4a4a4; margin: 0">
+            建议尺寸:800*800像素;大小200K以下
+          </p></el-form-item
+        ><el-form-item label="兑换积分:" prop="e">
+          <el-input-number
+            :controls="false"
+            v-model="formData.e"
+            placeholder="输入兑换积分"
+            :min="0"
+            :precision="0" /></el-form-item
+        ><el-form-item label="产品原价:" prop="f">
+          <el-input-number
+            :controls="false"
+            v-model="formData.f"
+            placeholder="输入产品原价"
+            :min="0"
+            :precision="2"
+          /> </el-form-item
+        ><el-form-item label="会员优惠价:" prop="g">
+          <el-input-number
+            :controls="false"
+            v-model="formData.g"
+            placeholder="输入会员优惠价"
+            :min="0"
+            :precision="2"
+          />
+        </el-form-item>
+        <el-form-item label="产品详情:">
+          <editor
+            v-model="formData.html"
+            :min-height="300"
+            :max-height="500"
+            :uploadStatus="2"
+          />
         </el-form-item>
       </el-form>
     </BaseDialog>
@@ -153,7 +99,9 @@
 </template>
 
 <script>
+import Editor from "@/components/Editor";
 export default {
+  components: { Editor },
   name: "",
   props: {
     dialogVisible: {
@@ -180,46 +128,13 @@ export default {
         billType: [
           { required: true, message: "请选择账期类型", trigger: "change" },
         ],
-        billDay: [
-          { required: true, message: "请选择次月日期", trigger: "change" },
-        ],
-        openingName: [
-          { required: true, message: "请输入开户名", trigger: "blur" },
-        ],
-        openingBank: [
-          { required: true, message: "请输入开户行", trigger: "blur" },
-        ],
-        proceedsAccount: [
-          { required: true, message: "请输入账号", trigger: "blur" },
-        ],
-        invoiceType: [
-          { required: true, message: "请选择发票类型", trigger: "change" },
-        ],
-        invoice: [
-          { required: true, message: "请输入发票抬头", trigger: "blur" },
-        ],
-        taxpayer: [
-          { required: true, message: "请输入纳税人", trigger: "blur" },
-        ],
       },
-      days: [],
     };
   },
-  mounted() {
-    this.getDays();
-  },
-
   methods: {
-    //获取天数 从第6天算起 至31日
-    getDays() {
-      for (let i = 6; i <= 31; i++) {
-        this.days.push({ label: i + "日", value: i });
-      }
-    },
+    uploadImg() {},
     init() {
       this.formData = JSON.parse(JSON.stringify(this.activeData));
-      this.formData.accountList = this.formData.accountList || [{}];
-      this.formData.invoiceBo = this.formData.invoiceBo || {};
     },
     close() {
       this.$refs["formData"].resetFields();
@@ -227,13 +142,9 @@ export default {
     submitForm() {
       this.$refs["formData"].validate((valid) => {
         if (valid) {
-          this.$api[
-            this.activeData.tenantId ? "systemtenantedittop" : "systemtenantadd"
-          ](this.formData).then((res) => {
-            this.$message.success("成功");
-            this.isShow = false;
-            this.$emit("search");
-          });
+          this.$message.success("成功");
+          this.isShow = false;
+          this.$emit("search");
         } else {
           return false;
         }
@@ -257,6 +168,39 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+.imgList {
+  margin-bottom: 0;
+  li {
+    margin-right: 10px;
+    margin-bottom: 10px;
+    float: left;
+    user-select: none;
+    cursor: pointer;
+    width: 98px;
+    height: 98px;
+    border-radius: 4px;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    transition: all 0.3s;
+  }
+  .imgLi {
+    border: 1px solid #666;
+    &:hover {
+      box-shadow: 0px 0px 6px 1px rgba(0, 0, 0, 0.2);
+      transform: scale(1.02);
+    }
+  }
+  .imgactive {
+    border: 1px dotted #666;
+    i {
+      font-size: 20px;
+    }
+    &:hover {
+      box-shadow: 0px 0px 6px 1px rgba(0, 0, 0, 0.2);
+    }
+  }
+}
 .el-input {
   width: 220px;
   margin-right: 10px;

+ 113 - 23
src/views/integralManagement/giftGoods/index.vue

@@ -17,13 +17,38 @@
       @addClick="addClick"
     >
       <template slot="customize">
-        <el-button type="warning"> 批量删除 </el-button>
+        <el-button> 批量删除 </el-button>
+        <el-button> 导出excel </el-button>
+      </template>
+      <template slot="about" slot-scope="props">
+        <span v-for="(item, index) in props.scope.row.b" :key="index">
+          <span v-if="item === 1"> 积分商城 </span>
+          <span v-if="item === 2"> 会员卡 </span>
+        </span>
+      </template>
+      <template slot="images" slot-scope="props">
+        <el-image
+          style="width: 100px; height: 70px"
+          :src="props.scope.row.urls[0]"
+          :preview-src-list="props.scope.row.urls"
+        >
+        </el-image>
+      </template>
+      <template slot="status" slot-scope="props">
+        <el-switch
+          v-model="props.scope.row.status"
+          active-color="#13ce66"
+          inactive-color="#ff4949"
+          :active-value="1"
+          :inactive-value="0"
+          @change="statusChange($event, props.scope.row)"
+        >
+        </el-switch>
       </template>
-      <template slot="domainName" slot-scope="props"> </template>
       <template slot="btn" slot-scope="props">
         <el-button type="text" @click="addClick(props.scope.row)"
-          >修改</el-button
-        >
+          >编辑</el-button
+        ><el-button type="text" @click="del(props.scope.row)">删除</el-button>
       </template>
     </table-list>
     <pagination
@@ -52,7 +77,7 @@ export default {
     return {
       loading: false,
       navText: {
-        title: "机构列表",
+        title: "礼品商品",
         index: 0,
         ch: "条",
         num: true,
@@ -62,40 +87,90 @@ export default {
       },
       formList: [
         {
-          prop: "tenantid",
-          placeholder: "请选择机构名称",
-        },
-      ],
-      formData: {},
-      tableSet: [
-        {
-          label: "机构名称",
           prop: "a",
-          hidden: true,
+          placeholder: "合作商户",
+          scope: "select",
+          options: [
+            {
+              label: "深圳桥恩心理咨询有限公司",
+              value: 1,
+            },
+          ],
         },
         {
-          label: "是否有商户号",
           prop: "b",
-          hidden: true,
-          scope: "isOptions",
+          placeholder: "关联使用",
+          scope: "select",
           options: [
             {
-              label: "",
+              label: "积分商城",
               value: 1,
             },
             {
-              label: "",
-              value: 0,
+              label: "会员卡",
+              value: 2,
             },
           ],
         },
         {
-          label: "银行账号信息",
           prop: "c",
+          placeholder: "请输入产品名称",
+        },
+      ],
+      formData: { a: "", b: "", c: "" },
+      tableSet: [
+        {
+          label: "合作商户",
+          prop: "a",
+          hidden: true,
+        },
+        {
+          label: "关联使用",
+          prop: "b",
+          hidden: true,
+          scope: "solt",
+          soltName: "about",
+        },
+        {
+          label: "产品名称",
+          prop: "c",
+          hidden: true,
+        },
+        {
+          label: "产品主图",
+          prop: "urls",
+          hidden: true,
+          scope: "solt",
+          soltName: "images",
+        },
+        {
+          label: "兑换积分",
+          prop: "e",
+          hidden: true,
+        },
+        {
+          label: "产品原价",
+          prop: "f",
+          hidden: true,
+        },
+        {
+          label: "会员优惠价",
+          prop: "g",
+          hidden: true,
+        },
+        {
+          label: "上架状态",
+          prop: "status",
           hidden: true,
           scope: "solt",
           soltName: "status",
         },
+        {
+          label: "录入时间",
+          prop: "i",
+          hidden: true,
+          scope: "aTimeList",
+        },
       ],
       tableData: [],
       total: 0,
@@ -107,6 +182,11 @@ export default {
     this.search(2);
   },
   methods: {
+    statusChange(e, row) {
+      if (true) {
+        row.status = 1;
+      }
+    },
     addClick(data) {
       this.activeData = data || {};
       this.dialogVisible = true;
@@ -114,9 +194,19 @@ export default {
     search(v) {
       this.tableData = [
         {
+          id: 1,
           a: "深圳桥恩心理咨询有限公司",
-          b: 1,
-          c: 1234567891,
+          b: [1, 2],
+          c: "鹿卡通",
+          urls: [
+            "https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg",
+            "https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg",
+          ],
+          e: 1520,
+          f: 1520,
+          g: 1520,
+          status: 1,
+          i: 1234567891,
         },
       ];
       //   this.loading = true;

+ 43 - 21
src/views/integralManagement/writeOff/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="mechanism">
+  <div id="">
     <search-box-new
       ref="searchBox"
       :formData="formData"
@@ -14,16 +14,12 @@
       :tableData="tableData"
       :navText="navText"
       :loading="loading"
-      @addClick="addClick"
     >
       <template slot="customize">
-        <el-button type="warning"> 批量删除 </el-button>
+        <el-button> 导出excel </el-button>
       </template>
-      <template slot="domainName" slot-scope="props"> </template>
-      <template slot="btn" slot-scope="props">
-        <el-button type="text" @click="addClick(props.scope.row)"
-          >修改</el-button
-        >
+      <template slot="integral" slot-scope="props">
+        {{ props.scope.row["g"] }}积分
       </template>
     </table-list>
     <pagination
@@ -46,19 +42,20 @@ import searchBoxNew from "@/components/searchBoxNew";
 import tableList from "@/components/tableList";
 import pagination from "@/components/pagination";
 export default {
-  name: "Mechanism",
+  name: "",
   components: { searchBoxNew, tableList, pagination, dislog },
   data() {
     return {
       loading: false,
       navText: {
-        title: "机构列表",
+        title: "核销管理",
         index: 0,
         ch: "条",
         num: true,
         choice: false,
-        addHide: false,
+        addHide: true,
         custom: false,
+        tableHide: true,
       },
       formList: [
         {
@@ -69,32 +66,53 @@ export default {
       formData: {},
       tableSet: [
         {
-          label: "机构名称",
+          label: "合作商户",
           prop: "a",
           hidden: true,
         },
         {
-          label: "是否有商户号",
+          label: "会员手机号",
           prop: "b",
           hidden: true,
+        },
+        {
+          label: "会员名称",
+          prop: "c",
+          hidden: true,
+        },
+        {
+          label: "核销人",
+          prop: "d",
+          hidden: true,
+        },
+        {
+          label: "核销时间",
+          prop: "e",
+          hidden: true,
+          scope: "aTimeList",
+        },
+        {
+          label: "付款方式",
+          prop: "f",
+          hidden: true,
           scope: "isOptions",
           options: [
             {
-              label: "是",
+              label: "扫码付款",
               value: 1,
             },
             {
-              label: "否",
-              value: 0,
+              label: "现金支付",
+              value: 2,
             },
           ],
         },
         {
-          label: "银行账号信息",
-          prop: "c",
+          label: "消费积分",
+          prop: "g",
           hidden: true,
           scope: "solt",
-          soltName: "status",
+          soltName: "integral",
         },
       ],
       tableData: [],
@@ -115,8 +133,12 @@ export default {
       this.tableData = [
         {
           a: "深圳桥恩心理咨询有限公司",
-          b: 1,
-          c: 1234567891,
+          b: 13800138000,
+          c: "张三",
+          d: "李四",
+          e: 1234567891,
+          f: 1,
+          g: 2000,
         },
       ];
       //   this.loading = true;