Explorar el Código

Merge branch 'master' of http://1.14.104.71:10880/root/ylrz_his_scrm_adminUI

caoliqin hace 1 día
padre
commit
916b915661

+ 8 - 0
src/api/qw/externalContact.js

@@ -297,3 +297,11 @@ export function delLossStatisticsExport(query) {
     params: query
   })
 }
+
+export function extChangeLevel(data) {
+  return request({
+    url: '/qw/externalContact/changeLevel',
+    method: 'post',
+    data: data
+  })
+}

+ 16 - 1
src/views/hisStore/components/productAfterSalesOrder.vue

@@ -46,6 +46,21 @@
                   {{afterSales.refundAmount}}
                 </span>
             </el-descriptions-item>
+            <el-descriptions-item label="实付金额"  >
+                <span v-if="order!=null && order.payMoney!=null">
+                  ¥{{ Number(order.payMoney).toFixed(2) }}
+                </span>
+                <span v-else-if="order!=null && order.payPrice!=null">
+                  ¥{{ Number(order.payPrice).toFixed(2) }}
+                </span>
+                <span v-else>¥0.00</span>
+            </el-descriptions-item>
+            <el-descriptions-item label="优惠券"  >
+                <span v-if="order!=null && order.couponPrice!=null">
+                  ¥{{ Number(order.couponPrice).toFixed(2) }}
+                </span>
+                <span v-else>¥0.00</span>
+            </el-descriptions-item>
             <el-descriptions-item label="运费"  >
                 <span v-if="order!=null">
                   {{order.payPostage}}
@@ -182,7 +197,7 @@
         <div style="margin-top: 12px; text-align: right;" v-if="order">
           <div>订单金额:¥{{ goodsTotal.toFixed(2) }}</div>
           <div>运费金额:¥{{ (order.payPostage || 0).toFixed(2) }}</div>
-          <div>实付金额:¥{{ (goodsTotal + (order.payPostage || 0)).toFixed(2) }}</div>
+          <div>实付金额:¥{{ Number(order.payMoney != null ? order.payMoney : (order.payPrice || 0)).toFixed(2) }}</div>
         </div>
         <div style="margin-top: 20px">
           <svg-icon icon-class="marker" style="color: #606266"></svg-icon>

+ 4 - 2
src/views/hisStore/components/productOrder.vue

@@ -350,9 +350,10 @@
               </span>
           </el-descriptions-item>
           <el-descriptions-item label="优惠券"  >
-              <span v-if="order!=null">
+              <span v-if="order!=null && order.couponPrice!=null">
                 ¥{{order.couponPrice.toFixed(2)}}
               </span>
+              <span v-else>¥0.00</span>
           </el-descriptions-item>
           <el-descriptions-item label="积分抵扣"  >
               <span v-if="order!=null">
@@ -408,9 +409,10 @@
               </el-button>
           </el-descriptions-item>
           <el-descriptions-item label="优惠券"  >
-              <span v-if="order!=null">
+              <span v-if="order!=null && order.couponPrice!=null">
                 ¥{{order.couponPrice.toFixed(2)}}
               </span>
+              <span v-else>¥0.00</span>
           </el-descriptions-item>
       </el-descriptions>
 

+ 6 - 0
src/views/hisStore/storeAfterSales/index.vue

@@ -183,6 +183,12 @@
       <el-table-column label="会员手机号" align="center" prop="userPhone" />
       <el-table-column label="产品名称" align="center" prop="productName" :show-overflow-tooltip="true" />
       <el-table-column label="退款金额" align="center" prop="refundAmount" />
+      <el-table-column label="优惠券" align="center" prop="couponPrice" width="100px">
+        <template slot-scope="scope">
+          <span v-if="scope.row.couponPrice!=null">{{ Number(scope.row.couponPrice).toFixed(2) }}</span>
+          <span v-else>0.00</span>
+        </template>
+      </el-table-column>
       <el-table-column label="退款类型" align="center" prop="refundType" />
        <el-table-column label="服务类型" align="center" prop="serviceType" >
           <template slot-scope="scope">

+ 7 - 0
src/views/hisStore/storeOrder/healthStoreList.vue

@@ -525,6 +525,12 @@
           <span v-if="scope.row.payDelivery!=null">{{ scope.row.payDelivery.toFixed(2) }}</span>
         </template>
       </el-table-column>
+      <el-table-column label="优惠券" align="center" prop="couponPrice" width="100px">
+        <template slot-scope="scope">
+          <span v-if="scope.row.couponPrice!=null">{{ scope.row.couponPrice.toFixed(2) }}</span>
+          <span v-else>0.00</span>
+        </template>
+      </el-table-column>
       <el-table-column label="成本价格" align="center" prop="cost" v-if="showFinanceTableField"/>
       <!-- <el-table-column label="结算价格" align="center" prop="fprice"  v-if="showFinanceTableField"/> -->
        <el-table-column label="实付金额" align="center" prop="payMoney"  v-if="showFinanceTableField"/>
