瀏覽代碼

上传视频 售后信息 订单

yuhongqi 1 月之前
父節點
當前提交
2718cd859c

+ 27 - 0
src/api/live/liveOrderPayment.js

@@ -0,0 +1,27 @@
+import request from '@/utils/request'
+
+// 查询订单详情列表
+export function listLiveOrderPayments(query) {
+  return request({
+    url: '/live/order/payment',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询支付明细详细
+export function getLivePayment(paymentId) {
+  return request({
+    url: '/live/order/payment/' + paymentId,
+    method: 'get'
+  })
+}
+
+// 修改支付明细
+export function updateLivePayment(data) {
+  return request({
+    url: '/live/order/payment',
+    method: 'put',
+    data: data
+  })
+}

+ 10 - 0
src/api/live/liveUserLotteryRecord.js

@@ -51,3 +51,13 @@ export function exportLiveUserLotteryRecord(query) {
     params: query
   })
 }
+
+
+// 查询单一数据的中奖信息
+export function info(data) {
+  return request({
+    url: '/live/liveUserLotteryRecord/info',
+    method: 'post',
+    data: data
+  })
+}

+ 7 - 0
src/api/live/liveVideo.js

@@ -59,3 +59,10 @@ export function exportLiveVideo(query) {
     params: query
   })
 }
+
+export function getLiveVideoByLiveIdAndType(liveId) {
+  return request({
+    url: '/live/liveVideo/preview/' + liveId,
+    method: 'get'
+  })
+}

+ 11 - 11
src/components/VideoUpload/index.vue

@@ -84,17 +84,17 @@
       <!-- 视频列表 -->
       <el-table v-loading="libraryLoading" :data="libraryList" @row-click="handleLibrarySelect" highlight-current-row>
         <el-table-column label="素材名称" align="center" prop="remark" />
-        <el-table-column label="缩略图" align="center">
-          <template slot-scope="scope">
-            <video
-              :src="scope.row.videoUrl"
-              controls
-              controlsList="nodownload"
-              class="video-player"
-              @contextmenu.prevent
-            ></video>
-          </template>
-        </el-table-column>
+<!--        <el-table-column label="缩略图" align="center">-->
+<!--          <template slot-scope="scope">-->
+<!--            <video-->
+<!--              :src="scope.row.videoUrl"-->
+<!--              controls-->
+<!--              controlsList="nodownload"-->
+<!--              class="video-player"-->
+<!--              @contextmenu.prevent-->
+<!--            ></video>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
         <el-table-column label="视频时长" align="center">
           <template slot-scope="scope">
             <span>{{ formatDuration(scope.row.duration) }}</span>

+ 201 - 280
src/views/live/liveAfteraSales/index.vue

@@ -1,246 +1,197 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
-      <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 label="店铺ID" prop="storeId">
-        <el-input
-          v-model="queryParams.storeId"
-          placeholder="请输入店铺ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+      <el-form-item label="公司名" prop="companyId">
+        <el-select filterable  v-model="queryParams.companyId" placeholder="请选择公司名"  @change="companyChange" clearable size="small">
+          <el-option
+            v-for="item in companys"
+            :key="item.companyId"
+            :label="item.companyName"
+            :value="item.companyId"
+          />
+        </el-select>
       </el-form-item>
-      <el-form-item label="订单ID" prop="orderId">
-        <el-input
-          v-model="queryParams.orderId"
-          placeholder="请输入订单ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+
+      <el-form-item >
+        <treeselect style="width: 220px" :clearable="false"  v-model="queryParams.deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
       </el-form-item>
-      <el-form-item label="退款金额" prop="refundAmount">
+
+      <el-form-item label="订单单号" prop="orderCode">
         <el-input
-          v-model="queryParams.refundAmount"
-          placeholder="请输入退款金额"
+          v-model="queryParams.orderCode"
+          placeholder="请输入订单单号"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="服务类型0仅退款1退货退款" prop="refundType">
-        <el-select v-model="queryParams.refundType" placeholder="请选择服务类型0仅退款1退货退款" clearable size="small">
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="物流公司编码" prop="deliveryCode">
+      <el-form-item label="员工姓名" prop="companyUserNickName">
         <el-input
-          v-model="queryParams.deliveryCode"
-          placeholder="请输入物流公司编码"
+          v-model="queryParams.companyUserNickName"
+          placeholder="请输入员工姓名"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="物流单号" prop="deliverySn">
+      <el-form-item label="手机号" prop="consigneePhone">
         <el-input
