Browse Source

flex:商品需求改造,页面配置,题库试卷改造,订单改造

Tang 2 năm trước cách đây
mục cha
commit
64c327ba0f

+ 9 - 0
src/newApi/order.js

@@ -39,6 +39,15 @@ export default {
             method: 'get',
         })
     },
+    //获取退款订单详细子列表
+    obtainOrderRefundlistAll(data) {
+        return request({
+            url: `/order/refund/listAll/goods`,
+            method: 'get',
+            params: data
+        })
+    },
+    
     //修改订单商品
     editordergoods(data) {
         return request({

+ 200 - 0
src/views/2Cport/pageSettings/H5_small.vue

@@ -0,0 +1,200 @@
+<template>
+  <div id="">
+    <el-form
+      :model="moveInfo"
+      status-icon
+      :rules="rulesMove"
+      ref="moveInfo"
+      label-width="100px"
+      class="demo-ruleForm"
+    >
+      <el-form-item label="H5-logo" prop="h5Logo">
+        <div class="imageStyBox" v-if="!moveInfo.h5Logo">
+          <label for="uplose1"><i class="btn_upload">上传图片</i></label>
+          <input
+            type="file"
+            style="display: none"
+            id="uplose1"
+            @change="getImgFile($event, 'h5Logo')"
+          />
+        </div>
+        <div v-else>
+          <el-image
+            class="imageStyBoxShow"
+            :src="$methodsTools.splitImgHost(moveInfo.h5Logo)"
+            :preview-src-list="[$methodsTools.splitImgHost(moveInfo.h5Logo)]"
+          >
+          </el-image>
+          <el-button
+            style="margin-left: 20px"
+            type="danger"
+            size="mini"
+            @click="moveInfo.h5Logo = ''"
+            >删除</el-button
+          >
+        </div>
+      </el-form-item>
+      <el-form-item label="Small-logo" prop="smallLogo">
+        <div class="imageStyBox" v-if="!moveInfo.smallLogo">
+          <label for="uplose2"><i class="btn_upload">上传图片</i></label>
+          <input
+            type="file"
+            style="display: none"
+            id="uplose2"
+            @change="getImgFile($event, 'smallLogo')"
+          />
+        </div>
+        <div v-else>
+          <el-image
+            class="imageStyBoxShow"
+            :src="$methodsTools.splitImgHost(moveInfo.smallLogo)"
+            :preview-src-list="[$methodsTools.splitImgHost(moveInfo.smallLogo)]"
+          >
+          </el-image>
+          <el-button
+            style="margin-left: 20px"
+            type="danger"
+            size="mini"
+            @click="moveInfo.smallLogo = ''"
+            >删除</el-button
+          >
+        </div>
+      </el-form-item>
+      <el-form-item label="H5域名" prop="hostH5">
+        <el-input v-model="moveInfo.hostH5"></el-input>
+      </el-form-item>
+      <el-form-item label="Live域名" prop="hostLive">
+        <el-input v-model="moveInfo.hostLive"></el-input>
+      </el-form-item>
+      <el-form-item label="Pc域名" prop="hostPc">
+        <el-input v-model="moveInfo.hostPc"></el-input>
+      </el-form-item>
+      <el-form-item>
+        <el-button
+          size="small"
+          type="primary"
+          @click="submitFormRight('moveInfo')"
+          >保存</el-button
+        >
+      </el-form-item>
+    </el-form>
+  </div>
+</template>
+
+<script>
+import { listConfig, updateConfig } from "@/api/system/config";
+export default {
+  data() {
+    return {
+      moveDuan: {},
+      moveInfo: {},
+      rulesMove: {
+        h5Logo: [
+          {
+            required: true,
+            message: "请上传h5Logo",
+            trigger: ["blur", "change"],
+          },
+        ],
+        smallLogo: [
+          {
+            required: true,
+            message: "请上传smallLogo",
+            trigger: ["blur", "change"],
+          },
+        ],
+        hostH5: [{ required: true, message: "请输入hostH5", trigger: "blur" }],
+        hostLive: [
+          { required: true, message: "请输入hostLive", trigger: "blur" },
+        ],
+        hostPc: [{ required: true, message: "请输入hostPc", trigger: "blur" }],
+      },
+    };
+  },
+  created() {
+    listConfig({ configKey: "home.mobile" }).then((res) => {
+      if (res.rows.length) {
+        this.moveDuan = res.rows[0];
+        this.moveInfo = JSON.parse(res.rows[0].configValue);
+        console.log(this.moveInfo);
+      }
+    });
+  },
+  methods: {
+    submitFormRight(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (!this.moveInfo.h5Logo || !this.moveInfo.smallLogo) {
+            this.$message.error("请上传Logo图片");
+            return;
+          }
+          let data = JSON.parse(JSON.stringify(this.moveInfo));
+          let copySubmitData = JSON.parse(JSON.stringify(this.moveDuan));
+          copySubmitData.configValue = JSON.stringify(data);
+          updateConfig(copySubmitData).then((res) => {
+            this.$message.success("保存成功");
+          });
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
+
+    /**
+     * 上传图片
+     */
+    getImgFile(e, name) {
+      var self = this;
+      var file = e.target.files[0];
+      if (file === undefined) {
+        return;
+      }
+      if (file.size > 0.3 * 1024 * 1024) {
+        self.$message.error("图片不得大于300kb");
+        return;
+      }
+      var type = e.target.value.toLowerCase().split(".").splice(-1);
+      if (type[0] != "jpg" && type[0] != "png" && type[0] != "jpeg") {
+        self.$message.error("上传格式需为:.jpg/.png/.jpeg");
+        e.target.value = "";
+        return;
+      }
+      this.$upload
+        .upload(file, 0)
+        .then((res) => {
+          self.moveInfo[name] = res;
+        })
+        .finally(() => {
+          e.target.value = "";
+        });
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.btn_upload {
+  font-style: normal;
+  display: inline-block;
+  line-height: 1;
+  white-space: nowrap;
+  cursor: pointer;
+  background: #ffffff;
+  border: 1px solid #dcdfe6;
+  border-color: #dcdfe6;
+  color: #606266;
+  text-align: center;
+  -webkit-box-sizing: border-box;
+  box-sizing: border-box;
+  outline: none;
+  margin: 0;
+  -webkit-transition: 0.1s;
+  transition: 0.1s;
+  font-weight: 400;
+  user-select: none;
+  padding: 12px 20px;
+  font-size: 14px;
+  border-radius: 4px;
+}
+</style>

+ 73 - 4
src/views/2Cport/pageSettings/footer.vue

@@ -38,6 +38,36 @@
         <el-button :size="size" type="primary" @click="submit">保 存</el-button>
       </div>
     </div>
+    <div class="right_box">
+      <el-form
+        :model="ruleForm"
+        status-icon
+        :rules="rulesRight"
+        ref="ruleForm"
+        label-width="100px"
+        class="demo-ruleForm"
+      >
+        <el-form-item label="备案号" prop="footerTip">
+          <el-input
+            :autosize="{ minRows: 4, maxRows: 15 }"
+            type="textarea"
+            v-model="ruleForm.footerTip"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="其他说明" prop="footerRecordNo">
+          <el-input
+            :autosize="{ minRows: 4, maxRows: 15 }"
+            type="textarea"
+            v-model="ruleForm.footerRecordNo"
+          ></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" @click="submitFormRight('ruleForm')"
+            >保存</el-button
+          >
+        </el-form-item>
+      </el-form>
+    </div>
     <el-dialog
       @closed="loadingClose"
       :visible.sync="dialogVisible"
@@ -77,7 +107,7 @@
 </template>
 
 <script>
-import { listConfig,updateConfig } from "@/api/system/config";
+import { listConfig, updateConfig } from "@/api/system/config";
 export default {
   data() {
     return {
@@ -110,9 +140,20 @@ export default {
         name: [{ required: true, message: "请填写文本内容", trigger: "blur" }],
       },
       newIndex: "",
+
+      BData: {},
+      ruleForm: {},
+      rulesRight: {
+        footerTip: [
+          { required: true, message: "请输入备案号", trigger: "blur" },
+        ],
+        footerRecordNo: [
+          { required: false, message: "请输入其他说明", trigger: "blur" },
+        ],
+      },
     };
   },
-  mounted() {
+  created() {
     this.init();
   },
   methods: {
@@ -181,11 +222,34 @@ export default {
         }
       });
     },
+    submitFormRight(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          let data = JSON.parse(JSON.stringify(this.ruleForm));
+          let copySubmitData = JSON.parse(JSON.stringify(this.BData));
+          copySubmitData.configValue = JSON.stringify(data);
+          updateConfig(copySubmitData).then((res) => {
+            this.$message.success("保存成功");
+          });
+        } else {
+          console.log("error submit!!");
+          return false;
+        }
+      });
+    },
     init() {
       listConfig({ configKey: "home.footer" }).then((res) => {
         if (res.rows.length) {
-          this.initData = res.rows[0];
-          this.listData = JSON.parse(res.rows[0].configValue);
+          res.rows.forEach((item) => {
+            if (item.configKey === "home.footer") {
+              this.initData = item;
+              this.listData = JSON.parse(item.configValue);
+            }
+            if (item.configKey === "home.footer.record") {
+              this.BData = item;
+              this.ruleForm = JSON.parse(item.configValue);
+            }
+          });
         }
       });
     },
@@ -203,8 +267,13 @@ export default {
 
 <style lang="less" scoped>
 .smallBox {
+  float: left;
   width: 700px;
 }
+.right_box {
+  width: 500px;
+  float: left;
+}
 
 /deep/.el-button {
   border-radius: 8px;

+ 4 - 1
src/views/2Cport/pageSettings/index.vue

@@ -4,11 +4,13 @@
       <el-tab-pane label="页头设置" name="headerPage"></el-tab-pane>
       <el-tab-pane label="页尾设置" name="footerPage"></el-tab-pane>
       <el-tab-pane label="友情链接" name="linksPage"></el-tab-pane>
+      <el-tab-pane label="移动端配置" name="h5small"></el-tab-pane>
     </el-tabs>
     <div class="allSy">
       <header-page ref="headerPage" v-if="activeName === 'headerPage'" />
       <footer-page ref="footerPage" v-if="activeName === 'footerPage'" />
       <links-page ref="linksPage" v-if="activeName === 'linksPage'" />
+      <h5-small ref="h5small" v-if="activeName === 'h5small'" />
     </div>
   </div>
 </template>
@@ -17,8 +19,9 @@
 import headerPage from "./header.vue";
 import footerPage from "./footer.vue";
 import linksPage from "./links.vue";
+import H5Small from "./H5_small.vue";
 export default {
-  components: { headerPage, footerPage, linksPage },
+  components: { headerPage, footerPage, linksPage,H5Small },
   data() {
     return {
       activeName: "headerPage",

+ 4 - 2
src/views/Marketing/goods/commodityManageMent/edit/courseContent/courseCheck.vue

@@ -168,6 +168,9 @@ export default {
     submitTab() {
       this.$message.success("添加成功");
       this.dialogVisibleTableBoxs = false;
+      this.activeLists.forEach((item) => {
+        item.newActive = true;
+      });
       this.$emit("backData", this.activeLists);
     },
     selectCheck(value) {
@@ -196,5 +199,4 @@ export default {
 };
 </script>
 
-<style lang="less" scoped>
-</style>
+<style lang="less" scoped></style>

+ 1 - 4
src/views/Marketing/goods/commodityManageMent/edit/courseContent/index.vue

@@ -2,14 +2,12 @@
   <div id="courseContent">
     <div style="margin-bottom: 20px">
       <el-button
-        v-if="!submitStatusInfo"
         @click="addCourse"
         size="small"
         :disabled="tableData.length > 0 && tableData[0].type > 0"
         >添加课程</el-button
       >
       <el-button
-        v-if="!submitStatusInfo"
         @click="addMoreList"
         size="small"
         :disabled="
@@ -130,13 +128,12 @@
         align="center"
         fixed="right"
         width="100px"
-        v-if="!submitStatusInfo"
       >
         <template slot-scope="scope">
           <el-button
             type="text"
             @click="delCourse(scope.row)"
-            v-if="scope.row.index"
+            v-if="scope.row.index && scope.row.newActive"
             >删除</el-button
           >
           <el-button

+ 1 - 0
src/views/Marketing/goods/commodityManageMent/edit/courseContent/moreListCheck.vue

@@ -289,6 +289,7 @@ export default {
         let ary = this.activeLists.map((item) => {
           const splitStr = item.keyId.split("-").map(Number);
           return {
+            newActive:true,
             type: splitStr[0],
             menuId: splitStr[1],
             menuName: item.name,

+ 1 - 1
src/views/Marketing/goods/commodityManageMent/edit/index.vue

@@ -816,7 +816,7 @@ export default {
     checkSubmitInfo() {
       this.$api.gradecheckGoodsChange({ goodsId: this.goodsId }).then((res) => {
         if (res.data > 0) {
-          // this.submitStatusInfo = true;
+          this.submitStatusInfo = true;
         }
       });
     },

+ 0 - 1
src/views/Marketing/goods/commodityManageMent/edit/productInformation.vue

@@ -103,7 +103,6 @@
             placeholder="请选择科目"
             multiple
             collapse-tags
-            :disabled="submitStatusInfo"
             @change="clearList"
           >
             <el-option

+ 230 - 15
src/views/Marketing/order/pendingRefundOrder/index.vue

@@ -9,7 +9,7 @@
       :topType="topType"
       :pendingType="pendingType"
     />
-    <table-list
+    <!-- <table-list
       rowKey="refundId"
       :tableSets="tableSet"
       :tableData="tableData"
@@ -25,7 +25,88 @@
       <template slot="btn" slot-scope="props">
         <el-button type="text" @click="audit(props.scope.row)">审核</el-button>
       </template>
-    </table-list>
+    </table-list> -->
+    <div style="text-align: end; margin-bottom: 12px">
+      <el-button size="small" type="primary" @click="setGoodsOptions"
+        >批量审核</el-button
+      >
+    </div>
+    <el-table
+      v-if="!loading"
+      ref="tableList"
+      :data="tableData"
+      style="width: 100%"
+      row-key="refundId"
+      border
+      lazy
+      :load="load"
+      :tree-props="prop"
+      :row-class-name="tableRowClassName"
+      @selection-change="handleSelectionChange"
+      @select-all="selectAll"
+      @select="selectRow"
+    >
+      <el-table-column align="center" type="selection" width="55">
+      </el-table-column>
+      <el-table-column
+        v-for="(item, index) in tableSet"
+        header-align="center"
+        :prop="item.prop"
+        sort-by="sort"
+        :key="index"
+        :width="item.width"
+        :label="item.label"
+        :align="index === 1 ? 'left' : 'center'"
+      >
+        <template slot-scope="scope">
+          <span v-if="item.scope === 'aTimeList'">{{
+            scope.row[item.prop] === null
+              ? "--"
+              : $methodsTools.onlyForma(scope.row[item.prop], !item.isDiszing)
+          }}</span>
+          <span v-else-if="item.scope === 'eduTypes'">
+            {{
+              scope.row[item.prop1] +
+              "-" +
+              scope.row[item.prop2] +
+              "-" +
+              scope.row[item.prop3]
+            }}{{ scope.row[item.prop4] ? "-" + scope.row[item.prop4] : "" }}
+          </span>
+          <span v-else-if="item.scope === 'leftCh'">
+            {{ item.ch }}{{ scope.row[item.prop] }}
+          </span>
+          <div v-else-if="item.scope === 'isOptions'">
+            <template v-for="(itemt, indext) in item.options">
+              <span
+                :key="indext"
+                v-if="itemt.value === scope.row[item.prop]"
+                :style="itemt.style ? itemt.style : ''"
+                >{{ itemt.label }}</span
+              >
+            </template>
+          </div>
+          <span v-else-if="item.scope === 'outStandingAmount'">
+            ¥{{ (scope.row[item.prop1] - scope.row[item.prop2]).toFixed(2) }}
+          </span>
+          <div v-else-if="item.scope === 'periodStatusShow'">
+            {{
+              scope.row[item.prop] === 2
+                ? "同意,待退款"
+                : scope.row[item.prop] === 3
+                ? "同意,已退款"
+                : "待审核"
+            }}
+          </div>
+          <span v-else>{{ item.ch }}{{ scope.row[item.prop] }}</span></template
+        >
+      </el-table-column>
+      <el-table-column fixed="right" label="操作" width="120" align="center">
+        <template slot-scope="props">
+          <el-button type="text" @click="audit(props.row)">审核</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
     <pagination
       :total="total"
       :pageSize="formData.pageSize"
@@ -39,12 +120,12 @@
 
 <script>
 import searchBoxNew from "@/components/searchBoxNew";
-import tableList from "@/components/tableList";
+// import tableList from "@/components/tableList";
 import pagination from "@/components/pagination";
 import refundDia from "./refundDia.vue";
 export default {
   name: "PendingRefundOrder",
-  components: { searchBoxNew, tableList, pagination, refundDia },
+  components: { searchBoxNew, pagination, refundDia },
   data() {
     return {
       loading: false, //当前表单加载是否加载动画
@@ -100,6 +181,12 @@ export default {
       },
       // 表单
       tableSet: [
+        {
+          label: "订单编码",
+          prop: "orderSn",
+          hidden: true,
+          width: "240px",
+        },
         {
           label: "订单时间",
           prop: "createTime",
@@ -107,12 +194,6 @@ export default {
           scope: "aTimeList",
           width: "180px",
         },
-        {
-          label: "订单编码",
-          prop: "orderSn",
-          hidden: true,
-          width: "210px",
-        },
         {
           label: "手机号码",
           prop: "telphone",
@@ -208,6 +289,9 @@ export default {
       ],
       tableData: [], //表单数据
       total: 0, //一共多少条
+      isCheckedAll: false,
+      allCheckData: [],
+      prop: { hasChildren: "hasChildren", children: "children" },
     };
   },
   mounted() {
@@ -217,16 +301,119 @@ export default {
     this.search();
   },
   methods: {
+    tableRowClassName({ row, rowIndex }) {
+      if (row.backGround) {
+        return "backGround";
+      } else if (row.childrenGround) {
+        return "childrenGround";
+      } else {
+        return "";
+      }
+    },
+    load(tree, treeNode, resolve) {
+      const table = this.$refs["tableList"];
+      this.$api
+        .obtainOrderRefundlistAll({
+          orderSn: tree.orderSn,
+          periodStatus: this.formData.periodStatus,
+        })
+        .then((res) => {
+          const NewArray = res.data.filter((item) => {
+            item.childrenGround = true;
+            return item.refundId != tree.refundId;
+          });
+          tree.children = NewArray;
+          resolve(NewArray);
+          this.$set(
+            //更新table内部的数据  不这样的话勾选父节点以后子节点还是不能勾选 就很奇怪
+            table.store.states.lazyTreeNodeMap,
+            tree.refundId, //父节点id
+            tree.children //新数组
+          );
+          // 这里判断当前父节点是否有被勾选
+          let dt = this.allCheckData.find((m) => {
+            return m.refundId == tree.refundId;
+          });
+          this.setChildren(tree.children, dt ? true : false);
+        }, 1000)
+        .catch(() => {
+          resolve([]);
+        });
+    },
+    setChildren(children, type) {
+      // 编辑多个子层级
+      children.map((j) => {
+        this.toggleSelection(j, type);
+        if (j.children) {
+          this.setChildren(j.children, type);
+        }
+      });
+    },
+    // 选中父节点时,子节点一起选中取消
+    async selectRow(selection, row) {
+      const hasSelect = selection.some((el) => {
+        return row.refundId === el.refundId;
+      });
+      if (hasSelect) {
+        if (row.children) {
+          // 解决子组件没有被勾选到
+          this.setChildren(row.children, true);
+        }
+      } else {
+        if (row.children) {
+          this.setChildren(row.children, false);
+        }
+      }
+    },
+    // 选择全部
+    selectAll(selection) {
+      // tabledata第一层只要有在selection里面就是全选
+      const isSelect = selection.some((el) => {
+        const tableDataIds = this.tableData.map((j) => j.refundId);
+        return tableDataIds.includes(el.refundId);
+      });
+      // tableDate第一层只要有不在selection里面就是全不选
+      const isCancel = !this.tableData.every((el) => {
+        const selectIds = selection.map((j) => j.refundId);
+        return selectIds.includes(el.refundId);
+      });
+      if (isSelect) {
+        selection.map((el) => {
+          if (el.children) {
+            // 解决子组件没有被勾选到
+            this.setChildren(el.children, true);
+          }
+        });
+      }
+      if (isCancel) {
+        this.tableData.map((el) => {
+          if (el.children) {
+            // 解决子组件没有被勾选到
+            this.setChildren(el.children, false);
+          }
+        });
+      }
+    },
+    toggleSelection(row, select) {
+      if (row) {
+        this.$nextTick(() => {
+          this.$refs.tableList.toggleRowSelection(row, select);
+        });
+      }
+    },
+    handleSelectionChange(selection) {
+      this.allCheckData = selection;
+    },
     /**
      * 批量审核
      */
     setGoodsOptions() {
-      if (!this.$refs.tableList.allCheckData.length) {
+      if (!this.allCheckData.length) {
         this.$message.warning("请选择订单");
         return;
       }
       this.$refs.refundDia.openBox(
-        this.$refs.tableList.allCheckData,
+        this.allCheckData,
         this.formData.periodStatus === "1,2"
           ? 1
           : this.formData.periodStatus === 0
@@ -253,8 +440,9 @@ export default {
       }
       if (int === 4) {
         this.formData.pageNum = 1;
-        this.$refs.tableList.clearMoreActive();
       }
+      this.allCheckData = [];
+      this.$refs.tableList.clearSelection();
       var data = JSON.parse(JSON.stringify(this.formData));
       data.inputOrderSn = this.$route.query.inputOrderSn;
       if (this.formData.searchStartTime) {
@@ -266,7 +454,13 @@ export default {
       this.$api
         .inquireorderrefundlist(data)
         .then((res) => {
-          this.tableData = res.rows;
+          this.tableData = res.rows.map((e) => {
+            if (e.goodsNum > 1) {
+              e.hasChildren = true;
+            }
+            e.backGround = true;
+            return e;
+          });
           this.total = res.total;
           this.navText.index = res.total;
         })
@@ -301,6 +495,28 @@ export default {
 </script>
 
 <style lang="less" scoped>
+::v-deep .el-table .backGround {
+  td {
+    background-color: rgb(252, 248, 229);
+  }
+}
+::v-deep .el-table .childrenGround {
+  td {
+    background-color: rgb(252, 238, 238);
+    &:nth-of-type(2) {
+      background: rgb(237, 246, 245);
+    }
+  }
+}
+// el-table表格对齐
+::v-deep .el-table__row:not([class*="el-table__row--level-"]) {
+  td:nth-of-type(2) {
+    padding-left: 24px !important; //一级数据无Child缩进
+  }
+}
+::v-deep .el-table__placeholder {
+  margin-left: 3px; //子节点无Child缩进
+}
 /deep/.el-button {
   border-radius: 8px;
 }
@@ -394,4 +610,3 @@ export default {
   }
 }
 </style>
-

+ 22 - 6
src/views/Marketing/order/pendingRefundOrder/refundDia.vue

@@ -84,9 +84,16 @@
               <el-radio-group
                 v-model="item.periodStatus"
                 :size="size"
-                @change="item.type === 1 && item.periodStatus === 2 ? (item.periodStatusLine = 3,item.realRefundFee?'':item.realRefundFee = item.refundFee) : item.periodStatusLine = ''"
+                @change="
+                  item.type === 1 && item.periodStatus === 2
+                    ? ((item.periodStatusLine = 3),
+                      item.realRefundFee
+                        ? ''
+                        : (item.realRefundFee = item.refundFee))
+                    : (item.periodStatusLine = '')
+                "
               >
-                <el-radio :label="2" >同意</el-radio>
+                <el-radio :label="2">同意</el-radio>
                 <el-radio :label="-2">拒绝</el-radio>
               </el-radio-group>
             </div>
@@ -100,7 +107,10 @@
                 <el-radio :label="3">已退款</el-radio>
               </el-radio-group>
             </div>
-            <div class="disflex_sty" v-if="item.type === 1 && item.periodStatus === 2">
+            <div
+              class="disflex_sty"
+              v-if="item.type === 1 && item.periodStatus === 2"
+            >
               <span class="spanSty">退款金额:</span><span>¥</span>
               <el-input-number
                 v-model="item.realRefundFee"
@@ -108,7 +118,11 @@
                 :min="0.01"
                 :max="item.refundFee"
                 :controls="false"
-                @blur="item.realRefundFee ? '':item.realRefundFee = item.refundFee"
+                @blur="
+                  item.realRefundFee
+                    ? ''
+                    : (item.realRefundFee = item.refundFee)
+                "
               ></el-input-number>
             </div>
             <div class="disflex_sty">
@@ -216,7 +230,8 @@ export default {
           .editorderrefundfirstPeriod(data)
           .then((res) => {
             this.dialogVisible = false;
-            this.$parent.$refs.tableList.clearMoreActive();
+            this.$parent.allCheckData = [];
+            this.$parent.$refs.tableList.clearSelection();
             this.$parent.search();
           })
           .catch((err) => {
@@ -228,7 +243,8 @@ export default {
           .editorderrefundconfirmPeriod(data)
           .then((res) => {
             this.dialogVisible = false;
-            this.$parent.$refs.tableList.clearMoreActive();
+            this.$parent.allCheckData = [];
+            this.$parent.$refs.tableList.clearSelection();
             this.$parent.search();
           })
           .catch((err) => {

+ 6 - 6
src/views/resource/bankManagement/testPaperManagement/PaperSort.vue

@@ -59,7 +59,7 @@
           size="mini"
           @click="handelClick(item.key)"
           >更多</el-button
-        >
+        ><p style="color: red;padding-left:76px;" v-if="item.key === 'caseQuestion'">案例题是主观题,不算作分数,所以会随机切换</p>
       </li>
     </ul>
     <Base-dialog
@@ -121,9 +121,9 @@ export default {
     return {
       isShow: false,
       list: [
-        { name: "单选题", key: "caseQuestion" },
+        { name: "单选题", key: "singleChoice" },
         { name: "多选题", key: "multipleChoice" },
-        { name: "案例题", key: "singleChoice" },
+        { name: "案例题", key: "caseQuestion" },
       ],
       tableData: [{ name: 1 }],
       selectList: [],
@@ -184,7 +184,7 @@ export default {
     },
     initform() {
       this.form = {
-        caseQuestion: {
+        singleChoice: {
           knowledIds: [],
           knum: 0,
           orderNum: 1,
@@ -198,7 +198,7 @@ export default {
           qnum: 0,
           randomNum: 1,
         },
-        singleChoice: {
+        caseQuestion: {
           knowledIds: [],
           knum: 0,
           orderNum: 3,
@@ -213,7 +213,7 @@ export default {
     },
   },
   watch: {
-    "form.caseQuestion.randomNum": {
+    "form.singleChoice.randomNum": {
       handler(val) {
         this.list.forEach((ele) => {
           this.form[ele.key].randomNum = val;

+ 1 - 0
src/views/resource/baseManageInfos/resource/papers/index.vue

@@ -44,6 +44,7 @@
           :model="listData"
           :rules="rules"
           ref="listData"
+              @submit.native.prevent
         >
           <el-form-item
             v-for="(items, indexs) in listitem"

+ 1 - 1
src/views/resource/videoManagement/festival/add/index.vue

@@ -519,7 +519,7 @@ export default {
           },
         ],
         durationTime: [
-          { required: true, message: "请选择节时长", trigger: "change" },
+          { required: false, message: "请选择节时长", trigger: "change" },
         ],
         liveUrl: [
           {

+ 1 - 1
src/views/resource/videoManagement/festival/edit/index.vue

@@ -494,7 +494,7 @@ export default {
           },
         ],
         durationTime: [
-          { required: true, message: "请选择节时长", trigger: "change" },
+          { required: false, message: "请选择节时长", trigger: "change" },
         ],
         liveUrl: [
           {