@@ -1130,6 +1136,7 @@ export default {
         { key: 'userPhone', label: '收货人电话', checked: true },
         { key: 'userAddress', label: '详细地址', checked: true },
         { key: 'payMoney', label: '实收金额', checked: true },
+        { key: 'couponPrice', label: '优惠券金额', checked: true },
         { key: 'payRemain', label: '物流代收金额', checked: false },
         { key: 'createTime', label: '下单时间', checked: true },
         { key: 'payTime', label: '支付时间', checked: true },

+ 7 - 1
src/views/hisStore/storeOrder/index.vue

@@ -558,6 +558,12 @@
               <span v-if="scope.row.payPrice!=null">{{scope.row.payDelivery.toFixed(2)}}</span>
           </template>
       </el-table-column>
+      <el-table-column label="优惠券" align="center" prop="couponPrice" width="100px">
+          <template slot-scope="scope">
+              <span v-if="scope.row.couponPrice!=null">{{scope.row.couponPrice.toFixed(2)}}</span>
+              <span v-else>0.00</span>
+          </template>
+      </el-table-column>
       <el-table-column label="下单时间" align="center" prop="createTime" />
       <el-table-column label="审核时间" align="center" prop="auditTime" />
       <!-- <el-table-column label="支付状态" align="center" prop="paid" /> -->
@@ -1223,7 +1229,7 @@ export default {
         { key: 'payMoney', label: '实付金额', checked: true },
         { key: 'payDelivery', label: '物流代收金额', checked: true },
         { key: 'deductionPrice', label: '抵扣金额', checked: false },
-        { key: 'couponPrice', label: '优惠券金额', checked: false },
+        { key: 'couponPrice', label: '优惠券金额', checked: true },
         { key: 'createTime', label: '下单时间', checked: true },
         { key: 'payTime', label: '支付时间', checked: true },
         { key: 'deliverySendTime', label: '发货时间', checked: false },

+ 10 - 8
src/views/live/components/addBatchPublish.vue

@@ -5,19 +5,21 @@
                     {{ids.length}}个
                 </el-form-item>
                 <el-form-item label="优惠券开始时间" prop="startTime">
-                <el-date-picker clearable size="small" style="width: 200px"
+                <el-date-picker clearable size="small" style="width: 220px"
                     v-model="form.startTime"
-                    type="date"
-                    value-format="yyyy-MM-dd"
-                    placeholder="选择开始时间">
+                    type="datetime"
+                    format="yyyy-MM-dd HH时"
+                    value-format="yyyy-MM-dd HH:00:00"
+                    placeholder="选择开始时间(精确到小时)">
                 </el-date-picker>
                 </el-form-item>
                 <el-form-item label="优惠券结束时间" prop="limitTime">
-                <el-date-picker clearable size="small" style="width: 200px"
+                <el-date-picker clearable size="small" style="width: 220px"
                     v-model="form.limitTime"
-                    type="date"
-                    value-format="yyyy-MM-dd"
-                    placeholder="选择结束时间">
+                    type="datetime"
+                    format="yyyy-MM-dd HH时"
+                    value-format="yyyy-MM-dd HH:00:00"
+                    placeholder="选择结束时间(精确到小时)">
                 </el-date-picker>
                 </el-form-item>
                 <el-form-item label="优惠券领取数量" prop="totalCount">

+ 10 - 0
src/views/live/liveConfig/liveCoupon.vue

@@ -160,6 +160,16 @@
             label="优惠券有效时间"
             class-name="clickable-column"
           ></el-table-column>
+          <el-table-column
+            prop="limitTime"
+            label="领取结束时间"
+            width="160"
+            class-name="clickable-column"
+          >
+            <template slot-scope="scope">
+              <span>{{ scope.row.limitTime ? parseTime(scope.row.limitTime, '{y}-{m}-{d} {h}时') : '-' }}</span>
+            </template>
+          </el-table-column>
           <el-table-column
             prop="type"
             label="优惠券类型"

+ 10 - 8
src/views/live/liveCoupon/index.vue

@@ -197,19 +197,21 @@
           <el-input v-model="publishForm.title" disabled   />
         </el-form-item>
          <el-form-item label="优惠券开始时间" prop="startTime">
-          <el-date-picker clearable size="small" style="width: 200px"
+          <el-date-picker clearable size="small" style="width: 220px"
             v-model="publishForm.startTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择开始时间">
+            type="datetime"
+            format="yyyy-MM-dd HH时"
+            value-format="yyyy-MM-dd HH:00:00"
+            placeholder="选择开始时间(精确到小时)">
           </el-date-picker>
         </el-form-item>
         <el-form-item label="优惠券结束时间" prop="limitTime">
-          <el-date-picker clearable size="small" style="width: 200px"
+          <el-date-picker clearable size="small" style="width: 220px"
             v-model="publishForm.limitTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择结束时间">
+            type="datetime"
+            format="yyyy-MM-dd HH时"
+            value-format="yyyy-MM-dd HH:00:00"
+            placeholder="选择结束时间(精确到小时)">
           </el-date-picker>
         </el-form-item>
         <el-form-item label="优惠券领取数量" prop="totalCount">

+ 2 - 2
src/views/live/liveCouponIssue/index.vue

@@ -53,12 +53,12 @@
       <el-table-column label="优惠券" align="center" prop="couponName" />
       <el-table-column label="优惠券领取开始时间" align="center" prop="startTime" width="180">
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d} {h}时') }}</span>
         </template>
       </el-table-column>
       <el-table-column label="优惠券领取结束时间" align="center" prop="limitTime" width="180">
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.limitTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.limitTime, '{y}-{m}-{d} {h}时') }}</span>
         </template>
       </el-table-column>
       <el-table-column label="优惠券面值" align="center" prop="couponPrice" />

