From e3a9edfa7a5fe7be708eaf84ea534bbde700d1e0 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期六, 07 十月 2023 12:00:12 +0800 Subject: [PATCH] # --- pages/common/data-list/dataDetail.vue | 80 +++++++++++++++++++++++--- pages/api/addMat.js | 5 + pages/component/demo.vue | 24 ++++++- components/z-data-list/z-data-list.vue | 42 +++++++++++-- README.md | 6 ++ 5 files changed, 133 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md new file mode 100644 index 0000000..99d85a0 --- /dev/null +++ b/README.md @@ -0,0 +1,6 @@ +# 涓壃WMS鎵嬫寔缁堢 + +`addMat` item鍙傛暟 +key: 鍚嶇О +value: 鍊� +type: 鍊肩被鍨� - input - number-box \ No newline at end of file diff --git a/components/z-data-list/z-data-list.vue b/components/z-data-list/z-data-list.vue index 4ec90a0..c4bb67a 100644 --- a/components/z-data-list/z-data-list.vue +++ b/components/z-data-list/z-data-list.vue @@ -3,17 +3,20 @@ <view class="main"> <view class="main-left" > <view class="main-list" v-for="it in dataList" style="width: 100%;"> - <view style="flex: 1;padding-left: 8rpx;">{{it.key}}</view> + <view class="left-key">{{it.key}}</view> <view>:</view> - <view style="flex: 3;padding-left: 8rpx;">{{it.value}}</view> + <view class="left-val"> + <text class="val-text" style="">{{it.value}}</text> + </view> </view> </view> - <view class="main-right" @click="goDetail"> - <view class="list-options"> - <view class="list-number">1</view> - <uni-icons class="opt-icon" type="right" size="20" color="#707070"></uni-icons> + <uni-badge class="main-right uni-badge-left-margin" :text="index" absolute="rightTop" size="small" type="primary"> + <view @click="goDetail"> + <view class="list-options"> + <uni-icons class="opt-icon" type="right" size="20" color="#707070"></uni-icons> + </view> </view> - </view> + </uni-badge> </view> </view> </template> @@ -55,6 +58,10 @@ default() { return {} } + }, + index: { + type: Number, + default: 2 } } } @@ -78,16 +85,20 @@ flex-direction: column; padding-top: 8rpx; padding-bottom: 8rpx; + color: #444; + font-size: 14px; } .main-right { flex: 1; display: flex; align-items: center; justify-content: center; + border-left: 1px solid #ffffff; } .main-list { display: flex; align-items: center; + margin: 8rpx 0; } .list-options { display: flex; @@ -101,4 +112,21 @@ .opt-icon { display: flex; } + .left-key { + width: 130rpx; + padding-right: 8rpx; + text-align: end; + font-weight: 700; + } + .left-val { + flex: 1; + padding-left: 8rpx; + color: #666; + } + .val-text { + background-color: blue; + padding: 2px 4px; + border-radius: 8rpx; + color: white; + } </style> \ No newline at end of file diff --git a/pages/api/addMat.js b/pages/api/addMat.js index 25bbed2..bc6b2ff 100644 --- a/pages/api/addMat.js +++ b/pages/api/addMat.js @@ -1,7 +1,7 @@ async function addMat() { let that = this,item = {}; var ress = await uni.request({ - url: 'http://127.0.0.1:8089/bfwms/mat/auth', + url: 'http://192.168.4.188:8089/bfwms/mat/auth', data: {matnr: '3CPPJ.B.GMB.LZ.QBY4-10/15P316LLZ'}, }).then((result)=> { let mat = result.data.data @@ -9,7 +9,8 @@ {key: '鍟嗗搧鐮�',value: mat.matnr}, {key: '鍟嗗搧鍚嶇О',value: mat.maktx}, {key: '瑙勬牸',value: mat.specs}, - {key: '鏁伴噺',value: 100}, + {key: '鎵瑰彿',value: '',type: 'input'}, + {key: '鏁伴噺',value: 0,type: 'number-box'}, ] },(res)=>{ console.log(res); diff --git a/pages/common/data-list/dataDetail.vue b/pages/common/data-list/dataDetail.vue index 4feda4c..fd981f1 100644 --- a/pages/common/data-list/dataDetail.vue +++ b/pages/common/data-list/dataDetail.vue @@ -1,20 +1,48 @@ <template> + <view> + <view class="main" v-for="(it,i) in dataList" :key="i"> + <view class="main-left">{{it.key}}</view> + + <view class="main-right" + v-show="!it.type"> + {{it.value}} + </view> + + <input class="main-right" + v-show="it.type == 'input'" + type="text" + v-model="it.value" + > + <view class="main-right dis-center" v-show="it.type == 'number-box'" @click="numChange(i)"> + <uni-number-box + color="#747474" + v-show="it.type == 'number-box'" + :value="it.value" + :max="99999999" + :step='1' + @change="changeValue" + /> + </view> + + </view> + + <button @click="back">back</button> + </view> </template> <script> export default { data() { return { - mat: { - matnr: null, - maktx: null, - specs: null, - batch: null, - orderNo: null, - anfme: 0, - }, + dataList: [ + {key: '鍟嗗搧缂栫爜',value: 'fbr3dasdasd242fbr3dasdasd242fbr3dasdasd242fbr3dasdasd242fbr2'}, + {key: '鎵瑰彿',value: '20231006',type: 'input'}, + {key: '鏁伴噺',value: 200,type: 'number-box'}, + ], baseIP:'', basePORT:'', + index: 0, + val: 0, } }, onLoad(option) { @@ -28,14 +56,20 @@ // 鐩戝惉acceptDataFromOpenerPage浜嬩欢锛岃幏鍙栦笂涓�椤甸潰閫氳繃eventChannel浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹� eventChannel.on('mat', function(data) { - console.log(data); + that.dataList = data.data }) }, methods: { + numChange(i) { + this.dataList[i].value = this.val + }, + changeValue(value) { + this.val = value + }, back() { - this.getOpenerEventChannel().emit('matList', {data: this.mat}); + this.getOpenerEventChannel().emit('dataList', {data: this.dataList}); uni.navigateBack({ }) @@ -44,5 +78,29 @@ } </script> -<style> +<style scoped> + .main { + display: flex; + border-bottom: 1px solid #333; + min-height: 70rpx; + align-items: center; + margin-left: 8px; + padding: 8rpx; + } + .main-left { + width: 140rpx; + text-align: right; + } + .main-right { + flex: 1; + background-color: aquamarine; + margin-left: 8rpx; + display: flex; + flex-wrap: wrap; + /* word-wrap: break-word; */ + word-break: break-all; + } + .dis-center { + justify-content: center; + } </style> \ No newline at end of file diff --git a/pages/component/demo.vue b/pages/component/demo.vue index 55b9159..650200f 100644 --- a/pages/component/demo.vue +++ b/pages/component/demo.vue @@ -17,7 +17,14 @@ <hr> - <z-data-list class="data-list" v-for="it in zDataList" @goDetail='goDetail(it.item)' :list="it" ></z-data-list> + <z-data-list class="data-list" + v-for="(it,i) in zDataList" + :key="i" + :list="it" + :index="i+1" + @goDetail='goDetail(it.detl)' + + ></z-data-list> <button @click="add">add</button> @@ -39,7 +46,17 @@ {name: 'yyy',desc: '鎵樼洏鐮�',val: '2',lenCheck: 8,focus: false}, {name: 'aaa',desc: '鐗╂枡鐮�',btn: true,btnName: '鎻愬彇',placeholder: '',val: '1',focus: false} ], - zDataList: [], + zDataList: [ + { + detl: [ + {key: '鍟嗗搧鐮�',value: 'ccc'}, + {key: '鍟嗗搧鍚嶇О',value: 'ccc'}, + {key: '瑙勬牸',value: 'ccc'}, + {key: '鎵瑰彿',value: '16',type: 'input'}, + {key: '鏁伴噺',value: 0,type: 'number-box'}, + ] + } + ], } }, methods: { @@ -70,7 +87,6 @@ }, goDetail(param) { - console.log(param); uni.navigateTo({ url: '/pages/common/data-list/dataDetail', // 浼� @@ -81,7 +97,7 @@ }, // 鎺� events: { - matList: function(data) { + dataList: function(data) { console.log(data); }, }, -- Gitblit v1.9.1