zhangxin 1 месяц назад
Родитель
Сommit
daa8d5080d

+ 18 - 11
pages/wareHouse/components/detail.vue

@@ -97,7 +97,7 @@
97
         <!-- 财务与价格区域 -->
97
         <!-- 财务与价格区域 -->
98
         <view class="finance_price">
98
         <view class="finance_price">
99
             <view class="section_title">财务与价格</view>
99
             <view class="section_title">财务与价格</view>
100
-            <view class="price_group">
100
+            <view class="price_group" v-if="isWareHouser">
101
                 <view class="price_item">
101
                 <view class="price_item">
102
                     <view class="price_label">总成本价</view>
102
                     <view class="price_label">总成本价</view>
103
                     <view class="price_value original"
103
                     <view class="price_value original"
@@ -127,6 +127,17 @@
127
                     </view>
127
                     </view>
128
                 </view>
128
                 </view>
129
                 <view class="price_item">
129
                 <view class="price_item">
130
+                    <view class="price_label">官方指导价</view>
131
+                    <view class="price_value original" @click.stop="toggleEditField('price', coreInfo.price)">
132
+                        <u-input v-if="editMode.price" v-model="tempValues.price" :autoFocus="true"
133
+                            @blur="!globalEditMode && saveEditField('price', tempValues.price, 'price')" />
134
+                        <span v-else>¥{{ coreInfo.price || '-' }}</span>
135
+                    </view>
136
+                </view>
137
+                
138
+            </view>
139
+            <view class="price_group" v-if="isWareHouser">
140
+                <view class="price_item">
130
                     <view class="price_label">销售价格</view>
141
                     <view class="price_label">销售价格</view>
131
                     <view class="price_value suggested"
142
                     <view class="price_value suggested"
132
                         @click.stop="toggleEditField('salePrice', coreInfo.salePrice)">
143
                         @click.stop="toggleEditField('salePrice', coreInfo.salePrice)">
@@ -135,16 +146,6 @@
135
                         <span v-else>¥{{ coreInfo.salePrice || '-' }}</span>
146
                         <span v-else>¥{{ coreInfo.salePrice || '-' }}</span>
136
                     </view>
147
                     </view>
137
                 </view>
148
                 </view>
138
-            </view>
139
-            <view class="price_group">
140
-                <view class="price_item">
141
-                    <view class="price_label">官方指导价</view>
142
-                    <view class="price_value original" @click.stop="toggleEditField('price', coreInfo.price)">
143
-                        <u-input v-if="editMode.price" v-model="tempValues.price" :autoFocus="true"
144
-                            @blur="!globalEditMode && saveEditField('price', tempValues.price, 'price')" />
145
-                        <span v-else>¥{{ coreInfo.price || '-' }}</span>
146
-                    </view>
147
-                </view>
148
                 <view class="price_item"></view>
149
                 <view class="price_item"></view>
149
             </view>
150
             </view>
150
         </view>
151
         </view>
@@ -226,6 +227,7 @@
226
 import BrandList from '@/components/brand-list/index.vue'
227
 import BrandList from '@/components/brand-list/index.vue'
227
 import personPicker from '@/components/person-picker/index.vue'
228
 import personPicker from '@/components/person-picker/index.vue'
228
 import imgsRowScroll from '@/components/imgs-row-scroll/index.vue'
229
 import imgsRowScroll from '@/components/imgs-row-scroll/index.vue'
