From 682182cf67a5aa9fed34335fea22d4673f30f10c Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期一, 04 九月 2023 11:59:44 +0800
Subject: [PATCH] 小程序
---
minipro_standard/pages/index/index.vue | 509 ++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 383 insertions(+), 126 deletions(-)
diff --git a/minipro_standard/pages/index/index.vue b/minipro_standard/pages/index/index.vue
index 32bb5b8..9c02c28 100644
--- a/minipro_standard/pages/index/index.vue
+++ b/minipro_standard/pages/index/index.vue
@@ -1,149 +1,406 @@
<template>
- <view class="content">
- <view class="p40 nav bbox">
- <view class="">鍚堣偉甯傛櫤鏀规暟杞瘖鏂湇鍔″钩鍙�</view>
- <view class="">娆㈣繋鐧诲綍</view>
- </view>
- <view class="p40 mt30">
- <u--input
- placeholder="璇疯緭鍏ヨ处鍙�"
- prefixIcon="account"
- clearable
- v-model="form.account"
- prefixIconStyle="font-size: 40rpx;color: #AAAAAA"
- ></u--input>
- <view class="p20"></view>
- <u--input
- placeholder="璇疯緭鍏ュ瘑鐮�"
- prefixIcon="lock"
- password
- clearable
- v-model="form.password"
- prefixIconStyle="font-size: 40rpx;color: #AAAAAA"
- ></u--input>
- <view class="ptb50"></view>
- <u-button
- :loading="logining"
- type="primary"
- color="#216EEE"
- text="鐧诲綍"
- size="large"
- @click="loginAction"
- ></u-button>
- </view>
-
+ <view class="index">
+ <!-- <web-view v-if="show" @onPostMessage="onMessage" :src="'https://dmtest.ahapp.net/doumeeplant_h5/#/appletLogin?code=' + code"></web-view> -->
+ <!-- {{$store.state.statusbarHeight}} -->
+
+ <u-sticky>
+ <view class="plr50 pb30 nav-style">
+ <view
+ :style="{paddingTop: `${statusbarHeight}px`, height: `${navHeight}px`, lineHeight:`${navHeight}px`, textAlign: 'center'}">
+ 寰呭姙</view>
+ <view class="cY">
+ <u-search placeholder="鎼滅储鍏抽敭瀛�" bgColor="#f7f7f7" :showAction="false" @search="scrolltoupper"
+ shape="square" v-model="searchForm.name"></u-search>
+ <image src="../../static/filter@2x.png" class="img48 ml20" @click="filterAction" mode=""></image>
+ </view>
+ <view class="cY mt30">
+ <view class="sbtn rd8" :class="searchForm.status==0?'sbtn_green':'sbtn_black_rim'"
+ @click="selectType(0)">寰呭姙</view>
+ <view class="sbtn rd8 ml20" :class="searchForm.status==1?'sbtn_green':'sbtn_black_rim'"
+ @click="selectType(1)">宸插姙</view>
+ </view>
+ </view>
+ </u-sticky>
+
+ <u-list :showScrollbar="false" @scrolltolower="scrolltolower" @scrolltoupper="scrolltoupper"
+ :height="windowHeight - (statusbarHeight + navHeight + 120) + 'px'">
+ <u-list-item v-for="(item, index) in projectList" :key="index">
+ <view class="box_list">
+ <view class="box_list_item" @click="jump(item)">
+ <view class="box_list_item_icon">
+ <image src="../../static/daiban_ic_daiban@2x.png" mode=""></image>
+ </view>
+ <view class="box_list_item_nr">
+ <view class="box_list_item_nr_top">
+ <span>{{item.title}}</span>
+ <span>{{item.createTime}}</span>
+ </view>
+ <view class="box_list_item_nr_bottom">
+ {{item.content}}
+ </view>
+ </view>
+ </view>
+ </view>
+ </u-list-item>
+ </u-list>
+ <u-popup :show="show" @close="close" :round="8" zIndex="20000">
+ <view class="rp p40 contanir">
+ <view class="c2 b">绫诲瀷</view>
+ <view class="content">
+ <u-grid col="2" :border="false">
+ <u-grid-item v-for="item in types" :key="item.id">
+ <view class="ptb20 c9 type-style tc rd10"
+ :class="type===item.id?'sbtn_green':'sbtn_gray'"
+ @click="type=item.id">{{ item.name }}</view>
+ </u-grid-item>
+ </u-grid>
+ </view>
+ <view class="flex ap tc bottom-view">
+ <view class="fx1 ptb20 sbtn_gray c9" @click="resetType">閲嶇疆</view>
+ <view class="fx1 ml20 ptb20 sbtn_green" @click="confirm">纭畾</view>
+ </view>
+ </view>
+ </u-popup>
+ <myTabbar :index="0" />
</view>
</template>
-<script>
-
- import { coustomLogin, wxEmpower } from '@/util/api/index'
+<script>
+ import myTabbar from "@/components/myTabber.vue"
+ import {
+ mapState
+ } from 'vuex'
export default {
+ components: {
+ myTabbar
+ },
data() {
return {
- form: {
- account: '',
- password: '',
- },
- logining: false,
- openId: ''
+ code: '',
+ windowHeight: '',
+ show: false,
+ types: [{
+ id: 0,
+ name: '杞﹂棿棰嗘枡-寰呭彂璐�'
+ },
+ {
+ id: 1,
+ name: '杞﹂棿棰嗘枡-寰呭叆搴�'
+ },
+ {
+ id: 2,
+ name: '鏈哄彴澶囨枡-寰呭彂璐�'
+ },
+ {
+ id: 3,
+ name: '鏈哄彴澶囨枡-寰呭叆搴�'
+ },
+ {
+ id: 4,
+ name: '瀹屽伐鍏ュ簱-寰呮帴鏀�'
+ },
+ {
+ id: 5,
+ name: '搴撳瓨杞簱-寰呭彂璐�'
+ },
+ {
+ id: 6,
+ name: '搴撳瓨杞簱-寰呭叆搴�'
+ },
+ {
+ id: 7,
+ name: '鐢宠瀹℃壒'
+ },
+ {
+ id: 8,
+ name: '瀹㈤��/杩斿搧鍥炲巶妫�楠�'
+ }
+ ],
+ type: '',
+ searchForm: {
+ name: '',
+ status: 0,
+ type: ''
+ },
+ projectList: [{
+ title: '212132',
+ createTime: '2023-08-28',
+ content: 'asdsadsax鎵嬫墦澶ц惃杈剧殑鍟婂疄鎵揳s'
+ },
+ {
+ title: '212132',
+ createTime: '2023-08-28',
+ content: 'asdsadsax鎵嬫墦澶ц惃杈剧殑鍟婂疄鎵揳s'
+ },
+ {
+ title: '212132',
+ createTime: '2023-08-28',
+ content: 'asdsadsax鎵嬫墦澶ц惃杈剧殑鍟婂疄鎵揳s'
+ },
+ {
+ title: '212132',
+ createTime: '2023-08-28',
+ content: 'asdsadsax鎵嬫墦澶ц惃杈剧殑鍟婂疄鎵揳s'
+ },
+ ]
}
- },
- onLoad() {
- uni.login({
- success: data => {
- this.wxLogin(data.code)
- },
- fail: err => {
- uni.$u.toast(err)
- }
- })
+ },
+ computed: {
+ ...mapState(['statusbarHeight', 'navHeight']),
+ },
+ onLoad() {
+ uni.getSystemInfo({
+ success: res => {
+ this.windowHeight = res.windowHeight
+ }
+ })
+
+ var that = this
+ uni.login({
+ provider: 'weixin',
+ success: function(loginRes) {
+ // console.log(loginRes);
+ that.code = loginRes.code
+ }
+ });
},
methods: {
- loginAction() {
- if (!this.form.account || !this.form.password) {
- uni.$u.toast('璐﹀彿鎴栬�呭瘑鐮佷笉鑳戒负绌�')
- }
- this.logining = true
- coustomLogin({...this.form, openid: this.openId})
- .then(res => {
- this.$store.commit('SETTOKEN', res.token)
- this.$store.commit('SETUSERINFO', res)
- uni.navigateTo({
- url:'/pages/projectList/projectList'
- })
- })
- .finally(() => {
- this.logining = false
- })
- },
- wxLogin(code) {
- wxEmpower({code})
- .then(res => {
- this.openId = res.openid
- if (res.userInfo) {
- this.$store.commit('SETTOKEN', res.userInfo.token)
- this.$store.commit('SETUSERINFO', res.userInfo)
- uni.navigateTo({
- url:'/pages/projectList/projectList'
- })
- }
- })
- .catch(err => {
- uni.$u.toast(err)
- })
+ scrolltolower() {},
+ scrolltoupper() {},
+ selectType(status) {
+ if (this.searchForm.status == status) return
+ this.searchForm.status = status
+ this.scrolltoupper()
+ },
+ jump(item) {
+ if ((item.type === 0 || item.type === 2 || item.type === 5) && item.status === 0) { // 璺宠浆鍑哄簱(杞簱鍗�)
+ router.push({
+ name: 'issueOperation',
+ query: {
+ id: item.objId,
+ dbid: item.id,
+ type: 7
+ }
+ })
+ } else if ((item.type === 0 || item.type === 2 || item.type === 5) && item.status === 1) {
+ router.push({
+ name: 'wTransferDetail',
+ query: {
+ id: item.objId,
+ status: item.status,
+ type: item.type,
+ dbid: item.id
+ }
+ })
+ // router.push({ name: 'wTransferDetail', query: { id: item.objId, status: 0, type: item.type, dbid: item.id } })
+ } else if ((item.type === 1 || item.type === 4 || item.type === 6) && item.status === 0) { // 璺宠浆鍏ュ簱(杞簱鍗�)
+ if (item.type === 4) { // 璺宠浆瀹屽伐鍏ュ簱璇︽儏
+ router.push({
+ name: 'completionDetails',
+ query: {
+ id: item.objId,
+ dbid: item.id,
+ type: 7,
+ isShow: 1,
+ Type: item.type
+ }
+ })
+ return
+ }
+ router.push({
+ name: 'warehousing',
+ query: {
+ id: item.objId,
+ dbid: item.id,
+ type: 7
+ }
+ })
+ } else if ((item.type === 1 || item.type === 4 || item.type === 6) && item.status === 1) {
+ if (item.type === 4) { // 璺宠洓瀹屽伐鍏ュ簱璇︽儏
+ router.push({
+ name: 'completionDetails',
+ query: {
+ id: item.objId,
+ dbid: item.id,
+ type: 7,
+ isShow: 2
+ }
+ })
+ return
+ }
+ router.push({
+ name: 'wTransferDetail',
+ query: {
+ id: item.objId
+ }
+ })
+ } else if (item.type === 3 && item.status === 0) { // 纭澶囨枡
+ router.push({
+ name: 'orderStock',
+ query: {
+ id: item.objId,
+ dbid: item.id
+ }
+ })
+ } else if (item.type === 3 && item.status === 1) { // 澶囨枡锛堣浆搴撳崟璇︽儏锛�
+ // router.push({ name: 'wInboundDetail', query: { id: item.objId } })
+ router.push({
+ name: 'wTransferDetail',
+ query: {
+ id: item.objId
+ }
+ })
+ } else if (item.type === 9 && item.status === 0) { // 璋冩暣鍏ュ簱(鍏ュ簱鍗�)
+ router.push({
+ name: 'warehousing',
+ query: {
+ id: item.objId,
+ dbid: item.id,
+ type: 9
+ }
+ })
+ } else if (item.type === 9 && item.status === 1) {
+ router.push({
+ name: 'wInboundDetail',
+ query: {
+ id: item.objId
+ }
+ })
+ }
+ },
+ filterAction() {
+ this.show = true
+ },
+ close() {
+ this.show = false
+ },
+ resetType() {
+ this.type = ''
+ this.searchForm.type = ''
+ this.confirm()
+ },
+ confirm() {
+ this.searchForm.type = this.type
+ this.show = false
+ this.scrolltoupper()
}
}
}
</script>
<style lang="scss" scoped>
- .content {
- // display: flex;
- // flex-direction: column;
- // align-items: center;
- // justify-content: center;
- height: 100vh;
- background-color: #FFFFFF;
- .nav {
-
- width: 750rpx;
- height: 520rpx;
- background: linear-gradient(180deg, #C7EBFF 0%, #FFFFFF 100%);
- display: flex;
- flex-direction: column-reverse;
- color: #293C5B;
- :first-child {
- height: 52rpx;
- font-size: 36rpx;
- line-height: 52rpx;
- }
- :last-child {
- height: 80rpx;
- font-size: 56rpx;
- font-weight: 500;
- line-height: 80rpx;
- margin-bottom: 16rpx;
- }
+ .index {
+ width: 100vw;
+ height: 100vh;
+ }
+
+ .nav-style {
+ border-bottom: 20rpx #f7f7f7 solid;
+ }
+
+ .box_list {
+ width: 100%;
+ padding: 0 30rpx;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
+
+ .box_list_item {
+ padding: 30rpx 0;
+ display: flex;
+ border-bottom: 1rpx solid #E5E5E5;
+
+ &:last-child {
+ border: none;
+ }
+
+ .box_list_item_icon {
+ flex-shrink: 0;
+ width: 64rpx;
+ height: 64rpx;
+ margin-right: 24rpx;
+ position: relative;
+
+ .box_list_item_icon_active {
+ position: absolute;
+ right: 0;
+ top: 0;
+ width: 18rpx;
+ height: 18rpx;
+ border-radius: 50%;
+ background: #DE5243;
+ border: 2rpx solid #FFFFFF;
+ }
+
+ image {
+ width: 100%;
+ height: 100%;
+ }
+ }
+
+ .box_list_item_nr {
+ flex: 1;
+ display: flex;
+ flex-direction: column;
+
+ .box_list_item_nr_top {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+
+ span {
+ &:first-child {
+ font-size: 30rpx;
+ font-weight: 500;
+ max-width: 450rpx;
+ color: #222222;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ -o-text-overflow: ellipsis;
+ }
+
+ &:last-child {
+ flex-shrink: 0;
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #999999;
+ margin-left: 10rpx;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ -o-text-overflow: ellipsis;
+ }
+ }
+ }
+
+ .box_list_item_nr_bottom {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #666666;
+ margin-top: 16rpx;
+ word-break: break-all;
+ }
+ }
}
}
- .logo {
- height: 200rpx;
- width: 200rpx;
- margin-top: 200rpx;
- margin-left: auto;
- margin-right: auto;
- margin-bottom: 50rpx;
+ .contanir {
+ height: calc(env(safe-area-inset-bottom) + 720rpx);
+
+ .content {
+ margin-top: 20rpx;
+
+ .type-style {
+ width: 325rpx;
+ margin-bottom: 20rpx;
+ }
+ }
}
- .text-area {
- display: flex;
- justify-content: center;
- }
-
- .title {
- font-size: 36rpx;
- color: #8f8f94;
+ .bottom-view {
+ left: 40rpx;
+ right: 40rpx;
+ bottom: 0
}
</style>
--
Gitblit v1.9.3