Ver Fonte

绑定标签&详情处理

haveyou há 1 ano atrás
pai
commit
095a9dc269

+ 70 - 29
src/views/recycleOrder/components/order-detail.vue

@@ -1,48 +1,89 @@
 <!-- 编辑弹窗 -->
 <template>
-    <ele-modal form :width="1460" v-model="visible" title="用户详情" @open="handleOpen"
-        :body-style="{ maxHeight: '84vh', position: 'relative', overflow: 'auto', background: '#f8f8f8', padding: '0' }"
-        position="center">
-        <userDetail :detail="orderDetail" />
+  <ele-modal
+    form
+    :width="1460"
+    v-model="visible"
+    title="用户详情"
+    @open="handleOpen"
+    :body-style="{
+      maxHeight: '84vh',
+      position: 'relative',
+      overflow: 'auto',
+      background: '#f8f8f8',
+      padding: '0'
+    }"
+    position="center"
+  >
+    <userDetail :detail="orderDetail" />
 
-        <template #footer>
-            <el-button @click="handleCancel" type="danger">关闭弹窗</el-button>
-        </template>
-    </ele-modal>
+    <template #footer>
+      <div style="display: flex; justify-content: space-between">
+        <div style="margin-left: 10px"></div>
+        <el-button @click="handleCancel" type="danger">关闭弹窗</el-button>
+        <div style="display: flex">
+          <el-button
+            type="warning"
+            @click="handleCancel"
+            v-if="orderDetail.status == 2"
+            >初步审核</el-button
+          >
+          <el-button
+            type="success"
+            @click="handleCancel"
+            v-if="orderDetail.status == 6"
+            >确认收货</el-button
+          >
+          <el-button
+            color="#bd3124"
+            @click="handleCancel"
+            v-if="orderDetail.status == 9"
+            >完成审核</el-button
+          >
+          <el-button
+            color="#a16222"
+            @click="handleCancel"
+            v-if="orderDetail.status == 10"
+            >支付书款</el-button
+          >
+        </div>
+      </div>
+    </template>
+  </ele-modal>
 </template>
 
 <script setup>
-import { ref, reactive, nextTick } from 'vue';
-import userDetail from '@/views/recycleOrder/detail/index.vue';
-import request from '@/utils/request';
+  import { ref, reactive, nextTick } from 'vue';
+  import userDetail from '@/views/recycleOrder/detail/index.vue';
+  import request from '@/utils/request';
 
-/** 弹窗是否打开 */
-const visible = defineModel({ type: Boolean });
+  /** 弹窗是否打开 */
+  const visible = defineModel({ type: Boolean });
 
-/** 关闭弹窗 */
-const handleCancel = () => {
+  /** 关闭弹窗 */
+  const handleCancel = () => {
     visible.value = false;
-};
+  };
 
-/** 弹窗打开事件 */
-const handleOpen = (data) => {
+  /** 弹窗打开事件 */
+  const handleOpen = (data) => {
     visible.value = true;
     nextTick(() => {
-        getOrderDetail(data.orderId);
+      getOrderDetail(data.orderId);
     });
-};
+  };
 
-//获取订单详情
-const orderDetail = ref({});
-const getOrderDetail = (orderId) => {
+  //获取订单详情
+  const orderDetail = ref({});
+  const getOrderDetail = (orderId) => {
     request.get(`/order/orderInfo/getInfo/${orderId}`).then((res) => {
-        if (res.data.code === 200) {
-            orderDetail.value = res.data.data;
-        }
+      if (res.data.code === 200) {
+        orderDetail.value = res.data.data;
+      }
     });
-};
+  };
 
-defineExpose({
+  defineExpose({
     handleOpen
-})
+  });
 </script>

+ 16 - 11
src/views/recycleOrder/components/user-bind-tag.vue

@@ -8,7 +8,11 @@
     @open="handleOpen"
   >
     <el-checkbox-group v-model="userTag">
-      <el-checkbox v-for="item in userTagData" :label="item.tagName" :value="item.id" />
+      <el-checkbox
+        v-for="item in userTagData"
+        :label="item.tagName"
+        :value="item.id"
+      />
     </el-checkbox-group>
 
     <template #footer>
@@ -22,7 +26,7 @@
 
 <script setup>
   import { ref, reactive, nextTick } from 'vue';
-  import request from '@/utils/request'
+  import request from '@/utils/request';
 
   /** 弹窗是否打开 */
   const visible = ref(false);
@@ -39,20 +43,21 @@
   const handleOpen = (row) => {
     visible.value = true;
     nextTick(() => {
-        getUserTagList();
+      getUserTagList(row.userId);
     });
   };
 
   const userTagData = ref([]);
   //获取用户标签数据
-  const getUserTagList = () => {
-    request
-      .get('/user/tag/pagelist', { pageSize: 100, pageNum: 1 })
-      .then((res) => {
-        if (res.data.code == 200) {
-          userTagData.value = res.data.rows;
-        }
-      });
+  const getUserTagList = (userId) => {
+    request.get(`/user/tag/getMyBingTag/${userId}`).then((res) => {
+      if (res.data.code == 200) {
+        userTagData.value = res.data.data;
+        userTag.value = userTagData.value
+          .filter((item) => item.bind)
+          .map((item) => item.id);
+      }
+    });
   };
 
   /** 提交 */