Jelajahi Sumber

拍照优化+退款说明变更

En route 1 tahun lalu
induk
melakukan
0f809fed87

+ 5 - 5
package-lock.json

@@ -947,7 +947,7 @@
     },
     "async-validator": {
       "version": "1.8.5",
-      "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-1.8.5.tgz",
+      "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-1.8.5.tgz",
       "integrity": "sha512-tXBM+1m056MAX0E8TL2iCjg8WvSyXu0Zc8LNtYqrVeyoL3+esHRZ4SieE9fKQyyU09uONjnMEjrNBMqT0mbvmA==",
       "requires": {
         "babel-runtime": "6.x"
@@ -4443,7 +4443,7 @@
     },
     "deepmerge": {
       "version": "1.5.2",
-      "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz",
+      "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
       "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ=="
     },
     "default-user-agent": {
@@ -6914,7 +6914,7 @@
     },
     "image-conversion": {
       "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/image-conversion/-/image-conversion-2.1.1.tgz",
+      "resolved": "https://registry.npmmirror.com/image-conversion/-/image-conversion-2.1.1.tgz",
       "integrity": "sha512-hnMOmP7q2jxA+52FZ+wHNhg3fdFRlgfngsQH2JQHEQkafY7tj/8F15e6Rv/RxDegc872jvyaRHwMbkTZK1Cjbg=="
     },
     "image-webpack-loader": {
@@ -13689,7 +13689,7 @@
     },
     "resize-observer-polyfill": {
       "version": "1.5.1",
-      "resolved": "https://registry.npmmirror.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
+      "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz",
       "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg=="
     },
     "resolve": {
@@ -15367,7 +15367,7 @@
     },
     "throttle-debounce": {
       "version": "1.1.0",
-      "resolved": "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-1.1.0.tgz",
+      "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-1.1.0.tgz",
       "integrity": "sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg=="
     },
     "through": {

+ 2 - 0
src/common/compress.js

@@ -4,6 +4,7 @@ export const readImg = (file) => {
     const img = new Image()
     const reader = new FileReader()
     reader.onload = function (e) {
+      console.log("源大小:",file.size)
       img.src = e.target.result
     }
     reader.onerror = function (e) {
@@ -27,6 +28,7 @@ export const readImg = (file) => {
 * @param mh 触发压缩的图片最大高度限制
 */
 export const compressImg = (img, type, mx, mh) => {
+  console.log('压缩逻辑')
   return new Promise((resolve, reject) => {
     const canvas = document.createElement('canvas')
     const context = canvas.getContext('2d')

+ 5 - 3
src/common/uploadFile.js

@@ -1,5 +1,6 @@
 import request from '@/request'
-import { readImg, compressImg } from "./compress"
+// import { readImg, compressImg } from "./compress"
+import {compressAccurately} from 'image-conversion'
 export default {
     // 上传图片标识 0头像 1身份证 2题库 3指南指引图片 4广告图片 5身份证或学信网图片 6文件excel,word,zip等
     //file: 类似this.$refs.file.files[0]
@@ -15,8 +16,9 @@ export default {
             }
             //图片压缩
             if (file.type.indexOf("image") !== -1 && compressImgStatus) {
-                const img = await readImg(file)
-                file = await compressImg(img, file.type, 256, 256)
+                file = await compressAccurately(file, 30)
+                // const img = await readImg(file)
+                // file = await compressImg(img, file.type, 256, 256) 
             }
             request.getPolicy(datas).then(res => {
                 var ossToken = res.data.resultContent

+ 3 - 7
src/components/takePicture/index.vue

@@ -116,13 +116,9 @@ export default {
     photographSuccess(stream) {
       // 兼容webkit核心浏览器
       // --虚拟摄像头
-      // if (this.isVirtualCamera(stream)) {
-      //   return;
-      // }
-      // this.faceUrl = "";
-      // this.loading = false;
-      // this.isTaking = true;
-      // this.takePhotoModal = true;
+      if (this.isVirtualCamera(stream)) {
+        return;
+      }
       this.successOpen = true
       this.$nextTick(() => {
         const video = document.getElementById("video");

+ 1 - 1
src/components/videoCy/index.vue

@@ -711,7 +711,7 @@ export default {
         return;
       }
       let compareFaceData = await this.faceRecognition(photoUrl);
-      if (compareFaceData >= 80) {
+      if (compareFaceData >= 70) {
         this.HideVideo = false;
         this.postCoursePhotoRecord(false, photoUrl)
           .then(async res => {

+ 5 - 2
src/pages/person-center/my-info/index.vue

@@ -324,11 +324,12 @@ export default {
       var self = this;
       var file = self.$refs.file.files[0];
       if (file === undefined) {
-        self.$set(self.listData, "avatar", "");
+        self.$refs.file.value = "";
         return;
       }
       if (file.size > 0.3 * 1024 * 1024) {
         self.$message.error("图片不得大于300kb");
+        self.$refs.file.value = "";
         return;
       }
       var type = self.$refs.file.value
@@ -347,7 +348,9 @@ export default {
       }
       this.$upload.upload(file, 0).then(res => {
         self.listData.avatar = res;
-      });
+      }).finally(()=>{
+        self.$refs.file.value = "";
+      })
     },
     onProvince(data) {
       if (!data.code) {

+ 90 - 84
src/pages/person-center/my-order/index.vue

@@ -62,17 +62,17 @@
                     @click="refund(item.orderSn, items)"
                     v-if="
                       items.periodStatus !== 0 &&
-                        items.periodStatus !== 1 &&
-                        items.periodStatus !== 2 &&
-                        items.refundStatus === 0 &&
-                        (item.orderFrom === 2 || item.orderFrom === 3) &&
-                        (item.orderStatus === 1 ||
-                          item.orderStatus === 2 ||
-                          item.orderStatus === 3) &&
-                        (items.goodsType == '1' ||
-                          items.goodsType == '2' ||
-                          items.goodsType == '6') &&
-                        items.goodsPrice > 0
+                      items.periodStatus !== 1 &&
+                      items.periodStatus !== 2 &&
+                      items.refundStatus === 0 &&
+                      (item.orderFrom === 2 || item.orderFrom === 3) &&
+                      (item.orderStatus === 1 ||
+                        item.orderStatus === 2 ||
+                        item.orderStatus === 3) &&
+                      (items.goodsType == '1' ||
+                        items.goodsType == '2' ||
+                        items.goodsType == '6') &&
+                      items.goodsPrice > 0
                     "
                   >
                     申请退款
@@ -98,8 +98,8 @@
                 v-if="
                   (item.orderStatus === 0 &&
                     (item.orderFrom === 2 || item.orderFrom === 3)) ||
-                    ((item.orderStatus === -1 || item.orderStatus === -2) &&
-                      (item.orderFrom === 2 || item.orderFrom === 3))
+                  ((item.orderStatus === -1 || item.orderStatus === -2) &&
+                    (item.orderFrom === 2 || item.orderFrom === 3))
                 "
               >
                 <div class="btns">
@@ -108,7 +108,7 @@
                     class="btn"
                     v-if="
                       item.orderStatus === 0 &&
-                        (item.orderFrom === 2 || item.orderFrom === 3)
+                      (item.orderFrom === 2 || item.orderFrom === 3)
                     "
                     @click="pay(item)"
                   >
@@ -118,7 +118,7 @@
                     class="btn btn--nobg"
                     v-if="
                       item.orderStatus === 0 &&
-                        (item.orderFrom === 2 || item.orderFrom === 3)
+                      (item.orderFrom === 2 || item.orderFrom === 3)
                     "
                     @click="cancelOrder(item)"
                   >
@@ -128,7 +128,7 @@
                     class="btn btn--nobg"
                     v-if="
                       (item.orderStatus === -1 || item.orderStatus === -2) &&
-                        (item.orderFrom === 2 || item.orderFrom === 3)
+                      (item.orderFrom === 2 || item.orderFrom === 3)
                     "
                     @click="delOrder(item)"
                   >
@@ -158,13 +158,18 @@
               </div>
               <div class="refund-wrap">
                 <div class="btns">
-                  <template v-if="!item.wxpayRefundId"> 退款失败 </template>
-                  <template v-else>
+                  <template v-if="item.periodStatus == 3">
                     <div class="price-text">已退款</div>
                     <div class="price-number">
                       ¥{{ item.refundFee | formatPrice }}
                     </div>
                   </template>
+                  <template v-else-if="item.periodStatus >= 0">
+                    待审核
+                  </template>
+                  <template v-else-if="item.periodStatus < 0">
+                    审核不通过
+                  </template>
                 </div>
               </div>
             </template>
@@ -211,7 +216,7 @@
         >
           <el-form-item label="" prop="refundOptionsIndex">
             <el-select
-              style="width:360px"
+              style="width: 360px"
               v-model="ruleForm.refundOptionsIndex"
               placeholder="请选择退款原因"
             >
@@ -230,7 +235,7 @@
             ><el-input
               type="textarea"
               :rows="3"
-              style="width:360px"
+              style="width: 360px"
               v-model.trim="ruleForm.refundReason"
               placeholder="请输入退款原因"
             ></el-input></el-form-item
@@ -257,20 +262,20 @@ export default {
         { label: "报错专业/课程", value: 2 },
         { label: "班级未开班", value: 3 },
         { label: "培训/继教周期未到", value: 4 },
-        { label: "其他", value: 5 }
+        { label: "其他", value: 5 },
       ],
-      activeItem:{},
+      activeItem: {},
       ruleForm: {
         refundOptionsIndex: "",
-        refundReason: ""
+        refundReason: "",
       },
       rules: {
         refundOptionsIndex: [
-          { required: true, message: "选择退款原因", trigger: "change" }
+          { required: true, message: "选择退款原因", trigger: "change" },
         ],
         refundReason: [
-          { required: true, message: "输入退款原因", trigger: "blur" }
-        ]
+          { required: true, message: "输入退款原因", trigger: "blur" },
+        ],
       },
       visible: false,
       orderList: [],
@@ -278,7 +283,7 @@ export default {
       formData: {
         status: "0,1",
         pageNum: 1,
-        pageSize: 10
+        pageSize: 10,
       },
       total: 0,
       loading: null,
@@ -286,29 +291,29 @@ export default {
         {
           label: "待支付",
           count: 0,
-          name: "1"
+          name: "1",
         },
         {
           label: "已支付",
           count: 0,
-          name: "2"
+          name: "2",
         },
         {
           label: "已取消",
           count: 0,
-          name: "3"
+          name: "3",
         },
         {
           label: "已退款",
           count: 0,
-          name: "4"
-        }
-      ]
+          name: "4",
+        },
+      ],
     };
   },
   computed: {
-    periodStatusName: function() {
-      return function(val) {
+    periodStatusName: function () {
+      return function (val) {
         // ("审批状态 0 待审核 1初审通过 2复审通过待退款  -1初审不通过 -2复审不通过 3已退款")
         var status = "";
         switch (val) {
@@ -335,7 +340,7 @@ export default {
         }
         return status;
       };
-    }
+    },
   },
   mounted() {
     if (this.$route.query.state) {
@@ -347,7 +352,7 @@ export default {
   methods: {
     go(path) {
       this.$router.push({
-        path: path
+        path: path,
       });
     },
     getOrderNum() {
@@ -356,9 +361,9 @@ export default {
           status: "0,1",
           pageNum: 1,
           pageSize: 1,
-          orderStatus: "0"
+          orderStatus: "0",
         })
-        .then(res => {
+        .then((res) => {
           this.list[0].count = res.total;
         });
 
@@ -367,9 +372,9 @@ export default {
           status: "0,1",
           pageNum: 1,
           pageSize: 1,
-          orderStatus: "1,2,3,4"
+          orderStatus: "1,2,3,4",
         })
-        .then(res => {
+        .then((res) => {
           this.list[1].count = res.total;
         });
 
@@ -378,19 +383,19 @@ export default {
           status: "0,1",
           pageNum: 1,
           pageSize: 1,
-          orderStatus: "-1,-2"
+          orderStatus: "-1,-2",
         })
-        .then(res => {
+        .then((res) => {
           this.list[2].count = res.total;
         });
 
       this.$request
         .orderRefundList({
-          periodStatus:3,
+          periodStatus: 3,
           pageNum: 1,
-          pageSize: 1
+          pageSize: 1,
         })
-        .then(res => {
+        .then((res) => {
           this.list[3].count = res.total;
         })
         .catch(this.hideLoading);
@@ -435,12 +440,12 @@ export default {
         name: "支付",
         params: {
           total: item.payPrice,
-          orderSn: item.orderSn
-        }
+          orderSn: item.orderSn,
+        },
       });
     },
     submitRefund(formName) {
-      this.$refs[formName].validate(valid => {
+      this.$refs[formName].validate((valid) => {
         if (valid) {
           this.showLoading();
           this.$request
@@ -451,23 +456,24 @@ export default {
               applyReason:
                 this.ruleForm.refundOptionsIndex == 5
                   ? this.ruleForm.refundReason
-                  : this.refundOptions[this.ruleForm.refundOptionsIndex - 1].label
+                  : this.refundOptions[this.ruleForm.refundOptionsIndex - 1]
+                      .label,
             })
-            .then(res => {
-              this.visible = false
+            .then((res) => {
+              this.visible = false;
               this.hideLoading();
               this.$message({
                 type: "success",
-                message: "申请退款成功"
+                message: "申请退款成功",
               });
               this.getOrderNum();
               this.getOrderList();
             })
-            .catch(err => {
+            .catch((err) => {
               this.hideLoading();
               this.$message({
                 type: "warning",
-                message: err.msg
+                message: err.msg,
               });
             });
         } else {
@@ -480,7 +486,7 @@ export default {
       this.activeItem = item;
       this.ruleForm = {
         refundOptionsIndex: "",
-        refundReason: ""
+        refundReason: "",
       };
       this.visible = true;
       this.$nextTick(() => {
@@ -491,7 +497,7 @@ export default {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
         inputPattern: /^.{1,10000}$/,
-        inputErrorMessage: "请输入退款原因"
+        inputErrorMessage: "请输入退款原因",
       })
         .then(({ value }) => {
           this.showLoading();
@@ -500,22 +506,22 @@ export default {
               orderSn: orderSn,
               goodsId: item.goodsId,
               orderGoodsId: item.orderGoodsId,
-              applyReason: value
+              applyReason: value,
             })
-            .then(res => {
+            .then((res) => {
               this.hideLoading();
               this.$message({
                 type: "success",
-                message: "申请退款成功"
+                message: "申请退款成功",
               });
               this.getOrderNum();
               this.getOrderList();
             })
-            .catch(err => {
+            .catch((err) => {
               this.hideLoading();
               this.$message({
                 type: "warning",
-                message: err.msg
+                message: err.msg,
               });
             });
         })
@@ -529,30 +535,30 @@ export default {
         closeOnClickModal: false,
         closeOnPressEscape: false,
         distinguishCancelAndClose: false,
-        showClose: false
+        showClose: false,
       })
-        .then(_ => {
+        .then((_) => {
           this.showLoading();
           this.$request
             .eddOrder({ orderId: item.orderId, status: -1 })
-            .then(res => {
+            .then((res) => {
               this.$message({
                 type: "success",
-                message: "订单删除成功"
+                message: "订单删除成功",
               });
               this.hideLoading();
               this.getOrderNum();
               this.getOrderList();
             })
-            .catch(err => {
+            .catch((err) => {
               this.hideLoading();
               this.$message({
                 type: "warning",
-                message: err.msg
+                message: err.msg,
               });
             });
         })
-        .catch(err => {
+        .catch((err) => {
           this.hideLoading();
         });
     },
@@ -560,18 +566,18 @@ export default {
     orderRefundList() {
       this.showLoading();
       this.formData.orderStatus = "";
-      let data = JSON.parse(JSON.stringify(this.formData))
-      data.periodStatus = 3
+      let data = JSON.parse(JSON.stringify(this.formData));
+      data.periodStatus = 3;
       this.$request
         .orderRefundList(data)
-        .then(res => {
+        .then((res) => {
           this.hideLoading();
           this.orderList = res.rows;
           this.total = res.total;
         })
         .catch(this.hideLoading);
     },
- 
+
     /**
      * 取消订单
      */
@@ -582,30 +588,30 @@ export default {
         closeOnClickModal: false,
         closeOnPressEscape: false,
         distinguishCancelAndClose: false,
-        showClose: false
+        showClose: false,
       })
-        .then(_ => {
+        .then((_) => {
           this.showLoading();
           this.$request
             .eddOrder({ orderId: item.orderId, orderStatus: -1 })
-            .then(res => {
+            .then((res) => {
               this.hideLoading();
               this.getOrderNum();
               this.$message({
                 type: "success",
-                message: "订单取消成功"
+                message: "订单取消成功",
               });
               this.getOrderList();
             })
-            .catch(err => {
+            .catch((err) => {
               this.hideLoading();
               this.$message({
                 type: "warning",
-                message: err.msg
+                message: err.msg,
               });
             });
         })
-        .catch(_ => {});
+        .catch((_) => {});
     },
 
     showLoading(obj) {
@@ -614,7 +620,7 @@ export default {
         text: (obj && obj.text) || "loading",
         spinner: "el-icon-loading",
         background: "rgba(0, 0, 0, 0)",
-        target: document.querySelector(".my-order__body")
+        target: document.querySelector(".my-order__body"),
       });
     },
 
@@ -636,14 +642,14 @@ export default {
       }
       this.$request
         .getorderlists(this.formData)
-        .then(res => {
+        .then((res) => {
           this.orderList = res.rows;
           this.total = res.total;
           this.hideLoading();
         })
         .catch(this.hideLoading);
-    }
-  }
+    },
+  },
 };
 </script>