Pārlūkot izejas kodu

更新 代理信息

wzh 3 gadi atpakaļ
vecāks
revīzija
514994bf11
2 mainītis faili ar 154 papildinājumiem un 2 dzēšanām
  1. 2 2
      src/apis/fetch.js
  2. 152 0
      src/views/agencyManage/agencyCompanyDetail.vue

+ 2 - 2
src/apis/fetch.js

@@ -264,12 +264,12 @@ export default {
 
   // 代理子账户列表
   getAgencySubAccountList(data) {
-    return $http("/proxy/account/list", data);
+    return $http("/proxy/detail/account/list", data);
   },
 
   // 添加代理子账户
   addAgencySubAccount(data) {
-    return $http("/proxy/account/add", data);
+    return $http("/proxy/detail/account/add", data);
   },
 
   // 获取货主公司列表

+ 152 - 0
src/views/agencyManage/agencyCompanyDetail.vue

@@ -17,6 +17,87 @@
     <div class="normal-label">联系人手机号</div>
     <div class="show-input">{{ contactPhone }}</div>
   </div>
+  <div class="container-title">子账号信息</div>
+  <div class="line-container-p24">
+    <div style="display: flex; justify-content: space-between">
+      <div style="display: flex">
+        <el-input
+          placeholder="请输入代理子账户/手机号"
+          prefix-icon="el-icon-search"
+          v-model="term"
+          clearable
+          style="height: 32px; width: 330px; line-height: 32px"
+        ></el-input>
+        <div class="seach-btn" @click="getAgencySubAccountList">查询</div>
+      </div>
+      <div class="cargo-owner-add" @click="dialogFormVisible = true">
+        添加代理子账户
+      </div>
+      <el-dialog
+        title="添加代理子账户"
+        v-model="dialogFormVisible"
+        @closed="resetForm"
+      >
+        <template v-slot:default>
+          <el-form
+            :model="ruleForm"
+            :rules="rules"
+            ref="form"
+            label-width="110px"
+            label-position="left"
+          >
+            <el-form-item prop="name" label="姓名">
+              <el-input style="width: 280px" v-model="ruleForm.name"></el-input>
+            </el-form-item>
+            <el-form-item prop="phone" label="手机号">
+              <el-input
+                style="width: 280px"
+                v-model="ruleForm.phone"
+              ></el-input>
+            </el-form-item>
+          </el-form>
+        </template>
+        <template v-slot:footer>
+          <div class="dialog-footer">
+            <el-button @click="resetForm">取 消</el-button>
+            <el-button type="primary" @click="addAgencySubAccount(ruleForm)">
+              确 定
+            </el-button>
+          </div>
+        </template>
+      </el-dialog>
+    </div>
+    <div style="margin-top: 24px">
+      <el-table :data="tableData" stripe style="width: 100%">
+        <el-table-column
+          type="index"
+          label="序号"
+          min-width="80"
+          align="center"
+        ></el-table-column>
+        <el-table-column
+          prop="userName"
+          label="代理子账户名称"
+          min-width="120"
+          align="center"
+        ></el-table-column>
+        <el-table-column
+          prop="phone"
+          label="手机号"
+          min-width="160"
+          align="center"
+        ></el-table-column>
+      </el-table>
+      <div style="width: 100%; text-align: right; margin-top: 43px">
+        <el-pagination
+          background
+          layout="prev, pager, next"
+          :total="total"
+          @current-change="pageChange"
+        ></el-pagination>
+      </div>
+    </div>
+  </div>
   <div class="container-title">货主信息</div>
   <div class="line-container-p24">
     <div style="display: flex; justify-content: space-between">
@@ -117,6 +198,76 @@ import api from "../../apis/fetch";
 import { subTimeStr } from "../../utils/utils";
 
 const route = useRoute();
+let dialogFormVisible = ref(false);
+let form = ref(null);
+let ruleForm = ref({
+  name: "",
+  phone: "",
+});
+async function resetForm() {
+  dialogFormVisible.value = false;
+  form.value.resetFields();
+}
+const rules = ref({
+  name: [{ required: true, message: "请填写代理子账户名称", trigger: "blur" }],
+  phone: [
+    { required: true, message: "请填写手机号", trigger: "blur" },
+    { min: 11, max: 11, message: "请正确填写手机号", trigger: "blur" },
+  ],
+});
+async function addAgencySubAccount() {
+  form.value.validate(async (valid) => {
+    if (valid) {
+      let { name, phone } = ruleForm.value;
+      let res = await api.addAgencySubAccount({
+        proxyId: route.query.id,
+        name,
+        phone,
+      });
+      console.log(res);
+      if (res.data.status == 0) {
+        ElNotification.success({
+          title: "添加成功",
+          duration: 0,
+          message: `${name}:${res.data.msg}`,
+          type: "success",
+        });
+        resetForm();
+        getAgencySubAccountList();
+      } else {
+        ElNotification.error({
+          title: "失败",
+          duration: 3000,
+          message: res.data.msg,
+        });
+      }
+    } else {
+      return false;
+    }
+  });
+}
+let currentPage = ref(1);
+let term = ref("");
+let tableData = ref([]);
+let total = ref(0);
+async function getAgencySubAccountList() {
+  tableData.value = [];
+  let res = await api.getAgencySubAccountList({
+    currentPage: currentPage.value,
+    size: 10,
+    term: term.value,
+    proxyId: route.query.id,
+  });
+  if (res.data.status == 0) {
+    tableData.value = res.data.result;
+    total.value = res.data.total;
+  }
+}
+
+function pageChange(e) {
+  currentPage.value = e;
+  getAgencySubAccountList();
+}
 let proxyName = ref();
 let contactName = ref();
 let contactPhone = ref();
@@ -215,6 +366,7 @@ async function relateCargoAgency() {
 onMounted(() => {
   getAgencyCompanyDetail();
   getCargoOwnerCompanyByAgencyCompany();
+  getAgencySubAccountList();
 });
 </script>
 <style scoped>