瀏覽代碼

包邮范围内的报错

yuhongqi 1 周之前
父節點
當前提交
44a1659d6f
共有 2 個文件被更改,包括 116 次插入5 次删除
  1. 74 0
      src/views/live/liveConfig/goods.vue
  2. 42 5
      src/views/live/liveOrder/index.vue

+ 74 - 0
src/views/live/liveConfig/goods.vue

@@ -58,6 +58,13 @@
         label="销量"
       ></el-table-column>
 
+      <el-table-column
+        prop="sort"
+        label="排序号"
+        width="100"
+        align="center"
+      ></el-table-column>
+
       <el-table-column
         prop="isShow"
         label="显示状态"
@@ -114,6 +121,13 @@
             style="color: #0066FF;"
             @click="handleGoodSale(scope.row)"
           >调整销量</el-button>
+          <el-button
+            :disabled="isViewOnly"
+            type="text"
+            size="small"
+            style="color: #0066FF;"
+            @click="handleGoodSort(scope.row)"
+          >修改排序</el-button>
           <el-button
             :disabled="isViewOnly"
             type="text"
@@ -250,6 +264,31 @@
         <el-button type="primary" @click="confirmSalesChange">确 定</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog
+      title="修改排序"
+      :visible.sync="sortDialogVisible"
+      width="400px"
+      :close-on-click-modal="false"
+      :close-on-press-escape="false"
+    >
+      <el-form :model="sortForm" ref="sortForm" :rules="sortRules">
+        <el-form-item label="排序号" prop="sort">
+          <el-input-number
+            v-model="sortForm.sort"
+            :min="0"
+            :max="999999"
+            controls-position="right"
+            style="width: 100%;"
+          ></el-input-number>
+          <div style="color: #909399; font-size: 12px; margin-top: 5px;">数字越小,排序越靠前</div>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="sortDialogVisible = false">取 消</el-button>
+        <el-button type="primary" @click="confirmSortChange">确 定</el-button>
+      </div>
+    </el-dialog>
   </div>
   </div>
 </template>
@@ -304,6 +343,7 @@ export default {
       socket: null,
       stockDialogVisible: false,
       salesDialogVisible: false,
+      sortDialogVisible: false,
       stockForm: {
         goodsId: '',
         stock: 0,
@@ -314,6 +354,10 @@ export default {
         sales: 0,
         productId: 0,
       },
+      sortForm: {
+        goodsId: '',
+        sort: 0
+      },
       stockRules: {
         stock: [
         { required: true, message: '请输入库存数量', trigger: 'blur' },
@@ -325,6 +369,12 @@ export default {
           { required: true, message: '请输入销量数量', trigger: 'blur' },
           { type: 'number', min: 0, message: '库存数量不能小于0', trigger: 'blur' }
         ]
+      },
+      sortRules: {
+        sort: [
+          { required: true, message: '请输入排序号', trigger: 'blur' },
+          { type: 'number', min: 0, message: '排序号不能小于0', trigger: 'blur' }
+        ]
       }
     };
   },
@@ -527,6 +577,11 @@ export default {
       this.salesForm.productId = row.productId;
       this.salesDialogVisible = true;
     },
+    handleGoodSort(row){
+      this.sortForm.goodsId = row.goodsId;
+      this.sortForm.sort = row.sort || 0;
+      this.sortDialogVisible = true;
+    },
     // 添加确认修改库存方法
     confirmStockChange() {
       this.$refs.stockForm.validate((valid) => {
@@ -567,6 +622,25 @@ export default {
         }
       });
     },
+    // 添加确认修改排序方法
+    confirmSortChange() {
+      this.$refs.sortForm.validate((valid) => {
+        if (valid) {
+          updateLiveGoods({
+            goodsId: this.sortForm.goodsId,
+            sort: this.sortForm.sort
+          }).then(response => {
+            if (response.code === 200) {
+              this.$message.success('排序修改成功');
+              this.sortDialogVisible = false;
+              this.getLiveGoodsList(); // 重新获取列表数据
+            } else {
+              this.$message.error(response.msg || '排序修改失败');
+            }
+          });
+        }
+      });
+    },
     /** 处理行点击事件 */
     handleGoodsRowClick(row, column) {
       // 如果点击的是复选框列,不进行处理

+ 42 - 5
src/views/live/liveOrder/index.vue

@@ -67,6 +67,15 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+      <el-form-item label="直播ID" prop="liveId">
+        <el-input
+          v-model="queryParams.liveId"
+          placeholder="请输入直播id"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
       <el-form-item style="margin-left: 20px;">
         <el-button type="text" :icon="isCollapsed ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" @click="upDown">{{ isCollapsed ? '展开' : '收起' }}</el-button>
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@@ -140,6 +149,19 @@
             @change="handleDateChange"
           />
         </el-form-item>
+        <el-form-item label="下单时间">
+          <el-date-picker
+            v-model="createTimeRange"
+            type="daterange"
+            size="small"
+            clearable
+            value-format="yyyy-MM-dd"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            @change="handleCreateTimeChange"
+          />
+        </el-form-item>
       </div>
     </el-form>
 
@@ -243,6 +265,8 @@ export default {
       payTimeRange: [],
       // 完成时间范围
       finishTimeRange: [],
+      // 下单时间范围选择器绑定的值
+      createTimeRange: [],
       //字典
       orderStatusOptions: [],
       loading: true,
@@ -317,13 +341,23 @@ export default {
     },
     // 支付时间范围处理
     handlePayTimeChange(val) {
-      if (value && value.length === 2) {
+      if (val && val.length === 2) {
         // 提取日期部分(yyyy-MM-dd),mapper会在SQL中拼接时间部分
-        this.queryParams.payStartTime = value[0].substring(0, 10);
-        this.queryParams.payEndTime = value[1].substring(0, 10);
+        this.queryParams.payTimeStart = val[0].substring(0, 10);
+        this.queryParams.payTimeEnd = val[1].substring(0, 10);
+      } else {
+        this.queryParams.payTimeStart = null;
+        this.queryParams.payTimeEnd = null;
+      }
+    },
+    // 下单时间范围选择处理(按天,开始 00:00:00,结束 23:59:59)
+    handleCreateTimeChange(value) {
+      if (value && value.length === 2) {
+        this.queryParams.createTimeStart = value[0].substring(0, 10);
+        this.queryParams.createTimeEnd = value[1].substring(0, 10);
       } else {
-        this.queryParams.payStartTime = null;
-        this.queryParams.payEndTime = null;
+        this.queryParams.createTimeStart = null;
+        this.queryParams.createTimeEnd = null;
       }
     },
     // 完成时间范围处理
@@ -397,6 +431,7 @@ export default {
       this.deliveryTimeRange = [];
       this.payTimeRange = [];
       this.finishTimeRange = [];
+      this.createTimeRange = [];
       this.resetForm("queryForm");
       this.queryParams = {
         pageNum: 1,
@@ -421,6 +456,8 @@ export default {
         companyUserName: null,
         deliverySendTimeStart: null,
         deliverySendTimeEnd: null,
+        createTimeStart: null,
+        createTimeEnd: null,
       };
       this.queryParams.deliverySendTimeStart = null;
       this.queryParams.deliverySendTimeEnd = null;