Selaa lähdekoodia

Merge branch 'test' into pansl

pansl 1 vuosi sitten
vanhempi
commit
23e2e57ea7

+ 7 - 0
src/api/dataStatistics/roiStatistical/index.ts

@@ -11,3 +11,10 @@ export function statisticRoiList(params?: object) {
 export function statisticRoiListTotal(params: object) {
   return http.get('/statistic/roi/listTotal', params);
 }
+
+/**
+ * 更新投入产出
+ */
+export function statisticRoiUpdateCostmoney(params: object) {
+  return http.post('/statistic/roi/updateCostmoney', params);
+}

+ 30 - 2
src/views/dataStatistics/roiStatistical/index.vue

@@ -75,7 +75,9 @@
           <template #default="scope">
             <div class="wrapper">
               <div>
-                <span>{{ scope.row.cost_money }}</span>
+                <span v-if="!checkPermission('statistic.ROITJ.updateCostmoney')">{{ scope.row.cost_money }}</span>
+                <el-input v-else v-model.number="scope.row.cost_money" min="0" type="number"
+                  @blur="changeCostMoney(scope.row)" />
               </div>
             </div>
           </template>
@@ -235,8 +237,9 @@ import { shortcuts } from '@/utils/shortcuts';
 import { useRouter, useRoute } from 'vue-router';
 import { InfoFilled } from '@element-plus/icons-vue';
 import { useGetList } from '@/hook/curd/useGetList';
-import { statisticRoiListTotal } from '@/api/dataStatistics/roiStatistical/index';
+import { statisticRoiListTotal, statisticRoiUpdateCostmoney } from '@/api/dataStatistics/roiStatistical/index';
 import { titleObj } from "./excelTitle";
+import { checkPermission } from '@/directives/permission';
 import {
   channelMiniprogramUseList,
   channelPromotionsOptions,
@@ -266,6 +269,31 @@ const remoteMethod = (query: string, type: string,) => {
   }
 }
 
+const changeCostMoney = (row: object) => {
+  if (!checkPermission('statistic.ROITJ.updateCostmoney')) return;
+  ElMessageBox.confirm(
+    `确认修改此投放成本吗?`,
+    '提示',
+    {
+      confirmButtonText: '确定',
+      cancelButtonText: '取消',
+      type: 'warning',
+    }
+  )
+    .then((action) => {
+      console.log(action, row);
+      statisticRoiUpdateCostmoney({ id: row.id, cost_money: row.cost_money }).then(res => {
+        ElMessage.success(res.message)
+        search()
+      }).catch((e) => {
+        search()
+      })
+    })
+    .catch(() => {
+      search()
+    })
+}
+
 const initRemoteOption = (type: string, params?: object) => {
   switch (type) {
     case 'channelPromotions':