230
+import { permissionCheck } from '@/utils/util.js'
229
 export default {
231
 export default {
230
     components: {
232
     components: {
231
         BrandList,
233
         BrandList,
@@ -260,6 +262,7 @@ export default {
260
             downStatus: '',//下架状态 0:已下架 1:已上架
262
             downStatus: '',//下架状态 0:已下架 1:已上架
261
             showEditImgsModal: false,
263
             showEditImgsModal: false,
262
             tempImgsUrl: [],
264
             tempImgsUrl: [],
265
+            isWareHouser: permissionCheck('WAREHOUSER',false),
263
         }
266
         }
264
     },
267
     },
265
     onLoad(options) {
268
     onLoad(options) {
@@ -357,6 +360,7 @@ export default {
357
         },
360
         },
358
         // 显示品牌列表
361
         // 显示品牌列表
359
         showBrandlList() {
362
         showBrandlList() {
363
+            if(!permissionCheck('WAREHOUSER')) return false
360
             this.$refs.brandListRef.showBrandList();
364
             this.$refs.brandListRef.showBrandList();
361
         },
365
         },
362
         // 处理选中品牌
366
         // 处理选中品牌
@@ -457,6 +461,7 @@ export default {
457
         },
461
         },
458
         // 切换单个字段的编辑状态
462
         // 切换单个字段的编辑状态
459
         toggleEditField(field, value) {
463
         toggleEditField(field, value) {
464
+            if(!permissionCheck('WAREHOUSER')) return false
460
             // 如果不是全局编辑模式
465
             // 如果不是全局编辑模式
461
             if (!this.globalEditMode) {
466
             if (!this.globalEditMode) {
462
                 // 重置所有编辑状态
467
                 // 重置所有编辑状态
@@ -477,6 +482,7 @@ export default {
477
         },
482
         },
478
         // 进入全局编辑模式
483
         // 进入全局编辑模式
479
         enterGlobalEdit() {
484
         enterGlobalEdit() {
485
+            if(!permissionCheck('WAREHOUSER')) return false
480
             this.globalEditMode = true;
486
             this.globalEditMode = true;
481
             // 设置所有可编辑字段为编辑状态
487
             // 设置所有可编辑字段为编辑状态
482
             this.editMode = {
488
             this.editMode = {
@@ -624,6 +630,7 @@ export default {
624
             })
630
             })
625
         },
631
         },
626
         handleEditImgs() {
632
         handleEditImgs() {
633
+            if(!permissionCheck('WAREHOUSER')) return false
627
             this.showEditImgsModal = true;
634
             this.showEditImgsModal = true;
628
             this.tempImgsUrl = this.imgsUrl
635
             this.tempImgsUrl = this.imgsUrl
629
         },
636
         },

+ 6 - 4
pages/wareHouse/components/edit.vue

@@ -125,16 +125,16 @@
125
                         <u--input v-model="formData.stock" placeholder="请输入" clearable border="none"
125
                         <u--input v-model="formData.stock" placeholder="请输入" clearable border="none"
126
                             type="number"></u--input>
126
                             type="number"></u--input>
127
                     </u-form-item>
127
                     </u-form-item>
128
-                    <u-form-item label="总成本价" class="u-form-item-row" borderBottom>
128
+                    <u-form-item label="总成本价" class="u-form-item-row" borderBottom v-if="isWareHouser">
129
                         <u--input v-model="formData.costPrice" placeholder="请输入" clearable border="none"></u--input>
129
                         <u--input v-model="formData.costPrice" placeholder="请输入" clearable border="none"></u--input>
130
                     </u-form-item>
130
                     </u-form-item>
131
-                    <u-form-item label="同行价格" class="u-form-item-row" borderBottom>
131
+                    <u-form-item label="同行价格" class="u-form-item-row" borderBottom v-if="isWareHouser">
132
                         <u--input v-model="formData.peerPrice" placeholder="请输入" clearable border="none"></u--input>
132
                         <u--input v-model="formData.peerPrice" placeholder="请输入" clearable border="none"></u--input>
133
                     </u-form-item>
133
                     </u-form-item>
134
                     <u-form-item label="代理价格" class="u-form-item-row" borderBottom>
134
                     <u-form-item label="代理价格" class="u-form-item-row" borderBottom>
135
                         <u--input v-model="formData.agentPrice" placeholder="请输入" clearable border="none"></u--input>
135
                         <u--input v-model="formData.agentPrice" placeholder="请输入" clearable border="none"></u--input>
136
                     </u-form-item>
136
                     </u-form-item>
137
-                    <u-form-item label="销售价格" class="u-form-item-row" borderBottom>
137
+                    <u-form-item label="销售价格" class="u-form-item-row" borderBottom v-if="isWareHouser">
138
                         <u--input v-model="formData.salePrice" placeholder="请输入" clearable border="none"></u--input>
138
                         <u--input v-model="formData.salePrice" placeholder="请输入" clearable border="none"></u--input>
139
                     </u-form-item>
139
                     </u-form-item>
140
                     <u-form-item label="商品位置" class="u-form-item-row" borderBottom>
140
                     <u-form-item label="商品位置" class="u-form-item-row" borderBottom>
@@ -265,7 +265,7 @@ import Cell from '@/components/custom-cell/index.vue'
265
 import BrandList from '@/components/brand-list/index.vue'
265
 import BrandList from '@/components/brand-list/index.vue'
266
 import ImgsRowScroll from '@/components/imgs-row-scroll/index.vue'
266
 import ImgsRowScroll from '@/components/imgs-row-scroll/index.vue'
267
 import PersonPicker from '@/components/person-picker/index.vue'
267
 import PersonPicker from '@/components/person-picker/index.vue'
268
-
268
+import { permissionCheck } from '@/utils/util.js'
269
 export default {
269
 export default {
270
     components: {
270
     components: {
271
         TabSelect,
271
         TabSelect,
@@ -477,6 +477,7 @@ export default {
477
             echoInfoProductAttribute:'',//入库回显的时候 商品属性回显
477
             echoInfoProductAttribute:'',//入库回显的时候 商品属性回显
478
             echoInfoProductCondition:'',//入库回显的时候 商品成色回显
478
             echoInfoProductCondition:'',//入库回显的时候 商品成色回显
479
             echoInfoStockStatus:'',//入库回显的时候 是否入库回显
479
             echoInfoStockStatus:'',//入库回显的时候 是否入库回显
480
+            isWareHouser: permissionCheck('WAREHOUSER',false),
480
         }
481
         }
481
     },
482
     },
482
     onLoad(options) {
483
     onLoad(options) {
@@ -513,6 +514,7 @@ export default {
513
         },
514
         },
514
         // 提交表单
515
         // 提交表单
515
         submitForm(submitType) {
516
         submitForm(submitType) {
517
+            if(!permissionCheck('WAREHOUSER')) return false
516
             this.$refs.addForm.validate().then((valid) => {
518
             this.$refs.addForm.validate().then((valid) => {
517
                 if (valid) {
519
                 if (valid) {
518
                     if (this.formData.title == '') {
520
                     if (this.formData.title == '') {

+ 5 - 3
pages/wareHouse/index.vue

@@ -71,7 +71,7 @@
71
 						<text class="goods-name">{{ goods.model || '' }}</text>
71
 						<text class="goods-name">{{ goods.model || '' }}</text>
72
 
72
 
73
 						<view class="price-group">
73
 						<view class="price-group">
74
-							<view class="price-items">
74
+							<view class="price-items" v-if="isWareHouseRole">
75
 								<view class="price-item">
75
 								<view class="price-item">
76
 									<text class="price-type">成本价</text>
76
 									<text class="price-type">成本价</text>
77
 									<text class="price">¥{{ priceVisible ? goods.costPrice || '-' : '****' }}</text>
77
 									<text class="price">¥{{ priceVisible ? goods.costPrice || '-' : '****' }}</text>
@@ -82,7 +82,7 @@
82
 								</view>
82
 								</view>
83
 							</view>
83
 							</view>
84
 							<view class="price-items">
84
 							<view class="price-items">
85
-								<view class="price-item">
85
+								<view class="price-item" v-if="isWareHouseRole">
86
 									<text class="price-type">同行价</text>
86
 									<text class="price-type">同行价</text>
87
 									<text class="price">¥{{ priceVisible ? goods.peerPrice || '-' : '****' }}</text>
87
 									<text class="price">¥{{ priceVisible ? goods.peerPrice || '-' : '****' }}</text>
88
 								</view>
88
 								</view>
@@ -118,6 +118,7 @@
118
 <script>
118
 <script>
119
 	import searchFilter from './components/searchFilter.vue'
119
 	import searchFilter from './components/searchFilter.vue'
120
 	import moreInfo from './components/moreInfo.vue'
120
 	import moreInfo from './components/moreInfo.vue'
121
+	import { permissionCheck } from '../../utils/util.js'
121
 export default {
122
 export default {
122
 	components: {
123
 	components: {
123
 		searchFilter,
124
 		searchFilter,
@@ -190,7 +191,8 @@ export default {
190
 			searchPopShow:false,
191
 			searchPopShow:false,
191
 			total:0,
192
 			total:0,
192
 			moreOptions:{},
193
 			moreOptions:{},
193
-			moreOptionsShow:false,	
194
+			moreOptionsShow:false,
195
+			isWareHouseRole:permissionCheck('WAREHOUSER',false),
194
 		};
196
 		};
195
 	},
197
 	},
196
 	onLoad() {
198
 	onLoad() {

+ 2 - 2
pages/wareHouse/styles/index.scss

@@ -351,9 +351,9 @@
351
     .more{
351
     .more{
352
       display: flex;
352
       display: flex;
353
       flex-direction: column;
353
       flex-direction: column;
354
-      height: 100%;
354
+      height: auto;
355
       align-items: flex-end;
355
       align-items: flex-end;
356
-      gap: 240rpx;
356
+      gap: 20rpx;
357
       .goods-stock {
357
       .goods-stock {
358
         font-size: 24rpx;
358
         font-size: 24rpx;
359
         color: #666666;
359
         color: #666666;

+ 2 - 2
store/modules/user.js

@@ -28,8 +28,8 @@ export default {
28
 		netConfig: {
28
 		netConfig: {
29
 			// http://59.42.9.166:9520/proxy
29
 			// http://59.42.9.166:9520/proxy
30
 			// http://10.0.7.100:9500
30
 			// http://10.0.7.100:9500
31
-			ip: "https://crm.nanjingshiyu.com/prod-api", // ip
32
-			// ip: "https://crmtest.nanjingshiyu.com/prod-api", // 测试环境ip
31
+			// ip: "https://crm.nanjingshiyu.com/prod-api", // ip
32
+			ip: "https://crmtest.nanjingshiyu.com/prod-api", // 测试环境ip
33
 			// ip : "/api", // 测试环境ip
33
 			// ip : "/api", // 测试环境ip
34
 			// ip : "http://47.113.184.101", // 测试环境ip
34
 			// ip : "http://47.113.184.101", // 测试环境ip
35
 			// ip: "http://172.16.7.200", // ip
35
 			// ip: "http://172.16.7.200", // ip

+ 11 - 0
utils/util.js

@@ -1,5 +1,6 @@
1
 import Map from '@/js_sdk/fx-openMap/openMap.js'
1
 import Map from '@/js_sdk/fx-openMap/openMap.js'
2
 import permision from "@/js_sdk/wa-permission/permission.js"
2
 import permision from "@/js_sdk/wa-permission/permission.js"
3
+import store from "../store/index.js";
3
 export function mapRoutePlan(data) {
4
 export function mapRoutePlan(data) {
4
 	//既有起点也有终点
5
 	//既有起点也有终点
5
 	var options = {
6
 	var options = {
@@ -396,4 +397,14 @@ export function handleTree(data, id, parentId, children, rootId) {
396
 		return father[parentId] === rootId;
397
 		return father[parentId] === rootId;
397
 	});
398
 	});
398
 	return treeData != '' ? treeData : data;
399
 	return treeData != '' ? treeData : data;
400
+}
401
+
402
+export function getRoles() {
403
+    return store.state.user.userInfo.roles.map(item=>item.roleKey);
404
+}
405
+export function permissionCheck(roleKey,isShowToast = true) {
406
+    if(!getRoles().includes(roleKey)){
407
+        if(isShowToast) uni.$u.toast('无权限');
408
+        return false
409
+    }
399
 }
410
 }