-          v-model="queryParams.deliverySn"
-          placeholder="请输入物流单号"
+          v-model="queryParams.consigneePhone"
+          placeholder="请输入手机号"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="物流名称" prop="deliveryName">
-        <el-input
-          v-model="queryParams.deliveryName"
-          placeholder="请输入物流名称"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+
+
+
+      <el-form-item label="退款类型" prop="serviceType">
+        <el-select  v-model="queryParams.serviceType" placeholder="请选择退款类型" clearable size="small" >
+          <el-option
+            v-for="item in serviceTypeOptions"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+          />
+        </el-select>
       </el-form-item>
-      <el-form-item label="状态 0已提交等待平台审核 1平台已审核 等待用户发货 2 用户已发货待仓库审核 3财务审核 4退款成功" prop="status">
-        <el-select v-model="queryParams.status" placeholder="请选择状态 0已提交等待平台审核 1平台已审核 等待用户发货 2 用户已发货待仓库审核 3财务审核 4退款成功" clearable size="small">
-          <el-option label="请选择字典生成" value="" />
+
+
+      <el-form-item label="状态" prop="status">
+        <el-select  v-model="queryParams.status" placeholder="请选择状态" clearable size="small" >
+          <el-option
+            v-for="item in statusOptions"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+          />
         </el-select>
       </el-form-item>
-      <el-form-item label="售后状态 0售后中 1用户取消2商家拒绝 3已完成" prop="salesStatus">
-        <el-select v-model="queryParams.salesStatus" placeholder="请选择售后状态 0售后中 1用户取消2商家拒绝 3已完成" clearable size="small">
-          <el-option label="请选择字典生成" value="" />
+      <el-form-item label="售后状态" prop="salesStatus">
+        <el-select   v-model="queryParams.salesStatus" placeholder="请选择状态" clearable size="small" >
+          <el-option
+            v-for="item in salesStatusOptions"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+          />
         </el-select>
       </el-form-item>
       <el-form-item label="订单状态" prop="orderStatus">
-        <el-select v-model="queryParams.orderStatus" placeholder="请选择订单状态" clearable size="small">
-          <el-option label="请选择字典生成" value="" />
+        <el-select   v-model="queryParams.orderStatus" placeholder="请选择订单状态" clearable size="small" >
+          <el-option
+            v-for="item in orderStatusOptions"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+          />
         </el-select>
       </el-form-item>
-      <el-form-item label="用户id" prop="userId">
-        <el-input
-          v-model="queryParams.userId"
-          placeholder="请输入用户id"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="商家收货人" prop="consignee">
-        <el-input
-          v-model="queryParams.consignee"
-          placeholder="请输入商家收货人"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="商家手机号" prop="phoneNumber">
-        <el-input
-          v-model="queryParams.phoneNumber"
-          placeholder="请输入商家手机号"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="商家地址" prop="address">
-        <el-input
-          v-model="queryParams.address"
-          placeholder="请输入商家地址"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="商家地址" prop="companyId">
-        <el-input
-          v-model="queryParams.companyId"
-          placeholder="请输入商家地址"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+
+      <el-form-item label="物流状态" prop="deliveryStatus">
+        <el-select   v-model="queryParams.deliveryStatus" placeholder="请选择物流状态" clearable size="small" >
+          <el-option
+            v-for="item in deliveryStatusOptions"
+            :key="item.dictValue"
+            :label="item.dictLabel"
+            :value="item.dictValue"
+          />
+        </el-select>
       </el-form-item>
-      <el-form-item label="商家地址" prop="companyUserId">
+
+      <el-form-item label="物流单号" prop="deliverySn">
         <el-input
-          v-model="queryParams.companyUserId"
-          placeholder="请输入商家地址"
+          v-model="queryParams.deliverySn"
+          placeholder="物流/退回物流单号"
           clearable
           size="small"
-          @keyup.enter.native="handleQuery"
-        />
+          @keyup.enter.native="handleQuery"/>
       </el-form-item>
-      <el-form-item label="部门id" prop="deptId">
-        <el-input
-          v-model="queryParams.deptId"
-          placeholder="请输入部门id"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+
+
+      <el-form-item label="提交时间" prop="createTime">
+        <el-date-picker
+          style="width:205.4px"
+          clearable size="small"
+          v-model="dateRange"
+          type="daterange"
+          value-format="yyyy-MM-dd"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期">
+        </el-date-picker>
       </el-form-item>
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
 
     <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['live:liveAfteraSales:add']"
