Эх сурвалжийг харах

多语言 && 卡清单操作日志 && 修改资费有效期

wxy 4 сар өмнө
parent
commit
b2d622b319

+ 6 - 0
src/api/path/renewalOrder.js

@@ -0,0 +1,6 @@
+import service from '../../utils/axios'
+
+// 续费订单信息
+export function RenewalOrderInformation(data) {
+    return service.post('/admin/platform/getTrafficOrderList', data)
+}

+ 19 - 21
src/i18n/index.js

@@ -8,31 +8,29 @@ import th from './th/index'
 
 
 
- 
 const langStore = useLangStore()
 
 export const i18n = createI18n({
-  globalInjection:true,
-  locale: langStore?.lang || lang,
-  messages: {
-    'zh-CN': zh,
-    'en-US': en,
-    'th-TH': th
-  }
+    globalInjection: true,
+    locale: (langStore ?.lang) || lang,
+    messages: {
+        'zh-CN': zh,
+        'en-US': en,
+        'th-TH': th
+    }
 })
 
 // 语言数组
-export const langList = [
-  {
-    label: '简体中文',
-    key: 'zh-CN'
-  },
-  {
-    label: 'English',
-    key: 'en-US'
-  },
-  {
-    label: 'แบบไทย',
-    key: 'th-TH'
-  }
+export const langList = [{
+        label: '简体中文',
+        key: 'zh-CN'
+    },
+    {
+        label: 'English',
+        key: 'en-US'
+    },
+    {
+        label: 'แบบไทย',
+        key: 'th-TH'
+    }
 ]

+ 4 - 0
src/i18n/zh/error.js

@@ -0,0 +1,4 @@
+export default {
+    Previous: '回到上一页',
+    notFound:'页面不存在'
+}

+ 1 - 0
src/i18n/zh/flowPool.js

@@ -50,4 +50,5 @@ export default {
     ActivatedName:'已激活/总卡数量',
     HaveBeenUsedName:'已使用/总流量',
     TimeName:'过期时间',
+    Waring:'预警'
 }

+ 17 - 0
src/i18n/zh/forewarning.js

@@ -0,0 +1,17 @@
+export default {
+    EarlyWarningTank:'预警池',
+    PoolEarlyWarning:'池预警',
+    clientWarning:'客户端·池预警设置',
+    TakeUpOf:'总用量占比',
+    PleaseEnter:'请输入',
+    PleaseSelect:'请选择',
+    reach:'达量预警',
+    ShutDown:'达量停机',
+    NetworkOutage:"达量断网",
+    ReminderTimes:'提醒次数',
+    TimesMonth:'次/月',
+    SingleCard:'客户端·单卡预警设置',
+    SingleCardUsage:'单卡用量预警',
+    ManagementSide:'管理端预警设置',
+    consumed:'池已用量预警'
+}

+ 6 - 1
src/i18n/zh/index.js

@@ -10,7 +10,9 @@ import lotCard from './lotCard'
 import tariffManagement from './tariffManagement'
 import flowPool from './flowPool'
 import financialManagement from './financialManagement'
-
+import error from './error'
+import setting from './setting'
+import forewarning from './forewarning'
 export default {
   login,
   global,
@@ -24,4 +26,7 @@ export default {
   tariffManagement,
   flowPool,
   financialManagement,
+  error,
+  setting,
+  forewarning
 }

+ 6 - 0
src/i18n/zh/setting.js

@@ -0,0 +1,6 @@
+export default {
+    editSuccess:'修改成功',
+    addSuccess:'添加成功',
+    ControlsSuccess:'操作成功',
+    deleteSuccess:'删除成功',
+}

+ 6 - 4
src/views/exception/errors.vue

@@ -10,17 +10,19 @@
 
 <script  setup>
 import { useRoute, useRouter } from 'vue-router'
-
+import {useI18n} from 'vue-i18n'
 const router = useRouter()
 const route = useRoute()
-
+const {t} = useI18n();
 const defaultObj = {
-  button_text: '回到上一页',
+  button_text: t('error.Previous'),
   error_code: 404,
-  error_two: '页面不存在',
+  error_two: t('error.notFound'),
   hasShowButton: true,
 }
 
+console.log(t('error.Previous'));
+
 const evBack = () => {
   //
   router.go(-1)

+ 4 - 0
src/views/financialManagement/accountBalance/index.vue

@@ -223,6 +223,10 @@
 import { ref, reactive, onMounted } from "vue";
 import { Message } from "@arco-design/web-vue";
 import { getWalletCard } from "@/api/finance.js";
+import {useI18n} from 'vue-i18n'
+
+const { t } = useI18n()
+
 
 onMounted(() => {
   getWalletCardFc();

+ 4 - 2
src/views/flowPool/components/add.vue

@@ -8,7 +8,9 @@ import {
 } from "@/api/path/flowPool.api"
 import {tariffList} from "@/api/path/tariffManagement.api"
 import {Getdictionary} from '@/mixins/index.js'
+import {useI18n} from 'vue-i18n'
 
+const { t } = useI18n()
 const props = defineProps({
   modelValue: {
     type: Boolean,
@@ -75,7 +77,7 @@ const handleSubmit = ({values, errors}) => {
 
         if (code == 200) {
           Message.success({
-            content: "修改成功!",
+            content: t('setting.editSuccess'),
             duration: 2000,
           })
           resetForm()
@@ -85,7 +87,7 @@ const handleSubmit = ({values, errors}) => {
         const {code, data} = await addTrafficPool(formState.value)
         if (code == 200) {
           Message.success({
-            content: "添加成功!",
+            content: t('setting.addSuccess'),
             duration: 2000,
           })
           resetForm()

+ 38 - 36
src/views/flowPool/components/forewarning.vue

@@ -3,7 +3,9 @@ import { ref, onMounted, toRefs, toRef, watch, watchEffect } from 'vue';
 import { Message } from "@arco-design/web-vue";
 import { Getdictionary } from '@/mixins/index.js'
 import { createWarning, updateWarning } from '@/api/path/flowPool.api.js'
+import {useI18n} from 'vue-i18n'
 
+const { t } = useI18n()
 const props = defineProps({
   modelValue: {
     type: Boolean,
@@ -103,7 +105,7 @@ const handleSubmit = ({ values, error }) => {
 
       let res = formWarning.value.id ? await updateWarning(formWarning.value) : await createWarning(formWarning.value)
       if (res.code === 200) {
-        Message.success('操作成功')
+        Message.success(t('setting.ControlsSuccess'))
         emit('update:modelValue', false)
         emit('submit', true)
         resetForm()
@@ -144,95 +146,95 @@ onMounted(() => {
 </script>
 
 <template>
-  <a-modal title="预警池" v-model:visible="modelValue" @cancel="resetForm" centered :maskClosable="false" :footer="null"
+  <a-modal :title="$t('forewarning.forewarning')" v-model:visible="modelValue" @cancel="resetForm" centered :maskClosable="false" :footer="null"
     width="55%">
     <a-tabs>
-      <a-tab-pane key="1" title="池预警">
+      <a-tab-pane key="1" :title="$t('forewarning.PoolEarlyWarning')">
         <a-form :model="formWarning" direction="inline" ref="formRef" :rules="rules">
           <div class="form-pool-tit">
             <div class="pool-icon"></div>
-            客户端·池预警设置
+             {{ $t('forewarning.clientWarning') }}
           </div>
-          <a-form-item field="clientPooPc" tooltip="请输入" label="总用量占比">
-            <a-input-number v-model="formWarning.clientPooPc" :style="{ width: '320px' }" placeholder="请输入" allow-clear
+          <a-form-item field="clientPooPc"  :label="$t('forewarning.TakeUpOf') ">
+            <a-input-number v-model="formWarning.clientPooPc" :style="{ width: '320px' }" :placeholder="$t('forewarning.PleaseEnter')" allow-clear
               hide-button>
               <template #suffix>
                 %
               </template>
             </a-input-number>
-            <a-checkbox v-model="formWarning.clientPooPcWarnSwitch">达量预警</a-checkbox>
+            <a-checkbox v-model="formWarning.clientPooPcWarnSwitch">{{ $t('forewarning.reach') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="clientPooPcStop" label="达量停机">
-            <a-select v-model="formWarning.clientPooPcStop" placeholder="请选择" :style="{ width: '320px' }" allow-clear>
+          <a-form-item field="clientPooPcStop" :label="$t('forewarning.ShutDown')">
+            <a-select v-model="formWarning.clientPooPcStop" :placeholder="$t('forewarning.PleaseEnter')" :style="{ width: '320px' }" allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.clientPooPcStopSwitch">达量停机</a-checkbox>
+            <a-checkbox v-model="formWarning.clientPooPcStopSwitch">{{ $t('forewarning.ShutDown') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="clientArriveStopNetwork" label="达量断网">
-            <a-select v-model="formWarning.clientPooPcStopNetwork" placeholder="请选择" :style="{ width: '320px' }"
+          <a-form-item field="clientArriveStopNetwork" :label="$t('forewarning.NetworkOutage')">
+            <a-select v-model="formWarning.clientPooPcStopNetwork" :placeholder="$t('forewarning.PleaseSelect')"  :style="{ width: '320px' }"
               allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.clientPooPcStopNetworkSwitch">达量断网</a-checkbox>
+            <a-checkbox v-model="formWarning.clientPooPcStopNetworkSwitch">{{ $t('forewarning.NetworkOutage') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="clientNotifyNumber" label="提醒次数">
-            <a-input-number v-model="formWarning.clientNotifyNumber" :style="{ width: '320px' }" placeholder="请输入"
+          <a-form-item field="clientNotifyNumber" :label="$t('forewarning.ReminderTimes')">
+            <a-input-number v-model="formWarning.clientNotifyNumber" :style="{ width: '320px' }" :placeholder="$t('forewarning.PleaseEnter')"
               allow-clear hide-button>
               <template #suffix>
-                次/月
+                {{ $t('forewarning.TimesMonth') }}
               </template>
             </a-input-number>
           </a-form-item>
           <div class="form-pool-tit">
             <div class="pool-icon"></div>
-            客户端·单卡预警设置
+            {{ $t('forewarning.SingleCard') }}
           </div>
-          <a-form-item field="clientSingleCardWarn" tooltip="请输入" label="单卡用量预警">
-            <a-input-number v-model="formWarning.clientSingleCardWarn" :style="{ width: '320px' }" placeholder="请输入"
+          <a-form-item field="clientSingleCardWarn"  :label="$t('forewarning.SingleCardUsage')">
+            <a-input-number v-model="formWarning.clientSingleCardWarn" :style="{ width: '320px' }" :placeholder="$t('forewarning.PleaseEnter')"
               allow-clear hide-button>
             </a-input-number>
-            <a-checkbox v-model="formWarning.clientSingleCardWarnSwitch">达量预警</a-checkbox>
+            <a-checkbox v-model="formWarning.clientSingleCardWarnSwitch">{{ $t('forewarning.reach') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="clientSingleCardWarnStop" label="达量停机">
-            <a-select v-model="formWarning.clientSingleCardWarnStop" placeholder="请选择" :style="{ width: '320px' }"
+          <a-form-item field="clientSingleCardWarnStop" :label="$t('forewarning.ShutDown')">
+            <a-select v-model="formWarning.clientSingleCardWarnStop" :placeholder="$t('forewarning.PleaseSelect')" :style="{ width: '320px' }"
               allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.clientSingleCardWarnStopSwitch">达量停机</a-checkbox>
+            <a-checkbox v-model="formWarning.clientSingleCardWarnStopSwitch">{{$t('forewarning.ShutDown')}}</a-checkbox>
           </a-form-item>
-          <a-form-item field="clientSingleCardWarnStopNetwork" label="达量断网">
-            <a-select v-model="formWarning.clientSingleCardWarnStopNetwork" placeholder="请选择"
+          <a-form-item field="clientSingleCardWarnStopNetwork" :label="$t('forewarning.NetworkOutage')">
+            <a-select v-model="formWarning.clientSingleCardWarnStopNetwork" :placeholder="$t('forewarning.PleaseSelect')"
               :style="{ width: '320px' }" allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.clientSingleCardWarnStopNetworkSwitch">达量断网</a-checkbox>
+            <a-checkbox v-model="formWarning.clientSingleCardWarnStopNetworkSwitch">{{$t('forewarning.NetworkOutage')}}</a-checkbox>
           </a-form-item>
           <div class="form-pool-tit">
             <div class="pool-icon"></div>
-            管理端预警设置
+            {{ $t('forewarning.ManagementSide') }}
           </div>
-          <a-form-item field="manageWarn" tooltip="请输入" label="池已用量预警">
-            <a-input-number v-model="formWarning.manageWarn" :style="{ width: '320px' }" placeholder="请输入" allow-clear
+          <a-form-item field="manageWarn"  :label="$t('forewarning.consumed')">
+            <a-input-number v-model="formWarning.manageWarn" :style="{ width: '320px' }" :placeholder="$t('forewarning.PleaseEnter')" allow-clear
               hide-button>
               <template #suffix>
                 %
               </template>
             </a-input-number>
-            <a-checkbox v-model="formWarning.manageWarnSwitch">达量预警</a-checkbox>
+            <a-checkbox v-model="formWarning.manageWarnSwitch">{{ $t('forewarning.reach') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="manageWarnSwitchstop" label="达量停机">
-            <a-select v-model="formWarning.manageWarnSwitchStop" placeholder="请选择" :style="{ width: '320px' }"
+          <a-form-item field="manageWarnSwitchstop" :label="$t('forewarning.ShutDown')">
+            <a-select v-model="formWarning.manageWarnSwitchStop" :placeholder="$t('forewarning.PleaseSelect')" :style="{ width: '320px' }"
               allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.manageWarnSwitchStopSwitch">达量停机</a-checkbox>
+            <a-checkbox v-model="formWarning.manageWarnSwitchStopSwitch">{{ $t('forewarning.ShutDown') }}</a-checkbox>
           </a-form-item>
-          <a-form-item field="manageWarnStopNetwork" label="达量断网">
-            <a-select v-model="formWarning.manageWarnStopNetwork" placeholder="请选择" :style="{ width: '320px' }"
+          <a-form-item field="manageWarnStopNetwork" :label="$t('forewarning.NetworkOutage')">
+            <a-select v-model="formWarning.manageWarnStopNetwork" :placeholder="$t('forewarning.PleaseSelect')" :style="{ width: '320px' }"
               allow-clear>
               <a-option v-for="item in earlyList" :key="item.value" :value="item.value" :label="item.label" />
             </a-select>
-            <a-checkbox v-model="formWarning.manageWarnStopNetworkSwitch">达量断网</a-checkbox>
+            <a-checkbox v-model="formWarning.manageWarnStopNetworkSwitch">{{ $t('forewarning.NetworkOutage') }}</a-checkbox>
           </a-form-item>
           <a-form-item>
             <a-button type="primary" @click="handleSubmit" style="margin-right: 10px;">{{

+ 2 - 2
src/views/flowPool/index.vue

@@ -49,7 +49,7 @@
             $t('form.Edit')
           }}</a>
         <a class="a-link" href="javascript:;" style="margin-right: 1rem" @click="handelForewring(record)"
-          v-if="role == 1">预警</a>
+          v-if="role == 1">{{ $t('flowPool.Waring') }}</a>
         <!-- 删除 -->
         <a-popconfirm :content="$t('form.Delete')" :ok-text="$t('form.Confirm')" :cancel-text="$t('form.Cancel')"
           @ok="handleDel(record.id)">
@@ -154,7 +154,7 @@ const handleDel = async (id) => {
   const { code } = await deleteTrafficPool({ id })
   if (code == 200) {
     Message.success({
-      content: "删除成功!",
+      content: t('setting.deleteSuccess'),
       duration: 2000,
     })
     intData()

+ 2 - 2
src/views/flowPool/rearFlowPool/index.vue

@@ -89,7 +89,7 @@
           style="margin-right: 1rem"
           @click="handelForewring(record)"
           v-if="role == 1"
-          >预警</a
+          >{{ $t('flowPool.Waring') }}</a
         >
         <!-- 删除 -->
         <a-popconfirm
@@ -204,7 +204,7 @@ const handleDel = async (id) => {
   const { code } = await deleteTrafficPool({ id });
   if (code == 200) {
     Message.success({
-      content: "删除成功!",
+      content: t('setting.deleteSuccess'),
       duration: 2000,
     });
     intData();

+ 29 - 0
src/views/lotCard/cardList/add.vue

@@ -0,0 +1,29 @@
+<template>
+    <a-modal v-model:visible="modelValue" width="800px" title="添加" @cancel="cancel" @ok="submitStatus" okText="确认"
+        cancelText="取消">
+    </a-modal>
+</template>
+
+<script setup>
+import { ref, defineProps, toRef, defineEmits,watch} from 'vue';
+import { Message } from '@arco-design/web-vue';
+const props = defineProps({
+    modelValue: {
+        type: Boolean,
+        default: false
+    },
+})
+const modelValue = toRef(props, 'modelValue')
+const emit = defineEmits(['update:modelValue', 'submit'])
+
+const cancel = ()=>{
+    emit('update:modelValue', false)
+}
+// 确定
+const submitStatus = async () => {
+
+}
+
+</script>
+<style scoped>
+</style>

+ 13 - 1
src/views/lotCard/cardList/index.vue

@@ -36,6 +36,12 @@
         </a-form-item>
       </a-form>
     </div>
+    
+    <div class="top-actions">
+      <a-space>
+        <a-button type="primary" @click="showAdd=true">添加</a-button>
+      </a-space>
+    </div>
 
     <a-table row-key="iccid" :data="dataSource" :columns="columns" :pagination="pagination" :scroll="{ x: 'auto' }"
       @page-change="evChangePage">
@@ -55,7 +61,7 @@
     </a-table>
     <!-- 查看流量消耗 -->
     <trafficUseDialog ref="trafficUseDialogRef" @submit="intData()" />
-
+    <Add v-model="showAdd"></Add>
 
   </div>
 </template>
@@ -66,6 +72,7 @@ import { columns } from "./config";
 import { cardInfoList } from "@/api/path/lotCard.api"
 import trafficUseDialog from "./trafficUseDialog.vue";
 import { Getdictionary } from '@/mixins/index.js'
+import Add from './add.vue'
 const { proxy } = getCurrentInstance()
 const formRef = ref()
 const searchForm = ref({
@@ -81,6 +88,7 @@ const pagination = ref({
   pageSize: 10,
   current: 1,
 })
+const showAdd = ref(false)
 
 const trafficUseDialogRef = ref()
 
@@ -167,6 +175,10 @@ onMounted(() => {
   margin-bottom: 20px;
 }
 
+.top-actions {
+  margin-bottom: 20px;
+}
+
 .container {
   .head-title {
     display: flex;

+ 0 - 147
src/views/lotCard/cardList/issuedDialog.vue

@@ -1,147 +0,0 @@
-<template>
-    <a-modal width="70%" :visible="visible" :title="$t('lotCard.titleIssued')" :hide-cancel='true'
-        :ok-text="$t('lotCard.close')" @ok="handleSubmit" @cancel="handleCancel">
-        <!-- 搜索条件区 -->
-        <div class="search-section">
-            <a-form :model="formData" ref="formRef" layout="inline">
-                <a-form-item field="iccid" :label="$t('lotCard.iccid')" :validate-trigger="['change', 'input', 'blur']"
-                    :rules="[{ required: true, message: $t('lotCard.please') + $t('lotCard.iccid') }]">
-                    <a-input v-model="formData.iccid" :placeholder="$t('lotCard.please') + $t('lotCard.iccid')"
-                        allow-clear />
-                </a-form-item>
-                <a-form-item field="hImsi" :label="$t('lotCard.himsi')">
-                    <a-input v-model="formData.hImsi" :placeholder="$t('lotCard.please') + $t('lotCard.himsi')"
-                        allow-clear />
-                </a-form-item>
-                <a-form-item>
-                    <a-space>
-                        <a-button type="primary" @click="handleSearch">{{ $t('form.Search') }}</a-button>
-                        <a-button @click="resetSearch">{{ $t('form.Reset') }}</a-button>
-                    </a-space>
-                </a-form-item>
-            </a-form>
-        </div>
-        <a-table :data="dataSource" :columns="columns" :scroll="{ x: 'auto' }" @page-change="evChangePage">
-            <template #roleList="{ record }">
-                <a-tag v-for="item in record.roleList" :key="item.id" style="margin:0 0 2px 4px;">{{ item.name
-                    }}</a-tag>
-            </template>
-            <template #state="{ record }">
-                <a-switch v-model="record.state" disabled style="pointer-events: none" checked-value="1"
-                    unchecked-value="0" />
-            </template>
-            <template #id="{ record }">
-                <a href="javascript:;" class="a-link" @click="evIssuedDialog(record.id)">{{ $t('lotCard.trafficUse')
-                    }}</a>
-            </template>
-
-        </a-table>
-    </a-modal>
-</template>
-<script setup>
-import { onMounted, ref, getCurrentInstance } from "vue";
-import { columns } from "../../system/user/config";
-import { Message, Notification } from '@arco-design/web-vue'
-import { userList, systemFindRoleList } from '@/api/path/system.api'
-import { cardIssue } from '@/api/path/lotCard.api'
-
-
-const props = defineProps({
-});
-
-const emit = defineEmits(['submit']);
-
-const { proxy } = getCurrentInstance()
-const formRef = ref()
-const formData = ref({
-    "iccid": "",
-    "imsi": "454120387374989",
-});
-const tableList = ref([])
-
-const dataSource = ref([]);
-const pagination = ref({
-    total: 0,
-    pageSize: 10,
-    current: 1,
-})
-
-const visible = ref(false)
-
-const open = (data) => {
-    if (data.length == 0) {
-        return
-    }
-    visible.value = true
-    tableList.value = data
-    intData()
-}
-
-const intData = async () => {
-    const param = {
-        current: pagination.value.current,
-        size: pagination.value.pageSize,
-        ...formData.value
-    }
-    const { data } = await userList(param)
-    const { data: roleList } = await systemFindRoleList({})
-    dataSource.value = (data.records || []).map(item => {
-        item.roleList = roleList.filter(cItem => {
-            return item.roleIds.includes(cItem.id)
-        })
-        return item
-    })
-    pagination.value.total = data.total
-}
-
-const evChangePage = (page) => {
-    pagination.value.current = page
-}
-
-
-
-
-
-const resetSearch = () => {
-    proxy.$refs.formRef.resetFields()
-}
-
-const handleSearch = () => {
-    formRef.value.validate((errors) => {
-        if (!errors) {
-            intData()
-        }
-    });
-}
-
-const handleSubmit = () => {
-    emit('submit', { ...formData });
-    visible.value = false
-};
-
-const handleCancel = () => {
-    visible.value = false
-};
-
-// 下发用户
-const evIssuedDialog = async (issueUserId) => {
-    const param = {
-        issueUserId,
-        iccid: tableList.value
-    }
-    const { code, data } = await cardIssue(param)
-    if (code == 200) {
-        Message.success({
-            content: data,
-            duration: 2000,
-        })
-    }
-};
-
-
-
-
-defineExpose({ open })
-
-
-</script>

+ 19 - 6
src/views/lotCard/cardList/trafficUseDialog.vue

@@ -122,12 +122,13 @@
             <a-table :columns="columnsAmount" :data="dataAmount" :scroll="{ x: 'auto' }" :pagination="false" />
           </a-tab-pane>
           <a-tab-pane key="6" title="操作记录">
-            <a-table :columns="columnsOperation" :data="dataOperation" :scroll="{ x: 'auto' }" />
+            <a-table :columns="columnsOperation" :data="dataOperation" :scroll="{ x: 'auto' }"
+              @page-change="evChangePage" :pagination="pageData" />
           </a-tab-pane>
         </a-tabs>
       </a-col>
     </a-row>
-
+  
     <template #footer>
       <div class="footer_button">
         <!-- <a-button type="primary" status="warning">同步卡信息 V</a-button> -->
@@ -153,6 +154,11 @@ const visible = ref(false)
 const Card_info = ref({})
 const dataPackage = ref()
 const dataSource = ref([]);
+const pageData = ref({
+  total: 0,
+  size: 10,
+  current: 1,
+})
 
 // 图表插件
 const option = ref({
@@ -360,6 +366,7 @@ const open = (data) => {
       dataTotal: tatal
     }
   })
+  optionsRecordSetting()
   intData()
   visible.value = true
 }
@@ -449,9 +456,18 @@ const initChart = () => {
   })
 }
 
+const evChangePage = () => {
+  pageData.value.current = page
+  optionsRecordSetting()
+}
+
 // 操作日志
 const optionsRecordSetting = async () => {
-  let res = await OperationRecord({ current: 1, size: 9999 })
+  let res = await OperationRecord({
+    current: pageData.value.current,
+    size: pageData.value.size,
+    iccid:Card_info.value.iccid
+  })
   let res1 = await Getdictionary('source')
   dataOperation.value = res.data.records.map(res => {
     return {
@@ -464,9 +480,6 @@ const optionsRecordSetting = async () => {
 defineExpose({ open })
 
 
-onMounted(() => {
-  optionsRecordSetting()
-})
 </script>
 
 <style scoped lang="less">

+ 1 - 1
src/views/order/BuyCard/index.vue

@@ -280,7 +280,7 @@ const handelPriceing = async () => {
 }
 
 const openEndDate = (data) => {
-  formEndDate.value.id = data.id
+  formEndDate.value.id = data.trafficId
   formEndDate.value.endDate = data.endDate
   showEndDate.value = true;
 }

+ 38 - 43
src/views/order/RenewalOrder/index.vue

@@ -3,18 +3,13 @@
   <div class="silent-expire-alarm">
     <!-- 搜索条件区 -->
     <div class="search-section">
-      <Search/>
+      <Search />
     </div>
     <!-- 数据表格 -->
     <a-table :columns="columns" :data="tableData" :pagination="pagination" :scroll="{ x: '100%', y: '400px' }">
       <template #detail="{ record }">
         <a-button @click="openDetail(record)" type="text">订单详情</a-button>
       </template>
-      <template #orderStatus="{ record }">
-        <a-tag color="orangered" v-if="record.moderationStatus == 1">待审核</a-tag>
-        <a-tag color="arcoblue" v-if="record.moderationStatus == 2">审核通过</a-tag>
-        <a-tag color="#f53f3f" v-if="record.moderationStatus == 3">已驳回</a-tag>
-      </template>
       <template #id="{ record }">
         <div class="line_heis" @click="openDetail(record)">{{ record.id }}</div>
       </template>
@@ -31,6 +26,8 @@
 
 <script setup>
 import { ref, onMounted, toRefs } from 'vue';
+import { RenewalOrderInformation } from '@/api/path/renewalOrder'
+import { Getdictionary } from '@/mixins/index.js'
 import Status from './status.vue'
 import Search from '@/components/Search/index.vue'
 const state = ref({
@@ -54,22 +51,26 @@ const { searchForm, tableData, pagination, showDetail, showAudit, FormDataList }
 const columns = [
   { title: '序号', dataIndex: 'index', align: 'center', render: ({ rowIndex }) => rowIndex + 1 },
   {
-    title: '订单编号', slotName: 'id', ellipsis: true,
+    title: '订单编号', dataIndex: 'id', ellipsis: true,
     tooltip: true,
+    align: 'center',
   },
   {
     title: '客户名称', dataIndex: 'userName', ellipsis: true,
     tooltip: true,
+    align: 'center',
   },
-  { title: '审核状态', slotName: 'orderStatus', ellipsis: true },
   {
     title: '供应商名称', dataIndex: 'sourceName', ellipsis: true,
-    tooltip: true,
+    tooltip: true, align: 'center',
   },
-  { title: '资费', dataIndex: 'quantity', ellipsis: true },
-  { title: '卡号', dataIndex: 'period_of_silence', ellipsis: true },
-  { title: '订单金额', dataIndex: 'payment_amount', ellipsis: true },
-  { title: '操作', slotName: 'operate', align: 'center', ellipsis: true }
+  { title: '资费名称', dataIndex: 'trafficName', ellipsis: true, align: 'center', },
+  { title: '采购数量', dataIndex: 'quantity', ellipsis: true, align: 'center', },
+  { title: '创建时间', dataIndex: 'createdAt', ellipsis: true, align: 'center', },
+  { title: '有效期', dataIndex: 'endDate', ellipsis: true, align: 'center', },
+  { title: '原有效期', dataIndex: 'beforeEndDate', ellipsis: true, align: 'center', },
+  { title: '订单金额', dataIndex: 'payment_amount', ellipsis: true, align: 'center', },
+  // { title: '操作', slotName: 'operate', align: 'center', ellipsis: true, align: 'center', }
 ];
 
 // 查看订单详情
@@ -80,37 +81,31 @@ const openDetail = (item) => {
 
 // 列表-------------------------------------
 // 订单列表
-// const intData = async () => {
-//   const param = {
-//     current: pagination.value.current,
-//     size: pagination.value.size,
-//   }
-//   const one = await Getdictionary('source')
-//   const two = await Getdictionary('cardType')
-//   const tree = await Getdictionary('subscriptionRelationshipStatus')
-//   const tive = await Getdictionary('orderAuditStatus')
-//   cancelOrderList(param).then(res => {
-//     tableData.value = (res.data.records || []).map(item => {
-
-//       const sourceName = one.filter((item) => item.typeKey == enum_dict.SOURCE)?.find(val => item.source == val.value)?.label
-//       const cardTypeName = two.filter((item) => item.typeKey == enum_dict.CARD_TYPE)?.find(val => item.card_type == val.value)?.label
-//       const statusName = tree.filter((item) => item.typeKey == enum_dict.SUBSCRIPTION_RELATIONSHIP_STATUS)?.find(val => item.status == val.value)?.label
-//       const moderationStatusName = tive.filter((item) => item.typeKey == enum_dict.ORDER_AUDIT_STATUS)?.find(val => item.moderation_status == val.value)?.label
-
-//       return {
-//         ...item,
-//         moderationStatusName,
-//         statusName,
-//         cardTypeName,
-//         sourceName
-//       }
-//     });
-//     pagination.value.total = res.data.total;
-//   })
-
-// }
+const intData = async () => {
+  const param = {
+    current: pagination.value.current,
+    size: pagination.value.size,
+  }
+  const one = await Getdictionary('source')
+  const two = await Getdictionary('cardType')
+  const tree = await Getdictionary('subscriptionRelationshipStatus')
+  const tive = await Getdictionary('orderAuditStatus')
+  RenewalOrderInformation(param).then(res => {
+    tableData.value = (res.data.records || []).map(item => {
+      const sourceName = one.find(val => item.source == val.value)?.label
+      const cardTypeName = two.find(val => item.cardType == val.value)?.label
+      return {
+        ...item,
+        cardTypeName,
+        sourceName
+      }
+    });
+    pagination.value.total = res.data.total;
+  })
+
+}
 onMounted(() => {
-  // intData();
+  intData();
 })
 </script>
 

+ 4 - 4
src/views/tariffManagement/customer/NewCustomerForm.vue

@@ -188,9 +188,9 @@
             </a-input-number>
             <a-radio-group v-model="formData.arriveStopOperation" :options="reachList"></a-radio-group>
           </a-form-item>
-          <a-form-item field="arriveStop" label="达量断网" required
+          <a-form-item field="arriveNetwork" label="达量断网" required
                        validate-trigger="blur">
-            <a-input-number v-model="formData.arriveStop" :style="{ width: '320px' }"
+            <a-input-number v-model="formData.arriveNetwork" :style="{ width: '320px' }"
                             placeholder="请输入" allow-clear hide-button>
               <template #suffix>
                 %
@@ -292,6 +292,7 @@ const formData = ref({
   amountWarn: '',
   arriveWarn: '',
   arriveStop: '',
+  arriveNetwork:'',
   arriveStopOperation: '',
   arriveStopNetwork: '',
   warnPhone: '',
@@ -325,13 +326,12 @@ const rules = {
   warnSms: [{required: true, message: t('customer.warnSMSTemplateRequired')}],
   zip: [{required: true, message: t('customer.zipCodeRequired')}],
   taxRegistrationCertificate: [{required: true, message: t('customer.taxRegistrationCertificateRequired')}],
-  taxpayerQualification: [{required: true, message: t('customer.taxpayerQualificationRequired')}]
+  taxpayerQualification: [{required: true, message: t('customer.taxpayerQualificationRequired')}],
 };
 
 
 const handleSubmit = () => {
   formRef.value.validate(async (errors) => {
-    console.log('输出',formData.value);
     if (!errors) {
       return;
       let response;