Browse Source

Merge branch 'dev' of https://gitea.anxinyun.cn/gao.zhiyuan/Highways4Good into dev

release_0.0.4
LUCAS 2 years ago
parent
commit
385f017aea
  1. 49
      weapp/src/packages/patrol/index.jsx
  2. 19
      weapp/src/packages/patrolView/index.jsx
  3. 23
      weapp/src/pages/user/index.jsx
  4. 2
      web/client/src/sections/organization/components/depModal.js
  5. 4
      web/client/src/sections/organization/components/userModal.js
  6. 11
      web/client/src/sections/quanju/containers/example.js
  7. 16
      web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js

49
weapp/src/packages/patrol/index.jsx

@ -9,6 +9,9 @@ import './index.scss';
import arrowIcon from '../../static/img/patrol/arrow-down.svg';
const Index = () => {
const userInfo = Taro.getStorageSync('userInfo') || {};
const isSuperAdmin = userInfo && userInfo.username === 'SuperAdmin' ? true : false
const router = useRouter()
const { params: { type } } = router
const isView = type === 'view' ? true : false
@ -281,28 +284,30 @@ const Index = () => {
return (
<View className='patrol'>
<View className='report-type'>
<View className='text'>上报类型</View>
<RadioGroup onChange={handleTypeChange}>
{
typeList.map((item, i) => {
return (
<Radio
key={i}
value={item.value}
checked={item.checked}
className='radio'
color='#346FC2'
disabled={isView}
>
{item.text}
</Radio>
)
})
}
</RadioGroup>
</View>
{
!isSuperAdmin &&
<View className='report-type'>
<View className='text'>上报类型</View>
<RadioGroup onChange={handleTypeChange}>
{
typeList.map((item, i) => {
return (
<Radio
key={i}
value={item.value}
checked={item.checked}
className='radio'
color='#346FC2'
disabled={isView}
>
{item.text}
</Radio>
)
})
}
</RadioGroup>
</View>
}
<InputPicker
title='工程类型:'
placeholder='请选择工程类型'

19
weapp/src/packages/patrolView/index.jsx

@ -1,5 +1,5 @@
import React, { useState, useEffect } from 'react'
import Taro, { useDidShow } from '@tarojs/taro'
import Taro, { useDidShow, useRouter } from '@tarojs/taro'
import { View, Picker, Input, Image } from '@tarojs/components'
import moment from 'moment'
import './index.scss'
@ -15,6 +15,10 @@ import conserveIcon from '../../static/img/patrolView/conserve.svg'
import conserveActiveIcon from '../../static/img/patrolView/conserve-active.svg'
function Index() {
const userInfo = Taro.getStorageSync('userInfo') || {};
const router = useRouter()
const { params: { limit } } = router
const [isPatrol, setIsPatrol] = useState(true)
const [datePicker, setDatePicker] = useState(moment().format('YYYY-MM-DD'))
const [listData, setListData] = useState([])
@ -42,14 +46,17 @@ function Index() {
Taro.showLoading({ title: '加载中' })
request.get(
getReportList(),
{ startTime: datePicker + ' 00:00:00', endTime: datePicker + ' 23:59:59' },
{ hideErrorToast: true, hideLoading: true }
{ startTime: datePicker + ' 00:00:00', endTime: datePicker + ' 23:59:59' }
).then(res => {
Taro.hideLoading()
if (res.statusCode == 200) {
setListData(res.data)
setShowListData(res.data.filter(item => isPatrol ? item.reportType === 'patrol' : item.reportType === 'conserve'))
return res.data;
let { data } = res
if (limit === 'my') {
data = data.filter(item => item.user.name === userInfo.name)
}
setListData(data)
setShowListData(data.filter(item => isPatrol ? item.reportType === 'patrol' : item.reportType === 'conserve'))
return data;
} else {
dealError(res.data.message || '请求出错');
}

23
weapp/src/pages/user/index.jsx

@ -16,11 +16,24 @@ const { webUrl } = cfg;
const Index = ({ ...props }) => {
const userInfo = Taro.getStorageSync('userInfo') || {};
const isSuperAdmin = userInfo && userInfo.username === 'SuperAdmin' ? true : false
const changePassword = () => {
Taro.navigateTo({ url: '/packages/changePassword/index' })
}
const toMyReport = () => {
Taro.navigateTo({
url: '/packages/patrolView/index?limit=my'
})
}
const toPatrolReport = () => {
Taro.navigateTo({
url: '/packages/patrol/index?type=edit'
})
}
const onLogout = () => {
Taro.showModal({
title: '提示',
@ -36,7 +49,7 @@ const Index = ({ ...props }) => {
}
})
}
return (
<View className='page'>
<View className='myBox'>
@ -49,9 +62,11 @@ const Index = ({ ...props }) => {
</View>
</View>
<View className='box' onClick={() => goRedirect(1)}>
<View className='box' onClick={isSuperAdmin ? toPatrolReport : toMyReport}>
<Image className='box-img' src={reportImg} />
<View className='box-txt'>我的填报</View>
<View className='box-txt'>
{isSuperAdmin ? '巡查上报' : '我的上报'}
</View>
<Image className='img' src={moreImg} />
</View>
@ -60,7 +75,7 @@ const Index = ({ ...props }) => {
<View className='box-txt'>修改密码</View>
<Image className='img' src={moreImg} />
</View>
<View className='logout' onClick={onLogout}>退出登录</View>
</View>

2
web/client/src/sections/organization/components/depModal.js

@ -43,7 +43,7 @@ const DepModal = (props) => {
autocomplete: 'new-password'
}}
rules={[
{ required: true, message: '请输入部门名称' }, { max: 20, message: '请输入10个字以内的名称' }
{ required: true, message: '请输入部门名称' }, { max: 10, message: '请输入10个字以内的名称' }
]}
/>
<ProFormTreeSelect

4
web/client/src/sections/organization/components/userModal.js

@ -41,12 +41,11 @@ const UserModal = (props) => {
<ProForm.Group>
<ProFormText
name={['contract', 'name']}
maxLength={10}
width="md"
label="姓名"
required
placeholder="请输入姓名"
rules={[{ required: true, message: '请输入姓名' }]}
rules={[{ required: true, message: '请输入姓名' },{ max: 10, message: '请输入10个字以内的名称' }]}
/>
< ProFormText
name={['contract', 'phone']}
@ -156,7 +155,6 @@ const UserModal = (props) => {
function mapStateToProps(state) {
const { depMessage } = state;
console.log('depMessage:', depMessage);
const pakData = (dep) => {
// console.log(dep);
return dep.map((d) => {

11
web/client/src/sections/quanju/containers/example.js

@ -26,8 +26,7 @@ const Example = (props) => {
useEffect(() => {
const timer = setTimeout(() => {
const map = new AMap.Map(MAPID, {
const map = new AMap.Map(MAPID, {
//resizeEnable: true,
center: [115.912663, 28.543149],//地图中心点,初始定位加载显示楼块
// center: [115.857952, 28.683003],//地图中心点
@ -46,7 +45,10 @@ const Example = (props) => {
window.onload = function () {
windowOnload = true;
}
}, 100);
//主题样式
@ -57,8 +59,7 @@ const Example = (props) => {
})
map.clearMap();
if (map) map.destroy();
map = null;
clearTimeout(timer)
}
}, [])

16
web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js

@ -15,7 +15,7 @@ let underColorList = [
"rgba(255,194,20,0.5)"
]
const type = ['culvert','', 'road', 'bridge']
const type = ['culvert', '', 'road', 'bridge']
const RightBottom = (props) => {
const { roadMaintenances } = props
@ -23,7 +23,7 @@ const RightBottom = (props) => {
let typesNum = null
const list = roadMaintenances?.reportCount?.map((r, index) => {
totalData += Number(r.count)
if (r.projectType === type[index]) {
if (r.projectType === 'culvert' || 'road' || 'bridge') {
typesNum += Number(r.count)
}
switch (r.projectType) {
@ -41,12 +41,16 @@ const RightBottom = (props) => {
return {
name: '桥梁',
value: r.count
}
};
case '其他':
return {
name: '其他',
value: r.count
};
}
}).filter(f => f !== undefined)
const otherNum = totalData - typesNum
console.log();
otherNum !== null && list?.push({ name: '其他', value: otherNum })
// const otherNum = totalData - typesNum
// otherNum !== null && list?.push({ name: '其他', value: otherNum })
const style = { height: "31%", marginTop: "3%" }
return (
<>

Loading…
Cancel
Save