Tang 1 год назад
Родитель
Сommit
6e37377f62
100 измененных файлов с 1735 добавлено и 692 удалено
  1. 13 0
      .env.pre
  2. 0 3
      .env.staging
  3. BIN
      dist.rar
  4. 2 0
      package.json
  5. 6 0
      public/index.html
  6. 5 0
      src/api/api.js
  7. 5 4
      src/api/financed/index.js
  8. 0 0
      src/assets/images/AcceptedMoney.png
  9. 0 0
      src/assets/images/ActualPayment.png
  10. 0 0
      src/assets/images/AmountReceived.png
  11. BIN
      src/assets/images/AuditProcess/1.png
  12. BIN
      src/assets/images/AuditProcess/10.png
  13. BIN
      src/assets/images/AuditProcess/11.png
  14. BIN
      src/assets/images/AuditProcess/2.png
  15. BIN
      src/assets/images/AuditProcess/3.png
  16. BIN
      src/assets/images/AuditProcess/4.png
  17. BIN
      src/assets/images/AuditProcess/5.png
  18. BIN
      src/assets/images/AuditProcess/6.png
  19. BIN
      src/assets/images/AuditProcess/7.png
  20. BIN
      src/assets/images/AuditProcess/8.png
  21. BIN
      src/assets/images/AuditProcess/9.png
  22. 0 0
      src/assets/images/Claimed.png
  23. 0 0
      src/assets/images/ClearingCommission.png
  24. 0 0
      src/assets/images/ContractAmount.png
  25. 0 0
      src/assets/images/ConversionAmountSequential.png
  26. 0 0
      src/assets/images/ConversionAmountYear-on-year.png
  27. 0 0
      src/assets/images/ConversionRate.png
  28. 0 0
      src/assets/images/ConversionVolume.png
  29. 0 0
      src/assets/images/ConversionVolumeSequential.png
  30. 0 0
      src/assets/images/Costamount.png
  31. 0 0
      src/assets/images/ModificationAllowance.png
  32. 0 0
      src/assets/images/NumberOfOrders.png
  33. 0 0
      src/assets/images/NumberOfOrders2.png
  34. BIN
      src/assets/images/OrderAmount.png
  35. 0 0
      src/assets/images/OutstandingPayment.png
  36. 0 0
      src/assets/images/PaymentHasBeenReceived.png
  37. BIN
      src/assets/images/PendingOrder.png
  38. BIN
      src/assets/images/PendingReceipt.png
  39. BIN
      src/assets/images/PendingRefund.png
  40. BIN
      src/assets/images/PendingShare.png
  41. BIN
      src/assets/images/PreTaxCommission.png
  42. 0 0
      src/assets/images/ProfitAndLoss.png
  43. 0 0
      src/assets/images/RefundDeduction.png
  44. 0 0
      src/assets/images/Refunded.png
  45. 0 0
      src/assets/images/SettlementAmount.png
  46. 0 0
      src/assets/images/SharePayable.png
  47. 0 0
      src/assets/images/SingleShare.png
  48. BIN
      src/assets/images/TraineeAwaitingTrial.png
  49. 0 0
      src/assets/images/beAcknowledged.png
  50. 0 0
      src/assets/images/pm.png
  51. BIN
      src/assets/images/税前佣金.png
  52. 22 10
      src/components/Comon/pictureList.vue
  53. 1 1
      src/components/pagination.vue
  54. 5 5
      src/components/salesmanInfo/index.vue
  55. 3 1
      src/components/searchBoxNew.vue
  56. 10 18
      src/components/tableList.vue
  57. 1 1
      src/directive/filter/index.js
  58. 25 4
      src/fxApi/orderManageList.js
  59. 2 2
      src/fxApi/temp.js
  60. 77 0
      src/newApi/acceptance.js
  61. 2 1
      src/newApi/settle.js
  62. 210 0
      src/newApi/statistics.js
  63. 25 0
      src/store/getters.js
  64. 3 0
      src/store/modules/dict.js
  65. 4 4
      src/views/Marketing/activitySystem/activityList/activityInfo/index.vue
  66. 8 7
      src/views/Marketing/activitySystem/activityList/activityInfo/second.vue
  67. 2 2
      src/views/Marketing/activitySystem/activityList/activityInfo/three.vue
  68. 2 2
      src/views/Marketing/distribution/commissionList/index.vue
  69. 3 3
      src/views/Marketing/distribution/distributionOrder/index.vue
  70. 2 2
      src/views/Marketing/distribution/rankingList/index.vue
  71. 1 1
      src/views/finance/paymentList/index.vue
  72. 42 22
      src/views/financed/accountsPayable/businessCommission/index.vue
  73. 68 45
      src/views/financed/accountsPayable/commissionSettlement/index.vue
  74. 10 4
      src/views/financed/accountsPayable/components/dislogBatchAudit.vue
  75. 18 7
      src/views/financed/accountsPayable/components/dislogCmsAudit.vue
  76. 5 5
      src/views/financed/accountsPayable/components/dislogDividePay.vue
  77. 15 15
      src/views/financed/accountsPayable/components/dislogOrderList.vue
  78. 12 12
      src/views/financed/accountsPayable/components/dislogPrint.vue
  79. 42 23
      src/views/financed/accountsPayable/institutionDivide/index.vue
  80. 37 25
      src/views/financed/accountsPayable/operationsReceivable/index.vue
  81. 33 31
      src/views/financed/accountsPayable/supplierSettlement/index.vue
  82. 14 2
      src/views/financed/accountsPayable/supplierSettlement/payMent.vue
  83. 8 5
      src/views/financed/accountsPayable/supplierSettlement/printData.vue
  84. 2 1
      src/views/financed/accountsPayable/supplierSettlement/quantitySettleMent/index.vue
  85. 66 43
      src/views/financed/accountsPayable/supplierSettlement/quantitySettleMent/quantityTable.vue
  86. 3 3
      src/views/financed/accountsPayable/supplierSettlement/timeSettleMent/detailsIndex.vue
  87. 52 27
      src/views/financed/accountsPayable/supplierSettlement/timeSettleMent/index.vue
  88. 118 0
      src/views/financed/auditProcess/index.vue
  89. 137 0
      src/views/financed/auditRole/index.vue
  90. 212 121
      src/views/financed/components/dislogOrderDetails.vue
  91. 1 0
      src/views/financed/components/refund/auditProgress.vue
  92. 110 93
      src/views/financed/components/refund/dislogSet.vue
  93. 4 1
      src/views/financed/components/remarks.vue
  94. 194 10
      src/views/financed/components/studentDetails.vue
  95. 1 0
      src/views/financed/components/trainee/auditProgress.vue
  96. 71 113
      src/views/financed/components/trainee/dislogSetTrainee.vue
  97. 5 2
      src/views/financed/costSet/dislogOrganSet.vue
  98. 4 3
      src/views/financed/costSet/dislogSupplierSet.vue
  99. 7 4
      src/views/financed/costSet/organ.vue
  100. 5 4
      src/views/financed/costSet/supplier.vue

+ 13 - 0
.env.pre

@@ -0,0 +1,13 @@
+# 页面标题
+VUE_APP_TITLE = 中正云教育管理后台
+
+# 预发布环境配置
+NODE_ENV = 'pre'
+
+# 中正云教育管理后台/预发布环境
+# 预发布
+VUE_APP_BASE_API = 'http://192.168.1.222:8077/'
+VUE_APP_IMG_API = 'https://file.xyyxt.net'
+
+# 路由懒加载
+VUE_CLI_BABEL_TRANSPILE_MODULES = true

+ 0 - 3
.env.staging

@@ -9,9 +9,6 @@ ENV = 'staging'
 # 中正云教育管理后台/预发布环境
 # 测试
 VUE_APP_BASE_API = 'http://192.168.1.222:7077/'
-# 预发布
-# 内网
-VUE_APP_BASE_API1 = 'http://192.168.1.222:8077/'
 # 外网
 VUE_APP_BASE_API2 = 'http://120.79.166.78:19087/'
 #图片


+ 2 - 0
package.json

@@ -8,6 +8,7 @@
     "dev": "vue-cli-service serve",
     "build:prod": "vue-cli-service build",
     "build:stage": "vue-cli-service build --mode staging",
+    "build:pre": "vue-cli-service build --mode pre",
     "preview": "node build/index.js --preview",
     "lint": "eslint --ext .js,.vue src"
   },
@@ -41,6 +42,7 @@
     "af-table-column": "^1.0.3",
     "axios": "0.21.0",
     "clipboard": "2.0.6",
+    "compression-webpack-plugin": "^6.1.1",
     "core-js": "^3.30.2",
     "echarts": "4.9.0",
     "element-ui": "^2.15.13",

+ 6 - 0
public/index.html

@@ -12,6 +12,7 @@
   </title>
   <!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
   <!-- <script src="https://manage.xyyxt.net/static/js/gsap.min.js"></script> -->
+  <link rel="stylesheet" href="https://file.xyyxt.net/web/static/js/index.min.css">
   <style>
     html,
     body,
@@ -212,6 +213,11 @@
       <div class="load_title">正在加载系统资源,请耐心等待</div>
     </div>
   </div>
+  <!-- 使用CDN的JS文件 -->
+  <script src="https://file.xyyxt.net/web/static/js/vue.min.js"></script>
+  <script src="https://file.xyyxt.net/web/static/js/index.min.js"></script>
+  <script src="https://file.xyyxt.net/web/static/js/axios.min.js"></script>
+  <script src="https://file.xyyxt.net/web/static/js/vue-router.min.js"></script>
 </body>
 
 </html>

+ 5 - 0
src/api/api.js

@@ -95,9 +95,14 @@ import goodsPoints from '../fxApi/goodsPoints'//积分商品
 
 import institution from '../newApi/institution'//职能机构
 import settle from '../newApi/settle'//供应商结算
+import acceptance from '../newApi/acceptance'//认款
+import statistics from '../newApi/statistics'//数据统计
+
 
 // 导入对应模块------------------------
 export default {
+    ...statistics,
+    ...acceptance,
     ...institution,
     ...settle,
     ...goodsPoints,

+ 5 - 4
src/api/financed/index.js

@@ -82,7 +82,7 @@ export function tenantExport(query) {
     params: query,
   });
 }
-// 金结算导出
+// 金结算导出
 export function commissionExport(query) {
   return request({
     url: "/system/top/order/commissionListExport",
@@ -141,7 +141,7 @@ export function companyList(data) {
     isProce: true,
   });
 }
-// 查询金结算列表
+// 查询金结算列表
 export function commissionList(data) {
   return request({
     url: "/divide/log/commissionList",
@@ -318,7 +318,7 @@ export function monthOrderListWithPrint(query) {
     params: query,
   });
 }
-// 查询金打印
+// 查询金打印
 export function commissionPrint(data) {
   return request({
     url: "/divide/log/commissionPrint",
@@ -326,12 +326,13 @@ export function commissionPrint(data) {
     data,
   });
 }
-// 查询金结算列表统计
+// 查询金结算列表统计
 export function commissionOrderCount(query) {
   return request({
     url: "/divide/log/commissionOrderCount",
     method: "get",
     params: query,
+    isProce: true,
   });
 }
 // 批量修改订单收款提醒

+ 0 - 0
src/assets/images/已认款.png → src/assets/images/AcceptedMoney.png


+ 0 - 0
src/assets/images/实际款@2x.png → src/assets/images/ActualPayment.png


+ 0 - 0
src/assets/images/到账金额.png → src/assets/images/AmountReceived.png


BIN
src/assets/images/AuditProcess/1.png


BIN
src/assets/images/AuditProcess/10.png


BIN
src/assets/images/AuditProcess/11.png


BIN
src/assets/images/AuditProcess/2.png


BIN
src/assets/images/AuditProcess/3.png


BIN
src/assets/images/AuditProcess/4.png


BIN
src/assets/images/AuditProcess/5.png


BIN
src/assets/images/AuditProcess/6.png


BIN
src/assets/images/AuditProcess/7.png


BIN
src/assets/images/AuditProcess/8.png


BIN
src/assets/images/AuditProcess/9.png


+ 0 - 0
src/assets/images/已领取.png → src/assets/images/Claimed.png


+ 0 - 0
src/assets/images/结算佣金.png → src/assets/images/ClearingCommission.png


+ 0 - 0
src/assets/images/合同金额@2x.png → src/assets/images/ContractAmount.png


+ 0 - 0
src/assets/images/转化金额环比.png → src/assets/images/ConversionAmountSequential.png


+ 0 - 0
src/assets/images/转化金额同比.png → src/assets/images/ConversionAmountYear-on-year.png


+ 0 - 0
src/assets/images/转化率.png → src/assets/images/ConversionRate.png


+ 0 - 0
src/assets/images/转化量同比.png → src/assets/images/ConversionVolume.png


+ 0 - 0
src/assets/images/转化量环比.png → src/assets/images/ConversionVolumeSequential.png


+ 0 - 0
src/assets/images/成本金额@2x.png → src/assets/images/Costamount.png


+ 0 - 0
src/assets/images/修改补款@2x.png → src/assets/images/ModificationAllowance.png


+ 0 - 0
src/assets/images/订单人数@2x.png → src/assets/images/NumberOfOrders.png


+ 0 - 0
src/assets/images/订单数@2x.png → src/assets/images/NumberOfOrders2.png


BIN
src/assets/images/OrderAmount.png


+ 0 - 0
src/assets/images/未收款@2x.png → src/assets/images/OutstandingPayment.png


+ 0 - 0
src/assets/images/已收款@2x.png → src/assets/images/PaymentHasBeenReceived.png


BIN
src/assets/images/PendingOrder.png


BIN
src/assets/images/PendingReceipt.png


BIN
src/assets/images/PendingRefund.png


BIN
src/assets/images/PendingShare.png


BIN
src/assets/images/PreTaxCommission.png


+ 0 - 0
src/assets/images/盈亏@2x.png → src/assets/images/ProfitAndLoss.png


+ 0 - 0
src/assets/images/退款扣除.png → src/assets/images/RefundDeduction.png


+ 0 - 0
src/assets/images/已退款@2x.png → src/assets/images/Refunded.png


+ 0 - 0
src/assets/images/结算金额.png → src/assets/images/SettlementAmount.png


+ 0 - 0
src/assets/images/应付分成.png → src/assets/images/SharePayable.png


+ 0 - 0
src/assets/images/完单分成.png → src/assets/images/SingleShare.png


BIN
src/assets/images/TraineeAwaitingTrial.png


+ 0 - 0
src/assets/images/待认款.png → src/assets/images/beAcknowledged.png


+ 0 - 0
src/assets/images/排名.png → src/assets/images/pm.png


BIN
src/assets/images/税前佣金.png


+ 22 - 10
src/components/Comon/pictureList.vue

@@ -1,12 +1,21 @@
 <template>
   <div class="dis_flex_order_li">
-    <div class="list" v-for="(item, index) in list" :key="index">
+    <div class="list" v-for="(item, index) in list" :key="index" @click="activeLiFunc(item)">
       <img :src="backFullSrc(item.img)" alt="" />
       <div class="right">
-        <h4>{{ item.label }}:</h4>
-        <p>
+        <h4>
+          {{ item.label }}
+          <span
+            v-if="item.label === '盈亏' && info[item.prop] !== 0"
+            :style="info[item.prop] > 0 ? 'color:rgb(99,93,247)' : 'color:red'"
+            >【{{ info[item.prop] > 0 ? "盈" : "亏" }}】</span
+          >
+        </h4>
+        <p v-if="item.num" :style="{ color: item.color || '#000' }">
+          {{ item.value || info[item.prop] || 0 }}
+        </p>
+        <p v-else :style="{ color: item.color || '#000'  }">
           {{ (item.value || info[item.prop] || 0) | formatPrice }}
-          <!-- {{ item.ch || "元" }} -->
         </p>
       </div>
     </div>
@@ -36,7 +45,10 @@ export default {
 
   methods: {
     backFullSrc(name) {
-      return require(`@/assets/images/${name}@2x.png`);
+      return require(`@/assets/images/${name}.png`);
+    },
+    activeLiFunc(item){
+      this.$emit('activeLiFunc',item)
     },
   },
 };
@@ -50,7 +62,7 @@ export default {
   & > .list {
     user-select: none;
     cursor: pointer;
-    background-color: rgb(243,249,255);
+    background-color: rgb(243, 249, 255);
     padding: 4px;
     width: 170px;
     height: 60px;
@@ -70,14 +82,14 @@ export default {
       flex: 1;
       padding-left: 4px;
       & > h4 {
-        color: rgb(85, 85, 85);
-        margin: 0;
+        color: #7f7f7f;
+        margin: 0px 0px 4px 0px;
         font-size: 14px;
-        margin-bottom: 4px;
       }
       & > p {
+        font-weight: bold;
         font-size: 14px;
-        color: #000;
+        color: #333;
         margin: 0;
       }
     }

+ 1 - 1
src/components/pagination.vue

@@ -6,7 +6,7 @@
       :current-page="currentPage"
       :page-sizes="pageSizes"
       :page-size="pageSize"
-      layout="total, sizes, prev, pager, next, jumper"
+      layout="sizes, prev, pager, next, jumper"
       :total="total"
     >
     </el-pagination>

+ 5 - 5
src/components/salesmanInfo/index.vue

@@ -90,7 +90,7 @@ export default {
           hidden: true,
         },
         {
-          label: "金类型",
+          label: "金类型",
           prop: "cashType",
           hidden: true,
           scope: "isOptions",
@@ -106,25 +106,25 @@ export default {
           ],
         },
         {
-          label: "金比例",
+          label: "金比例",
           prop: "cashRatio",
           hidden: true,
           scope: "cashRatio",
         },
         {
-          label: "金金额(元)",
+          label: "金金额(元)",
           prop: "cash",
           hidden: true,
         },
         {
-          label: "金结算时间",
+          label: "金结算时间",
           prop: "cashTime",
           hidden: true,
           scope: "aTimeList",
           width: "160",
         },
         {
-          label: "金状态",
+          label: "金状态",
           prop: "cashStatus",
           hidden: true,
           scope: "isOptions",

+ 3 - 1
src/components/searchBoxNew.vue

@@ -431,7 +431,9 @@
             :value-format="item.format || 'timestamp'"
           >
           </el-date-picker>
-          <slot v-else-if="item.scope === 'slot'" name="slotSearch"></slot>
+          <div v-else-if="item.scope === 'solt'">
+            <slot :name="item.soltName"></slot>
+          </div>
           <el-input
             :style="item.prop === 'searchKey' ? 'width:260px;' : ''"
             v-else-if="!item.scope"

+ 10 - 18
src/components/tableList.vue

@@ -10,16 +10,11 @@
       </div>
       <div class="rightBtnBox">
         <slot name="customize"></slot>
-        <el-button
-          
-          type="primary"
-          @click="addClick"
-          v-if="!navText.addHide"
+        <el-button type="primary" @click="addClick" v-if="!navText.addHide"
           >添加</el-button
         >
         <el-button
           v-if="navText.backFatherBtn && navText.backFatherBtn.status"
-          
           type="warning"
           @click="backFather"
           >{{ navText.backFatherBtn.title }}</el-button
@@ -71,15 +66,14 @@
           <el-button
             v-if="navText.custom !== false"
             style="margin-left: 10px"
-            
             slot="reference"
             >自定义列</el-button
           >
         </el-popover>
       </div>
     </div>
+    <!-- :max-height="tableHeight(clientHeight)" -->
     <el-table
-      :max-height="tableHeight(clientHeight)"
       id="allTableList"
       :data="tableData"
       :span-method="objectSpanMethod"
@@ -93,7 +87,7 @@
       :cell-style="timeStyle"
       lazy
       :border="true"
-      ref="pagerset"
+      ref="pagerset" 
       v-loading="loading"
       :row-class-name="navText.tableColor ? navText.tableColorFunc : ''"
       :header-cell-style="{
@@ -297,7 +291,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 1"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -332,7 +325,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 1"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -357,7 +349,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 2"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -382,7 +373,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 1"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -417,7 +407,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 1"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -456,7 +445,6 @@
                 style="margin-left: 6px"
                 type="text"
                 v-if="scope.row[item.prop].length > 1"
-                
                 >更多</el-button
               >
             </el-popover>
@@ -579,7 +567,6 @@
           <div v-else-if="item.scope === 'knowledge'" class="overSty">
             <el-button
               type="success"
-              
               v-for="(items, ks) in scope.row[item.prop]"
               :key="ks"
             >
@@ -607,7 +594,6 @@
           <div v-else-if="item.scope === 'inputs'">
             <el-input-number
               style="width: 50px"
-              
               :controls="false"
               v-model="scope.row[item.prop]"
               controls-position="right"
@@ -759,7 +745,8 @@
                   ).toFixed(2) + "%"
             }}
           </span>
-          <span v-else-if="item.scope === 'toFixedYuan'">
+          <span v-else-if="item.scope === 'toFixedYuan'"
+            ><span v-if="item.leftCh">¥</span>
             {{ $methodsTools.decimalPoint(scope.row[item.prop]) }}
           </span>
           <span v-else-if="item.scope === 'cType'">
@@ -1223,6 +1210,11 @@ export default {
       clientHeight: 0,
     };
   },
+  watch: {
+    allCheckData(newVal, oldVal) {
+      this.$emit("allCheckDataFunc", newVal);
+    },
+  },
   computed: {
     tableRadio: {
       get() {

+ 1 - 1
src/directive/filter/index.js

@@ -8,5 +8,5 @@ export function formatPrice(price) {
       maximumFractionDigits: 2,
     })
   );
-  return "¥ " + price;
+  return "¥" + price;
 }

+ 25 - 4
src/fxApi/orderManageList.js

@@ -33,6 +33,13 @@ export default {
             method: 'get',
         })
     },