+ 106 - 1
src/views/qw/externalContact/index.vue

@@ -252,6 +252,28 @@
     </el-form>
 
     <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          @click="handleBatchUpdateLevel"
+          v-hasPermi="['qw:externalContact:changeLevel']"
+        >批量修改客户等级
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          @click="handleBatchUpdateLevelFilter"
+          v-hasPermi="['qw:externalContact:changeLevel']"
+        >批量修改客户等级(筛选条件)
+        </el-button>
+      </el-col>
 <!--      <el-col :span="1.5">-->
 <!--        <el-button-->
 <!--          type="warning"-->
@@ -470,11 +492,37 @@
       <externalContactInfo  ref="Details" />
     </el-dialog>
 
+    <el-dialog :title="ratingOpen.title" :visible.sync="ratingOpen.open" width="600px" append-to-body>
+      <div style="padding: 20px 0;">
+        <el-select v-model="ratingOpen.level" placeholder="客户等级" clearable size="small">
+          <el-option
+            v-for="dict in ratingType"
+            :key="dict.dictValue"
+            :label="dict.dictLabel"
+            :value="dict.dictValue"
+          />
+        </el-select>
+      </div>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="ratingSubmitForm()">确 定</el-button>
+        <el-button @click="ratingCancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
-import { listExternalContact, getExternalContact, delExternalContact, addExternalContact, updateExternalContact, exportExternalContact, exportUnionId } from "@/api/qw/externalContact";
+import {
+  listExternalContact,
+  getExternalContact,
+  delExternalContact,
+  addExternalContact,
+  updateExternalContact,
+  exportExternalContact,
+  exportUnionId,
+  extChangeLevel
+} from '@/api/qw/externalContact'
 import {getCompanyList} from "@/api/company/company";
 import {getAllUserlist} from "@/api/company/companyUser";
 import {getQwUserInfo} from "@/api/qw/qwUser";
@@ -489,6 +537,13 @@ export default {
   components: { PaginationMore,externalContactInfo },
   data() {
     return {
+      ratingOpen:{
+        open:false,
+        title:'',
+        level:null,
+        userIds:null,
+        filter:false,
+      },
       daterange: [],
       // 遮罩层
       loading: false,
@@ -667,6 +722,56 @@ export default {
     });
   },
   methods: {
+
+    handleBatchUpdateLevel(){
+
+      if (this.ids == null || this.ids == "") {
+        return this.$message('请选择需要添加备注的客户');
+      }
+
+      this.ratingOpen.open=true;
+      this.ratingOpen.title='批量修改客户等级'
+      this.ratingOpen.filter=false;
+    },
+
+    handleBatchUpdateLevelFilter(){
+      this.ratingOpen.open=true;
+      this.ratingOpen.title='批量修改客户等级'
+      this.ratingOpen.filter=true;
+    },
+
+    ratingSubmitForm(){
+
+      if (!this.ratingOpen.level){
+        return this.$message.error('请选择要修改的等级');
+      }
+
+      this.ratingOpen.userIds = this.ids;
+
+      let obj = JSON.parse(JSON.stringify(this.queryParams))
+      if(obj.tagIds !== null && obj.tagIds !== undefined && obj.tagIds !== ''){
+        obj.tagIds = obj.tagIds.split(",");
+      }
+      this.ratingOpen.param = obj;
+
+      extChangeLevel(this.ratingOpen).then(response => {
+        this.msgSuccess("修改完成");
+        this.getList();
+      }).finally(() => {
+        this.ratingCancel();
+      });
+
+    },
+
+
+    ratingCancel(){
+      this.ratingOpen={
+        open: false,
+        title: '',
+        level: null,
+        userIds: null
+      }
+    },
     handledetails(row){
       this.info.open=true;
       setTimeout(() => {