-        >新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['live:liveAfteraSales:edit']"
-        >修改</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="danger"
-          plain
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-hasPermi="['live:liveAfteraSales:remove']"
-        >删除</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          :loading="exportLoading"
-          @click="handleExport"
-          v-hasPermi="['live:liveAfteraSales:export']"
-        >导出</el-button>
-      </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--          type="warning"-->
+<!--          icon="el-icon-download"-->
+<!--          size="mini"-->
+<!--          @click="handleExport"-->
+<!--          v-hasPermi="['store:storeAfterSales:export']"-->
+<!--        >导出</el-button>-->
+<!--      </el-col>-->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table border v-loading="loading" :data="liveAfteraSalesList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="部门id" align="center" prop="id" />
-      <el-table-column label="直播ID" align="center" prop="liveId" />
-      <el-table-column label="店铺ID" align="center" prop="storeId" />
-      <el-table-column label="订单ID" align="center" prop="orderId" />
+      <el-table-column label="ID" align="center" prop="id" />
+      <el-table-column label="所属公司" align="center" prop="companyName" />
+      <el-table-column label="所属员工" align="center" prop="companyUserNickName" />
+      <el-table-column label="订单单号" align="center" prop="orderCode" />
+      <el-table-column label="会员手机号" align="center" prop="userPhone" />
       <el-table-column label="退款金额" align="center" prop="refundAmount" />
-      <el-table-column label="服务类型0仅退款1退货退款" align="center" prop="refundType" />
+      <el-table-column label="退款类型" align="center" prop="serviceType" >
+        <template slot-scope="scope">
+          <div prop="serviceType" v-for="(item, index) in serviceTypeOptions"    v-if="scope.row.serviceType==item.dictValue">{{item.dictLabel}}</div>
+        </template>
+      </el-table-column>
       <el-table-column label="申请原因" align="center" prop="reasons" />
       <el-table-column label="说明" align="center" prop="explains" />
-      <el-table-column label="说明图片-&gt;多个用逗号分割" align="center" prop="explainImg" />
-      <el-table-column label="物流公司编码" align="center" prop="deliveryCode" />
-      <el-table-column label="物流单号" align="center" prop="deliverySn" />
-      <el-table-column label="物流名称" align="center" prop="deliveryName" />
-      <el-table-column label="状态 0已提交等待平台审核 1平台已审核 等待用户发货 2 用户已发货待仓库审核 3财务审核 4退款成功" align="center" prop="status" />
-      <el-table-column label="售后状态 0售后中 1用户取消2商家拒绝 3已完成" align="center" prop="salesStatus" />
-      <el-table-column label="订单状态" align="center" prop="orderStatus" />
-      <el-table-column label="逻辑删除" align="center" prop="isDel" />
-      <el-table-column label="用户id" align="center" prop="userId" />
-      <el-table-column label="商家收货人" align="center" prop="consignee" />
-      <el-table-column label="商家手机号" align="center" prop="phoneNumber" />
-      <el-table-column label="商家地址" align="center" prop="address" />
-      <el-table-column label="商家地址" align="center" prop="companyId" />
-      <el-table-column label="商家地址" align="center" prop="companyUserId" />
-      <el-table-column label="部门id" align="center" prop="deptId" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+      <el-table-column label="状态" align="center" prop="status" >
+        <template slot-scope="scope">
+          <div prop="status" v-for="(item, index) in statusOptions"    v-if="scope.row.status==item.dictValue">{{item.dictLabel}}</div>
+        </template>
+      </el-table-column>
+      <el-table-column label="售后状态" align="center" prop="salesStatus" >
+        <template slot-scope="scope">
+          <div prop="status" v-for="(item, index) in salesStatusOptions"    v-if="scope.row.salesStatus==item.dictValue">{{item.dictLabel}}</div>
+        </template>
+      </el-table-column>
+      <el-table-column label="订单状态" align="center" prop="orderStatus" >
+        <template slot-scope="scope">
+          <div prop="status" v-for="(item, index) in orderStatusOptions"    v-if="scope.row.orderStatus==item.dictValue">{{item.dictLabel}}</div>
+        </template>
+      </el-table-column>
+      <el-table-column label="物流状态" align="center" prop="deliveryStatus" >
+        <template slot-scope="scope">
+          <el-tag prop="status" v-for="(item, index) in deliveryStatusOptions"    v-if="scope.row.deliveryStatus==item.dictValue">{{item.dictLabel}}</el-tag>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="物流单号" align="center" prop="deliveryId" />
+
+      <el-table-column label="客户退回物流单号" align="center" prop="deliverySn" />
+      <el-table-column label="客户退货物流名称" align="center" prop="deliveryName" />
+
+      <el-table-column label="提交时间" align="center" prop="createTime" />
+
+      <el-table-column label="操作" align="center" fixed="right" width="100px" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
             size="mini"
             type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['live:liveAfteraSales:edit']"
-          >修改</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['live:liveAfteraSales:remove']"
-          >删除</el-button>
+            @click="handleShow(scope.row)"
+            v-hasPermi="['store:storeAfterSales:query']"
+          >查看</el-button>
+
         </template>
       </el-table-column>
     </el-table>
@@ -253,96 +204,22 @@
       @pagination="getList"
     />
 
-    <!-- 添加或修改售后记录对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="直播ID" prop="liveId">
-          <el-input v-model="form.liveId" placeholder="请输入直播ID" />
-        </el-form-item>
-        <el-form-item label="店铺ID" prop="storeId">
-          <el-input v-model="form.storeId" placeholder="请输入店铺ID" />
-        </el-form-item>
-        <el-form-item label="订单ID" prop="orderId">
-          <el-input v-model="form.orderId" placeholder="请输入订单ID" />
-        </el-form-item>
-        <el-form-item label="退款金额" prop="refundAmount">
-          <el-input v-model="form.refundAmount" placeholder="请输入退款金额" />
-        </el-form-item>
-        <el-form-item label="服务类型0仅退款1退货退款" prop="refundType">
-          <el-select v-model="form.refundType" placeholder="请选择服务类型0仅退款1退货退款">
-            <el-option label="请选择字典生成" value="" />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="申请原因" prop="reasons">
-          <el-input v-model="form.reasons" type="textarea" placeholder="请输入内容" />
-        </el-form-item>
-        <el-form-item label="说明" prop="explains">
-          <el-input v-model="form.explains" type="textarea" placeholder="请输入内容" />
-        </el-form-item>
-        <el-form-item label="说明图片-&gt;多个用逗号分割" prop="explainImg">
-          <el-input v-model="form.explainImg" type="textarea" placeholder="请输入内容" />
-        </el-form-item>
-        <el-form-item label="物流公司编码" prop="deliveryCode">
-          <el-input v-model="form.deliveryCode" placeholder="请输入物流公司编码" />
-        </el-form-item>
-        <el-form-item label="物流单号" prop="deliverySn">
-          <el-input v-model="form.deliverySn" placeholder="请输入物流单号" />
-        </el-form-item>
-        <el-form-item label="物流名称" prop="deliveryName">
-          <el-input v-model="form.deliveryName" placeholder="请输入物流名称" />
-        </el-form-item>
-        <el-form-item label="状态 0已提交等待平台审核 1平台已审核 等待用户发货 2 用户已发货待仓库审核 3财务审核 4退款成功">
-          <el-radio-group v-model="form.status">
-            <el-radio label="1">请选择字典生成</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="售后状态 0售后中 1用户取消2商家拒绝 3已完成">
-          <el-radio-group v-model="form.salesStatus">
-            <el-radio label="1">请选择字典生成</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="订单状态">
-          <el-radio-group v-model="form.orderStatus">
-            <el-radio label="1">请选择字典生成</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="用户id" prop="userId">
-          <el-input v-model="form.userId" placeholder="请输入用户id" />
-        </el-form-item>
-        <el-form-item label="商家收货人" prop="consignee">
-          <el-input v-model="form.consignee" placeholder="请输入商家收货人" />
-        </el-form-item>
-        <el-form-item label="商家手机号" prop="phoneNumber">
-          <el-input v-model="form.phoneNumber" placeholder="请输入商家手机号" />
-        </el-form-item>
-        <el-form-item label="商家地址" prop="address">
-          <el-input v-model="form.address" placeholder="请输入商家地址" />
-        </el-form-item>
-        <el-form-item label="商家地址" prop="companyId">
-          <el-input v-model="form.companyId" placeholder="请输入商家地址" />
-        </el-form-item>
-        <el-form-item label="商家地址" prop="companyUserId">
-          <el-input v-model="form.companyUserId" placeholder="请输入商家地址" />
-        </el-form-item>
-        <el-form-item label="部门id" prop="deptId">
-          <el-input v-model="form.deptId" placeholder="请输入部门id" />
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
   </div>
 </template>
 
 <script>
 import { listLiveAfteraSales, getLiveAfteraSales, delLiveAfteraSales, addLiveAfteraSales, updateLiveAfteraSales, exportLiveAfteraSales } from "@/api/live/liveAfteraSales";
+import {getCompanyList} from "@/api/company/company";
+import Treeselect from "@riophae/vue-treeselect";
+import {treeselect} from "@/api/company/companyDept";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 
 export default {
   name: "LiveAfteraSales",
+  components: {Treeselect},
   data() {
     return {
+      dateRange:[],
       // 遮罩层
       loading: true,
       // 导出遮罩层
@@ -367,37 +244,61 @@ export default {
       queryParams: {
         pageNum: 1,
         pageSize: 10,
-        liveId: null,
-        storeId: null,
-        orderId: null,
+        orderCode: null,
         refundAmount: null,
-        refundType: null,
+        serviceType: null,
         reasons: null,
         explains: null,
         explainImg: null,
-        deliveryCode: null,
+        shipperCode: null,
         deliverySn: null,
         deliveryName: null,
         status: null,
         salesStatus: null,
-        orderStatus: null,
         isDel: null,
         userId: null,
         consignee: null,
         phoneNumber: null,
-        address: null,
-        companyId: null,
-        companyUserId: null,
-        deptId: null
+        address: null
       },
       // 表单参数
       form: {},
       // 表单校验
       rules: {
-      }
+      },
+      orderStatusOptions:[],
+      companys:[],
+      deliveryStatusOptions:[],
+      serviceTypeOptions:[],
+      salesStatusOptions:[],
+      statusOptions:[],
+      deptOptions:[],
     };
   },
   created() {
+    getCompanyList().then(response => {
+      this.companys = response.data;
+      if(this.companys!=null&&this.companys.length>0){
+        this.companyId=this.companys[0].companyId;
+        this.getTreeselect();
+      }
+    });
+    this.getDicts("store_after_sales_sales_status").then((response) => {
+      this.salesStatusOptions = response.data;
+    });
+    this.getDicts("store_after_sales_status").then((response) => {
+      this.statusOptions = response.data;
+    });
+    this.getDicts("store_after_sales_service_type").then((response) => {
+      this.serviceTypeOptions = response.data;
+    });
+    this.getDicts("store_order_delivery_status").then((response) => {
+      this.deliveryStatusOptions = response.data;
+    });
+    this.getDicts("store_order_status").then((response) => {
+      this.orderStatusOptions = response.data;
+    });
+
     this.getList();
   },
   methods: {
@@ -525,7 +426,27 @@ export default {
           this.download(response.msg);
           this.exportLoading = false;
         }).catch(() => {});
-    }
+    },
+    getTreeselect() {
+      var param={companyId:this.companyId}
+      treeselect(param).then((response) => {
+        this.deptOptions = response.data;
+        console.log(this.deptOptions)
+        if(response.data!=null&&response.data.length>0){
+          //this.queryParams.deptId=response.data[0].id;
+        }
+      });
+    },
+    companyChange(val){
+      console.log(val);
+      this.companyId=val;
+      this.getTreeselect();
+    },
+    currDeptChange(val){
+      console.log(val)
+      this.queryParams.deptId=val;
+      this.getList();
+    },
   }
 };
 </script>

+ 40 - 1
src/views/live/liveConfig/liveLotteryConf.vue

@@ -145,7 +145,6 @@
             @click="handleStatusChange(scope.row,'2')"
             v-hasPermi="['live:liveLotteryConf:edit']"
           >结算</el-button>
-
           <el-button
             size="mini"
             type="text"
@@ -153,6 +152,15 @@
             @click="handleDelete(scope.row)"
             v-hasPermi="['live:liveLotteryConf:edit']"
           >删除</el-button>
+          <el-button
+            v-if="scope.row.lotteryStatus+'' === '2'"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="showInfo(scope.row)"
+            v-hasPermi="['live:liveLotteryConf:edit']"
+            style="margin-left: 10px"
+          >查看中奖</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -333,6 +341,21 @@
         <el-button type="primary" @click="submitForm1">确 定</el-button>
       </div>
     </el-dialog>
+    <el-dialog
+      title="提示"
+      :visible.sync="recordShow"
+      width="30%"
+    >
+      <el-table border  :data="recordList" >
+        <el-table-column label="用户ID" align="center" prop="userId" />
+        <el-table-column label="产品ID" align="center" prop="productId" />
+        <el-table-column label="用户名称" align="center" prop="userName" />
+        <el-table-column label="产品名称" align="center" prop="productName" />
+      </el-table>
+      <span slot="footer" class="dialog-footer">
+    <el-button type="primary" @click="recordShow = false">关 闭</el-button>
+  </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -344,12 +367,15 @@ import {
   updateLiveLotteryProductConf
 } from '@/api/live/liveLotteryProductConf'
 import { listLiveGoods } from '@/api/live/liveGoods'