+    //订单发票信息
+    systemtoporderinvoicelistid(data) {
+        return request({
+            url: '/system/top/order/invoice/list/' + data,
+            method: 'get',
+        })
+    },
     //获取订单商品信息
     systemtopordergoodslist(data) {
         return request({
@@ -41,6 +48,20 @@ export default {
             params: data
         })
     },
+    //订单学员审核列表
+    systemtopordergoodsapplylist(data) {
+        return request({
+            url: '/system/top/order/goods/apply/list/' + data,
+            method: 'get',
+        })
+    },
+    //订单发票信息
+    systemtoporderinvoicelist(data) {
+        return request({
+            url: '/system/top/order/invoice/list/' + data,
+            method: 'get',
+        })
+    },
     //订单退款审核
     systemtoporderrefundcheck(data) {
         return request({
@@ -57,7 +78,7 @@ export default {
             data
         })
     },
-    
+
     //订单退款审核详情
     systemtoporderrefunddetail(data) {
         return request({
@@ -137,7 +158,7 @@ export default {
             params: data
         })
     },
-    
+
     //订单操作记录
     systemtoporderlog(data) {
         return request({
@@ -181,7 +202,7 @@ export default {
     //获取分成记录详细信息
     dividelogdata(data) {
         return request({
-            url: '/divide/log/'+data,
+            url: '/divide/log/' + data,
             method: 'get'
         })
     },
@@ -201,5 +222,5 @@ export default {
             data
         })
     },
-    
+
 }

+ 2 - 2
src/fxApi/temp.js

@@ -86,7 +86,7 @@ export default {
             params: data
         })
     },
-    //金列表
+    //金列表
     distributiontempcashlist(data) {
         return request({
             url: '/distribution/temp/cash/list',
@@ -94,7 +94,7 @@ export default {
             params: data
         })
     },
-    //金详情
+    //金详情
     distributiontempcashdetail(data) {
         return request({
             url: '/distribution/temp/cash/detail',

+ 77 - 0
src/newApi/acceptance.js

@@ -0,0 +1,77 @@
+import request from '@/utils/request' //引入axios请求及拦截器
+export default {
+    //删除认款记录
+    systemtopacceptancedelete(data) {
+        return request({
+            url: '/system/top/acceptance/delete',
+            method: 'post',
+            data
+        })
+    },
+    //认款记录导出
+    systemtopacceptanceexport(data) {
+        return request({
+            url: '/system/top/acceptance/export',
+            method: 'get',
+            isProce: true,
+            params: data
+        })
+    },
+    //认款记录导入
+    systemtopacceptanceimportData(data) {
+        return request({
+            url: '/system/top/acceptance/importData',
+            method: 'post',
+            data
+        })
+    },
+    //查询认款列表
+    systemtopacceptancelist(data) {
+        return request({
+            url: '/system/top/acceptance/list',
+            method: 'get',
+            isProce: true,
+            params: data
+        })
+    },
+    //认款订单列表
+    systemtopacceptanceorderlist(data) {
+        return request({
+            url: '/system/top/acceptance/order/list',
+            method: 'get',
+            params: data
+        })
+    },
+    //认款关联订单列表
+    systemtopacceptanceorderrel(data) {
+        return request({
+            url: '/system/top/acceptance/order/rel/'+data,
+            method: 'get',
+        })
+    },
+    //订单认款
+    systemtopacceptancerel(data) {
+        return request({
+            url: '/system/top/acceptance/rel',
+            method: 'post',
+            data
+        })
+    },
+    //新增认款记录
+    systemtopacceptancesave(data) {
+        return request({
+            url: '/system/top/acceptance/save',
+            method: 'post',
+            data
+        })
+    },
+    //查询认款统计
+    systemtopacceptancestatistics(data) {
+        return request({
+            url: '/system/top/acceptance/statistics',
+            method: 'get',
+            isProce: true,
+            params: data
+        })
+    },
+}

+ 2 - 1
src/newApi/settle.js

@@ -29,7 +29,8 @@ export default {
         return request({
             url: '/settle/list',
             method: 'get',
-            params: data
+            params: data,
+            isProce: true,
         })
     },
     //结算金额计算

+ 210 - 0
src/newApi/statistics.js

@@ -0,0 +1,210 @@
+import request from '@/utils/request' //引入axios请求及拦截器
+export default {
+    //机构订单金额统计
+    systemtoporderstatisticsmoneyByTenant(data) {
+        return request({
+            url: '/system/top/order/statistics/moneyByTenant',
+            method: 'get',
+            params: data
+        })
+    },
+    //机构订单数量统计
+    systemtoporderstatisticsnumByTenant(data) {
+        return request({
+            url: '/system/top/order/statistics/numByTenant',
+            method: 'get',
+            params: data
+        })
+    },
+    //机构走势图
+    systemtoporderstatisticstenantView(data) {
+        return request({
+            url: '/system/top/order/statistics/tenantView',
+            method: 'get',
+            params: data
+        })
+    },
+    //机构业务员列表
+    systemtoporderstatisticstenantCreateList(data) {
+        return request({
+            url: '/system/top/order/statistics/tenantCreateList',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单机构订单详情列表
+    systemtoporderstatisticstenantDetailList(data) {
+        return request({
+            url: '/system/top/order/statistics/tenantDetailList',
+            method: 'get',
+            params: data
+        })
+    },
+
+
+
+    //业务层次订单金额统计
+    systemtoporderstatisticsmoneyByBusiness(data) {
+        return request({
+            url: '/system/top/order/statistics/moneyByBusiness',
+            method: 'get',
+            params: data
+        })
+    },
+    //业务层次订单数量统计
+    systemtoporderstatisticsnumByBusiness(data) {
+        return request({
+            url: '/system/top/order/statistics/numByBusiness',
+            method: 'get',
+            params: data
+        })
+    },
+    //数据分析业务层次列表
+    systemtoporderstatisticsbusinessList(data) {
+        return request({
+            url: '/system/top/order/statistics/businessList',
+            method: 'get',
+            params: data
+        })
+    },
+    //业务层次走势图
+    systemtoporderstatisticsbusinessView(data) {
+        return request({
+            url: '/system/top/order/statistics/businessView',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单业务层次详情列表
+    systemtoporderstatisticsbusinessDetailList(data) {
+        return request({
+            url: '/system/top/order/statistics/businessDetailList',
+            method: 'get',
+            params: data
+        })
+    },
+
+    
+    //下单客户订单详情
+    systemtoporderstatisticsdetail(data) {
+        return request({
+            url: '/system/top/order/statistics/detail',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单客户订单金额统计
+    systemtoporderstatisticsmoney(data) {
+        return request({
+            url: '/system/top/order/statistics/money',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单客户订单数量统计
+    systemtoporderstatisticsnum(data) {
+        return request({
+            url: '/system/top/order/statistics/num',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单客户订单走势图
+    systemtoporderstatisticsview(data) {
+        return request({
+            url: '/system/top/order/statistics/view',
+            method: 'get',
+            params: data
+        })
+    },
+    //下单客户
+    systemtoporderstatisticscustomer(data) {
+        return request({
+            url: '/system/top/order/statistics/customer',
+            method: 'get',
+            params: data
+        })
+    },
+    //订单总计
+    systemtoporderstatisticstotal(data) {
+        return request({
+            url: '/system/top/order/statistics/total',
+            method: 'get',
+            params: data
+        })
+    },
+
+    
+    //公海过期预警
+    systemtopordersharedcertstats(data) {
+        return request({
+            url: '/system/top/order/shared/cert/stats',
+            method: 'get',
+            params: data
+        })
+    },
+    //客户转化排名
+    systemtopordersharedconversionrate(data) {
+        return request({
+            url: '/system/top/order/shared/conversion/rate',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海客户列表
+    systemtopordersharedcustomerlist(data) {
+        return request({
+            url: '/system/top/order/shared/customer/list',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海总客户
+    systemtopordersharedcustomerstats(data) {
+        return request({
+            url: '/system/top/order/shared/customer/stats',
+            method: 'get',
+            params: data
+        })
+    },
+    //城市转化排行
+    systemtopordersharedorderarea(data) {
+        return request({
+            url: '/system/top/order/shared/order/area',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海客户统计
+    systemtopordersharedstatistics(data) {
+        return request({
+            url: '/system/top/order/shared/statistics',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海客户机构列表
+    systemtopordersharedtenant(data) {
+        return request({
+            url: '/system/top/order/shared/tenant',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海客户业务员列表
+    systemtopordersharedsale(data) {
+        return request({
+            url: '/system/top/order/shared/sale',
+            method: 'get',
+            params: data
+        })
+    },
+    //公海客户详情
+    systemtopordersharedcustomerorder(data) {
+        return request({
+            url: '/system/top/order/shared/customer/order',
+            method: 'get',
+            params: data
+        })
+    },
+}

+ 25 - 0
src/store/getters.js

@@ -37,6 +37,31 @@ const getters = {
     }
     return state.dict.categorytreeList
   },
+  statisticsbusinessList(state) {
+    if (!state.dict.statisticsbusinessList) {
+      api.systemtoporderstatisticsbusinessList({ status: 1 }).then(res => {
+        state.dict.statisticsbusinessList = res.data
+      })
+    }
+    return state.dict.statisticsbusinessList
+  },
+  statisticscustomer(state) {
+    if (!state.dict.statisticscustomer) {
+      api.systemtoporderstatisticscustomer({ status: 1 }).then(res => {
+        state.dict.statisticscustomer = res.data
+      })
+    }
+    return state.dict.statisticscustomer
+  },
+  systemtenant(state) {
+    if (!state.dict.systemtenant) {
+      api.systemtopordersharedtenant().then(res => {
+        state.dict.systemtenant = res.data
+      })
+    }
+    return state.dict.systemtenant
+  },
+
   storeList(state) {
     if (!state.dict.storeList) {
       api.mallstorelist({ status: 1 }).then(res => {

+ 3 - 0
src/store/modules/dict.js

@@ -37,6 +37,9 @@ const state = {
   merList: null,//店铺管理列表
   storeList: null,//商户管理列表
   categorytreeList: null,//商户分类列表
+  statisticsbusinessList: null,//新旧系统业务层次合集
+  statisticscustomer: null,//订单客户列表
+  systemtenant:null,//公海机构列表
 }
 const mutations = {
   //商户分类列表

+ 4 - 4
src/views/Marketing/activitySystem/activityList/activityInfo/index.vue

@@ -55,7 +55,7 @@ export default {
           { required: true, message: "请选择活动时间", trigger: "change" },
         ],
         freezingPeriod: [
-          { required: true, message: "请输入金冻结天数", trigger: "blur" },
+          { required: true, message: "请输入金冻结天数", trigger: "blur" },
         ],
       },
       id: "",
@@ -131,7 +131,7 @@ export default {
         }
       });
     },
-    //处理商品金逻辑
+    //处理商品金逻辑
     checkGoodsFunc() {
       return new Promise((resolve, reject) => {
         for (let i = 0; i < this.ruleForm.goodsList.length; i++) {
@@ -148,7 +148,7 @@ export default {
                 return reject(
                   `请检查第${
                     i + 1
-                  }个商品的佣金设置,三个级别佣金相加不能大于数值`
+                  }个商品的奖金设置,三个级别奖金相加不能大于数值`
                 );
               }
             }
@@ -169,7 +169,7 @@ export default {
                 return reject(
                   `请检查第${
                     i + 1
-                  }个商品的佣金设置,三个级别佣金相加不能大于数值`
+                  }个商品的奖金设置,三个级别奖金相加不能大于数值`
                 );
               }
             }

+ 8 - 7
src/views/Marketing/activitySystem/activityList/activityInfo/second.vue

@@ -2,7 +2,7 @@
   <div id="">
     <el-row>
       <el-col :span="24">
-        <el-form-item label="设置商品及金" prop="goodsList">
+        <el-form-item label="设置商品及金" prop="goodsList">
           <p>
             <el-button type="primary" @click="activeGoods">新增</el-button>
           </p>
@@ -70,9 +70,10 @@
                   "
                 >
                   <el-option
-                    v-for="item in profitTypeList"
+                    v-for="(item,index) in profitTypeList"
                     :label="item.label"
                     :value="item.value"
+                    :key="index"
                   ></el-option>
                 </el-select>
                 <span v-else>{{ scope.row[item.prop] }}</span>
@@ -102,9 +103,9 @@
             margin-left: 120px;
           "
         >
-          分佣方式设置为百分比时,数值不能超过100%,3个等级的金总和不能超过100%;<br />分佣方式设置为固定金额时,数值不能超过该固定金额,3个等级的金总和不能超过该数值。
+          分佣方式设置为百分比时,数值不能超过100%,3个等级的金总和不能超过100%;<br />分佣方式设置为固定金额时,数值不能超过该固定金额,3个等级的金总和不能超过该数值。
         </p>
-        <el-form-item label="金冻结期" prop="freezingPeriod">
+        <el-form-item label="金冻结期" prop="freezingPeriod">
           <el-input-number
             style="width: 70px"
             v-model="ruleForm.freezingPeriod"
@@ -168,19 +169,19 @@ export default {
           width: "130",
         },
         {
-          label: "一级金",
+          label: "一级金",
           prop: "profitOne",
           scope: "price",
           width: "130",
         },
         {
-          label: "二级金",
+          label: "二级金",
           prop: "profitTwo",
           scope: "price",
           width: "130",
         },
         {
-          label: "三级金",
+          label: "三级金",
           prop: "profitThree",
           scope: "price",
           width: "130",

+ 2 - 2
src/views/Marketing/activitySystem/activityList/activityInfo/three.vue

@@ -52,8 +52,8 @@
           ></el-input>
           <p style="color: rgba(134, 144, 156, 1); font-size: 14px">
             说明:<br />1.
-            当订单完成以后,该链路上所有推广者根据其相应等级进行分佣,每个推广者的分金额或比例不会超过商品的最大限额<br />2.
-            考虑到商品退款情况,商品金额需要完全入账方可解冻对应金,具体时间需与业务部门沟通<br />3.
+            当订单完成以后,该链路上所有推广者根据其相应等级进行分佣,每个推广者的分金额或比例不会超过商品的最大限额<br />2.
+            考虑到商品退款情况,商品金额需要完全入账方可解冻对应金,具体时间需与业务部门沟通<br />3.
             选择固定数值时请注意商品成本
           </p>
         </el-form-item>

+ 2 - 2
src/views/Marketing/distribution/commissionList/index.vue

@@ -45,7 +45,7 @@ export default {
       disabledBtn: false,
       loading: false, //当前表单加载是否加载动画
       navText: {
-        title: "金列表",
+        title: "金列表",
         index: 0,
         ch: "条",
         num: true,
@@ -120,7 +120,7 @@ export default {
           hidden: true,
         },
         {
-          label: "金总金额",
+          label: "金总金额",
           prop: "cashTotal",
           hidden: true,
         },

+ 3 - 3
src/views/Marketing/distribution/distributionOrder/index.vue

@@ -198,7 +198,7 @@ export default {
       total: 0, //一共多少条
       tableSetOther: [
         {
-          label: "金类型",
+          label: "金类型",
           prop: "cashType",
           hidden: true,
           scope: "isOptions",
@@ -214,7 +214,7 @@ export default {
           ],
         },
         {
-          label: "金比例",
+          label: "金比例",
           prop: "cashRatio",
           hidden: true,
           scope:"cashRatio"
@@ -236,7 +236,7 @@ export default {
           hidden: true,
         },
         {
-          label: "金状态",
+          label: "金状态",
           prop: "cashStatus",
           hidden: true,
           scope: "isOptions",

+ 2 - 2
src/views/Marketing/distribution/rankingList/index.vue

@@ -80,7 +80,7 @@ export default {
           scope: "select",
           noClear:false,
           options: [
-            { label: "金", value: 1 },
+            { label: "金", value: 1 },
             { label: "订单数", value: 2 },
             { label: "招募业务员数量", value: 3 },
             
@@ -100,7 +100,7 @@ export default {
           hidden: true,
         },
         {
-          label: "金总额",
+          label: "金总额",
           prop: "cashTotal",
           hidden: true,
         },

+ 1 - 1
src/views/finance/paymentList/index.vue

@@ -109,7 +109,7 @@ export default {
           hidden: true,
         },
         {
-          label: "金总额",
+          label: "金总额",
           prop: "name",
           hidden: true,
         },

+ 42 - 22
src/views/financed/accountsPayable/businessCommission/index.vue

@@ -9,7 +9,11 @@
       @search="search(3)"
       @init="init"
     />
-    <picture-list ref="pictureList" :list="showTabList"></picture-list>
+    <picture-list
+      ref="pictureList"
+      :list="showTabList"
+      @activeLiFunc="activeLiFunc"
+    ></picture-list>
     <table-list
       rowKey="id"
       ref="tableList"
@@ -27,8 +31,18 @@
       <template slot="payStatus" slot-scope="props">
         <div>
           {{
-            ["待支付", "已结算", "待审核", "打款中", "支付失败", "审核中"][
-              props.scope.row.payStatus
+            [
+              "待支付",
+              "已结算",
+              "待审核",
+              "打款中",
+              "支付失败",
+              "审核中",
+              "无需审核",
+            ][
+              props.scope.row.payStatus == 2 && getRoles(props.scope.row.roleId)
+                ? 5
+                : props.scope.row.payStatus
             ]
           }}
           <span style="color: red" v-if="props.scope.row.roleName">
@@ -103,6 +117,7 @@
     <dislog-order-list
       divideModel="2"
       :info="activeOrderInfo"
+      @search="search"
       :dialogVisible.sync="orderDialogVisible"
     />
     <dislog-divide-pay
@@ -152,23 +167,29 @@ export default {
       showTabList: [
         {
           label: "应付分成",
-          img: "未收款",
+          img: "SharePayable",
           value: 0,
         },
         {
           label: "完单分成",
-          img: "已退款",
+          img: "SingleShare",
           value: 0,
         },
         {
           label: "退款扣除",
-          img: "成本金额",
+          img: "RefundDeduction",
           value: 0,
         },
+        {
+          label: "待审分成",
+          img: "PendingShare",
+          color: "#ff7a38",
+          num: true,
+        },
       ],
       loading: false, //当前表单加载是否加载动画
       navText: {
-        title: "业务提成",
+        title: "业务成",
         index: 0,
         ch: "条",
         num: true,
@@ -190,7 +211,7 @@ export default {
       },
       tableSet: [
         {
-          label: "账期时间",
+          label: "分成日期",
           prop: "monthTime",
           hidden: true,
           width: 140,
@@ -259,7 +280,7 @@ export default {
       formList: [
         {
           prop: "tenantIds",
-          placeholder: "机构选择",
+          placeholder: "所属机构",
           scope: "systemtenantlist",
           multiple: true,
         },
@@ -292,10 +313,6 @@ export default {
             { label: "已结算", value: 1 },
           ],
         },
-        {
-          prop: "createNo",
-          placeholder: "输入业务号/业务员号",
-        },
       ],
       total: 0, //一共多少条
       orderDialogVisible: false,
@@ -310,11 +327,13 @@ export default {
     this.init();
   },
   methods: {
+    activeLiFunc(item) {
+      if (item.img == "PendingShare") {
+        this.search(2, true);
+      }
+    },
     getRoles(roleId) {
-      if (
-        (this.rolesId?.length > 0 && this.rolesId.includes(roleId)) ||
-        this.rolesId.includes(1)
-      ) {
+      if (this.rolesId?.length > 0 && this.rolesId.includes(roleId)) {
         return false;
       } else {
         return true;
@@ -365,7 +384,7 @@ export default {
           this.loading = false;
         });
     },
-    async search(v) {
+    async search(v, status = false) {
       this.loading = true;
       if (v === 2) {
         this.tableData = [];
@@ -375,6 +394,7 @@ export default {
           monthTime: [],
           years: [],
           roleIds: this.rolesId,
+          payStatus: status ? [2] : [],
         };
       }
       this.$nextTick(() => {
@@ -390,18 +410,18 @@ export default {
       var data = JSON.parse(JSON.stringify(this.formData));
       delete data.pageNum;
       delete data.pageSize;
-      delete data.roleIds;
       countOrderNum({ totalType: 3, ...data }).then((res) => {
         let {
           unPayMoneyTotal,
           unDeductMoneyTotal,
           deductMoneyTotal,
           payMoneyTotal,
+          waitAuditTotal,
         } = res.data;
-        this.showTabList[0].value = payMoneyTotal + unPayMoneyTotal;
-        this.showTabList[1].value =
-          payMoneyTotal + unPayMoneyTotal + unDeductMoneyTotal;
+        this.showTabList[0].value = unPayMoneyTotal;
+        this.showTabList[1].value = payMoneyTotal;
         this.showTabList[2].value = deductMoneyTotal + unDeductMoneyTotal;
+        this.showTabList[3].value = waitAuditTotal;
       });
     },
   },

+ 68 - 45
src/views/financed/accountsPayable/commissionSettlement/index.vue

@@ -8,7 +8,11 @@
       @search="search(3)"
       @init="init"
     />
-    <picture-list ref="pictureList" :list="showTabList"></picture-list>
+    <picture-list
+      ref="pictureList"
+      :list="showTabList"
+      @activeLiFunc="activeLiFunc"
+    ></picture-list>
     <table-list
       :key="type"
       rowKey="id"
@@ -19,7 +23,9 @@
       :loading="loading"
     >
       <template slot="customize">
-        <el-button @click="batchAudit(1)" type="primary"> 批量审核 </el-button>
+        <el-button @click="batchAudit(1)" type="primary">
+          批量审核通过
+        </el-button>
         <el-button v-if="isTj" @click="batchAudit(-1)" type="warning"
           >批量审核不通过</el-button
         >
@@ -36,7 +42,12 @@
               "已结算",
               "审核中",
               "支付失败",
-            ][props.scope.row.checkStatus + 1]
+            ][
+              props.scope.row.checkStatus == 0 &&
+              getRoles(props.scope.row.roleId)
+                ? 5
+                : props.scope.row.checkStatus + 1
+            ]
           }}
           <span style="color: red" v-if="props.scope.row.roleName">
             ({{ props.scope.row.roleName }})
@@ -44,7 +55,7 @@
         </div>
       </template>
       <template slot="pretax" slot-scope="props">
-        {{ props.scope.row.pretax * 100 }}%
+        {{ props.scope.row.pretax }}%
       </template>
       <template slot="btn" slot-scope="props">
         <el-button
@@ -67,11 +78,11 @@
         <el-button
           v-else
           type="text"
+          @click="openDialog({ ...props.scope.row, type: 2 })"
           :disabled="
             props.scope.row.checkStatus !== 0 ||
             getRoles(props.scope.row.roleId)
           "
-          @click="openDialog({ ...props.scope.row, type: 2 })"
         >
           审核
         </el-button>
@@ -79,9 +90,9 @@
           type="text"
           :style="{
             color:
-              props.scope.row.checkStatus !== 1 ? '#ccc' : 'rgb(230, 162, 60)',
+              props.scope.row.checkStatus !== 3 ? '#ccc' : 'rgb(230, 162, 60)',
           }"
-          :disabled="props.scope.row.checkStatus !== 1"
+          :disabled="props.scope.row.checkStatus !== 3"
           @click="openDialog({ ...props.scope.row, type: 3, printType: 1 }, 0)"
         >
           单据打印
@@ -112,7 +123,7 @@
       @search="search"
       :dialogVisible.sync="auditDialogVisible"
     />
-    <!-- 金审核或支付 -->
+    <!-- 金审核或支付 -->
     <dislog-Cms-Audit
       :info="activeOrderInfo"
       @search="search"
@@ -146,23 +157,29 @@ export default {
       showTabList: [
         {
           label: "订单金额",
-          img: "未收款",
+          img: "OrderAmount",
           value: 0,
         },
         {
-          label: "税前金",
-          img: "已退款",
+          label: "税前金",
+          img: "PreTaxCommission",
           value: 0,
         },
         {
-          label: "结算金",
-          img: "成本金额",
+          label: "结算金",
+          img: "ClearingCommission",
           value: 0,
         },
+        {
+          label: "待审奖金",
+          img: "PendingShare",
+          color: "#ff7a38",
+          num: true,
+        },
       ],
       loading: false, //当前表单加载是否加载动画
       navText: {
-        title: "佣金结算",
+        title: "金结算",
         index: 0,
         ch: "条",
         num: true,
@@ -223,39 +240,34 @@ export default {
           scope: "formatPrice",
         },
         {
-          label: "税前金",
+          label: "税前金",
           prop: "pretaxBrokerage",
           hidden: true,
           scope: "formatPrice",
         },
         {
-          label: "金税占比",
+          label: "金税占比",
           prop: "pretax",
           hidden: true,
           scope: "solt",
           soltName: "pretax",
         },
         {
-          label: "结算金",
+          label: "结算金",
           prop: "brokerage",
           hidden: true,
           scope: "formatPrice",
         },
         {
           label: "支付方式",
-          prop: "payType",
-          hidden: true,
-          scope: "type",
+          prop: "brokerageType",
           hidden: true,
-          values: {
-            1: "微信",
-            2: "支付宝",
-            3: "金币",
-            4: "现金",
-            5: "网银支付",
-            6: "协议",
-            7: "对公转账",
-          },
+          scope: "isOptions",
+          options: [
+            { label: "微信", value: 1 },
+            { label: "现金", value: 4 },
+            { label: "网银", value: 5 },
+          ],
         },
         {
           label: "审核状态",
@@ -274,15 +286,10 @@ export default {
       formList: [
         {
           prop: "tenantIds",
-          placeholder: "机构选择",
+          placeholder: "所属机构",
           scope: "systemtenantlist",
           multiple: true,
         },
-        {
-          prop: "monthTime",
-          placeholder: "账期时间",
-          scope: "moreMonth",
-        },
         {
           prop: "checkStatus",
           placeholder: "审核状态",
@@ -292,17 +299,25 @@ export default {
             { label: "待审核", value: 0 },
             { label: "审核中", value: 4 },
             { label: "未通过", value: -1 },
-            { label: "待结算", value: 2 },
+            { label: "待支付", value: 2 },
             { label: "已结算", value: 3 },
           ],
         },
         {
           prop: "orderSn",
-          placeholder: "输入订单号",
+          placeholder: "订单号",
         },
         {
           prop: "createNo",
-          placeholder: "输入业务号/业务员号",
+          placeholder: "业务员/业务员号",
+        },
+        {
+          prop1: "buyStartTime",
+          prop2: "buyEndTime",
+          placeholder1: "订单开始日期",
+          placeholder2: "订单结束日期",
+          scope: "moreDataPicker",
+          Diszing: true,
         },
       ],
       total: 0, //一共多少条
@@ -323,11 +338,15 @@ export default {
     this.init();
   },
   methods: {
+    activeLiFunc(item) {
+      if (item.img == "PendingShare") {
+        this.search(2, true);
+      }
+    },
     getRoles(roleId) {
       if (
-        (this.$store.state.user.rolesId?.length > 0 &&
-          this.$store.state.user.rolesId.includes(roleId)) ||
-        this.$store.state.user.rolesId.includes(1)
+        this.$store.state.user.rolesId?.length > 0 &&
+        this.$store.state.user.rolesId.includes(roleId)
       ) {
         return false;
       } else {
@@ -342,7 +361,7 @@ export default {
     batchExport() {
       commissionExport(this.formData).then((res) => {
         if (res.msg) {
-          exportFn(res.msg, "导出金结算数据");
+          exportFn(res.msg, "导出金结算数据");
         } else {
           this.$message.error("导出失败");
         }
@@ -363,16 +382,16 @@ export default {
           this.loading = false;
         });
     },
-    async search(v) {
+    async search(v, status = false) {
       this.loading = true;
       if (v === 2) {
         this.tableData = [];
         this.formData = {
           pageSize: 10,
           pageNum: 1,
-          monthTime: [],
           years: [],
           roleIds: this.rolesId,
+          checkStatus: status ? [0] : [],
         };
       }
       this.$nextTick(() => {
@@ -385,10 +404,14 @@ export default {
       this.search(2);
     },
     getCountOrderNum() {
-      commissionOrderCount(this.formData).then((res) => {
+      let data = Object.assign({}, this.formData);
+      delete data.pageNum;
+      delete data.pageSize;
+      commissionOrderCount(data).then((res) => {
         this.showTabList[0].value = res.data.orderTotalPrice;
         this.showTabList[1].value = res.data.pretaxTotalBrokerage;
         this.showTabList[2].value = res.data.BrokerageTotalMoney;
+        this.showTabList[3].value = res.data.waitAuditTotal;
       });
     },
     batchAudit(checkResult = 1) {

+ 10 - 4
src/views/financed/accountsPayable/components/dislogBatchAudit.vue

@@ -69,9 +69,13 @@ export default {
         confirmButtonText: "确定通过",
         cancelButtonText: "取消",
         type: "warning",
-      }).then(() => {
-        this.batchAudit();
-      });
+      })
+        .then(() => {
+          this.batchAudit();
+        })
+        .catch(() => {
+          this.isShow = false;
+        });
     },
     batchAudit() {
       const fn = this.isCommission ? divideByEditBo : divideByMonthEditBo;
@@ -81,7 +85,9 @@ export default {
         );
         this.isShow = false;
         this.$emit("search");
-      });
+      }).catch(()=>{
+        this.isShow = false;
+      })
     },
   },
   computed: {

+ 18 - 7
src/views/financed/accountsPayable/components/dislogCmsAudit.vue

@@ -1,9 +1,9 @@
 <template>
   <div>
     <BaseDialog
-      width="860px"
+      width="900px"
       :isShow.sync="isShow"
-      :title="'金' + ['详情', '审核', '支付'][type - 1]"
+      :title="'金' + ['详情', '审核', '支付'][type - 1]"
       @open="init"
       :isShowFooter="false"
     >
@@ -37,13 +37,13 @@
           订单金额:<span>{{ info.orderPrice | formatPrice }}</span>
         </p>
         <p>
-          税前金:<span>{{ info.pretaxBrokerage | formatPrice }}</span>
+          税前金:<span>{{ info.pretaxBrokerage | formatPrice }}</span>
         </p>
         <p>
-          佣金税占比:<span>{{ info.pretax * 100 }}%</span>
+          奖金税占比:<span>{{ info.pretax }}%</span>
         </p>
         <p>
-          本次需支付金:<span style="font-weight: bold">{{
+          本次需支付金:<span style="font-weight: bold">{{
             info.brokerage | formatPrice
           }}</span>
         </p>
@@ -59,9 +59,20 @@
               "网银支付",
               "协议支付",
               "对公转账",
-            ][payType]
+            ][info.brokerageType]
           }}
         </p>
+        <div v-if="info.brokerageType == 5">
+          <p>奖金支付银行账号:{{ info.brokerageBankAccount }}</p>
+          <p>奖金支付账号名称:{{ info.brokerageBankName }}</p>
+          <p>奖金支付银行名称:{{ info.brokerageBank }}</p>
+        </div>
+        <p v-if="info.brokerageType == 1">
+          支付二维码:<img
+            :src="info.brokerageBankAccount"
+            alt=""
+          />
+        </p>
       </div>
       <div class="dialog-footer" v-if="type !== 1">
         <template v-if="type == 2">
@@ -84,7 +95,7 @@
     <!-- 订单详情 -->
     <dislog-order-details
       :appendToBody="true"
-      :ShowStatus="3"
+      :ShowStatus="1"
       :orderSn="info.orderSn"
       :orderFrom="info.orderFrom"
       :dialogVisible.sync="orderDialogVisible"

+ 5 - 5
src/views/financed/accountsPayable/components/dislogDividePay.vue

@@ -11,7 +11,7 @@
     >
       <template>
         <template>
-          <em>订单信息:</em>
+          <!-- <em>订单信息:</em> -->
           <p>
             机构名称:<em>{{ info.tenantName }}</em>
           </p>
@@ -21,7 +21,7 @@
             }}</em>
           </p>
           <p>
-            时间:<em>{{ info.monthTime }}</em>
+            账期日期:<em>{{ info.monthTime }}</em>
           </p>
           <p>
             应付分成:<span class="color_red">{{
@@ -37,17 +37,17 @@
         <el-input
           style="margin-top: 10px"
           disabled
-          v-model="formPay.toBankAcount"
+          v-model="formPay.toBankName"
         ></el-input>
         <el-input
           style="margin-top: 10px"
           disabled
-          v-model="formPay.toBankName"
+          v-model="formPay.toBankTypeName"
         ></el-input>
         <el-input
           style="margin-top: 10px"
           disabled
-          v-model="formPay.toBankTypeName"
+          v-model="formPay.toBankAcount"
         ></el-input>
       </template>
     </BaseDialog>

+ 15 - 15
src/views/financed/accountsPayable/components/dislogOrderList.vue

@@ -78,12 +78,12 @@
         </el-button>
       </template>
     </table-list>
-    <pagination1
+    <!-- <pagination1
       :total="total"
       :pageSize.sync="formData.pageSize"
       :currentPage.sync="formData.pageNum"
       @search="search(3)"
-    />
+    /> -->
     <!-- 订单详情 -->
     <dislog-order-details
       :appendToBody="true"
@@ -134,22 +134,22 @@ export default {
       statisticsList: [
         {
           label: "订单金额",
-          img: "未收款",
+          img: "OutstandingPayment",
           prop: "orderTotalPrice",
         },
         {
-          label: "税前金",
-          img: "已退款",
+          label: "税前金",
+          img: "Refunded",
           prop: "pretaxTotalBrokerage",
         },
         {
           label: "完单分成",
-          img: "成本金额",
+          img: "Costamount",
           prop: "accomplishTotalMoney",
         },
         {
-          label: "应付分成(不含坏账)",
-          img: "成本金额",
+          label: "应付分成",
+          img: "Costamount",
           prop: "divideTotalMoney",
         },
       ],
@@ -167,7 +167,7 @@ export default {
         tableColor: true,
       },
       formData: {
-        pageSize: 10,
+        pageSize: 9999,
         pageNum: 1,
       },
       tableSet: [
@@ -208,7 +208,7 @@ export default {
           scope: "formatPrice",
         },
         {
-          label: "税前金",
+          label: "税前金",
           prop: "pretaxBrokerage",
           hidden: true,
           scope: "formatPrice",
@@ -256,7 +256,7 @@ export default {
       this.loading = true;
       if (v === 2) {
         this.formData = {
-          pageSize: 10,
+          pageSize: 9999,
           pageNum: 1,
           divideLogId: this.info.id,
         };
@@ -272,9 +272,9 @@ export default {
       }
       monthOrderList(this.formData)
         .then((res) => {
-          this.tableData = res.rows;
-          this.total = res.total;
-          this.navText.index = res.total;
+          this.tableData = res.data;
+          this.total = res.data.length || 0;
+          this.navText.index = res.data.length || 0;
         })
         .finally(() => {
           this.loading = false;
@@ -365,7 +365,7 @@ export default {
                 time.getTime() < timeStamp ||
                 time.getTime() >
                   timeStamp +
-                    (this.getMonthDay(timeStamp) - 1) * 24 * 60 * 60 * 1000
+                    (this.getMonthDay(timeStamp)) * 24 * 60 * 60 * 1000
               );
             },
           },

+ 12 - 12
src/views/financed/accountsPayable/components/dislogPrint.vue

@@ -24,11 +24,11 @@
             <tr>
               <td>
                 款项用途:{{
-                  ["", "机构分成", "业务提成", "金结算", "供应商结算"][type]
+                  ["", "机构分成", "业务提成", "金结算", "供应商结算"][type]
                 }}
               </td>
               <td>付款日期:{{ $methodsTools.onlyForma(formData.payTime) }}</td>
-              <td>付款金额:{{ formData.payMoney | formatPrice }}</td>
+              <td>付款金额:{{ formData[type == 3 ? 'brokerage':'payMoney'] | formatPrice }}</td>
             </tr>
             <tr>
               <td>
@@ -76,15 +76,15 @@
               <td>
                 <p>款项明细:</p>
                 <template v-if="type == 3">
-                  <p>结算金:{{ formData.brokerage | formatPrice }}</p>
-                  <p>税前金:{{ formData.pretaxBrokerage | formatPrice }}</p>
-                  <p>佣金税占比:{{ formData.pretax * 100 || 0 }}%</p>
+                  <p>结算金:{{ formData.brokerage | formatPrice }}</p>
+                  <p>税前金:{{ formData.pretaxBrokerage | formatPrice }}</p>
+                  <p>奖金税占比:{{ formData.pretax || 0 }}%</p>
                 </template>
                 <template v-else>
                   <p>应付分成:{{ formData.payMoney | formatPrice }}</p>
                   <p>
                     完单分成:{{
-                      (formData.payMoney + formData.deductMoney) | formatPrice
+                      formData.totalPayMoney | formatPrice
                     }}
                   </p>
                   <p>退款扣除:{{ formData.deductMoney | formatPrice }}</p>
@@ -150,7 +150,7 @@
                     </div>
                   </div>
                   <div v-else-if="items.scope === 'pretax'">
-                    {{ item.pretax * 100 }}%
+                    {{ item.pretax }}%
                   </div>
                   <span v-else>
                     {{ item[items.prop] || "-" }}
@@ -219,7 +219,7 @@ export default {
           divideLogId: id,
         };
       }
-      // 金的
+      // 金的
       if (this.type == 3) {
         id = {
           orderSn: this.activeData.orderSn,
@@ -295,7 +295,7 @@ export default {
             },
           },
           { label: "订单金额", prop: "orderPrice", scope: "formatPrice" },
-          { label: "税前金", prop: "pretaxBrokerage", scope: "formatPrice" },
+          { label: "税前金", prop: "pretaxBrokerage", scope: "formatPrice" },
           {
             label: "应付分成",
             prop: this.type == 1 ? "divideCompanyMoney" : "divideSellerMoney",
@@ -339,9 +339,9 @@ export default {
               7: "对公转账",
             },
           },
-          { label: "税前金", prop: "pretaxBrokerage", scope: "formatPrice" },
-          { label: "金税占比", prop: "pretax", scope: "pretax" },
-          { label: "结算金", prop: "brokerage", scope: "formatPrice" },
+          { label: "税前金", prop: "pretaxBrokerage", scope: "formatPrice" },
+          { label: "金税占比", prop: "pretax", scope: "pretax" },
+          { label: "结算金", prop: "brokerage", scope: "formatPrice" },
         ];
       }
     },

+ 42 - 23
src/views/financed/accountsPayable/institutionDivide/index.vue

@@ -9,7 +9,7 @@
       @search="search"
       @init="init"
     />
-    <picture-list ref="pictureList" :list="statisticsList"></picture-list>
+    <picture-list ref="pictureList" :list="statisticsList" @activeLiFunc="activeLiFunc"></picture-list>
     <table-list
       rowKey="id"
       ref="tableList"
@@ -19,7 +19,9 @@
       :loading="loading"
     >
       <template slot="customize">
-        <el-button @click="batchAudit(1)" type="primary"> 批量审核 </el-button>
+        <el-button @click="batchAudit(1)" type="primary">
+          批量审核通过
+        </el-button>
         <el-button v-if="isTj" @click="batchAudit(-1)" type="warning"
           >批量审核不通过</el-button
         >
@@ -30,8 +32,10 @@
       <template slot="payStatus" slot-scope="props">
         <div>
           {{
-            ["待支付", "已结算", "待审核", "打款中", "支付失败", "审核中"][
-              props.scope.row.payStatus
+            ["待支付", "已结算", "待审核", "打款中", "支付失败", "审核中","无需审核"][
+              props.scope.row.payStatus == 2 && getRoles(props.scope.row.roleId)
+                ? 5
+                : props.scope.row.payStatus
             ]
           }}
           <span style="color: red" v-if="props.scope.row.roleName">
@@ -152,19 +156,25 @@ export default {
         // 完单 ==> 已扣 + 待付
         {
           label: "应付分成",
-          img: "未收款",
+          img: "SharePayable",
           value: 0,
         },
         {
           label: "完单分成",
-          img: "已退款",
+          img: "SingleShare",
           value: 0,
         },
         {
           label: "退款扣除",
-          img: "成本金额",
+          img: "RefundDeduction",
           value: 0,
         },
+        {
+          label: "待审分成",
+          img: "PendingShare",
+          color: "#ff7a38",
+          num: true,
+        },
       ],
       loading: false,
       navText: {
@@ -190,13 +200,13 @@ export default {
       },
       tableSet: [
         {
-          label: "月份",
+          label: "账期日期",
           prop: "monthTime",
           hidden: true,
           width: 140,
         },
         {
-          label: "类型",
+          label: "账期类型",
           prop: "billType",
           scope: "type",
           hidden: true,
@@ -220,7 +230,7 @@ export default {
         },
         {
           label: "完单分成",
-          prop: "closeOrderMoney",
+          prop: "totalPayMoney",
           hidden: true,
           scope: "formatPrice",
         },
@@ -272,11 +282,13 @@ export default {
     this.init();
   },
   methods: {
+    activeLiFunc(item) {
+      if (item.img == "PendingShare") {
+        this.search(2,true);
+      }
+    },
     getRoles(roleId) {
-      if (
-        (this.rolesId?.length > 0 && this.rolesId.includes(roleId)) ||
-        this.rolesId.includes(1)
-      ) {
+      if (this.rolesId?.length > 0 && this.rolesId.includes(roleId)) {
         return false;
       } else {
         return true;
@@ -315,7 +327,7 @@ export default {
           this.loading = false;
         });
     },
-    async search(v) {
+    async search(v,status = false) {
       this.loading = true;
       if (v === 2) {
         this.tableData = [];
@@ -326,6 +338,7 @@ export default {
           months: [], // 选择的月份
           years: [],
           roleIds: this.rolesId,
+          payStatus:status?[2]:[]
         };
       }
       this.$nextTick(() => {
@@ -369,11 +382,12 @@ export default {
           unDeductMoneyTotal,
           deductMoneyTotal,
           payMoneyTotal,
+          waitAuditTotal,
         } = res.data;
-        this.statisticsList[0].value = payMoneyTotal + unPayMoneyTotal;
-        this.statisticsList[1].value =
-          payMoneyTotal + unPayMoneyTotal + unDeductMoneyTotal;
+        this.statisticsList[0].value = unPayMoneyTotal;
+        this.statisticsList[1].value =payMoneyTotal;
         this.statisticsList[2].value = deductMoneyTotal + unDeductMoneyTotal;
+        this.statisticsList[3].value = waitAuditTotal;
       });
     },
     batchAudit(checkResult = 1) {
@@ -396,13 +410,13 @@ export default {
       let formList = [
         {
           prop: "tenantIds",
-          placeholder: "机构选择",
+          placeholder: "所属机构",
           scope: "systemtenantlist",
           multiple: true,
         },
         {
           prop: "billType",
-          placeholder: "账类型",
+          placeholder: "账类型",
           scope: "select",
           options: [
             { label: "月份", value: 1 },
@@ -411,6 +425,11 @@ export default {
             { label: "年度", value: 4 },
           ],
         },
+        {
+          prop: "monthTime",
+          placeholder: "账期时间",
+          scope: "moreMonth",
+        },
         {
           prop: "overPayDay",
           placeholder: "预付超期",
@@ -428,11 +447,11 @@ export default {
           scope: "select",
           multiple: true,
           options: [
-            { label: "待审核", value: 2 },
-            { label: "审核中", value: 5 },
             { label: "待支付", value: 0 },
-            { label: "支付失败", value: 4 },
             { label: "已结算", value: 1 },
+            { label: "待审核", value: 2 },
+            { label: "支付失败", value: 4 },
+            { label: "审核中", value: 5 },
           ],
         },
       ];

+ 37 - 25
src/views/financed/accountsPayable/operationsReceivable/index.vue

@@ -19,7 +19,7 @@
     >
       <template slot="customize">
         <el-button type="primary" @click="batchCollection">批量催款</el-button>
-        <el-button @click="openDialog({}, 2)" type="primary">
+        <el-button @click="openDialog({}, 2)" type="primary" v-if="false">
           坏账设置
         </el-button>
       </template>
@@ -73,7 +73,7 @@
     />
     <!-- 订单详情 -->
     <dislog-order-details
-      :ShowStatus="3"
+      :ShowStatus="1"
       :orderSn="activeOrderInfo.orderSn"
       :orderFrom="activeOrderInfo.orderFrom"
       :dialogVisible.sync="orderDialogVisible"
@@ -98,7 +98,7 @@ export default {
         {
           label: "未收账款",
           prop: "orderUncollectedTotal",
-          img: "未收款",
+          img: "OutstandingPayment",
           value: 0,
         },
       ],
@@ -111,38 +111,50 @@ export default {
         addHide: true,
         dontNum: false,
         openCheckMore: false,
-        changeWidth: "240px",
+        changeWidth: "140px",
         custom: false,
       },
       formList: [
         {
           prop: "tenantId",
-          placeholder: "机构选择",
+          placeholder: "所属机构",
           scope: "systemtenantlist",
         },
+        // {
+        //   prop: "badBill",
+        //   placeholder: "坏账",
+        //   scope: "select",
+        //   options: [
+        //     { label: "是", value: 1 },
+        //     { label: "否", value: 2 },
+        //   ],
+        // },
         {
-          prop: "badBill",
-          placeholder: "坏账选择",
+          prop: "overPayDay",
+          placeholder: "预收超期",
           scope: "select",
           options: [
-            { label: "是", value: 1 },
-            { label: "否", value: 2 },
+            { label: "7天", value: 1 },
+            { label: "30天", value: 2 },
+            { label: "半年", value: 3 },
+            { label: "1年", value: 4 },
           ],
         },
+        {
+          prop: "orderSn",
+          placeholder: "订单号",
+        },
+        {
+          prop: "keyNo",
+          placeholder: "业务号/业务员",
+        },
         {
           prop1: "startTime",
           prop2: "endTime",
           placeholder1: "订单开始时间",
           placeholder2: "订单结束时间",
           scope: "moreDataPicker",
-        },
-        {
-          prop: "orderSn",
-          placeholder: "订单单号",
-        },
-        {
-          prop: "keyNo",
-          placeholder: "业务号",
+          Diszing: true,
         },
       ],
       tableSet: [
@@ -166,7 +178,7 @@ export default {
           ],
         },
         {
-          label: "下单时间",
+          label: "订单日期",
           prop: "buyTime",
           hidden: true,
           scope: "aTimeList",
@@ -192,26 +204,26 @@ export default {
           hidden: true,
         },
         {
-          label: "合同金额(元)",
+          label: "订单金额",
           prop: "orderPrice",
           hidden: true,
           scope: "formatPrice",
         },
         {
-          label: "已收账款(元)",
+          label: "已收账款",
           prop: "orderReceived",
           hidden: true,
           scope: "formatPrice",
         },
         {
-          label: "已退金额(元)",
-          prop: "orderRefunded",
+          label: "未收账款",
+          prop: "orderUncollected",
           hidden: true,
           scope: "formatPrice",
         },
         {
-          label: "未收账款(元)",
-          prop: "orderUncollected",
+          label: "已退账款",
+          prop: "orderRefunded",
           hidden: true,
           scope: "formatPrice",
         },
@@ -331,7 +343,7 @@ export default {
     width: 120px;
   }
   /deep/ .el-date-editor {
-    width: 140px;
+    width: 150px;
   }
   /deep/ .el-form-item__content > .el-input {
     width: 190px;

+ 33 - 31
src/views/financed/accountsPayable/supplierSettlement/index.vue

@@ -13,6 +13,7 @@
       ref="pictureList"
       :info="statisticsData"
       :list="showTabList"
+      @activeLiFunc="activeLiFunc"
     ></picture-list>
     <table-list
       rowKey="settleId"
@@ -23,42 +24,32 @@
       :loading="loading"
     >
       <template slot="customize"
-        ><el-popover title="结算方式" width="200" trigger="click">
+        ><el-popover title="结算方式" width="240" trigger="click">
           <div>
             <el-button
-              
               type="primary"
               @click="controlsType(1, { settleType: 1 })"
               >数量结算</el-button
             >
             <el-button
-              
               type="primary"
               @click="controlsType(1, { settleType: 2 })"
               >时间结算</el-button
             >
           </div>
-          <el-button
-            slot="reference"
-            
-            type="primary"
-            style="margin-right: 10px"
+          <el-button slot="reference" type="primary" style="margin-right: 10px"
             >添加记录</el-button
           >
         </el-popover>
-        <el-button  type="primary" @click="batchAudit"
-          >批量提交审核</el-button
-        >
-        <el-button  type="warning" @click="batchDel"
-          >批量删除</el-button
-        >
+        <el-button type="primary" @click="batchAudit">批量提交</el-button>
+        <el-button type="warning" @click="batchDel">批量删除</el-button>
         <!-- <el-button  v-hasRole="derivePermission"
           >导出excel</el-button
         > -->
       </template>
       <template slot="orderPrice" slot-scope="props">
-        <div v-if="props.scope.row['settleMoney']">
-          ¥{{ $methodsTools.decimalPoint(props.scope.row["settleMoney"]) }}
+        <div>
+          {{ props.scope.row["settleMoney"] | formatPrice }}
         </div>
       </template>
       <template slot="bank" slot-scope="props">
@@ -68,7 +59,9 @@
       </template>
       <template slot="status" slot-scope="props">
         {{ getCheckStatus(props.scope.row.checkStatus) }}
-        <span style="color: red" v-if="props.scope.row.checkRole && props.scope.row.checkStatus !== 6"
+        <span
+          style="color: red"
+          v-if="props.scope.row.checkRole && props.scope.row.checkStatus !== 6"
           >({{ props.scope.row.checkRole }})</span
         >
       </template>
@@ -127,7 +120,7 @@
           >单据打印</el-button
         >
         <el-button
-        v-if="props.scope.row.settleType == 1"
+          v-if="props.scope.row.settleType == 1"
           :disabled="props.scope.row.checkStatus !== 6"
           type="text"
           class="warning_text_btn"
@@ -207,8 +200,15 @@ export default {
       showTabList: [
         {
           label: "结算金额",
-          prop: "settlementAmount",
-          img: "未收款",
+          prop: "settleMoney",
+          img: "SettlementAmount",
+        },
+        {
+          label: "待审结算",
+          prop: "settleCheckNum",
+          img: "PendingShare",
+          color: "#ff7a38",
+          num: true,
         },
       ],
       loading: false, //当前表单加载是否加载动画
@@ -364,7 +364,7 @@ export default {
         {
           label: "审核意见",
           hidden: true,
-          scope: "checkReason",
+          prop: "checkReason",
         },
       ],
       tableData: [], //表单数据
@@ -418,6 +418,11 @@ export default {
     },
   },
   methods: {
+    activeLiFunc(item) {
+      if (item.prop == "settleCheckNum") {
+        this.search(2, true);
+      }
+    },
     doPrint(type, data) {
       this.activeData = Object.assign({ type: type }, data) || {};
       this.BaseDialogPrintData = true;
@@ -463,15 +468,16 @@ export default {
       delete data.pageNum;
       delete data.pageSize;
       this.$api.settletotalmoney(data).then((res) => {
-        this.statisticsData = { settlementAmount: res.data } || {};
+        this.statisticsData = res.data || {};
       });
     },
-    search(v) {
+    search(v, status = false) {
       this.loading = true;
       if (v === 2) {
         this.formData = {
           pageSize: 10,
           pageNum: 1,
+          checkStatus: status ? 7 : null,
         };
         this.$nextTick(() => {
           this.$refs.tableList.clearMoreActive();
@@ -502,24 +508,20 @@ export default {
       if (this.$refs.tableList.allCheckData.length > 0) {
         const A = this.$refs.tableList.allCheckData
           .filter((i) => {
-            return (
-              (this.$store.state.user.name == "admin" &&
-                (i.checkStatus == 2 || i.checkStatus == 7)) ||
-              i.checkStatus == 7
-            );
+            return i.checkStatus == 1;
           })
           .map((i) => i.settleId);
         if (A.length > 0) {
           this.audit(A);
         } else {
-          this.$message.warning("当前所勾选的数据不可审核");
+          this.$message.warning("当前所勾选的数据不可提交");
         }
       } else {
-        this.$message.warning("请勾选需批量审核的数据");
+        this.$message.warning("请勾选需批量提交的数据");
       }
     },
     audit(ids) {
-      this.$confirm("确定批量提交审核?", "提示", {
+      this.$confirm("确定批量提交?", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
         type: "warning",

+ 14 - 2
src/views/financed/accountsPayable/supplierSettlement/payMent.vue

@@ -12,17 +12,20 @@
         <div class="title">{{ item.label ? item.label + ":" : "" }}</div>
         <template v-if="item.scope === 'select'">
           <template v-for="(items, indexs) in item.options">
-            <div v-if="formData[item.value] == items.value" class="text">
+            <div v-if="formData[item.value] == items.value" class="text" :key="indexs">
               {{ items.label }}
             </div>
           </template>
         </template>
+        <template v-else-if="item.scope == 'fc'">
+          <el-button type="primary" @click="seeDetail" size="mini">点击查看</el-button>
+        </template>
         <div
           class="text"
           v-else-if="item.scope === 'money'"
           style="color: red; font-size: 16px"
         >
-          {{ formData[item.value] }}
+          {{ formData[item.value] | formatPrice }}
         </div>
         <div v-else class="text">{{ formData[item.value] }}</div>
       </div>
@@ -84,6 +87,10 @@ export default {
           value: "settleMoney",
           scope: "money",
         },
+        {
+          label: "分成详情",
+          scope: "fc",
+        },
         {
           label: "供应商",
           value: "instName",
@@ -105,6 +112,11 @@ export default {
     };
   },
   methods: {
+    seeDetail(){
+      let ary = Object.assign({},this.activeData)
+      delete ary.type
+      this.$parent.controlsType(0,ary)
+    },
     init() {
       this.$api.settlepayinfodata(this.activeData.settleId).then((res) => {
         this.formData = res.data;

+ 8 - 5
src/views/financed/accountsPayable/supplierSettlement/printData.vue

@@ -17,7 +17,7 @@
             <tr>
               <td>款项用途:供应商结算</td>
               <td>付款日期:{{ $methodsTools.onlyForma(formData.payTime) }}</td>
-              <td>付款金额:{{ formData.settleMoney }}</td>
+              <td>付款金额:{{ formData.settleMoney | formatPrice }}</td>
             </tr>
             <tr>
               <td>
@@ -53,7 +53,7 @@
                 <p v-if="formData.settleType == 1">
                   结算数量:{{ formData.settleNum }}
                 </p>
-                <p>结算金额:{{ formData.settleMoney }}</p>
+                <p>结算金额:{{ formData.settleMoney | formatPrice }}</p>
               </td>
             </tr>
             <tr>
@@ -103,10 +103,13 @@
                     $methodsTools.onlyForma(item[items.prop])
                   }}</span>
                   <div v-else-if="items.scope === 'businessList'">
-                    <div v-for="item in item[items.prop]">{{ item }}</div>
+                    <div v-for="(itemx,indexx) in item[items.prop]" :key="indexx">{{ itemx }}</div>
+                  </div>
+                  <div v-else-if="items.scope === 'money'">
+                    {{item[items.prop] | formatPrice}}
                   </div>
                   <span v-else>
-                    {{ items.leftCh }}{{ item[items.prop]
+                    {{ item[items.prop]
                     }}{{ items.prop1 ? item[items.prop1] : "" }}
                   </span>
                 </td>
@@ -161,7 +164,7 @@ export default {
         { label: "姓名", prop: "userName", width: "60" },
         { label: "身份证号", prop: "userCard" },
         { label: "交资料日期", prop: "submitDataTime", scope: "time" },
-        { label: "结算金额", prop: "settleMoney", leftCh: "¥" },
+        { label: "结算金额", prop: "settleMoney", scope: "money" },
       ],
       tableData: [],
     };

+ 2 - 1
src/views/financed/accountsPayable/supplierSettlement/quantitySettleMent/index.vue

@@ -3,7 +3,7 @@
     <BaseDialog
       width="600px"
       :isShow.sync="isShow"
-      title="添加"
+      title="数量添加"
       @submit="submitForm"
       @close="close"
       confirmName="下一步"
@@ -215,6 +215,7 @@ export default {
     "formData.educationTypeId": {
       handler(newVal, oldVal) {
         if (!this.disabledChange && this.formData.businessId) {
+          console.log('123123123')
           this.$set(this.formData, "businessId", null);
         }
       },

+ 66 - 43
src/views/financed/accountsPayable/supplierSettlement/quantitySettleMent/quantityTable.vue

@@ -7,7 +7,7 @@
       @submit="submitForm(0)"
       @close="close"
       :confirmStatus="activeData.type !== 0"
-      :confirmName="activeData.type == 3 ? '通过' : '保存草稿'"
+      :confirmName="activeData.type == 3 ? '审核通过' : '保存草稿'"
     >
       <div class="topBox">
         <span
@@ -38,21 +38,18 @@
         <template slot="customize">
           <input v-show="false" id="file" type="file" @change="exportFunc" />
           <el-button
-            
             type="primary"
             v-if="activeData.type == 1"
             @click="lastStep"
             >上一步</el-button
           >
           <el-button
-            
             type="primary"
             @click="modifyData(-1)"
             v-if="activeData.type == 1 || activeData.type == 2"
             >添加</el-button
           >
           <el-button
-            
             type="primary"
             @click="exportFuncClick"
             v-if="activeData.type == 1 || activeData.type == 2"
@@ -60,14 +57,10 @@
           >
           <el-button
             @click="dowmFunc"
-            
             v-if="activeData.type == 1 || activeData.type == 2"
             >导入模板</el-button
           >
-          <el-button
-            
-            v-if="activeData.type == 0"
-            v-hasRole="derivePermission"
+          <el-button v-if="activeData.type == 0" v-hasRole="derivePermission"
             >导出excel</el-button
           >
         </template>
@@ -80,7 +73,7 @@
           >
           <el-button
             type="text"
-            @click="formData.settleOrderVos.splice(props.scope.$index, 1)"
+            @click="delVos(props.scope.$index)"
             v-if="activeData.type == 1 || activeData.type == 2"
             >删除</el-button
           >
@@ -96,9 +89,9 @@
           }}</strong>
         </p>
         <p>
-          结算金额:<strong style="color: red; font-size: 16px"
-            >¥{{ getOrderAllMoney(formData.settleOrderVos) }}</strong
-          >
+          结算金额:<strong style="color: red; font-size: 16px">{{
+            getOrderAllMoney(formData.settleOrderVos) | formatPrice
+          }}</strong>
         </p>
         <p>
           收款信息:<strong>{{
@@ -120,7 +113,7 @@
       />
       <template slot="slotBtn" v-if="activeData.type !== 0">
         <el-button @click="submitForm(1)">{{
-          activeData.type == 3 ? "不通过" : "提交审核"
+          activeData.type == 3 ? "审核不通过" : "提交审核"
         }}</el-button>
       </template>
     </BaseDialog>
@@ -213,8 +206,7 @@ export default {
           label: "结算金额",
           prop: "settleMoney",
           hidden: true,
-          scope: "leftCh",
-          ch: "¥",
+          scope: "formatPrice",
         },
       ],
       tableData: [], //表单数据
@@ -265,11 +257,12 @@ export default {
     },
     //返回数据
     backData(data) {
-      console.log(data, "data");
-      if (data.index == -1) {
+      let index = data.index;
+      delete data.index;
+      if (index == -1) {
         this.formData.settleOrderVos.unshift(data);
       } else {
-        this.formData.settleOrderVos.splice(data.index, 1, data);
+        this.formData.settleOrderVos.splice(index, 1, data);
       }
       this.navText.index = this.formData.settleOrderVos?.length || 0;
     },
@@ -279,6 +272,18 @@ export default {
       this.isShow = false;
     },
     close() {},
+    //删除
+    delVos(index) {
+      this.$confirm("是否删除?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.formData.settleOrderVos.splice(index, 1);
+        })
+        .catch(() => {});
+    },
     submitForm(type) {
       var self = this;
       if (this.activeData.type == 3) {
@@ -303,32 +308,50 @@ export default {
             })
             .catch(() => {});
         } else {
-          let data = {
-            settleId: self.formData.settleId,
-            checkResult: type + 1,
-          };
-          self.$api.settlecheck(data).then((res) => {
-            self.$message.success("操作成功");
-            this.isShow = false;
-            this.$emit("search");
-          });
+          this.$confirm("确定审核通过吗?", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning",
+          })
+            .then(() => {
+              let data = {
+                settleId: self.formData.settleId,
+                checkResult: type + 1,
+              };
+              self.$api.settlecheck(data).then((res) => {
+                self.$message.success("操作成功");
+                this.isShow = false;
+                this.$emit("search");
+              });
+            })
+            .catch(() => {});
         }
       } else {
         if (type == 1 && this.formData.settleOrderVos?.length == 0) {
           this.$message.warning("请添加供应商结算数据");
           return;
         }
-        let data = Object.assign({}, this.formData);
-        data.settleType = 1;
-        data.status = type;
-        data.settleMoney = this.getOrderAllMoney(this.formData.settleOrderVos);
-        this.$api[
-          this.activeData.settleId ? "settlenumupdate" : "settlenumsave"
-        ](data).then((res) => {
-          this.$message.success("操作成功");
-          this.isShow = false;
-          this.$emit("search");
-        });
+        this.$confirm(`确定${type == 0 ? "保存草稿" : "提交审核"}吗?`, "提示", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        })
+          .then(() => {
+            let data = Object.assign({}, this.formData);
+            data.settleType = 1;
+            data.status = type;
+            data.settleMoney = this.getOrderAllMoney(
+              this.formData.settleOrderVos
+            );
+            this.$api[
+              this.activeData.settleId ? "settlenumupdate" : "settlenumsave"
+            ](data).then((res) => {
+              this.$message.success("操作成功");
+              this.isShow = false;
+              this.$emit("search");
+            });
+          })
+          .catch(() => {});
       }
     },
     exportFuncClick() {
@@ -410,16 +433,16 @@ export default {
         var a = "";
         switch (i) {
           case 0:
-            a = "详情";
+            a = "数量详情";
             break;
           case 1:
-            a = "新增";
+            a = "数量新增";
             break;
           case 2:
-            a = "修改";
+            a = "数量修改";
             break;
           case 3:
-            a = "审核";
+            a = "数量审核";
             break;
           default:
             break;

+ 3 - 3
src/views/financed/accountsPayable/supplierSettlement/timeSettleMent/detailsIndex.vue

@@ -3,7 +3,7 @@
     <BaseDialog
       width="500px"
       :isShow.sync="isShow"
-      title="详情"
+      title="时间详情"
       @submit="submitForm"
       @close="close"
       :confirmStatus="false"
@@ -12,7 +12,7 @@
         <div class="title">{{ item.label ? item.label + ":" : "" }}</div>
         <template v-if="item.scope === 'select'">
           <template v-for="(items, indexs) in item.options">
-            <div v-if="formData[item.value] == items.value" class="text">
+            <div v-if="formData[item.value] == items.value" class="text" :key="indexs">
               {{ items.label }}
             </div>
           </template>
@@ -28,7 +28,7 @@
           v-else-if="item.scope === 'money'"
           style="color: red; font-size: 16px"
         >
-          {{ formData[item.value] }}
+          {{ formData[item.value] | formatPrice }}
         </div>
         <div v-else class="text">{{ formData[item.value] }}</div>
       </div>

+ 52 - 27
src/views/financed/accountsPayable/supplierSettlement/timeSettleMent/index.vue

@@ -6,7 +6,7 @@
       :title="getTypeName(activeData.type)"
       @submit="submitForm(0)"
       @close="close"
-      :confirmName="activeData.type == 3 ? '通过' : '保存草稿'"
+      :confirmName="activeData.type == 3 ? '审核通过' : '保存草稿'"
     >
       <el-form
         :disabled="activeData.type == 3"
@@ -109,6 +109,7 @@
           <div>
             <el-form-item label="结算金额:" prop="settleMoney">
               <el-input
+                maxlength="7"
                 clearable
                 v-model="formData.settleMoney"
                 placeholder="请输入结算金额"
@@ -153,7 +154,7 @@
       </el-form>
       <template slot="slotBtn">
         <el-button @click="submitForm(1)">{{
-          activeData.type == 3 ? "不通过" : "提交审核"
+          activeData.type == 3 ? "审核不通过" : "提交审核"
         }}</el-button>
       </template>
     </BaseDialog>
@@ -369,29 +370,53 @@ export default {
                 })
                 .catch(() => {});
             } else {
-              let data = {
-                settleId: self.formData.settleId,
-                checkResult: type + 1,
-              };
-              self.$api.settlecheck(data).then((res) => {
-                self.$message.success("操作成功");
-                this.isShow = false;
-                this.$emit("search");
-              });
+              self
+                .$confirm(`确定审核通过吗?`, "提示", {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                })
+                .then(() => {
+                  let data = {
+                    settleId: self.formData.settleId,
+                    checkResult: type + 1,
+                  };
+                  self.$api.settlecheck(data).then((res) => {
+                    self.$message.success("操作成功");
+                    this.isShow = false;
+                    this.$emit("search");
+                  });
+                })
+                .catch(() => {});
             }
           } else {
-            let data = Object.assign({}, this.formData);
-            data.signStartTime = parseInt(data.time[0] / 1000);
-            data.signEndTime = parseInt(data.time[1] / 1000);
-            data.settleType = 2;
-            data.status = type;
-            this.$api[
-              this.activeData.settleId ? "settletimeupdate" : "settletimesave"
-            ](data).then((res) => {
-              this.$message.success("操作成功");
-              this.isShow = false;
-              this.$emit("search");
-            });
+            self
+              .$confirm(
+                `确定${type == 1 ? "提交审核" : "保存草稿"}吗?`,
+                "提示",
+                {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                }
+              )
+              .then(() => {
+                let data = Object.assign({}, self.formData);
+                data.signStartTime = parseInt(data.time[0] / 1000);
+                data.signEndTime = parseInt(data.time[1] / 1000);
+                data.settleType = 2;
+                data.status = type;
+                self.$api[
+                  self.activeData.settleId
+                    ? "settletimeupdate"
+                    : "settletimesave"
+                ](data).then((res) => {
+                  self.$message.success("操作成功");
+                  self.isShow = false;
+                  self.$emit("search");
+                });
+              })
+              .catch(() => {});
           }
         } else {
           return false;
@@ -412,16 +437,16 @@ export default {
         var a = "";
         switch (i) {
           case 0:
-            a = "详情";
+            a = "时间详情";
             break;
           case 1:
-            a = "新增";
+            a = "时间新增";
             break;
           case 2:
-            a = "修改";
+            a = "时间修改";
             break;
           case 3:
-            a = "审核";
+            a = "时间审核";
             break;
           default:
             break;

+ 118 - 0
src/views/financed/auditProcess/index.vue

@@ -0,0 +1,118 @@
+<template>
+  <div id="statistic">
+    <el-tabs v-model="activeName" @tab-click="activeList">
+      <el-tab-pane
+        v-for="(item, index) in componentsList"
+        :key="index"
+        lazy
+        :label="item.label"
+        :name="item.name"
+      >
+      </el-tab-pane>
+    </el-tabs>
+    <div :style="style" id="div_box">
+      <el-image
+        style="width: 100%"
+        v-for="(item, index) in componentsList"
+        class="box_s"
+        :key="index"
+        :src="item.img"
+        :preview-src-list="[item.img]"
+      >
+      </el-image>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      style: {},
+      componentsList: [
+        {
+          label: "订单审核",
+          name: "A",
+          img: require("@/assets/images/AuditProcess/1.png"),
+        },
+        {
+          label: "退款审核",
+          name: "B",
+          img: require("@/assets/images/AuditProcess/2.png"),
+        },
+        {
+          label: "学员审核",
+          name: "C",
+          img: require("@/assets/images/AuditProcess/3.png"),
+        },
+        {
+          label: "完单确认",
+          name: "D",
+          img: require("@/assets/images/AuditProcess/4.png"),
+        },
+        {
+          label: "应收账款",
+          name: "E",
+          img: require("@/assets/images/AuditProcess/5.png"),
+        },
+        {
+          label: "机构分成",
+          name: "F",
+          img: require("@/assets/images/AuditProcess/6.png"),
+        },
+        {
+          label: "业务提成",
+          name: "G",
+          img: require("@/assets/images/AuditProcess/7.png"),
+        },
+        {
+          label: "奖金结算",
+          name: "H",
+          img: require("@/assets/images/AuditProcess/8.png"),
+        },
+        {
+          label: "供应结算",
+          name: "I",
+          img: require("@/assets/images/AuditProcess/9.png"),
+        },
+        {
+          label: "自动认款",
+          name: "J",
+          img: require("@/assets/images/AuditProcess/10.png"),
+        },
+        {
+          label: "手动认款",
+          name: "K",
+          img: require("@/assets/images/AuditProcess/11.png"),
+        },
+      ],
+      activeName: "A",
+    };
+  },
+  mounted() {
+    this.style = {
+      height: window.innerHeight - 170 + "px",
+      overflow: "auto",
+    };
+  },
+  methods: {
+    activeList(item) {
+      document
+        .getElementsByClassName("box_s")
+        [Number(item.index)].scrollIntoView({ behavior: "smooth" });
+      //   document.getElementById("div_box").scrollTop =
+      //     document.getElementsByClassName("box_s")[Number(item.index)].offsetTop -
+      //     150;
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+#div_box {
+  img {
+    width: 100%;
+    margin-bottom: 14px;
+  }
+}
+</style>

+ 137 - 0
src/views/financed/auditRole/index.vue

@@ -0,0 +1,137 @@
+<template>
+  <div id="">
+    <table border class="tables" width="100%">
+      <tr>
+        <th colspan="2" width="40%">栏目</th>
+        <th>审核(设置)角色</th>
+      </tr>
+      <tr>
+        <td rowspan="2">财务管理 - 成本设置</td>
+        <td>机构成本</td>
+        <td>设置:会计、财务、总经理</td>
+      </tr>
+      <tr>
+        <td>职能成本</td>
+        <td>设置:会计、财务、总经理</td>
+      </tr>
+      <tr>
+        <td rowspan="5">财务管理 - 订单管理</td>
+        <td>成本设置</td>
+        <td>设置:会计、财务、总经理</td>
+      </tr>
+      <tr>
+        <td>完单审核</td>
+        <td>审核:统计</td>
+      </tr>
+      <tr>
+        <td>订单审核</td>
+        <td>审核:(会计/财务)<br />合作渠道审核:合作渠道负责人</td>
+      </tr>
+      <tr>
+        <td>退款审核</td>
+        <td>
+          B端,审核:统计-(会计/财务)-总经理-出纳<br />
+          C端,审核:(会计/财务)-总经理-出纳<br />
+          合作渠道审核:合作渠道负责人-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理);待支付、支付失败(出纳)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td>学员审核</td>
+        <td>
+          审核:统计-(会计/财务)-总经理<br />
+          合作渠道审核:合作渠道负责人-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td rowspan="5">财务管理 - 应收应付</td>
+        <td>应收账款</td>
+        <td>
+          坏账设置:会计、财务、总经理 <br />自动催款:统计、会计、财务、总经理
+        </td>
+      </tr>
+      <tr>
+        <td>机构分成</td>
+        <td>
+          审核:统计-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理);待支付、支付失败(出纳)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td>业务提成</td>
+        <td>
+          审核:统计-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理);待支付、支付失败(出纳)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td>奖金结算</td>
+        <td>
+          审核:统计-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理);待支付、支付失败(出纳)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td>供应结算</td>
+        <td>
+          添加:统计、会计、财务、总经理<br />
+          修改(删除):对应角色职能操作自己添加的数据<br />
+          审核:统计-(会计/财务)-总经理-出纳<br />
+          站内消息提示:待审核(统计、会计/财务、总经理);待支付、支付失败(出纳)<br />
+          微信消息提示:站内消息提示:待审核(总经理)
+        </td>
+      </tr>
+      <tr>
+        <td>财务管理</td>
+        <td>认款管理</td>
+        <td>
+          添加(撤销):出纳<br />
+          认款(撤销):统计、总经理<br />
+          站内消息提示:待认款(统计)
+        </td>
+      </tr>
+      <tr>
+        <td rowspan="2">系统管理</td>
+        <td>机构管理</td>
+        <td>设置:会计、财务、总经理</td>
+      </tr>
+      <tr>
+        <td>供应管理</td>
+        <td>设置:会计、财务、总经理</td>
+      </tr>
+    </table>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {};
+  },
+  methods: {},
+};
+</script>
+
+<style lang="scss" scoped>
+.tables {
+  border-collapse: collapse;
+  font-size: 14px;
+  td,
+  th {
+    padding: 10px;
+  }
+  th {
+    color: #fff;
+    background-color: rgb(0, 122, 255);
+  }
+  td {
+    text-align: center;
+  }
+}
+</style>

+ 212 - 121
src/views/financed/components/dislogOrderDetails.vue

@@ -8,118 +8,154 @@
       :appendToBody="appendToBody"
       :isShowFooter="false"
     >
-      <div class="head">
-        订单号:<span>{{ detailInfo.orderSn }}</span> 退款状态:<span>{{
-          refundStatus(detailInfo.refundStatus)
-        }}</span>
-        <i
-          v-if="detailInfo.orderFrom === 3 || detailInfo.orderFrom === 4"
-          style="font-style: normal"
-          >审核状态:<span>{{ checkStatus(detailInfo.checkStatus) }}</span></i
-        >
-        <i
-          v-if="
-            ShowStatus == 2 &&
-            detailInfo.checkStatus === 0 &&
-            (detailInfo.orderFrom == 3 || detailInfo.orderFrom == 4)
-          "
-          style="float: right"
-        >
-          <el-button type="success"  @click="success"
-            >订单审核通过</el-button
+      <el-main
+        style="padding: 0px"
+        v-loading="loading"
+        element-loading-text="正在更新审核状态,请稍等"
+      >
+        <div class="head">
+          订单号:<span>{{ detailInfo.orderSn }}</span> 
+          <!-- 退款状态:<span>{{
+            refundStatus(detailInfo.refundStatus)
+          }}</span> -->
+          <i
+            v-if="detailInfo.orderFrom === 3 || detailInfo.orderFrom === 4"
+            style="font-style: normal"
+            >审核状态:<span>{{ checkStatus(detailInfo.checkStatus) }}</span></i
           >
-          <el-button type="danger"  @click="error"
-            >订单审核不通过</el-button
+          <i
+            v-if="
+              ShowStatus == 2 &&
+              detailInfo.checkStatus === 0 &&
+              (detailInfo.orderFrom == 3 || detailInfo.orderFrom == 4)
+            "
+            style="float: right"
           >
-        </i>
-      </div>
-      <div class="mian">
-        <el-descriptions class="margin-top" :column="3" border>
-          <el-descriptions-item
-            :label="desc.label"
-            v-for="(desc, index) in descList"
-            :key="index"
-          >
-            <div v-if="desc.type">
-              <el-link
-                :underline="false"
-                v-if="desc.type === 'dowm'"
-                :href="detailInfo['link']"
-                target="_blank"
-                ><span v-if="detailInfo['link']">资料下载</span></el-link
-              >
-              <div v-if="desc.type === 'image'">
-                <el-image
-                  v-if="detailInfo[desc.key] && detailInfo[desc.key].length > 0"
-                  style="width: 40px; height: 20px; margin-right: 10px"
-                  :src="detailInfo[desc.key][0]"
-                  :preview-src-list="detailInfo[desc.key]"
+            <el-button type="success" @click="success">审核通过</el-button>
+            <el-button type="danger" @click="error">审核不通过</el-button>
+          </i>
+        </div>
+        <div class="mian">
+          <el-descriptions class="margin-top" :column="3" border>
+            <el-descriptions-item
+              :label="desc.label"
+              v-for="(desc, index) in descList"
+              :key="index"
+            >
+              <div v-if="desc.type">
+                <el-link
+                  :underline="false"
+                  v-if="desc.type === 'dowm'"
+                  :href="detailInfo['link']"
+                  target="_blank"
+                  ><span v-if="detailInfo['link']">资料下载</span></el-link
                 >
-                </el-image>
-                <span>{{
-                  detailInfo[desc.key] && detailInfo[desc.key].length > 0
-                    ? "共" + detailInfo[desc.key].length + "张"
-                    : "暂无转账凭证"
-                }}</span>
-              </div>
-              <div v-if="desc.type === 'pretax'">
-                <span style="margin-right: 20px"
-                  >税前佣金:{{
-                    $methodsTools.decimalPoint(detailInfo["pretaxBrokerage"])
-                  }}</span
-                ><span>税占比:{{ detailInfo["pretaxStr"] }}</span>
-              </div>
-              <div v-if="desc.type === 'time'">
-                {{ $methodsTools.onlyForma(detailInfo[desc.key]) }}
-              </div>
-              <div v-if="desc.type === 'options'">
-                <template v-for="(i, k) in desc.options">
-                  <span v-if="i.value === detailInfo[desc.key]">
-                    {{ i.label }}
+                <span v-if="desc.type === 'Model'">
+                  <span v-if="detailInfo['divideModel'] == 1"
+                    >{{ detailInfo["divideCompanyMoney"] | formatPrice }}
                   </span>
-                </template>
-              </div>
-              <div v-if="desc.type === 'money'">
-                {{ $methodsTools.decimalPoint(detailInfo[desc.key]) }}
-                <span
-                  v-if="desc.key === 'orderProfit'"
-                  :style="{
-                    color: detailInfo[desc.key] > 0 ? '#409eff' : '#f56c6c',
-                  }"
-                  >【{{ detailInfo[desc.key] > 0 ? "盈" : "亏" }}】</span
-                >
-                <span
-                  v-if="desc.key === 'orderUncollected'"
-                  :style="{
-                    color: detailInfo[desc.key] > 0 ? '#f56c6c' : '#409eff',
-                  }"
-                  >({{
-                    detailInfo[desc.key] > 0 ? "未结清" : "已结清"
-                  }})</span
+                  <span v-else-if="detailInfo['divideModel'] == 2"
+                    >{{ detailInfo["divideSellerMoney"] | formatPrice }}
+                  </span></span
                 >
+                <div v-if="desc.type === 'image'">
+                  <el-image
+                    v-if="
+                      detailInfo[desc.key] && detailInfo[desc.key].length > 0
+                    "
+                    style="width: 40px; height: 20px; margin-right: 10px"
+                    :src="detailInfo[desc.key][0]"
+                    :preview-src-list="detailInfo[desc.key]"
+                  >
+                  </el-image>
+                  <span>{{
+                    detailInfo[desc.key] && detailInfo[desc.key].length > 0
+                      ? "共" + detailInfo[desc.key].length + "张"
+                      : "暂无转账凭证"
+                  }}</span>
+                </div>
+                <div v-if="desc.type == 'brokerageType'">
+                  <div v-if="detailInfo['brokerageType'] == 1">
+                    <span v-if="!detailInfo['brokerageStr']">微信</span>
+                    <el-image
+                      v-else
+                      style="width: 40px; height: 20px; margin-right: 10px"
+                      :src="detailInfo['brokerageStr']"
+                      :preview-src-list="[detailInfo['brokerageStr']]"
+                    >
+                    </el-image>
+                  </div>
+                  <span v-if="detailInfo['brokerageType'] == 4">现金</span>
+                  <span v-if="detailInfo['brokerageType'] == 5">{{
+                    detailInfo["brokerageStr"]
+                  }}</span>
+                </div>
+                <div v-if="desc.type === 'pretax'">
+                  <span style="margin-right: 20px"
+                    >税前奖金:{{
+                      detailInfo["pretaxBrokerage"] | formatPrice
+                    }}</span
+                  ><span>税占比:{{ detailInfo["pretaxStr"] }}</span>
+                </div>
+                <div v-if="desc.type === 'time'">
+                  {{ $methodsTools.onlyForma(detailInfo[desc.key]) }}
+                </div>
+                <div v-if="desc.type === 'options'">
+                  <template v-for="(i, k) in desc.options">
+                    <span :key="k" v-if="i.value === detailInfo[desc.key]">
+                      {{ i.label }}
+                    </span>
+                  </template>
+                </div>
+                <div v-if="desc.type == 'busOptions'">
+                  <div
+                    v-for="(items, indexs) in detailInfo[desc.key]"
+                    :key="indexs"
+                  >
+                    {{ items }}
+                  </div>
+                </div>
+                <div v-if="desc.type === 'money'">
+                  {{ detailInfo[desc.key] | formatPrice }}
+                  <span
+                    v-if="desc.key === 'orderProfit'"
+                    :style="{
+                      color: detailInfo[desc.key] > 0 ? '#409eff' : '#f56c6c',
+                    }"
+                    >【{{ detailInfo[desc.key] > 0 ? "盈" : "亏" }}】</span
+                  >
+                  <span
+                    v-if="desc.key === 'orderUncollected'"
+                    :style="{
+                      color: detailInfo[desc.key] > 0 ? '#f56c6c' : '#409eff',
+                    }"
+                    >({{
+                      detailInfo[desc.key] > 0 ? "未结清" : "已结清"
+                    }})</span
+                  >
+                </div>
+                <div v-if="desc.type === 'reduce'">
+                  {{
+                    (detailInfo.orderPrice - detailInfo.pretaxBrokerage)
+                      | formatPrice
+                  }}
+                </div>
               </div>
-              <div v-if="desc.type === 'reduce'">
-                {{
-                  $methodsTools.decimalPoint(
-                    detailInfo.orderPrice - detailInfo.pretaxBrokerage
-                  )
-                }}
+              <div v-else>
+                {{ detailInfo[desc.key] }}
               </div>
-            </div>
-            <div v-else>
-              {{ detailInfo[desc.key] }}
-            </div>
-          </el-descriptions-item>
-        </el-descriptions>
-      </div>
-      <student-details
-        v-if="isShow && detailInfo.orderFrom"
-        :orderSn="orderSn"
-        :orderFrom="detailInfo.orderFrom"
-        :ShowStatus="ShowStatus"
-        :checkStatus="detailInfo.checkStatus"
-        @parentsSearch="parentsSearch"
-      ></student-details>
+            </el-descriptions-item>
+          </el-descriptions>
+        </div>
+        <student-details
+          v-if="detailInfo.orderFrom"
+          :orderSn="orderSn"
+          :orderFrom="detailInfo.orderFrom"
+          :ShowStatus="ShowStatus"
+          :checkStatus="detailInfo.checkStatus"
+          @parentsSearch="parentsSearch"
+        ></student-details>
+      </el-main>
     </BaseDialog>
   </div>
 </template>
@@ -147,6 +183,7 @@ export default {
   },
   data() {
     return {
+      loading: true,
       descList: [
         { label: "机构名称", key: "tenantName" },
         { label: "业务员", key: "createUsername" },
@@ -154,14 +191,14 @@ export default {
         { label: "下单客户", key: "purchaseOrg" },
         { label: "订单来源", key: "orderOrg" },
         { label: "业务归属", key: "schemeName" },
-        { label: "业务类型", key: "businessNames" },
+        { label: "业务类型", key: "businessNames", type: "busOptions" },
         { label: "订单日期", key: "buyTime", type: "time" },
         { label: "订单金额", key: "orderPrice", type: "money" },
         { label: "已收账款", key: "orderReceived", type: "money" },
         { label: "未收账款", key: "orderUncollected", type: "money" },
         { label: "申请退款", key: "orderRefund", type: "money" },
         { label: "已退账款", key: "orderRefunded", type: "money" },
-        { label: "修改补款", key: "", type: "money" },
+        { label: "修改补款", key: "repairMoneyTotal", type: "money" },
         { label: "实际账款", key: "orderPractical", type: "money" },
         { label: "成本", key: "orderCost", type: "money" },
         { label: "盈亏", key: "orderProfit", type: "money" },
@@ -174,13 +211,54 @@ export default {
             { label: "未完单", value: 0 },
           ],
         },
-        { label: "佣金", key: "pretax", type: "pretax" },
-        { label: "收佣方式", key: "", type: "" },
-        { label: "佣金状态", key: "", type: "" },
-        { label: "分成金额", key: "", type: "" },
-        { label: "分成审核", key: "", type: "" },
-        { label: "发票金额", key: "", type: "money" },
-        { label: "发票申请时间", key: "", type: "time" },
+        { label: "奖金", key: "pretax", type: "pretax" },
+        {
+          label: "收奖方式",
+          key: "brokerageType",
+          type: "brokerageType",
+          options: [
+            { label: "微信", value: 1 },
+            { label: "现金", value: 4 },
+            { label: "网银", value: 5 },
+          ],
+        },
+        {
+          label: "奖金状态",
+          key: "brokerageCheck",
+          type: "options",
+          options: [
+            { label: "待审核", value: 0 },
+            { label: "已通过", value: 1 },
+            { label: "未通过", value: -1 },
+            { label: "待支付", value: 2 },
+            { label: "已支付", value: 3 },
+            { label: "审核中", value: 4 },
+            { label: "支付失败", value: 5 },
+            { label: "支付中", value: 6 },
+          ],
+        },
+        {
+          label: "分成金额",
+          key: "divideModel",
+          type: "Model",
+        },
+        {
+          label: "分成审核",
+          key: "divideStatus",
+          type: "options",
+          options: [
+            { label: "正常", value: 1 },
+            { label: "待审核", value: 2 },
+            { label: "审核中", value: 3 },
+            { label: "审核不通过", value: 4 },
+            { label: "审核通过待支付", value: 5 },
+            { label: "支付中", value: 6 },
+            { label: "已支付", value: 7 },
+            { label: "支付失败", value: 8 },
+          ],
+        },
+        { label: "发票金额", key: "invoiceMoney", type: "money" },
+        { label: "发票申请时间", key: "invoiceDate" },
         {
           label: "发票状态",
           key: "invoiceStatus",
@@ -194,7 +272,7 @@ export default {
               label: "已开票",
               value: 1,
             },
-          ],
+          ], 
         },
         { label: "转账凭证", key: "attachmentList", type: "image" },
         { label: "附件", type: "dowm" },
@@ -263,6 +341,11 @@ export default {
       return str;
     },
     init() {
+      this.detailInfo = {
+        orderFrom: null,
+        attachmentList: [],
+      };
+      this.loading = false;
       this.getOrderDetail();
     },
     getOrderDetail() {
@@ -301,6 +384,7 @@ export default {
         type: "warning",
       })
         .then(() => {
+          this.loading = true;
           this.$api
             .systemtopordercheck({
               checkStatus: 1,
@@ -309,6 +393,9 @@ export default {
             .then((res) => {
               this.$message.success("操作成功");
               this.submitForm();
+            })
+            .finally((e) => {
+              this.loading = false;
             });
         })
         .catch(() => {});
@@ -320,6 +407,7 @@ export default {
         inputPlaceholder: "输入不通过原因",
       })
         .then(({ value }) => {
+          this.loading = true;
           this.$api
             .systemtopordercheck({
               checkReason: value || "",
@@ -329,6 +417,9 @@ export default {
             .then((res) => {
               this.$message.success("操作成功");
               this.submitForm();
+            })
+            .finally((e) => {
+              this.loading = false;
             });
         })
         .catch(() => {});
@@ -356,12 +447,12 @@ export default {
 
 <style lang="scss" scoped>
 // .orderDetail {
-  .head {
-    margin-bottom: 20px;
-    span {
-      padding-right: 20px;
-      color: #409eff;
-    }
+.head {
+  margin-bottom: 20px;
+  span {
+    padding-right: 20px;
+    color: #409eff;
   }
+}
 // }
 </style>

+ 1 - 0
src/views/financed/components/refund/auditProgress.vue

@@ -12,6 +12,7 @@
       <el-timeline>
         <el-timeline-item
           v-for="(item, index) in checkLogVos"
+          :key="index"
           :timestamp="$methodsTools.onlyForma(item.checkTime)"
           placement="top"
           :color="

+ 110 - 93
src/views/financed/components/refund/dislogSet.vue

@@ -8,40 +8,7 @@
       @close="close"
       :confirmStatus="false"
     >
-      <div v-if="formPay.toBankAcount">
-        <em>收款信息:</em>
-        <el-form
-          :model="formPay"
-          :rules="rulesPay"
-          ref="rulesPay"
-          label-width="100px"
-          class="demo-ruleForm"
-        >
-          <el-form-item label="银行账号:" prop="toBankAcount">
-            <el-input
-              readonly
-              clearable
-              v-model="formPay.toBankAcount"
-            ></el-input>
-          </el-form-item>
-          <el-form-item label="账号名称:" prop="toBankName">
-            <el-input
-              readonly
-              clearable
-              v-model="formPay.toBankName"
-            ></el-input>
-          </el-form-item>
-          <el-form-item label="银行名称:" prop="toBankTypeName">
-            <el-input
-              readonly
-              clearable
-              v-model="formPay.toBankTypeName"
-            ></el-input>
-          </el-form-item>
-        </el-form>
-        <el-divider></el-divider>
-      </div>
-      <template v-if="form.checkType === 2">
+      <template>
         <p style="margin-top: 0">
           申请时间:{{ $methodsTools.onlyForma(form.applyTime) }}
         </p>
@@ -51,15 +18,14 @@
         </p>
 
         <div class="bgc_pink">
-          <p>
-            <strong>订单号:</strong><span>{{ form.orderSn }}</span>
-            <el-button
-              type="text"
-              style="margin-left: 10px"
-              @click="openOrderDetail"
-              >订单详情</el-button
-            >
-          </p>
+          <div class="dis_fls">
+            <div class="k_left">
+              <strong>订单号:</strong><span>{{ form.orderSn }}</span>
+              <strong style="margin-left: 16px">发票状态:</strong
+              ><span>{{ form.invoiceStatus == 1 ? "已开票" : "未开票" }}</span>
+            </div>
+            <el-button type="text" @click="openOrderDetail">订单详情</el-button>
+          </div>
           <!-- :span-method="objectSpanMethod" 表格合并代码👇 -->
           <el-table
             border
@@ -85,63 +51,58 @@
               <template slot-scope="scope">
                 <template v-if="item.scope === 'isOptions'">
                   <template v-for="(i, k) in item.options">
-                    <span v-if="scope.row[item.prop] == i.value">{{
+                    <span v-if="scope.row[item.prop] == i.value" :key="k">{{
                       i.label
                     }}</span>
                   </template>
                 </template>
+                <div v-else-if="item.scope == 'price'" :style="item.style">
+                  {{ scope.row[item.prop] | formatPrice }}
+                </div>
                 <div v-else :style="item.style">
-                  <span v-if="item.ch && scope.row[item.prop]">{{
-                    item.ch
-                  }}</span>
                   {{ scope.row[item.prop] }}
                 </div>
               </template>
             </el-table-column>
           </el-table>
           <ul>
+            <li>
+              <strong>退款原因:</strong> <span>{{ form.refundReason }}</span>
+            </li>
             <li>
               本次申请退款:<span
                 >¥{{ parseFloat(form.refundFee).toFixed(2) }}</span
               >
             </li>
             <li>
-              未收货款:<span
+              未收账款抵消:<span
                 >¥{{ parseFloat(form.orderUncollected).toFixed(2) }}</span
               >
             </li>
             <li>
-              已收款待退:<span
+              已收款待退:<span
                 >¥{{ parseFloat(form.orderReceived).toFixed(2) }}</span
               >
             </li>
             <li>
-              已申请的佣金:<span
+              税前奖金减少:<span
                 >¥{{ parseFloat(form.brokerage).toFixed(2) }}</span
               ><strong v-if="form.brokerage > 0"
-                >(佣金已结算,建议联系业务员与客户沟通,确认是否申请佣金,再做审核已)</strong
+                >(奖金已结算,建议联系业务员与客户沟通,确认是否申请奖金,再做审核已)</strong
               >
             </li>
             <li>
               本次可退金额:<span style="font-weight: bold"
-                >¥{{
+                >¥{{form.refundFee - form.orderUncollected <= 0 ? 0 :
                   parseFloat(form.refundFee - form.orderUncollected).toFixed(2)
                 }}</span
               >
             </li>
           </ul>
         </div>
-        <template slot="slotBtnRight">
-          <el-button @click="auditFail">审核不通过</el-button>
-          <el-button type="primary" @click="submitForm">审核通过</el-button>
-        </template>
-        <audit-progress
-          :auditProgress.sync="auditProgress"
-          :checkLogVos="form.checkLogVos"
-        ></audit-progress>
       </template>
       <template v-if="form.checkType === 3">
-        <em>订单信息:</em>
+        <!-- <em>订单信息:</em>
         <p>
           支付金额:<span
             class="color_red"
@@ -162,12 +123,57 @@
           <el-radio disabled v-model="form.payType" :label="2"
             >网银支付、对公转账</el-radio
           >
-        </p>
+        </p> -->
         <el-divider></el-divider>
         <em>支付方式:</em>
         <el-tag type="success" v-if="form.payType === 1">原路返回</el-tag>
         <el-tag type="danger" v-if="form.payType === 2">网银支付</el-tag>
       </template>
+
+      <div v-if="formPay.toBankAcount" style="margin-top: 24px">
+        <em>收款信息:</em>
+        <el-form
+          :model="formPay"
+          :rules="rulesPay"
+          ref="rulesPay"
+          label-width="100px"
+          class="demo-ruleForm"
+        >
+          <el-form-item label="银行账号:" prop="toBankAcount">
+            <el-input
+              readonly
+              clearable
+              v-model="formPay.toBankAcount"
+            ></el-input>
+          </el-form-item>
+          <el-form-item label="账号名称:" prop="toBankName">
+            <el-input
+              readonly
+              clearable
+              v-model="formPay.toBankName"
+            ></el-input>
+          </el-form-item>
+          <el-form-item label="银行名称:" prop="toBankTypeName">
+            <el-input
+              readonly
+              clearable
+              v-model="formPay.toBankTypeName"
+            ></el-input>
+          </el-form-item>
+        </el-form>
+      </div>
+      <template slot="slotBtnRight">
+        <el-button v-if="form.checkType != 3" @click="auditFail"
+          >审核不通过</el-button
+        >
+        <el-button type="primary" @click="submitForm">{{
+          form.checkType == 3 ? "支付" : "审核通过"
+        }}</el-button>
+      </template>
+      <audit-progress
+        :auditProgress.sync="auditProgress"
+        :checkLogVos="form.checkLogVos"
+      ></audit-progress>
     </BaseDialog>
 
     <dislogOrderDetails
@@ -223,6 +229,15 @@ export default {
       },
       tableData: [],
       tableList: [
+        {
+          label: "学员姓名",
+          prop: "userName",
+        },
+        {
+          label: "身份证号码",
+          prop: "userCard",
+          width: "160",
+        },
         {
           label: "业务类型",
           prop: "businessName",
@@ -233,42 +248,33 @@ export default {
           prop: "goodsName",
           width: "180",
         },
+        {
+          label: "年份",
+          prop: "goodsYear",
+        },
         {
           label: "原价",
-          prop: "refundFee",
+          prop: "goodsPrice",
           width: "100",
-          ch: "¥",
+          scope: "price",
         },
         {
           label: "单价",
-          prop: "refundFee",
+          prop: "goodsPrice",
           width: "160",
-          ch: "¥",
           style: { color: "red" },
+          scope: "price",
         },
         {
-          label: "税前佣金",
-          prop: "refundFee",
-          ch: "¥",
-        },
-        {
-          label: "实际单价",
-          prop: "refundFee",
-          ch: "¥",
-        },
-        {
-          label: "学员姓名",
-          prop: "userName",
-        },
-        {
-          label: "身份证号码",
-          prop: "userCard",
-          width: "160",
-        },
-        {
-          label: "退款原因",
-          prop: "refundReason",
+          label: "税前奖金",
+          prop: "brokerage",
+          scope: "price",
         },
+        // {
+        //   label: "实际单价",
+        //   prop: "goodsPrice",
+        //   scope: "price",
+        // },
       ],
     };
   },
@@ -292,7 +298,9 @@ export default {
       });
     },
     close() {
-      this.$refs["rulesPay"].resetFields();
+      if (this.formPay.toBankAcount) {
+        this.$refs["rulesPay"].resetFields();
+      }
     },
     resetForm() {
       this.form = {
@@ -327,11 +335,15 @@ export default {
         .catch(() => {});
     },
     submitForm() {
-      this.$confirm("是否审核通过?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      })
+      this.$confirm(
+        `是否${this.form.checkType == 3 ? "支付" : "审核通过"}?`,
+        "提示",
+        {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        }
+      )
         .then(() => {
           if (this.form.checkType === 3) {
             this.$api
@@ -387,6 +399,11 @@ export default {
   box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.2);
   border-radius: 8px;
   color: #000;
+  & > .dis_fls {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+  }
 }
 .color_red {
   font-weight: bold;

+ 4 - 1
src/views/financed/components/remarks.vue

@@ -3,7 +3,7 @@
     <BaseDialog
       width="600px"
       :isShow.sync="isShow"
-      title="修改备注"
+      title="财务备注"
       @close="close"
       @submit="submitForm"
     >
@@ -12,6 +12,8 @@
         type="textarea"
         placeholder="请输入备注"
         v-model="remarks"
+        maxlength="100"
+        show-word-limit
       ></el-input>
     </BaseDialog>
   </div>
@@ -58,6 +60,7 @@ export default {
         remark: this.remarks,
       };
       this.$api.systemtoporderupdateremark(data).then((res) => {
+        this.$message.success("操作成功");
         this.isShow = false;
         this.$parent.$refs.tableList.clearMoreActive();
         this.$emit("search");

+ 194 - 10
src/views/financed/components/studentDetails.vue

@@ -23,10 +23,11 @@
             >
           </template></search-box-new
         >
+        <!-- computedTableSet(tableSet1, ShowStatus) ↓tableSet1 -->
         <table-list
           ref="tableList"
           rowKey="orderGoodsId"
-          :tableSets="computedTableSet(tableSet1, ShowStatus)"
+          :tableSets="tableSet1"
           :tableData="tableData1"
           :navText="dialogNavText1"
         >
@@ -52,6 +53,18 @@
           @search="search"
         />
       </el-tab-pane>
+      <el-tab-pane label="发票记录" name="3">
+        <table-list
+          :tableSets="tableSet3"
+          :tableData="tableData3"
+          :navText="dialogNavText3"
+        >
+      <template slot="orderInfo" slot-scope="props">
+        <div>抬头:{{ props.scope.row["buyerName"] }}</div>
+        <div>信用代码:{{ props.scope.row["buyerTaxNum"] }}</div>
+      </template>
+        </table-list>
+      </el-tab-pane>
     </el-tabs>
   </div>
 </template>
@@ -133,7 +146,7 @@ export default {
         },
         {
           label: "年份",
-          prop: "year",
+          prop: "goodsYear",
           hidden: true,
         },
         {
@@ -153,13 +166,58 @@ export default {
           scope: "toFixedYuan",
           hidden: true,
         },
+        {
+          label: "税前奖金",
+          prop: "pretaxBrokerage",
+          hidden: true,
+          scope: "toFixedYuan",
+        },
+        // {
+        //   label: "实际单价",
+        //   prop: "realPrice",
+        //   hidden: true,
+        //   scope: "toFixedYuan",
+        // },
+        {
+          label: "分成类型",
+          prop: "divideType",
+          hidden: true,
+          scope: "isOptions",
+          options: [
+            {
+              label: "百分比",
+              value: 1,
+            },
+            {
+              label: "固定",
+              value: 2,
+            },
+          ],
+        },
+        {
+          label: "分成计算",
+          prop: "divideRateStr",
+          hidden: true,
+        },
+        {
+          label: "分成金额",
+          prop: "divideMoney",
+          hidden: true,
+          scope: "toFixedYuan",
+        },
+        {
+          label: "修改补款",
+          prop: "repairMoney",
+          hidden: true,
+          scope: "toFixedYuan",
+        },
         {
           label: "学习状态",
           prop: "studyStatus",
           hidden: true,
         },
         {
-          label: "审核状态",
+          label: "课程审核",
           prop: "checkStatus",
           hidden: true,
           scope: "isOptions",
@@ -248,6 +306,83 @@ export default {
         },
       ],
       tableData2: [],
+      tableSet3: [
+        {
+          label: "申请时间",
+          prop: "applyUpTime",
+          hidden: true,
+          scope: "aTimeList",
+        },
+        {
+          label: "发票类型",
+          prop: "invoiceType",
+          hidden: true,
+        },
+        {
+          label: "开票信息",
+          prop: "",
+          hidden: true,
+          scope: "solt",
+          soltName: "orderInfo",
+        },
+        {
+          label: "收票信息",
+          prop: "email",
+          hidden: true,
+        },
+        {
+          label: "申请金额",
+          prop: "applyPrice",
+          hidden: true,
+          scope: "toFixedYuan",
+        },
+        {
+          label: "实开金额",
+          prop: "price",
+          hidden: true,
+          scope: "toFixedYuan",
+        },
+        {
+          label: "开票时间",
+          prop: "invoiceTime",
+          hidden: true,
+          scope: "aTimeList",
+        },
+        {
+          label: "发票状态",
+          prop: "invoiceStatus",
+          hidden: true,
+          scope: "isOptions",
+          options: [
+            {
+              label: "关闭",
+              value: 0,
+            },
+            {
+              label: "开票中",
+              value: 1,
+            },
+            {
+              label: "开票完成",
+              value: 2,
+            },
+            {
+              label: "失效",
+              value: -1,
+            },
+            {
+              label: "推送失败",
+              value: -2,
+            },
+          ],
+        },
+        {
+          label: "发票备注",
+          prop: "remark",
+          hidden: true,
+        },
+      ],
+      tableData3: [],
       dialogNavText1: {
         index: 0,
         num: true,
@@ -298,6 +433,23 @@ export default {
           title: "未定义",
         },
       },
+      dialogNavText3: {
+        index: 0,
+        num: true,
+        border: true,
+        choice: false,
+        choiceRadio: false,
+        radioKey: "specTemplateId",
+        radioFixed: false,
+        addHide: !false,
+        tableHide: true,
+        dontNum: false,
+        headShow: false,
+        backFatherBtn: {
+          status: false,
+          title: "未定义",
+        },
+      },
       formData: {
         pageSize: 10,
         pageNum: 1,
@@ -315,28 +467,53 @@ export default {
   computed: {
     computedTableSet: function () {
       return function (array, num) {
-        let copyArray = JSON.parse(JSON.stringify(array))
+        let copyArray = JSON.parse(JSON.stringify(array));
         if (num === 3) {
           let data = [
+            {
+              label: "税前奖金",
+              prop: "pretaxBrokerage",
+              hidden: true,
+              scope: "toFixedYuan",
+            },
             {
               label: "实际单价",
-              prop: "tt",
+              prop: "goodsRealPrice",
               hidden: true,
+              scope: "toFixedYuan",
             },
             {
               label: "分成类型",
-              prop: "tt",
+              prop: "divideType",
               hidden: true,
+              scope: "isOptions",
+              options: [
+                {
+                  label: "百分比",
+                  value: 1,
+                },
+                {
+                  label: "固定",
+                  value: 2,
+                },
+              ],
             },
             {
               label: "分成计算",
-              prop: "tt",
+              prop: "divideRateStr",
               hidden: true,
             },
             {
               label: "分成金额",
-              prop: "tt",
+              prop: "divideMoney",
+              hidden: true,
+              scope: "toFixedYuan",
+            },
+            {
+              label: "修改补款",
+              prop: "acceptanceMoney",
               hidden: true,
+              scope: "toFixedYuan",
             },
           ];
           copyArray.splice(array.length - 1, 1, ...data);
@@ -396,8 +573,12 @@ export default {
         });
       }
       this.$api[
-        this.tabType === "1" ? "systemtopordergoodslist" : "systemtoporderlog"
-      ](this.formData).then((res) => {
+        this.tabType === "1"
+          ? "systemtopordergoodslist"
+          : this.tabType === "2"
+          ? "systemtoporderlog"
+          : "systemtoporderinvoicelistid"
+      ](this.tabType === "3" ? this.formData.orderSn :this.formData).then((res) => {
         if (this.tabType === "1") {
           this.tableData1 = res.rows;
           this.total = res.total;
@@ -406,6 +587,9 @@ export default {
           this.tableData2 = res.rows;
           this.total = res.total;
         }
+        if (this.tabType === "3") {
+          this.tableData3 = res.data;
+        }
       });
     },
     handleClick(tab) {

+ 1 - 0
src/views/financed/components/trainee/auditProgress.vue

@@ -12,6 +12,7 @@
       <el-timeline>
         <el-timeline-item
           v-for="(item, index) in checkLogVos"
+          :key="index"
           :timestamp="$methodsTools.onlyForma(item.checkTime)"
           placement="top"
           :color="

+ 71 - 113
src/views/financed/components/trainee/dislogSetTrainee.vue

@@ -2,7 +2,7 @@
   <div>
     <BaseDialog
       :disabledBtn="disabledBtn"
-      width="900px"
+      width="1200px"
       :isShow.sync="isShow"
       title="学员审核"
       @close="close"
@@ -10,15 +10,18 @@
     >
       <p style="margin-top: 0">
         <strong style="color: #000">申请时间:</strong
-        >{{ $methodsTools.onlyForma(form.buyTime) }}
+        >{{ $methodsTools.onlyForma(tabDatas.applyUpTime) }}
       </p>
       <p>
-        <span class="color_1890ff">{{ form.tenantName }}</span>
+        <span class="color_1890ff">{{ tabDatas.applyUpName }}</span>
         <span>,发起学员修改申请</span>
       </p>
       <div class="bgc_pink">
         <p>
           <strong>订单号:</strong><span>{{ form.orderSn }}</span>
+          <strong style="margin-left: 16px">业务类型:</strong
+          ><span>{{ tabDatas.businessName }}</span>
+
           <el-button
             type="text"
             style="margin-left: 10px"
@@ -30,26 +33,14 @@
         <el-table
           ref="tableList"
           row-key="orderGoodsId"
-          
           border
           :data="tableData"
           stripe
           style="width: 100%"
           height="340"
           v-loading="loading"
-          @select-all="selectAll"
-          @select="select"
+          :span-method="objectSpanMethod"
         >
-          <el-table-column
-            reserve-selection
-            align="center"
-            type="selection"
-            width="55"
-            header-align="center"
-            fixed="left"
-            :selectable="selectableFunc"
-          >
-          </el-table-column>
           <el-table-column
             align="center"
             type="index"
@@ -67,11 +58,24 @@
             <template slot-scope="scope">
               <template v-if="item.scope === 'isOptions'">
                 <template v-for="(i, k) in item.options">
-                  <span v-if="scope.row[item.prop] == i.value">{{
+                  <span v-if="scope.row[item.prop] == i.value" :key="k">{{
                     i.label
                   }}</span>
                 </template>
               </template>
+              <el-image
+                v-else-if="item.scope == 'img'"
+                style="width: 100px; height: 100px"
+                :src="scope.row[item.prop]"
+                :preview-src-list="[scope.row[item.prop]]"
+                ><div slot="error" style="text-align: center">
+                  <span>暂无补款凭证</span>
+                </div>
+              </el-image>
+              <div
+                v-else-if="item.type == 'db' && scope.row['checkStatus'] == 0"
+                :style="scope.row[item.prop1] == 1 ? { color: 'red' } : null"
+              >{{ scope.row[item.prop] }}</div>
               <div v-else :style="item.style">
                 <span v-if="item.ch && scope.row[item.prop]">{{
                   item.ch
@@ -81,16 +85,14 @@
             </template>
           </el-table-column>
         </el-table>
-        <pagination
-          :total="total"
-          :pageSize.sync="refFormData.pageSize"
-          :currentPage.sync="refFormData.pageNum"
-          @search="search"
-        />
       </div>
       <template slot="slotBtnRight">
-        <el-button @click="auditFail">审核不通过</el-button>
-        <el-button type="primary" @click="submitForm">审核通过</el-button>
+        <el-button @click="auditFail" :disabledBtn="disabledBtn"
+          >审核不通过</el-button
+        >
+        <el-button type="primary" @click="submitForm" :disabledBtn="disabledBtn"
+          >审核通过</el-button
+        >
       </template>
     </BaseDialog>
 
@@ -128,19 +130,34 @@ export default {
       disabledBtn: false,
       tableData: [],
       tableList: [
+        {
+          label: "修改前后",
+          prop: "checkStatus",
+          scope: "isOptions",
+          options: [
+            { label: "改前", value: -1 },
+            { label: "改后", value: 0 },
+          ],
+        },
         {
           label: "姓名",
           prop: "userName",
+          prop1: "userNameSign",
+          type: "db",
         },
         {
           label: "身份证号",
           prop: "userCard",
+          prop1: "userCardSign",
           width: "140",
+          type: "db",
         },
         {
           label: "手机号",
           prop: "userPhone",
-          width: "100",
+          prop1: "userPhoneSign",
+          width: "120",
+          type: "db",
         },
         {
           label: "课程",
@@ -149,16 +166,7 @@ export default {
         },
         {
           label: "年份",
-          prop: "year",
-        },
-        {
-          label: "专业",
-          prop: "majorName",
-        },
-        {
-          label: "业务",
-          prop: "businessName",
-          width: "180",
+          prop: "goodsYear",
         },
         {
           label: "原价(元)",
@@ -175,56 +183,26 @@ export default {
           prop: "studyStatus",
         },
         {
-          label: "审核状态",
-          prop: "checkStatus",
-          scope: "isOptions",
-          options: [
-            {
-              label: "待审核",
-              value: 0,
-            },
-            {
-              label: "已通过",
-              value: 1,
-            },
-            {
-              label: "未通过",
-              value: 2,
-            },
-            {
-              label: "已撤销",
-              value: 3,
-            },
-            {
-              label: "已取消",
-              value: -1,
-            },
-          ],
+          label: "修改补款",
+          prop: "repairMoney",
+          style: { color: "red" },
         },
         {
-          label: "发起原因",
-          prop: "refundReason",
+          label: "补款凭证",
+          prop: "repairProve",
+          scope: "img",
+          width: "130px",
         },
         {
-          label: "审核意见",
-          prop: "checkReason",
+          label: "修改原因",
+          prop: "applyUpReason",
           style: { color: "red" },
+          width: "160px",
         },
       ],
-      refFormData: {
-        pageSize: 10,
-        pageNum: 1,
-      },
-      total: 0,
       orderDialogVisible: false,
       allCheckData: [],
-      selectableFunc: (row, rowIndex) => {
-        if (row.checkStatus === 0) {
-          return true;
-        } else {
-          return false;
-        }
-      },
+      tabDatas: {},
     };
   },
 
@@ -242,47 +220,36 @@ export default {
       });
     },
     search() {
-      let ary = Object.assign(
-        {
-          orderSn: this.orderSn,
-          orderFrom: this.form.orderFrom,
-        },
-        this.refFormData
-      );
       this.loading = true;
       this.$api
-        .systemtopordergoodslist(ary)
+        .systemtopordergoodsapplylist(this.orderSn)
         .then((res) => {
-          this.tableData = res.rows;
-          this.total = res.total;
+          if (res.data) {
+            this.tabDatas = res.data;
+            this.tableData = res.data.orderGoodsList || [];
+          }
         })
         .finally(() => {
           this.loading = false;
         });
     },
-    close() {
-      this.allCheckData = [];
-      this.$refs.tableList.clearSelection();
-    },
+    close() {},
     auditFail() {
-      if (this.allCheckData.length === 0) {
-        this.$message.error("请勾选数据");
-        return;
-      }
       this.$prompt("确定审核不通过吗?", "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
         inputPlaceholder: "输入不通过原因",
       })
         .then(({ value }) => {
+          let A = this.tableData.filter((i) => i.checkStatus == 0);
           this.$api
             .systemtopordercheckstudent({
               checkReason: value || "",
               checkStatus: 2,
               orderSn: this.orderSn,
-              orderGoodsIds: this.allCheckData.map(
-                (i) => i.orderGoodsId
-              ),
+              orderGoodsIds: A.map((i) => {
+                return i.orderGoodsId;
+              }),
             })
             .then((res) => {
               this.$message.success("操作成功");
@@ -293,18 +260,15 @@ export default {
         .catch(() => {});
     },
     submitForm() {
-      if (this.allCheckData.length === 0) {
-        this.$message.error("请勾选数据");
-        return;
-      }
       this.disabledBtn = true;
+      let A = this.tableData.filter((i) => i.checkStatus == 0);
       this.$api
         .systemtopordercheckstudent({
           checkStatus: 1,
           orderSn: this.orderSn,
-          orderGoodsIds: this.allCheckData.map(
-            (i) => i.orderGoodsId
-          ),
+          orderGoodsIds: A.map((i) => {
+            return i.orderGoodsId;
+          }),
         })
         .then((res) => {
           this.$message.success("操作成功");
@@ -316,7 +280,8 @@ export default {
         });
     },
     objectSpanMethod({ row, column, rowIndex, columnIndex }) {
-      if (columnIndex === 0) {
+      var arr = [0, 10, 11];
+      if (arr.indexOf(columnIndex) != -1) {
         if (rowIndex % 2 == 0) {
           return {
             rowspan: 2,
@@ -330,13 +295,6 @@ export default {
         }
       }
     },
-
-    selectAll(value) {
-      this.allCheckData = value;
-    },
-    select(selection) {
-      this.allCheckData = selection;
-    },
   },
   computed: {
     isShow: {

+ 5 - 2
src/views/financed/costSet/dislogOrganSet.vue

@@ -158,6 +158,7 @@
                 <el-input
                   v-int
                   placeholder="最低价"
+                maxlength="8"
                   v-model.number="item.minValue"
                 ></el-input>
               </el-col>
@@ -166,6 +167,7 @@
                 <el-input
                   @keyup.native="regValue(item)"
                   placeholder="最高价"
+                maxlength="8"
                   @change="changeMaxValue('itemList.' + index + '.minValue')"
                   v-model.number="item.maxValue"
                 ></el-input>
@@ -194,6 +196,7 @@
                 placeholder="固定金额"
                 v-model="item.typeValue"
                 v-int
+                maxlength="8"
               >
                 <template slot="append"> 元 </template>
               </el-input>
@@ -309,7 +312,7 @@ export default {
         } else if (!maxValue) {
           callback(new Error("请输入最高价"));
         } else if (maxValue <= value) {
-          callback(new Error("最低价不能于最高价"));
+          callback(new Error("最低价不能于最高价"));
         }
       }
 
@@ -383,7 +386,7 @@ export default {
           { validator: checkEduId, trigger: "change" },
         ],
         itemCategory: [
-          { required: true, message: "请选择业务类型", trigger: "change" },
+          { required: true, message: "请选择成本类别", trigger: "change" },
         ],
         itemType: [
           { required: true, message: "请选择成本类型", trigger: "change" },

+ 4 - 3
src/views/financed/costSet/dislogSupplierSet.vue

@@ -13,7 +13,7 @@
           <i class="el-icon-warning-outline"></i>注意
         </div>
         <div style="padding-left: 20px">
-          ● 1、百分比成本 = 百分比*(课程金额 - 课程税前金)。
+          ● 1、百分比成本 = 百分比*(课程金额 - 课程税前金)。
         </div>
       </div>
       <el-form
@@ -34,7 +34,7 @@
             <el-select
               filterable
               v-model="form.instId"
-              placeholder="请选择关联机构"
+              placeholder="请选择关联供应商"
             >
               <el-option
                 v-for="item in tenantList"
@@ -146,6 +146,7 @@
               v-else
               placeholder="固定金额"
               v-model="item.typeValue"
+                maxlength="8"
               v-int
             >
               <template slot="append"> 元 </template>
@@ -229,7 +230,7 @@ export default {
           { required: true, message: "请输入模板名称", trigger: "blur" },
         ],
         instId: [
-          { required: true, message: "请选择关联机构", trigger: "change" },
+          { required: true, message: "请选择关联供应商", trigger: "change" },
         ],
         businessId: [
           { required: true, message: "请选择业务层次", trigger: "blur" },

+ 7 - 4
src/views/financed/costSet/organ.vue

@@ -36,7 +36,10 @@
         <el-button type="text" @click="handelClick(1, props.scope.row.tpId)"
           >修改</el-button
         >
-        <el-button type="text" @click="handelDel(props.scope.row.tpId)"
+        <el-button
+          style="color: #ffba00"
+          type="text"
+          @click="handelDel(props.scope.row.tpId)"
           >删除</el-button
         >
       </template>
@@ -74,7 +77,7 @@ export default {
     return {
       loading: false,
       navText: {
-        title: "成本模板",
+        title: "机构成本",
         index: 0,
         ch: "条",
         num: true,
@@ -91,7 +94,7 @@ export default {
         },
         {
           prop: "tpName",
-          placeholder: "请输入模板名称",
+          placeholder: "模板搜索",
         },
       ],
       formData: {},
@@ -108,7 +111,7 @@ export default {
           sort: "custom",
         },
         {
-          label: "默认状态",
+          label: "默认",
           prop: "startTime",
           hidden: true,
           scope: "solt",

+ 5 - 4
src/views/financed/costSet/supplier.vue

@@ -79,7 +79,7 @@ export default {
     return {
       loading: false,
       navText: {
-        title: "模板管理",
+        title: "供应成本",
         index: 0,
         ch: "条",
         num: true,
@@ -100,7 +100,7 @@ export default {
         },
         {
           prop: "tpName",
-          placeholder: "请输入模板名称",
+          placeholder: "模板搜索",
         },
       ],
       formData: {},
@@ -114,10 +114,10 @@ export default {
           label: "关联供应商",
           prop: "instName",
           hidden: true,
-          sort: "custom",
+          // sort: "custom",
         },
         {
-          label: "默认状态",
+          label: "默认",
           prop: "startTime",
           hidden: true,
           scope: "solt",
@@ -141,6 +141,7 @@ export default {
       institutionList({
         pageSize: 999,
         pageNum: 1,
+        status:1
       }).then((res) => {
         this.institutionList = res.rows;
         this.formList[0].options = this.institutionList;

Некоторые файлы не были показаны из-за большого количества измененных файлов