Commit 58c0428b authored by cellee's avatar cellee

Signed-off-by: cellee <893264950@qq.com>

parents eca23140 b005129a
......@@ -5,10 +5,8 @@ import SearchOptionsTow from './SearchOptionsTow';
const SearchOptionsCommnity = (props: any) => {
const {dispatch, CommunityList, opname ,defaultName} = props;
const tosCommunityget = (values:any) => {dispatch({type: 'Init/tosCommunityget',playload:values})};
const { dispatch, CommunityList, opname, defaultName } = props;
const tosCommunityget = (values: any) => { dispatch({ type: 'Init/tosCommunityget', playload: values }) };
useEffect(() => {
if (CommunityList == null) {
tosCommunityget(null)
......@@ -24,7 +22,7 @@ const SearchOptionsCommnity = (props: any) => {
return (
<>{CommunityList!=null?
<>{CommunityList != null ?
// <SearchOptions
// titleSearch={titleSearch}
// disabled={disabled}
......@@ -33,13 +31,13 @@ const SearchOptionsCommnity = (props: any) => {
// list={CommunityList}
// onSubmit={extendName} />
<SearchOptionsTow list={CommunityList} extendName={extendName} def = {defaultName}></SearchOptionsTow>
:null
<SearchOptionsTow list={CommunityList} extendName={extendName} def={defaultName}></SearchOptionsTow>
: null
}
</>
);
};
function mapStateToProps(state:any) {
function mapStateToProps(state: any) {
const { CommunityList } = state.Init;
return {
CommunityList,
......
......@@ -2,16 +2,15 @@ import React from 'react'
import { Select } from 'antd';
const { Option } = Select;
const SearchOptionsTow = (porps:any) => {
const SearchOptionsTow = (porps: any) => {
const {list,extendName,def} = porps;
const options = list.map((d:any,index:number) => <Option value={d} key={index}>{d}</Option>);
function onChange(value:any) {
const { list, extendName, def } = porps;
const options = list.map((d: any, index: number) => <Option value={d} key={index}>{d}</Option>);
function onChange(value: any) {
// console.log(`selected ${value}`);
extendName(value)
}
return (
<div>
<Select
......
import React, { useState, useEffect, useRef } from 'react';
import styles from './css/Detail.less';
import { Input ,Form,Row,Col,Upload,Spin, Button,Descriptions} from 'antd';
import { Input, Form, Row, Col, Upload, Spin, Button, Descriptions } from 'antd';
import { Link, useIntl, connect, Dispatch } from 'umi';
import TextArea from 'antd/lib/input/TextArea';
......@@ -14,18 +14,18 @@ import { getCookie } from '@/utils/method';
import { timestampToTime } from '@/utils/time';
import { validateMessages } from '@/utils/params';
const treatStatus=["Pending","Processed"]
const treatStatus = ["Pending", "Processed"]
const Detail = (props:any) => {
const Detail = (props: any) => {
const [editorFlag, setEditorFlag] = useState(true);
const { dispatch, location,CurDataDetail } = props;
const fromRef=useRef(null)
const RA = (index:any,values: any) => { dispatch({ type: 'CommunityService/RA', playload: { index: index, body: values } }) };
const { dispatch, location, CurDataDetail } = props;
const fromRef = useRef(null)
const RA = (index: any, values: any) => { dispatch({ type: 'CommunityService/RA', playload: { index: index, body: values } }) };
const [curString, setCurString] = useState({ readyState: false})
const [curString, setCurString] = useState({ readyState: false })
const [loading, setLoading] = useState(false)
const [headTitle, setHeadTitle] = useState("");
......@@ -38,23 +38,22 @@ const Detail = (props:any) => {
"Reply To Problem Feedback"]
useEffect(() => {
if ((location.pathname).indexOf("/Edit")>-1) {
if ((location.pathname).indexOf("/Edit") > -1) {
setEditorFlag(true)
} else {
setEditorFlag(false)
}
RA(21,{
RA(21, {
serviceType: location.query.serviceType,
id: location.query.id
})
setHeadTitle(headTitles[parseInt(location.query.serviceType)- 1])
setHeadTitle(headTitles[parseInt(location.query.serviceType) - 1])
setLoading(true)
},[location.pathname]);
useEffect(() => {
}, [location.pathname]);
useEffect(() => {
if (CurDataDetail != null && curString.readyState == true) {
console.log("@@@@@@@@@@@@@@@@@@@@@@@@@@@@")
console.log(CurDataDetail)
......@@ -65,17 +64,18 @@ const Detail = (props:any) => {
setLoading(false)
}
}, [CurDataDetail])
useEffect(()=>{
useEffect(() => {
setCurString({ readyState: true })
console.log("页面准备好了")
},[])
}, [])
const onFinish = (values:any) => {
const onFinish = (values: any) => {
console.log(values)
var val = values;
val.handleName =getCookie("name")
val.handleContacts=getCookie("phone")
val.type =""+ location.query.serviceType
val.handleName = getCookie("name")
val.handleContacts = getCookie("phone")
val.type = "" + location.query.serviceType
val.id = location.query.id
val.userId = location.query.user_id
val.communityId = location.query.community_id
......@@ -87,7 +87,7 @@ const Detail = (props:any) => {
};
const titleProps = {
sublist: CurDataDetail != null?['Status : ' + treatStatus[CurDataDetail.status], 'Create Time : ' + CurDataDetail.time]:null,
sublist: CurDataDetail != null ? ['Status : ' + treatStatus[CurDataDetail.status], 'Create Time : ' + CurDataDetail.time] : null,
title: headTitle
}
......@@ -110,12 +110,12 @@ const Detail = (props:any) => {
</Descriptions>
<Row gutter={16}>
<Col span={3}>Description:</Col>
<Col><TextArea style={{ width: 394, height: 80,padding:8 }} autoSize={false} disabled value={CurDataDetail.content}/></Col>
<Col><TextArea style={{ width: 394, height: 80, padding: 8 }} autoSize={false} disabled value={CurDataDetail.content} /></Col>
</Row>
<Row gutter={16} style={{marginTop:20}}>
<Row gutter={16} style={{ marginTop: 20 }}>
<Col span={3}>Picture:</Col>
<Col>{
CurDataDetail!=null?
CurDataDetail != null ?
<PictureOptionsRow
action="/tos/communtiy/service/reply/img"
disabled={true}
......@@ -126,7 +126,7 @@ const Detail = (props:any) => {
extends: "",
}}
//
/>:null
/> : null
}</Col>
</Row>
......@@ -143,7 +143,7 @@ const Detail = (props:any) => {
: null}
<Row gutter={16} style={{ marginTop: 20 }}>
<Col span={3}>Solution & Conclusion:</Col>
<Col ><Form.Item name="replyContent" rules={[{required:true,max:300}]} ><TextArea style={{padding:8, width: 394, height: 80 }} autoSize={false} disabled={!editorFlag} /></Form.Item></Col>
<Col ><Form.Item name="replyContent" rules={[{ required: true, max: 300 }]} ><TextArea style={{ padding: 8, width: 394, height: 80 }} autoSize={false} disabled={!editorFlag} /></Form.Item></Col>
</Row>
<Row gutter={16}>
<Col span={3}></Col>
......@@ -161,7 +161,7 @@ const Detail = (props:any) => {
extends: "",
}} />
</Form.Item>
</>:null
</> : null
}
......@@ -172,7 +172,7 @@ const Detail = (props:any) => {
</Row>
{
editorFlag ?
<><Line /><Row><Col span={3}></Col><Col><Form.Item><Button type="primary" htmlType="submit">Submit</Button></Form.Item></Col></Row></>:null
<><Line /><Row><Col span={3}></Col><Col><Form.Item><Button type="primary" htmlType="submit">Submit</Button></Form.Item></Col></Row></> : null
}
</Form>
</div>
......@@ -183,7 +183,7 @@ const Detail = (props:any) => {
);
};
function mapStateToProps(state:any) {
function mapStateToProps(state: any) {
const { CurDataDetail } = state.CommunityService;
return {
CurDataDetail
......
import React, { useState, useEffect } from 'react';
import styles from './css/index.less';
import { Input ,Menu,Table,Space,Upload,message,Pagination, Button } from 'antd';
import { Input, Menu, Table, Space, Upload, message, Pagination, Button } from 'antd';
import { Link, useIntl, connect, Dispatch,history } from 'umi';
import { Link, useIntl, connect, Dispatch, history } from 'umi';
import { timestampToTime3 } from '../../utils/time';
......@@ -11,10 +11,10 @@ import { RA, urlEncode, filterObj, filterObjbyTg } from '@/utils/method';
const pathname = ["CommunityMaintenance", "ShelfLifeService", "OwnerComplaints", "ReportOnline", "ProblemFeedback"]
const handle_Status = [[0,"Pending"], [1,"Processed"]]//["未处理","处理","拒绝"] , [2,"Rejected"]
const handle_Status = [[0, "Pending"], [1, "Processed"]]//["未处理","处理","拒绝"] , [2,"Rejected"]
const goToName = ["Reply", "Detail"];
const module="CommunityService"
const module = "CommunityService"
const PropertyServices = (props: any) => {
const { dispatch, location, Data } = props;
......@@ -22,15 +22,15 @@ const PropertyServices = (props: any) => {
const [loading, setLoading] = useState(false)
const [pageNum, setPageNum] = useState(1)
const [serviceTypeGobal, setServiceType] = useState("")
const [readyData,setReadyData]=useState(null)
const [readyData, setReadyData] = useState(null)
const columns = [
{ title: "Community Name",dataIndex: 'community_name',},
{ title: "Ower Name",dataIndex: 'ower_name',},
{ title: "Reply",dataIndex: 'handle_name',render: (text: any) => (<Space size="middle">{text!=null?text:"--"}</Space>)},
{ title: "Create Time",dataIndex: "create_time",render: (text: any, record: any) => (<Space size="middle">{timestampToTime3(text.time)}</Space>)},
{ title: "Handle status", dataIndex: 'handle_status',render: (text: any, record: any) => (<Space size="middle">{handle_Status[text][1]}</Space>)},
{ title: "Actions",dataIndex: 'handle_status',render: (text: any, record: any) => (<Space size="middle"><a onClick={goToDetail.bind(this,text,record)}>{goToName[text]}</a></Space>)},
{ title: "Community Name", dataIndex: 'community_name', },
{ title: "Ower Name", dataIndex: 'ower_name', },
{ title: "service Content", dataIndex: 'service_content', ellipsis: true, width: 500, render: (text: any) => (<Space size="middle">{text != null ? text : "--"}</Space>) },
{ title: "Create Time", dataIndex: "create_time", render: (text: any, record: any) => (<Space size="middle">{timestampToTime3(text.time)}</Space>) },
{ title: "Handle status", dataIndex: 'handle_status', render: (text: any, record: any) => (<Space size="middle">{handle_Status[text][1]}</Space>) },
{ title: "Actions", dataIndex: 'handle_status', render: (text: any, record: any) => (<Space size="middle"><a onClick={goToDetail.bind(this, text, record)}>{goToName[text]}</a></Space>) },
];
const goToDetail = (value: any, record: any, e: any) => {
......@@ -39,38 +39,40 @@ const PropertyServices = (props: any) => {
console.log(record);
//页面递进
history.push(
location.pathname+(value==0?"/Edit":"/Detail")+urlEncode(
location.pathname + (value == 0 ? "/Edit" : "/Detail") + urlEncode(
{
serviceType: serviceTypeGobal,
id: record.id,
user_id:record.user_id,
community_id:record.community_id
user_id: record.user_id,
community_id: record.community_id
}
)
)
}
useEffect(() => {
if (Data != null) {setLoading(false)}
if (Data != null) { setLoading(false) }
}, [Data]);
const ClickTitleSearch = (comment: any) => {
//页面搜索
comment.serviceType = serviceTypeGobal
comment.current = 1
history.push(location.pathname+urlEncode(filterObj(comment)))
history.push(location.pathname + urlEncode(filterObj(comment)))
}
const PageChange = (values: any) => { //.current
//页面跳转参数
var tmp = filterObjbyTg(location.query, ["handleStatus", "ownerName", "communityName"])
tmp["current"]=values.current
tmp["current"] = values.current
history.push(location.pathname + urlEncode(tmp))
}
useEffect(()=>{
useEffect(() => {
if (location != null) {
//细分类:页面指令
var serviceType =""
var serviceType = ""
pathname.map((item, index) => {
if ((location.pathname).indexOf(item) > -1) {
serviceType = "" + (index + 1)
......@@ -78,7 +80,7 @@ const PropertyServices = (props: any) => {
}
})
//分页设置
if (location.query.current!=null) {
if (location.query.current != null) {
setPageNum(parseInt(location.query.current))
} else {
setPageNum(1)
......@@ -122,7 +124,7 @@ const PropertyServices = (props: any) => {
style={{ marginTop: 16 }}
loading={loading}
columns={columns}
dataSource={ Data != null ?Data.data.rows:[]}
dataSource={Data != null ? Data.data.rows : []}
pagination={Data != null ? { current: pageNum, total: Data.data.rows.length } : {}}
onChange={PageChange}
/>
......@@ -130,7 +132,7 @@ const PropertyServices = (props: any) => {
);
};
function mapStateToProps(state:any) {
function mapStateToProps(state: any) {
const { Data } = state.CommunityService;
return {
Data
......
import React, { useState, useEffect,useRef} from 'react';
import { Input ,Tabs,Table,Space, Button} from 'antd';
import React, { useState, useEffect, useRef } from 'react';
import { Input, Tabs, Table, Space, Button } from 'antd';
const { TabPane } = Tabs;
import {connect,history} from 'umi';
import { connect, history } from 'umi';
import TitleSearch from '../../components/TitleSearch/TitleSearch';
import { RA, SA, urlEncode, filterObj, filterObjbyTg } from '@/utils/method';
import { RA, SA } from '@/utils/method';
import { objectColumns, stringTab } from '@/utils/string';
import { timestampToTime } from '@/utils/time';
const module="CommunityService"
const Renovation = (props:any) => {
const module = "CommunityService"
const Renovation = (props: any) => {
// const decoration_status = [[0, "待处理"], [1, "已批准"], [2, "已拒绝"]]
const decoration_status = [[0, "Pending"], [1, "Approved"], [2, "Rejected"]]
const pathname = ["CommunityMaintenance", "ShelfLifeService", "OwnerComplaints", "ReportOnline", "ProblemFeedback"]
const [loading, setLoading] = useState(false)
const [serviceTypeGobal, setServiceType] = useState("")
const [pageNum, setPageNum] = useState(1)
const [readyData, setReadyData] = useState(null)
const columns = objectColumns([
["Community", "community_name"],
["Applicant", "applyfor_name"],
["Unit", null, (text: any, record: any) => (<div>{record.community_build_decorate}#{record.community_floor_decorate}-{record.community_room_decoate}</div>)],
["Content", "decoration_content", (text: any) => (<div>{stringTab(text)}</div>)],
["Request Time", "create_time",(text: any) => (<div>{timestampToTime(text.time)}</div>)],
["status", "decoration_status",(text: any) => (<div>{decoration_status[parseInt(text)][1]}</div>)],
["Actions",null, (text: any, record: any) => (<Space size="middle"> <a onClick={goToDetail.bind(this,record)}>Detail</a></Space>)],
["Request Time", "create_time", (text: any) => (<div>{timestampToTime(text.time)}</div>)],
["status", "decoration_status", (text: any) => (<div>{decoration_status[parseInt(text)][1]}</div>)],
["Actions", null, (text: any, record: any) => (<Space size="middle"> <a onClick={goToDetail.bind(this, record)}>Detail</a></Space>)],
])
const { dispatch, Data8 } = props;
const formRef = useRef(null)
const { dispatch, Data8, location } = props;
useEffect(() => {
if (Data8 != null) { setLoading(false) }
}, [Data8]);
useEffect(() => {
if (location != null) {
//前置数据
console.log("前置数据");
let tmp: any = filterObjbyTg(location.query, ["handleStatus", "ownerName", "communityName", "current"])
tmp.handleStatus = decoration_status[parseInt(tmp.handleStatus)] //特殊处理
useEffect(()=>{
setReadyData(tmp)
//获取数据
setLoading(true)
RA(23, { serviceType: "6", id: "" }, module, dispatch)
}
}, [location])
// applyfor_name: "jack-小白白"
// communityId: "7e5c6fd2f4ba497a90e64535df6e9088"
// community_build_decorate: "01"
// community_floor_decorate: "00"
// community_name: "A4"
// community_room_decoate: "767"
// contact_name: "15626274096"
// contact_phone: "jack-小白白"
// create_time: {date: 10, day: 4, hours: 19, minutes: 39, month: 8, …}
// decorationBegin_time: {date: 10, day: 4, hours: 0, minutes: 0, month: 8, …}
// decorationEnd_time: {date: 10, day: 4, hours: 0, minutes: 0, month: 8, …}
// decoration_content: "滚滚滚"
// decoration_status: 0
// deleted: 0
// id: "977591272158003200"
// ownerId: "c4da40676d044487b37e7a1bdc6dd045"
// update_time: {
// date: 10, day: 4, hours: 19, minutes:
}, [])
//页面搜索
const ClickTitleSearch = (comment: any) => {
let tmp = filterObjbyTg(comment, ["handleStatus", "ownerName", "communityName"])
tmp["current"] = 1
console.log(tmp)
history.push(location.pathname + urlEncode(tmp))
}
const goToDetail = (values: any, e: any) => {
SA(values,module,dispatch)
SA(values, module, dispatch)
history.push('./RenovationApplication/Detail')
}
return (
......@@ -61,10 +71,22 @@ const Renovation = (props:any) => {
{
Data8 != null ?
<>
<Table loading={false} rowKey="id" style={{ marginTop: 16 }}
<TitleSearch
communitySelect={true}
listkey={['ownerName']}
list={['Owner Name']}
status={[{ name: ["handleStatus", "Status"], data: decoration_status }]}
defaultValue={readyData}
onSubmit={ClickTitleSearch}
/>
<Table
loading={loading}
rowKey="id"
style={{ marginTop: 16 }}
dataSource={Data8.data.rows}
columns={columns}
pagination={{ defaultCurrent: 1, total: Data8.total }} />
pagination={{ defaultCurrent: 1, total: Data8.total }}
/>
</>
: null
}
......@@ -72,8 +94,8 @@ const Renovation = (props:any) => {
);
};
function map(state:any) {
const { Data8} = state[module]
return { Data8}
function map(state: any) {
const { Data8 } = state[module]
return { Data8 }
}
export default connect(map)(Renovation);
......@@ -66,7 +66,7 @@ const ChargeDetail = (props: any) => {
<Pagination simple defaultCurrent={curpage} total={pages * 10} onChange={pageChange} />
</div>
<>
<Tooltip title={scale == 1.3 ? '点击放大查看' + CurData.billFileUrl : '还原视图'}>
<Tooltip title={scale == 1.3 ? '点击放大查看' : '还原视图'}>
<div className={scale == 1.3 ? styles.box3out : null}>
<div className={scale == 1.3 ? styles.box3 : styles.box3of} onClick={lookup}>
<PDF
......
......@@ -10,7 +10,7 @@ import SearchOptionsCommnity from '../../../components/SearchOptions/SearchOptio
import { checkParam, RA } from '../../../utils/method'
import { validateMessages } from '@/utils/params';
import "./UsersAddInput.less"
// import "./UsersAddInput.less"
const module = "User"
......@@ -22,8 +22,9 @@ const UsersAdd = (props: any) => {
const formRef = useRef(null as any);
const [loading, setLoading] = useState(false)
const onFinish = (values: any) => {
const onFinish = (values: any) => {
console.log(values)
if (postman.extend != null) {
values.communityName = postman.extend
} else {
......@@ -57,6 +58,7 @@ const UsersAdd = (props: any) => {
}, [communityInfo])
const checkData = (rule: any, value: any, callback: any) => {
console.log(rule, value)
if (value) {
if (/^[a-zA-Z0-9]+$/g.test(value)) {
callback();
......
.box2item3___3VsZz .ant-form-item-explain {
/* .box2item3___3VsZz .ant-form-item-explain {
margin-left: -80px;
}
.box2item5___2AZ2K .ant-form-item-explain {
......@@ -9,4 +9,4 @@
}
.box2item7___ePaor .ant-form-item-explain {
margin-left: -30px;
}
} */
......@@ -108,22 +108,16 @@ const ServiceProviderManagement = (props: any) => {
}, [Data])
useEffect(() => {
//分页设置
// if (location.query.pageNum != null) {
// setPageNum(parseInt(location.query.pageNum))
// } else {
// }
setPageNum(1)
setLoading(true)
//获取数据
TosTosServiceProviderGet({
...location.query,
serviceCommunityList: (testData === null || testData.length === 0) ? CommunityList : testData,
pageNum: 1
})
}, [location])
const CallBackTitleSearch = (comment: any) => {
......
......@@ -4,12 +4,7 @@ import { Form, Button, Modal, Space, Pagination, Tooltip, Checkbox } from 'antd'
import { Link, useIntl, connect, Dispatch } from 'umi';
import { PlusCircleOutlined } from '@ant-design/icons';
import Line from '../../../components/Line/Line';
import BackButton from '../../../components/BackButton/BackButton';
import TitleGet from '../../../components/TitleGet/TitleGet';
import TagSelect from '../../../components/TagSelect/index';
import { RA } from '@/utils/method';
import TitleBack from '@/components/TitleBack/TitleBack';
......
......@@ -32,9 +32,6 @@ const Login: React.FC<LoginProps> = (props) => {
const handleSubmit = (values: LoginParamsType) => {
const { dispatch } = props;
console.log({ ...values, type, userName, password });
console.log(props);
console.log(dispatch, 'dispatch');
dispatch({
type: 'login/login',
payload: { userName, password },
......
......@@ -146,7 +146,7 @@ export const filterObjbyTg = (obj: any, tg: any) => {
var tmp = {};
for (var item in obj) {
if (tg.indexOf(item) > -1) {
if (obj[item] != null) {
if ((obj[item] === 0 || obj[item]) && obj[item] != null) {
tmp[item] = obj[item];
}
}
......
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