+import {info} from '@/api/live/liveUserLotteryRecord'
 
 export default {
   name: "LiveLotteryConf",
   components: { LiveLotteryProductConf },
   data() {
     return {
+      recordList:[],
+      recordShow: false,
       //字典
       requireOptions: [],
       // 抽奖状态
@@ -816,6 +842,19 @@ export default {
           this.$store.state.liveWs[this.liveId].send(JSON.stringify(msg));
         }).catch(() => {});
     },
+    showInfo(row) {
+      this.recordList = []
+      //如果抽奖状态不为0,则不能删除
+      const lotteryIds = row.lotteryId;
+      if(row.lotteryStatus+"" !== "2") {
+        this.msgError("只能查看已结束的中奖名单");
+        return;
+      }
+      info({lotteryId: lotteryIds, liveId: this.liveId}).then(response => {
+        this.recordList = response.data;
+        this.recordShow = true;
+      });
+    },
     /** 导出按钮操作 */
     handleExport() {
       const queryParams = this.queryParams;

+ 3 - 3
src/views/live/liveConfig/preview.vue

@@ -80,7 +80,7 @@
 
 <script>
 import { getLive,} from '@/api/live/live'
-import {getLiveVideoByLiveId,addLiveVideo} from '@/api/live/liveVideo'
+import { addLiveVideo, getLiveVideoByLiveIdAndType} from '@/api/live/liveVideo'
 import VideoUpload from "@/components/LiveVideoUpload/index.vue";
 
 export default {
@@ -150,7 +150,7 @@ export default {
       const doParam = {
         liveId: this.liveId,
         videoUrl: this.videoUrl,
-        videoType: 1,
+        videoType: 3,
         duration: this.form.duration,
        }
       addLiveVideo(doParam).then(response => {
@@ -173,7 +173,7 @@ export default {
       console.log(this.videoUrl)
     },
     getLiveVideo() {
-      getLiveVideoByLiveId(this.liveId).then(res => {
+      getLiveVideoByLiveIdAndType(this.liveId).then(res => {
         let dataEntity =
           {
             duration: "00:00",

+ 40 - 0
src/views/live/liveLotteryConf/index.vue

@@ -153,6 +153,15 @@
             @click="handleDelete(scope.row)"
             v-hasPermi="['live:liveLotteryConf:edit']"
           >删除</el-button>
+          <el-button
+            v-if="scope.row.lotteryStatus+'' === '2'"
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="showInfo(scope.row)"
+            v-hasPermi="['live:liveLotteryConf:edit']"
+            style="margin-left: 10px"
+          >查看中奖</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -334,6 +343,21 @@
         <el-button type="primary" @click="submitForm1">确 定</el-button>
       </div>
     </el-dialog>
+    <el-dialog
+      title="提示"
+      :visible.sync="recordShow"
+      width="30%"
+    >
+      <el-table border  :data="recordList" >
+        <el-table-column label="用户ID" align="center" prop="userId" />
+        <el-table-column label="产品ID" align="center" prop="productId" />
+        <el-table-column label="用户名称" align="center" prop="userName" />
+        <el-table-column label="产品名称" align="center" prop="productName" />
+      </el-table>
+      <span slot="footer" class="dialog-footer">
+    <el-button type="primary" @click="recordShow = false">关 闭</el-button>
+  </span>
+    </el-dialog>
   </div>
 </template>
 
@@ -351,6 +375,8 @@ export default {
   components: { LiveLotteryProductConf },
   data() {
     return {
+      recordList:[],
+      recordShow: false,
       //字典
       requireOptions: [],
       // 抽奖状态
@@ -754,6 +780,20 @@ export default {
           this.msgSuccess("删除成功");
         }).catch(() => {});
     },
+    /** 删除按钮操作 */
+    showInfo(row) {
+      this.recordList = []
+      //如果抽奖状态不为0,则不能删除
+      const lotteryIds = row.lotteryId;
+      if(row.lotteryStatus+"" !== "2") {
+        this.msgError("只能查看已结束的中奖名单");
+        return;
+      }
+      info({lotteryId: lotteryIds, liveId: this.liveId}).then(response => {
+        this.recordList = response.data;
+        this.recordShow = true;
+      });
+    },
     /** 导出按钮操作 */
     handleExport() {
       const queryParams = this.queryParams;

+ 67 - 20
src/views/live/liveOrder/index.vue

@@ -1,9 +1,23 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="订单号" prop="orderSn">
+      <el-form-item label="公司名" prop="companyId">
+        <el-select filterable  v-model="queryParams.companyId" placeholder="请选择公司名"  @change="companyChange" clearable size="small">
+          <el-option
+            v-for="item in companys"
+            :key="item.companyId"
+            :label="item.companyName"
+            :value="item.companyId"
+          />
+        </el-select>
+      </el-form-item>
+
+      <el-form-item >
+        <treeselect style="width: 220px" :clearable="false"  v-model="queryParams.deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
+      </el-form-item>
+      <el-form-item label="订单号" prop="orderCode">
         <el-input
-          v-model="queryParams.orderSn"
+          v-model="queryParams.orderCode"
           placeholder="请输入订单号"
           clearable
           size="small"
@@ -28,18 +42,18 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="手机号" prop="mobile">
+      <el-form-item label="手机号" prop="userPhone">
         <el-input
-          v-model="queryParams.mobile"
+          v-model="queryParams.userPhone"
           placeholder="请输入手机号"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="地址" prop="address">
+      <el-form-item label="地址" prop="userAddress">
         <el-input
-          v-model="queryParams.address"
+          v-model="queryParams.userAddress"
           placeholder="请输入地址"
           clearable
           size="small"
@@ -55,9 +69,9 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="订单金额" prop="orderMoney">
+      <el-form-item label="订单金额" prop="totalPrice">
         <el-input
-          v-model="queryParams.orderMoney"
+          v-model="queryParams.totalPrice"
           placeholder="请输入订单金额"
           clearable
           size="small"
@@ -134,14 +148,16 @@
     </el-tabs>
     <el-table border v-loading="loading" :data="liveOrderList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="订单ID" align="center" prop="orderId"/>
-      <el-table-column label="订单号" align="center" prop="orderSn" />
+<!--      <el-table-column label="订单ID" align="center" prop="orderId"/>-->
+      <el-table-column label="订单号" align="center" prop="orderCode" />
+      <el-table-column label="所属公司" align="center" prop="companyName" />
+      <el-table-column label="所属员工" align="center" prop="companyUserName" />
       <el-table-column label="用户ID" align="center" prop="userId" />
       <el-table-column label="收货人" align="center" prop="userName" />
-      <el-table-column label="手机号" align="center" prop="mobile" />
-      <el-table-column label="地址" align="center" prop="address" />
+      <el-table-column label="手机号" align="center" prop="userPhone" />
+      <el-table-column label="地址" align="center" prop="userAddress" />
       <el-table-column label="支付金额" align="center" prop="payMoney" />
-      <el-table-column label="订单金额" align="center" prop="orderMoney" />
+      <el-table-column label="订单金额" align="center" prop="totalPrice" />
       <el-table-column label="物流编号" align="center" prop="deliveryCode" />
       <el-table-column label="物流名称" align="center" prop="deliveryName" />
       <el-table-column label="物流单号" align="center" prop="deliverySn" />
@@ -150,11 +166,11 @@
           <span>{{ parseTime(scope.row.payTime, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="完成时间" align="center" prop="finishTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
+<!--      <el-table-column label="完成时间" align="center" prop="finishTime" width="180">-->
+<!--        <template slot-scope="scope">-->
+<!--          <span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
       <el-table-column label="状态" align="center" prop="status" :formatter="orderStatusFormatter"/>
       <el-table-column label="备注" align="center" prop="remark" />
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -190,10 +206,14 @@
 <script>
 import { listLiveOrder, exportLiveOrder } from "@/api/live/liveOrder";
 import liveOrderDetails from './liveOrderDetails.vue';
+import {getCompanyList} from "@/api/company/company";
+import Treeselect from "@riophae/vue-treeselect";
+import {treeselect} from "@/api/company/companyDept";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 
 export default {
   name: "LiveOrder",
-  components: { liveOrderDetails },
+  components: {Treeselect, liveOrderDetails },
   data() {
     return {
       //字典
@@ -242,6 +262,13 @@ export default {
     };
   },
   created() {
+    getCompanyList().then(response => {
+      this.companys = response.data;
+      if(this.companys!=null&&this.companys.length>0){
+        this.companyId=this.companys[0].companyId;
+        this.getTreeselect();
+      }
+    });
     this.queryParams.liveId = this.$route.query.liveId
     this.getList();
     this.getDicts("sys_live_order_status").then(response => {
@@ -311,7 +338,27 @@ export default {
           this.download(response.msg);
           this.exportLoading = false;
         }).catch(() => {});
-    }
+    },
+    getTreeselect() {
+      var param={companyId:this.companyId}
+      treeselect(param).then((response) => {
+        this.deptOptions = response.data;
+        console.log(this.deptOptions)
+        if(response.data!=null&&response.data.length>0){
+          //this.queryParams.deptId=response.data[0].id;
+        }
+      });
+    },
+    companyChange(val){
+      console.log(val);
+      this.companyId=val;
+      this.getTreeselect();
+    },
+    currDeptChange(val){
+      console.log(val)
+      this.queryParams.deptId=val;
+      this.getList();
+    },
   }
 };
 </script>

+ 49 - 17
src/views/store/storePayment/index.vue

@@ -166,6 +166,7 @@
     <el-tabs type="card" v-model="queryParams.businessType" @tab-click="handleClick">
       <el-tab-pane label="收款记录" name="1"></el-tab-pane>
       <el-tab-pane label="订单支付记录" name="2"></el-tab-pane>
+      <el-tab-pane label="直播订单支付记录" name="5"></el-tab-pane>
     </el-tabs>
     <el-table  height="500" border v-loading="loading" :data="storePaymentList" @selection-change="handleSelectionChange">
        <el-table-column type="selection" width="55" align="center" />
@@ -287,10 +288,12 @@
 <script>
 import { refundStorePayment,listStorePayment, getStorePayment, delStorePayment, addStorePayment, updateStorePayment, exportStorePayment,setPayNotify } from "@/api/store/storePayment";
 import { getCompanyList } from "@/api/company/company";
+import { listLiveOrderPayments,getLivePayment,updateLivePayment } from "@/api/live/liveOrderPayment";
 export default {
   name: "StorePayment",
   data() {
     return {
+      payModeOptions:[],
       refund:{
         title:"退款",
         open:false,
@@ -445,11 +448,21 @@ export default {
       else{
         this.queryParams.createTimeRange=null;
       }
-      listStorePayment(this.addDateRange(this.queryParams, this.dateRange),this.refundDateRange).then(response => {
-        this.storePaymentList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
+      console.log(this.queryParams)
+      if (this.queryParams.businessType === "5") {
+        listLiveOrderPayments(this.addDateRange(this.queryParams, this.dateRange),this.refundDateRange).then(response => {
+          this.storePaymentList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+      } else {
+        listStorePayment(this.addDateRange(this.queryParams, this.dateRange),this.refundDateRange).then(response => {
+          this.storePaymentList = response.rows;
+          this.total = response.total;
+          this.loading = false;
+        });
+      }
+
     },
     // 取消按钮
     cancel() {
@@ -504,24 +517,43 @@ export default {
     handleUpdate(row) {
       this.reset();
       const paymentId = row.paymentId || this.ids
-      getStorePayment(paymentId).then(response => {
-        this.form = response.data;
-        this.open = true;
-        this.title = "修改支付明细";
-      });
+      if (this.queryParams.businessType === "5") {
+        getLivePayment(paymentId).then(response => {
+          this.form = response.data;
+          this.open = true;
+          this.title = "修改支付明细";
+        });
+      } else {
+        getStorePayment(paymentId).then(response => {
+          this.form = response.data;
+          this.open = true;
+          this.title = "修改支付明细";
+        });
+      }
+
     },
     /** 提交按钮 */
     submitForm() {
       this.$refs["form"].validate(valid => {
         if (valid) {
           if (this.form.paymentId != null) {
-            updateStorePayment(this.form).then(response => {
-              if (response.code === 200) {
-                this.msgSuccess("修改成功");
-                this.open = false;
-                this.getList();
-              }
-            });
+            if (this.queryParams.businessType === "5") {
+              updateLivePayment(this.form).then(response => {
+                if (response.code === 200) {
+                  this.msgSuccess("修改成功");
+                  this.open = false;
+                  this.getList();
+                }
+              });
+            } else {
+              updateStorePayment(this.form).then(response => {
+                if (response.code === 200) {
+                  this.msgSuccess("修改成功");
+                  this.open = false;
+                  this.getList();
+                }
+              });
+            }
           } else {
             addStorePayment(this.form).then(response => {
               if (response.code === 200) {