wansfa 2 éve
szülő
commit
be3b96328d

+ 15 - 30
README.md

@@ -1,37 +1,22 @@
-# RTCrm_adminUI
 
-#### 介绍
-客户管理系统后台UI..
+# 安装依赖
+npm install
 
-#### 软件架构
-软件架构说明
+# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
+npm install --registry=https://registry.npm.taobao.org
 
+# 启动服务
+npm run dev
+```
 
-#### 安装教程
+浏览器访问 http://localhost:80
 
-1.  xxxx
-2.  xxxx
-3.  xxxx
+## 发布
 
-#### 使用说明
+```bash
+# 构建测试环境
+npm run build:stage
 
-1.  xxxx
-2.  xxxx
-3.  xxxx
-
-#### 参与贡献
-
-1.  Fork 本仓库
-2.  新建 Feat_xxx 分支
-3.  提交代码
-4.  新建 Pull Request
-
-
-#### 特技
-
-1.  使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
-2.  Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
-3.  你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
-4.  [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
-5.  Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
-6.  Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
+# 构建生产环境
+npm run build:prod
+```

+ 13 - 6
src/api/store/storePayment.js

@@ -1,12 +1,19 @@
 import request from '@/utils/request'
 
 // 查询支付明细列表
-export function listStorePayment(query) {
-  return request({
-    url: '/store/storePayment/list',
-    method: 'get',
-    params: query
-  })
+export function listStorePayment(query,refundDateRange) {
+    if (null != refundDateRange && '' != refundDateRange) {
+      query.refundBeginTime = refundDateRange[0];
+      query.refundEndTime = refundDateRange[1];
+    }else{
+      query.refundBeginTime =null;
+      query.refundEndTime =null;
+    }
+    return request({
+      url: '/store/storePayment/list',
+      method: 'get',
+      params: query
+    })
 }
 
 // 查询支付明细详细

+ 40 - 1
src/views/company/companyMoneyLogs/index.vue

@@ -1,6 +1,7 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+      
       <el-form-item label="公司名" prop="companyId">
           <el-select filterable  style="width: 220px" v-model="queryParams.companyId" placeholder="请选择公司名" clearable size="small">
               <el-option
@@ -11,9 +12,43 @@
               />
         </el-select>
       </el-form-item>
+
+      
+      <el-form-item label="商城订单号" label-width="100px" prop="orderCode" v-if="queryParams.logsType==4 || queryParams.logsType==5">
+          <el-input
+            v-model="queryParams.orderCode"
+            placeholder="请输入商城订单号"
+            clearable
+            size="small"
+            @keyup.enter.native="handleQuery"
+          />
+      </el-form-item>
+
+      <el-form-item label="收件人手机号" label-width="120px" prop="userPhone" v-if="queryParams.logsType==4 || queryParams.logsType==5">  
+          <el-input
+            v-model="queryParams.userPhone"
+            placeholder="请输入收件人手机号"
+            clearable
+            size="small"
+            @keyup.enter.native="handleQuery"
+          />
+      </el-form-item>
+      
+       <el-form-item label="交易单号" prop="tradeCode">
+          <el-input
+            v-model="queryParams.tradeCode"
+            placeholder="请输入交易单号"
+            clearable
+            size="small"
+            @keyup.enter.native="handleQuery"
+          />
+      </el-form-item>
+
+
       <el-form-item label="开始时间" prop="startTime">
          <el-date-picker v-model="dateRange" size="small" style="width: 220px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
       </el-form-item>
+
       <el-form-item label="类型" prop="logsType">
         <el-select style="width: 220px" v-model="queryParams.logsType" placeholder="请选择类型" clearable size="small">
               <el-option
@@ -24,6 +59,7 @@
               />
         </el-select>
       </el-form-item>
+
       <el-form-item>
         <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>
@@ -162,7 +198,10 @@ export default {
         pageNum: 1,
         pageSize: 10,
         companyId: null,
+        orderCode:null,
         money: null,
+        userPhone:null,
+        tradeCode:null,
       },
       // 表单参数
       form: {},
@@ -286,7 +325,7 @@ export default {
     },
     /** 导出按钮操作 */
     handleExport(type) {
-      const queryParams = this.queryParams;
+      const queryParams=this.addDateRange(this.queryParams, this.dateRange)
       queryParams.type=type;
       this.$confirm('是否确认导出所有企业账户记录数据项?', "警告", {
           confirmButtonText: "确定",

+ 2 - 2
src/views/company/statistics/smsLogs.vue

@@ -25,9 +25,11 @@
                         />
                   </el-select>
                 </el-form-item>
+                
                 <el-form-item >
                   <treeselect style="width: 220px" :clearable="false"  v-model="deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
                 </el-form-item>
+                
                 <el-form-item>
                    <el-select style="width: 220px" v-model="userIds" multiple  placeholder="请选择员工">
                       <el-option
@@ -120,7 +122,6 @@ export default {
         smsCount:[],
         successCount:[],
         times:[]
-       
     }
   },
    created() {
@@ -148,7 +149,6 @@ export default {
         var data={deptId:this.deptId};
         getUserListByDeptId(data).then(response => {
           this.users = response.data;
-           
         });
     },
      /** 查询部门下拉树结构 */

+ 49 - 5
src/views/store/storeOrder/index.vue

@@ -2,7 +2,7 @@
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="公司名" prop="companyId">
-          <el-select   v-model="queryParams.companyId" placeholder="请选择公司名" clearable size="small">
+          <el-select   v-model="queryParams.companyId" placeholder="请选择公司名"  @change="companyChange" clearable size="small">
               <el-option
                 v-for="item in companys"
                 :key="item.companyId"
@@ -11,9 +11,13 @@
               />
         </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.orderCode"
           placeholder="请输入订单号"
           clearable
@@ -21,9 +25,9 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
        <el-form-item label="运单号" prop="deliveryId">
         <el-input
-           
           v-model="queryParams.deliveryId"
           placeholder="请输入运单号"
           clearable
@@ -31,9 +35,9 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
       <el-form-item label="手机号" prop="userPhone">
         <el-input
-          
           v-model="queryParams.userPhone"
           placeholder="请输入手机号"
           clearable
@@ -432,9 +436,18 @@ import addUserAddress from "../components/addUserAddress";
 import { getToken } from "@/utils/auth";
 import QRCode from 'qrcodejs2'
 import { getCompanyList } from "@/api/company/company";
+
+import { treeselect } from "@/api/company/companyDept";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
 export default {
-  components: { productOrder,productSelect,addUser,addUserAddress },
+  components: { productOrder,productSelect,addUser,addUserAddress,Treeselect },
   name: "StoreOrder",
+  watch: {
+    // 监听deptId
+    'deptId': 'currDeptChange'
+  },
   data() {
     return {
       importMsgOpen:false,
@@ -442,6 +455,9 @@ export default {
       deliveryPayStatusOptions:[],
       deliveryStatusOptions:[],
       companys:[],
+      deptOptions:[],
+      companyId:undefined,
+      deptId:undefined,
       orderTypeOptions:[],
       payTypeOptions:[],
       payQr:{
@@ -546,6 +562,7 @@ export default {
         isChannel: null,
         isRemind: null,
         isSysDel: null,
+        deptId:null,
      
       },
       // 表单参数
@@ -582,6 +599,10 @@ 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.getDicts("store_order_type").then((response) => {
       this.orderTypeOptions = response.data;
@@ -904,6 +925,29 @@ export default {
       //     dangerouslyUseHTMLString: true
       //   });
       this.getList();
+    },
+     
+        /** 查询部门下拉树结构 */
+    getTreeselect() {
+        var that=this;
+        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();
     },
   }
 };

+ 38 - 9
src/views/store/storePayment/index.vue

@@ -13,7 +13,6 @@
       </el-form-item>
       <el-form-item label="付款单号" prop="payCode">
         <el-input
-           
           v-model="queryParams.payCode"
           placeholder="请输入付款单号"
           clearable
@@ -21,6 +20,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
       <el-form-item label="订单号" prop="orderCode">
         <el-input
           
@@ -31,9 +31,20 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
+
+      <el-form-item label="交易单号" prop="bankTransactionId">
+        <el-input
+          v-model="queryParams.bankTransactionId"
+          placeholder="请输入交易单号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+
       <el-form-item label="银行单号" prop="bankSerialNo">
         <el-input
-         
           v-model="queryParams.bankSerialNo"
           placeholder="请输入银行单号"
           clearable
@@ -41,9 +52,9 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
        <el-form-item label="手机号" prop="mobile">
         <el-input
-         
           v-model="queryParams.mobile"
           placeholder="请输入会员手机号"
           clearable
@@ -51,6 +62,17 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+
+      <el-form-item label="员工姓名" prop="companyUserNickName">
+        <el-input
+          v-model="queryParams.companyUserNickName"
+          placeholder="请输入会员手机号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+
       <el-form-item label="提交时间" prop="createTime">
         <el-date-picker clearable size="small" style="width: 205.4px"
           v-model="queryParams.createTime"
@@ -59,6 +81,7 @@
           placeholder="选择提交时间">
         </el-date-picker>
       </el-form-item>
+
       <el-form-item label="支付时间" prop="payTime">
         <el-date-picker
           style="width:205.4px"
@@ -72,11 +95,14 @@
       </el-form-item>
      
        <el-form-item label="退款时间" prop="refundTime">
-        <el-date-picker clearable size="small" style="width: 205.4px"
-          v-model="queryParams.refundTime"
-          type="date"
+        <el-date-picker 
+          style="width: 205.4px"
+          clearable size="small" 
+          v-model="refundDateRange"
+          type="daterange"
           value-format="yyyy-MM-dd"
-          placeholder="选择退款时间">
+          start-placeholder="开始日期"
+          end-placeholder="结束日期">
         </el-date-picker>
       </el-form-item>
     
@@ -237,6 +263,7 @@ export default {
       // 非单个禁用
       single: true,
       dateRange:[],
+      refundDateRange:[],
       // 非多个禁用
       multiple: true,
       // 显示搜索条件
@@ -265,7 +292,9 @@ export default {
         status: null,
         companyId: null,
         companyUserId: null,
-        deptId: null
+        deptId: null,
+        bankTransactionId:null,
+        companyUserNickName:null,
       },
       // 表单参数
       form: {},
@@ -325,7 +354,7 @@ export default {
     /** 查询支付明细列表 */
     getList() {
       this.loading = true;
-      listStorePayment(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
+      listStorePayment(this.addDateRange(this.queryParams, this.dateRange),this.refundDateRange).then(response => {
         this.storePaymentList = response.rows;
         this.total = response.total;
         this.loading = false;

+ 11 - 5
src/views/store/storeProduct/index.vue

@@ -7,7 +7,6 @@
       </el-form-item>
       <el-form-item label="商品名称" prop="productName">
         <el-input
-           
           v-model="queryParams.productName"
           placeholder="请输入商品名称"
           clearable
@@ -71,8 +70,18 @@
           v-hasPermi="['store:storeProduct:remove']"
         >删除</el-button>
       </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['store:storePayment:export']"
+        >导出</el-button>
+      </el-col>
       
-	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+	    <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-tabs type="card" v-model="activeName" @tab-click="handleClick">
@@ -477,9 +486,6 @@ import { getAllStoreProductCategory } from "@/api/store/storeProductCategory";
 import { getAllStoreProductRule } from "@/api/store/storeProductRule";
 import { getAllShippingTemplates } from "@/api/store/shippingTemplates";
 
-
-
-
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import Editor from '@/components/Editor/wang';