Преглед изворни кода

修改2024-05-17开会记录的bug,bug列表见飞书

single пре 9 месеци
родитељ
комит
8852ff0ccb

+ 3 - 0
src/config/apis/message.js

@@ -14,3 +14,6 @@ export const postReadMessage = params => http.post(`/message/read`, params);
 
 /** 获取消息列表 */
 export const getMessages = params => http.get(`/message/page`, params);
+
+/** 查看消息详情 */
+export const getMessage = id => http.get(`/message/${id}/info`);

+ 3 - 0
src/config/apis/supplier.js

@@ -19,3 +19,6 @@ export const getSelfRecords = params => http.get(`/srmCooperates/self/page`, par
 
 // 修改我的供应商信息
 export const editSelfInfo = params => http.post(`/srmSuppliers/self/info`, params);
+
+//查看合作记录
+export const getSrmCooperate = id => http.get(`/srmCooperates/${id}/info`);

+ 29 - 16
src/kirin-ui/kirin-form/kirin-form.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-10-09 15:51:12
- * @LastEditors: PoJun
- * @LastEditTime: 2024-04-28 14:17:11
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 01:54:24
  * @Message: 表单
 -->
 <template>
@@ -24,7 +24,7 @@
                     :value="item.sv"
                     :placeholder="item.canEdit ? (item.placeholder ? item.placeholder : '请输入') : '暂无'"
                     @input="inputChange($event, item)"
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :suffixIcon="item.canEdit ? 'edit-pen' : ''"
@@ -49,7 +49,7 @@
                     border="none"
                     @input="inputChange($event, item)"
                     :autoHeight="true"
-                    :textStyle="{ fontSize: '14px', textAlign: 'right' }"
+                    :textStyle="{ fontSize: '14px', textAlign: labelPosition == 'top' ? 'left' : 'right' }"
                     :readonly="!item.canEdit"
                     :disabled="!item.canEdit"
                 ></uv-textarea>
@@ -67,7 +67,7 @@
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
                 <uv-input
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :value="item.sv"
@@ -90,7 +90,7 @@
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
                 <uv-input
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :value="item.sv"
@@ -113,7 +113,7 @@
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
                 <uv-input
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :value="item.sv"
@@ -136,7 +136,7 @@
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
                 <uv-input
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :value="item.sv"
@@ -157,12 +157,15 @@
                 :customStyle="item.customStyle"
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
-                <view v-if="item.rv" class="uv-flex-1 uv-flex uv-row-right">
+                <view
+                    v-if="item.rv"
+                    :class="{ 'row-left': labelPosition == 'top', 'row-right': labelPosition == 'left' }"
+                >
                     <uv-qrcode :loading="false" ref="qrcodeDom" size="120px" :value="getQrcodeUrl(item)"></uv-qrcode>
                 </view>
                 <uv-input
                     v-else
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     placeholder="暂无"
@@ -180,7 +183,7 @@
                 :customStyle="item.customStyle"
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
-                <view class="uv-flex uv-flex-1 uv-row-right">
+                <view :class="{ 'row-left': labelPosition == 'top', 'row-right': labelPosition == 'left' }">
                     <uv-switch
                         :disabled="!item.canEdit"
                         v-model="item.rv"
@@ -196,7 +199,7 @@
                 <uv-upload
                     :fileList="getFileList(item.sv)"
                     :name="item.code"
-                    :maxCount="item.maxCount"
+                    :maxCount="!item.canEdit ? item.sv.split(',').length : item.maxCount"
                     @afterRead="afterRead($event, item)"
                     @delete="deletePic($event, item)"
                     :uploadText="item.uploadText"
@@ -216,11 +219,14 @@
                 :customStyle="item.customStyle"
                 :labelWidth="item.labelWidth ? item.labelWidth : 150"
             >
-                <view class="pj-upload uv-flex uv-flex-1 uv-row-right">
+                <view
+                    class="pj-upload"
+                    :class="{ 'row-left': labelPosition == 'top', 'row-right': labelPosition == 'left' }"
+                >
                     <uv-upload
                         :fileList="getFileList(item.sv)"
                         :name="item.code"
-                        :maxCount="item.maxCount"
+                        :maxCount="!item.canEdit ? item.sv.split(',').length : item.maxCount"
                         @afterRead="afterRead($event, item)"
                         @delete="deletePic($event, item)"
                         :width="item.width"
@@ -244,7 +250,7 @@
                 @click="item.canEdit && openProductsPicker(item)"
             >
                 <uv-input
-                    inputAlign="right"
+                    :inputAlign="labelPosition == 'top' ? 'left' : 'right'"
                     fontSize="14px"
                     border="none"
                     :value="getShowNames(item.rv)"
@@ -679,4 +685,11 @@ export default {
 };
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.row-left {
+    text-align: left;
+}
+.row-right {
+    text-align: right;
+}
+</style>

+ 13 - 1
src/pages.json

@@ -5,7 +5,7 @@
     "pages": [
         {
             "path": "pages/index/index",
-            "style": { "bounce": false, "navigationStyle": "custom" }
+            "style": { "bounce": false, "navigationBarTitleText":"首页" }
         },
         {
             "path": "pages/login/index",
@@ -55,6 +55,10 @@
                     "path": "authentication",
                     "style": { "bounce": false, "navigationBarTitleText": "角色认证" }
                 },
+                {
+                    "path": "authentication-info",
+                    "style": { "bounce": false, "navigationBarTitleText": "角色认证" }
+                },
                 {
                     "path": "cancel-account",
                     "style": { "bounce": false, "navigationBarTitleText": "账号注销" }
@@ -108,6 +112,14 @@
                 {
                     "path": "supplier-detail",
                     "style": { "bounce": false, "navigationStyle": "custom" }
+                },
+                {
+                    "path": "records-detail",
+                    "style": { "bounce": false, "navigationBarTitleText": "合作详情" }
+                },
+                {
+                    "path": "message-detail",
+                    "style": { "bounce": false, "navigationBarTitleText": "消息详情" } 
                 }
             ]
         },

+ 16 - 3
src/pages/index/components/home-chart.vue

@@ -1,25 +1,34 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-12-19 14:57:48
- * @LastEditors: PoJun
- * @LastEditTime: 2024-01-18 14:44:19
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 04:07:59
  * @Message: 柱形图
 -->
 <template>
     <view class="data-charts">
         <view class="uv-font-md uv-weight-700 uv-m-25">产品-供应商数量</view>
-        <qiun-data-charts type="column" :ontouch="true" :opts="opts" :chartData="chartData" />
+        <view v-show="showChart" class="charts-box">
+            <qiun-data-charts type="column" :ontouch="true" :opts="opts" :chartData="chartData" :reshow="showChart" />
+        </view>
     </view>
 </template>
 
 <script>
 import { getHomeChartData } from "@/config/http.js";
 export default {
+    // components: {
+    //     QiunDataCharts: () => import("@/uni_modules/qiun-data-charts/components/qiun-data-charts/qiun-data-charts.vue"),
+    // },
     props: {
         times: {
             type: Number,
             default: 0,
         },
+        showChart: {
+            type: Boolean,
+            default: false,
+        },
     },
     data() {
         return {
@@ -92,5 +101,9 @@ export default {
 .data-charts {
     width: 100%;
     height: 300px;
+    .charts-box {
+        width: 750rpx;
+        height: 300px;
+    }
 }
 </style>

+ 4 - 3
src/pages/index/components/products-list.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-12-19 14:57:48
- * @LastEditors: PoJun
- * @LastEditTime: 2024-05-08 20:19:44
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 10:32:48
  * @Message: 产品列表, 只展示5个
 -->
 <template>
@@ -11,7 +11,7 @@
             <uv-text slot="title" text="我的产品分类" :customStyle="{ 'font-weight': 'bold' }"></uv-text>
         </uv-cell>
 
-        <template v-if="productsList">
+        <template v-if="productsList && Object.keys(productsList).length !== 0">
             <uv-cell
                 v-for="(key, value, index) in productsList"
                 :key="index"
@@ -56,6 +56,7 @@ export default {
         times: {
             immediate: true,
             handler: function () {
+                console.log("times", this.times);
                 this.getList();
             },
         },

+ 29 - 7
src/pages/index/components/records-list.vue

@@ -1,19 +1,30 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-12-19 14:57:48
- * @LastEditors: PoJun
- * @LastEditTime: 2024-01-04 16:09:14
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 00:12:16
  * @Message: 合作记录
 -->
 <template>
-    <uv-cell-group :border="false" :customStyle="{ padding: '5px 0' }">
+    <uv-cell-group :border="false">
         <uv-cell :border="false" :isLink="true" value="查看更多" url="/subpkg/home/records">
             <uv-text slot="title" text="近期合作记录" :customStyle="{ 'font-weight': 'bold' }"></uv-text>
         </uv-cell>
 
-        <template v-if="recordsList.length">
-            <uv-cell v-for="(item, index) in recordsList" :key="index" :border="false" :value="item.content">
-                <uv-text slot="label" :text="item.time" size="13" :customStyle="{ 'white-space': 'nowrap' }"></uv-text>
+        <template v-if="recordsList && recordsList.length > 0">
+            <uv-cell
+                class="uv-cell-view"
+                v-for="(item, index) in recordsList"
+                :key="index"
+                :border="false"
+                @click="toDetail(item.id)"
+            >
+                <template v-slot:title>
+                    <text>{{ item.content }}</text>
+                </template>
+                <template v-slot:label>
+                    <view class="uv-info">{{ item.time }}</view>
+                </template>
             </uv-cell>
         </template>
 
@@ -42,7 +53,18 @@ export default {
         const data = await getSelfRecords(params);
         this.recordsList = data.list;
     },
+    methods: {
+        toDetail(id) {
+            uni.navigateTo({
+                url: `/subpkg/home/records-detail?id=${id}`,
+            });
+        },
+    },
 };
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.uv-cell-view {
+    border-top: 1px solid #f8f8f8;
+}
+</style>

+ 3 - 3
src/pages/index/components/supplier-list.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-12-19 14:57:48
- * @LastEditors: PoJun
- * @LastEditTime: 2024-01-04 16:25:00
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-18 19:17:14
  * @Message: 排名, 只展示5个
 -->
 <template>
@@ -11,7 +11,7 @@
             <uv-text slot="title" text="优质供应商" :customStyle="{ 'font-weight': 'bold' }"></uv-text>
         </uv-cell>
 
-        <template v-if="supplierList.length">
+        <template v-if="supplierList.length && supplierList.length > 0">
             <uv-cell
                 v-for="(item, index) in supplierList"
                 :key="index"

+ 55 - 4
src/pages/index/index.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-05-15 19:59:55
- * @LastEditors: PoJun
- * @LastEditTime: 2024-05-09 20:56:10
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 10:36:13
  * @Message: Nothing
 -->
 <template>
@@ -23,11 +23,31 @@
                 </view>
                 <!-- 统计图 -->
                 <view class="content-container">
-                    <home-chart :times="times"></home-chart>
+                    <home-chart :times="times" :showChart="showChart"></home-chart>
                 </view>
             </view>
             <!-- 供应商角色 -->
             <view class="content" v-else-if="vuex_userInfo.attr.BusinessRole == 'supplier'">
+                <view class="boxContent">
+                    <uv-grid col="2">
+                        <uv-grid-item>
+                            <uv-tags
+                                :text="score"
+                                plain
+                                shape="circle"
+                                type="error"
+                                size="mini"
+                                class="score"
+                            ></uv-tags>
+                            <text class="grid-text">评分</text>
+                        </uv-grid-item>
+                        <uv-grid-item @click="toAppeal">
+                            <uv-icon name="file-text" :size="30"></uv-icon>
+                            <text class="grid-text">申诉</text>
+                        </uv-grid-item>
+                    </uv-grid>
+                </view>
+                <view></view>
                 <!-- 合作记录 -->
                 <view class="content-container">
                     <records-list></records-list>
@@ -63,7 +83,7 @@ import productsList from "./components/products-list.vue";
 import NoAuth from "@/components/no-auth/index.vue";
 
 import BannerImg from "@/static/banner.png";
-
+import { getMySupplierInfo } from "@/config/http.js";
 export default {
     components: {
         supplierList,
@@ -76,6 +96,8 @@ export default {
         return {
             BannerImg,
             times: 0, //图形的渲染有时候会出问题.
+            showChart: false,
+            score: 0,
         };
     },
     onLoad() {
@@ -83,6 +105,12 @@ export default {
     },
     onShow() {
         this.times++;
+        this.showChart = true;
+        console.log("show");
+    },
+    onHide() {
+        console.log("hide");
+        // this.showChart = false;
     },
     methods: {
         toLogin() {
@@ -92,6 +120,13 @@ export default {
                 uni.$uv.route("/subpkg/setting/authentication");
             }
         },
+        toAppeal() {
+            uni.$uv.route("/subpkg/home/representations");
+        },
+    },
+    async onLoad() {
+        const res = await getMySupplierInfo();
+        this.score = res.mark;
     },
 };
 </script>
@@ -115,6 +150,22 @@ page {
             border-radius: 14rpx;
             margin-top: 24rpx;
             overflow: hidden;
+            margin-bottom: 24rpx;
+        }
+    }
+    .boxContent {
+        padding: 36rpx 0;
+        border-radius: 14rpx;
+        background: #fff;
+        overflow: hidden;
+        .score {
+            margin: 8rpx 0;
+        }
+        .grid-text {
+            font-size: 26rpx;
+            display: flex;
+            flex-direction: row;
+            align-items: center;
         }
     }
 }

+ 6 - 2
src/pages/message/index.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2023-12-28 17:49:14
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-20 23:20:49
  * @Message: 消息, 认证、系统消息
 -->
 <template>
@@ -64,6 +64,10 @@ export default {
             if (item.read == 0) {
                 this.setReadState(item.id);
             }
+            // uni.navigateTo("/subpkg/home/message-detail" + item.id);
+            uni.navigateTo({
+                url: `/subpkg/home/message-detail?id=${item.id}`,
+            });
         },
         async getDataList() {
             if (!this.vuex_userInfo) {

+ 53 - 11
src/pages/mine/index.vue

@@ -1,8 +1,15 @@
+<!--
+ * @Author: XuanJi
+ * @Date: 2024-05-08 17:23:25
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 02:54:57
+ * @Message: Nothing
+-->
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2024-01-04 17:40:09
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-20 10:20:14
  * @Message: 个人中心
 -->
 <template>
@@ -30,7 +37,7 @@
             </view>
         </view>
         <view class="mine-cont">
-            <template v-if="vuex_userInfo">
+            <template v-if="vuex_userInfo && vuex_userInfo.attr.BusinessRole !== 'supplier'">
                 <cols-container :list="managementTabs" :col="2" @click="tabClick"></cols-container>
             </template>
 
@@ -41,7 +48,6 @@
                     text="登录"
                     @click="toLogin"
                     :hairline="false"
-                    plain
                     throttleTime="100"
                     :customStyle="{ border: 0 }"
                 ></uv-button>
@@ -58,12 +64,40 @@
                         :cellStyle="{ padding: '15px' }"
                     ></uv-cell>
                     <uv-cell
-                        v-if="vuex_userInfo.attr.BusinessRole || [1, 2].includes(vuex_userInfo.attr.auditState)"
+                        v-if="
+                            vuex_userInfo.attr.affairType == 'SupplierJoin' &&
+                            [2].includes(vuex_userInfo.attr.auditState)
+                        "
                         title="角色认证"
                         :border="false"
                         :cellStyle="{ padding: '15px' }"
-                        :value="vuex_userInfo.attr.auditState == 1 ? '审核中' : '已认证'"
-                    ></uv-cell>
+                        :isLink="true"
+                        arrow-direction="right"
+                        url="/subpkg/home/supplier-detail"
+                    >
+                        <template v-slot:value>
+                            <text>供应商-已认证</text>
+                        </template>
+                    </uv-cell>
+                    <uv-cell
+                        v-else-if="
+                            (vuex_userInfo.attr.affairType == 'UserJoinOrg' || 'SupplierJoin') &&
+                            [1, 2].includes(vuex_userInfo.attr.auditState)
+                        "
+                        title="角色认证"
+                        :border="false"
+                        :cellStyle="{ padding: '15px' }"
+                        :isLink="true"
+                        arrow-direction="right"
+                        url="/subpkg/setting/authentication-info"
+                    >
+                        <template v-slot:value>
+                            <text>{{ vuex_userInfo.attr.affairType == "UserJoinOrg" ? "组织成员" : "供应商" }}-</text>
+                            <text>
+                                {{ vuex_userInfo.attr.auditState == 1 ? "认证中" : "已认证" }}
+                            </text>
+                        </template>
+                    </uv-cell>
                     <uv-cell
                         v-else-if="[0, 3].includes(vuex_userInfo.attr.auditState)"
                         title="角色认证"
@@ -74,11 +108,20 @@
                         :cellStyle="{ padding: '15px' }"
                     ></uv-cell>
                     <uv-cell
-                        v-if="vuex_userInfo.attr.BusinessRole == 'supplier'"
-                        title="我的供应商信息"
+                        v-if="vuex_userInfo.attr.auditState == 2 && vuex_userInfo.attr.BusinessRole == 'supplier'"
+                        title="评分申诉"
                         :isLink="true"
                         arrow-direction="right"
-                        url="/subpkg/home/supplier-detail"
+                        url="/subpkg/home/representations"
+                        :border="false"
+                        :cellStyle="{ padding: '15px' }"
+                    ></uv-cell>
+                    <uv-cell
+                        v-if="vuex_userInfo.attr.auditState == 2 && vuex_userInfo.attr.BusinessRole == 'supplier'"
+                        title="修改供应商信息"
+                        :isLink="true"
+                        arrow-direction="right"
+                        url="/subpkg/home/editInfo"
                         :border="false"
                         :cellStyle="{ padding: '15px' }"
                     ></uv-cell>
@@ -155,7 +198,6 @@
                     text="退出"
                     @click="showActionSheet"
                     :hairline="false"
-                    plain
                     throttleTime="100"
                     :customStyle="{ border: 0 }"
                 ></uv-button>

+ 21 - 3
src/subpkg/flow/detail.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2024-01-03 16:13:54
- * @LastEditors: PoJun
- * @LastEditTime: 2024-05-08 20:37:11
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-19 16:43:37
  * @Message: Nothing
 -->
 <template>
@@ -19,7 +19,7 @@
             ]"
         >
             <kirin-form :list="list" labelWidth="80"></kirin-form>
-            <view class="uv-m-t-30" v-if="tabType == 'todo'">
+            <view class="uv-m-t-30 uv-p-b-30" v-if="tabType == 'todo'">
                 <uv-row gutter="15">
                     <uv-col span="6">
                         <uv-button type="primary" :plain="true" text="拒绝" @click="refuse"></uv-button>
@@ -132,6 +132,24 @@ export default {
                     labelWidth: 80,
                 });
             }
+            // this.list.forEach(item => {
+            //     if (item.code == "title" || item.code == "type") {
+            //         item.sv = item.rv = data[item.code];
+            //     }
+            //     if (item.code == "phone" || item.code == "name") {
+            //         item.sv = item.rv = data?.data[item.code];
+            //     }
+            //     if (item.code == "result") {
+            //         if (data[item.code] != undefined && data[item.code] != null) {
+            //             item.sv = item.rv = data[item.code] == 1 ? "已通过" : "已拒绝";
+            //         }
+            //         if (this.tabType == "done") {
+            //             item.canShow = true;
+            //         } else {
+            //             item.canShow = false;
+            //         }
+            //     }
+            // });
             uni.$uv.sleep(200).then(() => {
                 this.skeletonLoading = false;
             });

+ 5 - 6
src/subpkg/home/editInfo.vue

@@ -1,14 +1,14 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2024-05-08 19:25:51
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 02:13:52
  * @Message: 修改供应商信息界面
 -->
 <template>
     <view class="authentication">
         <view class="authentication-cont">
-            <kirin-form ref="dataFrom" :list="list"></kirin-form>
+            <kirin-form ref="dataFrom" :list="list" labelPosition="top"></kirin-form>
             <view class="uv-m-t-30">
                 <uv-button type="primary" text="确定" @click="save"></uv-button>
             </view>
@@ -82,8 +82,8 @@ export default {
                     type: "input",
                     label: "优势产品",
                     code: "superiorProduct",
-                    sv: res.superiorProduct,
-                    rv: res.superiorProduct,
+                    sv:  res.superiorProduct ? res.superiorProduct : "",
+                    rv: res.superiorProduct ? res.superiorProduct : "",
                     canShow: true,
                     canEdit: true,
                     required: false,
@@ -96,7 +96,6 @@ export default {
                     rv: res.image ? res.image.join(",") : "",
                     canShow: true,
                     canEdit: true,
-                    required: false,
                     maxCount: 5,
                     width: "80px",
                     height: "80px",

+ 4 - 4
src/subpkg/home/products.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2024-04-27 22:49:22
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-19 16:28:48
  * @Message: 产品列表
 -->
 <template>
@@ -15,7 +15,7 @@
                         v-for="(item2, index2) in item.children"
                         :key="index2"
                     >
-                        <uv-image :src="getImageUrl(item2.image)" width="66px" height="66px"></uv-image>
+                        <uv-image :src="getImageUrl(item2.image)" width="60px" height="60px"></uv-image>
                         <view class="uv-m-l-26 uv-flex-1">
                             <view class="uv-font-28">{{ item2.name }}</view>
                             <view class="uv-font-26 uv-m-t-12 uv-info">{{ item2.code }}</view>
@@ -63,7 +63,7 @@ export default {
             console.log("选项改变:", index);
         },
         getImageUrl(id) {
-            return id ? process.env.VUE_APP_BASE_API + `/files/${id}/show_image` : "";
+            return id ? process.env.VUE_APP_BASE_API + `/files/${id}/show_image` : "/static/product_default.png";
         },
     },
 };

+ 10 - 4
src/subpkg/home/records.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2024-01-04 16:07:28
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-20 18:34:02
  * @Message: 合作记录页
 -->
 <template>
@@ -19,9 +19,10 @@
                 hover-class="uv-hover-class"
                 v-for="(item, index) in dataList"
                 :key="index"
+                @click="toDetail(item.id)"
             >
-                <view class="uv-font-30 uv-weight-700">{{ item.content }}</view>
-                <view class="uv-font-26 uv-m-t-15">{{ item.time }}</view>
+                <view class="uv-font-30">{{ item.content }}</view>
+                <view class="uv-font-26 uv-info uv-m-t-15">{{ item.time }}</view>
             </view>
         </view>
         <!-- 空内容 -->
@@ -83,6 +84,11 @@ export default {
             this.page.pageNum = 1;
             this.getDataList();
         },
+        toDetail(id) {
+            uni.navigateTo({
+                url: `/subpkg/home/records-detail?id=${id}`,
+            });
+        },
     },
     onLoad() {
         this.getDataList();

+ 23 - 35
src/subpkg/home/supplier-detail.vue

@@ -1,8 +1,8 @@
 <!--
  * @Author: PoJun
  * @Date: 2023-09-28 10:38:11
- * @LastEditors: PoJun
- * @LastEditTime: 2024-05-08 19:58:36
+ * @LastEditors: XuanJi
+ * @LastEditTime: 2024-05-21 10:46:35
  * @Message: 供应商详情页面
 -->
 <template>
@@ -11,86 +11,67 @@
         <uv-swiper :list="getImages(item.image)" height="400" indicator circular></uv-swiper>
         <view class="supplier-detail-cont">
             <uv-cell-group :border="false">
-                <uv-cell title="名称" :value="item.name" :border="false" :cellStyle="{ padding: '15px' }"></uv-cell>
-                <uv-cell title="评分" :value="item.mark" :border="false" :cellStyle="{ padding: '15px' }"></uv-cell>
+                <uv-cell title="名称" :label="item.name" :border="false" :cellStyle="{ padding: '15px' }"></uv-cell>
+                <uv-cell title="评分" :label="item.mark" :border="false" :cellStyle="{ padding: '15px' }"></uv-cell>
                 <uv-cell
                     title="联系人"
-                    :value="item.personName"
+                    :label="item.personName"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="联系方式"
-                    :value="item.phone"
+                    :label="item.phone"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="供应商类型"
-                    :value="item.type"
+                    :label="item.type"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="公司地址"
-                    :value="item.address"
+                    :label="item.address"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="公司简介"
-                    :value="item.intro"
+                    :label="item.intro"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="产品分类"
-                    :value="showProductNames(item.product)"
+                    :label="getShowNames(item.product)"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell
                     title="优势产品"
-                    :value="item.superiorProduct"
+                    :label="item.superiorProduct ? item.superiorProduct : '暂无'"
                     :border="false"
                     :cellStyle="{ padding: '15px' }"
                 ></uv-cell>
                 <uv-cell title="营业执照" :border="false" :cellStyle="{ padding: '15px' }">
                     <uv-album
                         v-if="item.businessLicense"
-                        slot="value"
+                        slot="label"
                         :urls="getImages(item.businessLicense)"
                     ></uv-album>
                 </uv-cell>
                 <uv-cell title="权威证书" :border="false" :cellStyle="{ padding: '15px' }">
-                    <uv-album v-if="item.certificates" slot="value" :urls="getImages(item.certificates)"></uv-album>
+                    <uv-album v-if="item.certificates" slot="label" :urls="getImages(item.certificates)"></uv-album>
                 </uv-cell>
-                <uv-cell
-                    v-if="showBtn"
-                    title="评分申述"
-                    :isLink="true"
-                    arrow-direction="right"
-                    url="/subpkg/home/representations"
-                    :border="false"
-                    :cellStyle="{ padding: '15px' }"
-                ></uv-cell>
-
-                <uv-cell
-                    v-if="showBtn"
-                    title="修改供应商信息"
-                    :isLink="true"
-                    arrow-direction="right"
-                    url="/subpkg/home/editInfo"
-                    :border="false"
-                    :cellStyle="{ padding: '15px' }"
-                ></uv-cell>
             </uv-cell-group>
         </view>
     </view>
 </template>
 
 <script>
-import { getSupplierInfo, getMySupplierInfo, getProductsTreeNoAuth } from "@/config/http.js";
+import { getSupplierInfo, getMySupplierInfo,getProductsTreeNoAuth } from "@/config/http.js";
 
 export default {
     data() {
@@ -131,7 +112,7 @@ export default {
                 return ids.map(v => this.getImageUrl(v));
             };
         },
-        showProductNames() {
+        getShowNames() {
             return (rv = []) => {
                 if (!rv || !rv.length) return "";
                 let names = [];
@@ -166,7 +147,7 @@ export default {
 };
 </script>
 
-<style lang="scss">
+<style lang="scss" scoped>
 page {
     background-color: $uv-bg-color;
 }
@@ -181,4 +162,11 @@ page {
         bottom: 100rpx;
     }
 }
+.uv-cell {
+    /deep/ .uv-cell__title {
+        display: flex;
+        flex-direction: column;
+        justify-content: flex-start;
+    }
+}
 </style>

+ 0 - 1
src/subpkg/setting/constant.js

@@ -137,7 +137,6 @@ export const authenticationFormList = [
         rv: null,
         canShow: true,
         canEdit: true,
-        required: false,
         maxCount: 5,
         width: "80px",
         height: "80px",