Commit ba5312b7 authored by 刘杰's avatar 刘杰

企业微信前端

parent de3d35c0
<template>
<view class="report-container">
<scroll-view class="scroll-list" scroll-y>
<!-- <scroll-view class="scroll-list" scroll-y> -->
<!-- 顶部统计卡片 -->
<view class="top-stats-wrapper">
<!-- 异常统计环状进度 -->
<view class="stats-card" @click="navigateToAbnormalReport">
<view class="circle-wrapper">
<view class="progress-ring" :style="{
background: `conic-gradient(#FF4D4F 0% ${currentSearchData.overview.eventRate}%, #f5f5f5 ${currentSearchData.overview.eventRate}% 100%)`
background: `conic-gradient(
#faad14 0% ${currentSearchData.overview.rate1}%,
#1890ff ${currentSearchData.overview.rate1}% ${currentSearchData.overview.rate2}%,
#52c41a ${currentSearchData.overview.rate2}% 100%
)`
}">
<view class="inner-circle">
<view class="submit-info">
<view class="count-row">
<text class="submitted error">{{currentSearchData.overview.unHandled}}</text>
<text class="should-submitted">/{{currentSearchData.overview.totalEvent}}</text>
<text class="submitted error">{{currentSearchData.overview.newCount}}</text>
<text class="submitted approving">/{{currentSearchData.overview.approving}}</text>
<text class="submitted approved">/{{currentSearchData.overview.approved}}</text>
</view>
<text class="label">异常统计</text>
</view>
......@@ -162,17 +167,17 @@
<view class="right-section">
<view class="main-info">
<view class="amount-section">
<text class="amount">{{currentSearchData.finance.payable.total}}</text>
<text class="amount">{{currentSearchData.finance.payable.totalStr}}</text>
<text class="label">应付</text>
</view>
<view class="extra-info">
<view class="info-row">
<text class="label">现结</text>
<text class="value cash">{{currentSearchData.finance.payable.cash}}</text>
<text class="value cash">{{currentSearchData.finance.payable.cashStr}}</text>
</view>
<view class="info-row">
<text class="label">月结</text>
<text class="value monthly">{{currentSearchData.finance.payable.monthly}}</text>
<text class="value monthly">{{currentSearchData.finance.payable.monthlyStr}}</text>
</view>
</view>
</view>
......@@ -207,17 +212,17 @@
<view class="sort-buttons">
<text class="sort-btn" :class="{active: sortType === 'receivable'}"
@click="sortChart('receivable','myLeaderChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
应收
</text>
<text class="sort-btn" :class="{active: sortType === 'payable'}"
@click="sortChart('payable','myLeaderChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
应付
</text>
<text class="sort-btn" :class="{active: sortType === 'profitRate'}"
@click="sortChart('profitRate','myLeaderChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
利润
</text>
</view>
......@@ -235,22 +240,22 @@
<view class="sort-buttons">
<text class="sort-btn" :class="{active: projectSortType === 'receivable'}"
@click="sortProjectChart('receivable','myProjectChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
应收
</text>
<text class="sort-btn" :class="{active: projectSortType === 'payable'}"
@click="sortProjectChart('payable','myProjectChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
应付
</text>
<text class="sort-btn" :class="{active: projectSortType === 'profitRate'}"
@click="sortProjectChart('profitRate','myProjectChart')">
<text class="sort-icon"></text>
<!-- <text class="sort-icon"></text> -->
利润
</text>
</view>
</view>
<scroll-view class="chart-scroll" scroll-x @touchmove.prevent>
<scroll-view class="chart-scroll" scroll-x @touchmove.stop>
<canvas class="chart-wrapper" id="myProjectChart"></canvas>
</scroll-view>
</view>
......@@ -258,7 +263,7 @@
<!-- 项目运营表格 -->
<view class="table-container">
<text class="table-title">模拟老板运营情况</text>
<scroll-view scroll-x class="table-scroll">
<scroll-view scroll-x class="table-scroll" @touchmove.stop>
<view class="table">
<view class="table-header">
<view class="table-row">
......@@ -289,16 +294,9 @@
</view>
</scroll-view>
</view>
</scroll-view>
<u-popup :show="showOrderEvent" mode="bottom">
<scroll-view scroll-y="true" class="scroll-Y">
<orderEventList ref="orderEventList" :isEdit="showOrderEvent" @close="orderEventClose"></orderEventList>
<!-- <orderInsertContent ref="orderInsertContent" :isEdit="showEdit" @close="orderEditClose">
</orderInsertContent> -->
</scroll-view>
<!-- </scroll-view> -->
</u-popup>
<view style="height: 10vh;"></view>
</view>
</template>
......@@ -418,6 +416,7 @@
const dataCount = this.currentData.leaderChartData.receivable.length;
// 计算所需的最小宽度(假设每个数据点需要100px)
const minWidth = Math.max(dataCount * 60, 500);
console.log("minWidth:"+minWidth)
// 设置容器宽度
const wrapper = document.getElementById('myLeaderChart');
......@@ -427,7 +426,7 @@
}
this.myLeaderChart = echarts.init(document.getElementById('myLeaderChart'))
console.log("echarts"+echarts.version);
console.log("echarts" + echarts.version);
const option = {
tooltip: {
trigger: 'axis',
......@@ -885,7 +884,11 @@
navigateToDailyReport() {
console.log('点击了日报跳转按钮');
// 直接触发父组件的 choiceItem
uni.$emit('executeChoiceItem', 'dailyReport');
// uni.$emit('executeChoiceItem', 'dailyReport');
uni.navigateTo({
url: '/pages/dailyReport/dailyReport'
});
},
},
beforeDestroy() {
......@@ -979,16 +982,18 @@
}
.report-container {
width: 100%;
box-sizing: border-box;
background-color: #F5F7FA;
min-height: calc(100vh - 60px);
// max-height: 100vh;
padding: 10px;
>view {
width: 100%;
max-width: 1200px;
// max-width: 1200px;
margin: 0 auto;
background-color: transparent;
}
......@@ -1048,7 +1053,13 @@
color: #52C41A;
&.error {
color: #FF4D4F; // 异常统计使用红色
color: #faad14; // 异常统计使用红色
}
&.approving {
color: #1890ff; // 异常统计使用红色
}
&.approved {
color: #52c41a; // 异常统计使用红色
}
}
......@@ -1530,6 +1541,7 @@
}
.chart-container {
display: block;
background-color: #fff;
border-radius: 8px;
......@@ -1633,19 +1645,17 @@
.table-scroll {
scroll-margin-left: 0;
width: 95%;
width: 98%;
margin-bottom: 10px;
overflow-x: auto;
/* 允许横向滚动 */
-webkit-overflow-scrolling: touch;
margin: 1%;
/* 启用 iOS 的平滑滚动 */
touch-action: pan-x;
/* 允许横向滚动 */
border: 1px solid #e8e8e8;
/* 可选:为滚动条添加边框 */
max-width: 100%;
/* 确保容器宽度适应 */
order-radius: 3px;
white-space: nowrap;
/deep/ .uni-table {
......
......@@ -26,7 +26,7 @@
</view>
<!-- 日报列表 -->
<scroll-view class="report-list" scroll-y :style="{ height: 'calc(100vh - 120px)' }">
<scroll-view class="report-list" scroll-y>
<view class="report-card" v-for="(report, index) in dailyReportList" :key="index">
<view class="card-header">
<view class="left">
......@@ -52,7 +52,9 @@
</view>
</view>
</view>
<view style="height: 10vh;"></view>
</scroll-view>
</view>
</template>
......@@ -143,18 +145,24 @@
</script>
<style lang="scss">
html, body {
height: 95%; /* 确保 html 和 body 高度为 100% */
margin: 0; /* 去掉默认的 margin */
overflow: hidden; /* 禁用滚动条 */
}
.daily-report {
// padding: 15px;
background: #f5f7fa;
min-height: 100vh;
// min-height: 90vh;
.report-stats {
position: fixed;
display: flex;
justify-content: space-around;
background: #fff;
padding: 20px 15px;
border-radius: 8px;
margin-bottom: 8px;
// margin-bottom: 8px;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
.stat-item {
......@@ -194,8 +202,6 @@
}
.report-list {
// 调整高度,移除分页器的空间
height: calc(100vh - 200px);
.report-card {
display: block;
......
......@@ -83,29 +83,29 @@
"proxy" : {
"/api" : {
// "target" : "http://122.112.220.204:8089",
"target" : "http://localhost:8083",
// "target" : "https://stms.bjzc-scs.com",
// "target" : "http://localhost:8083",
"target" : "https://stms.bjzc-scs.com",
"changeOrigin" : true,
"secure" : false
},
"/handler" : {
// "target" : "http://122.112.220.204:8089",
"target" : "http://localhost:8083",
// "target" : "https://stms.bjzc-scs.com",
// "target" : "http://localhost:8083",
"target" : "https://stms.bjzc-scs.com",
"changeOrigin" : true,
"secure" : false
},
"/sandtable" : {
// "target" : "http://122.112.220.204:8089",
"target" : "http://localhost:8083",
// "target" : "https://stms.bjzc-scs.com",
// "target" : "http://localhost:8083",
"target" : "https://stms.bjzc-scs.com",
"changeOrigin" : true,
"secure" : false
},
"/tmsca" : {
// "target" : "http://122.112.220.204:8089",
"target" : "http://localhost:8083",
// "target" : "https://stms.bjzc-scs.com",
// "target" : "http://localhost:8083",
"target" : "https://stms.bjzc-scs.com",
"changeOrigin" : true,
"secure" : false
}
......
......@@ -44,6 +44,14 @@
"enablePullDownRefresh": false,
"disableScroll": true
}
},
{
"path": "pages/dailyReport/dailyReport",
"style": {
"navigationBarTitleText": "查看日报",
"enablePullDownRefresh": false,
"disableScroll": true
}
}
],
"subPackages": [{
......
......@@ -187,9 +187,9 @@
onPreviewImage(index, images) {
console.log("预览图片" + images)
uni.previewImage({
current: index,
urls: images
})
current: images[index], // 当前显示的图片
urls: images // 需要预览的图片列表
});
},
copyText(text) {
uni.setClipboardData({
......
......@@ -62,6 +62,8 @@
</view>
</view>
</view>
<view style="height: 10vh;"></view>
</scroll-view>
</view>
</template>
......@@ -196,7 +198,7 @@
}
.order-list {
height: calc(100vh - 120px);
height: calc(100vh - 180px);
.order-card {
background: #fff;
......@@ -223,13 +225,13 @@
gap: 10px;
.order-id {
font-size: 16px;
font-size: 14px;
font-weight: bold;
color: #333;
}
.status {
padding: 4px 12px;
padding: 4px 6px;
border-radius: 10px;
font-size: 12px;
......
......@@ -12,9 +12,9 @@
<view v-if="currentShow === 'orderQuery'">
<orderQueryContent></orderQueryContent>
</view>
<view v-if="currentShow === 'dailyReport'">
<!-- <view v-if="currentShow === 'dailyReport'">
<dailyReport></dailyReport>
</view>
</view> -->
<view v-if="currentShow === 'bossCard' && uc_staff_kind!==''">
<bossCard></bossCard>
</view>
......@@ -47,8 +47,9 @@
return {
isCarrier: false,
uc_staff_kind: '',
currentShow: '',
topUserList: []
currentShow: 'bossCard',
topUserList: [],
}
},
onLoad() {
......@@ -72,16 +73,16 @@
updateTopUserList() {
if (this.uc_staff_kind === 'boss') {
this.topUserList = [ {
this.topUserList = [{
name: '老板看板',
key: 'bossCard',
url: '/pages/index/index'
},
{
name: '查看日报',
key: 'dailyReport',
url: '/pages/index/index'
},
// {
// name: '查看日报',
// key: 'dailyReport',
// url: '/pages/index/index'
// },
];
} else if (this.uc_staff_kind === 'simulatedBoss') {
this.topUserList = [{
......@@ -90,10 +91,6 @@
url: '/pages/index/index'
},
{
name: '查看日报',
key: 'dailyReport',
url: '/pages/index/index'
}, {
name: '填写日报',
key: 'dailyReportCreate',
url: '/pages/index/index'
......
......@@ -47,6 +47,9 @@
userLogin,
SendMessage
} from '../../api/apiList.js'
import {
format
} from 'echarts'
const loginBehavior = require('../../mixins/loginBehavior.js')
export default {
......@@ -69,10 +72,12 @@
}
},
onLoad() {
this.loginBg = 'static/img/bg/loginBg.png'
this.loginBg = 'static/img/bg/loginBg.png'
this.projectMini = getApp().globalData.projectMini
this.rememberPd()
},
methods: {
rememberPd() {
......@@ -85,6 +90,8 @@
console.log("rememberPd username2" + wx.getStorageSync('username2'))
this.formData.password = wx.getStorageSync('password')
_this.isChecked = isCheckedS
//自动登录
// this.submitForm()
} else { //用户没有勾选“记住密码”
// 清除缓存,并将输入框置为空
wx.setStorageSync('username2', '');
......
......@@ -9,9 +9,9 @@ let BASEURL = {
// url: 'http://192.168.1.199:7080' //唐浩然
// url: 'http://192.168.0.230:8080' // xiaohan
// url: "https://botms-demo.logwirecloud.com",
url: "http://localhost:8083", //开发
// url: "http://localhost:8083", //开发
// url: "http://122.112.220.204:8089", //开发
// url: "https://stms.bjzc-scs.com", //生产
url: "https://stms.bjzc-scs.com", //生产
};
//当使用多域名代理服务时生效,用于统一添加API前缀以区分服务代理地址。本地开发H5注意修改manifest.json中Proxy代理规则
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment