diff --git a/mock/ticketInfo.json b/mock/ticketInfo.json index 417956f..e219387 100644 --- a/mock/ticketInfo.json +++ b/mock/ticketInfo.json @@ -6,9 +6,9 @@ "owner": "唐姐姐", "phone": "15555555555", "description": "清灰", - "workers": [], + "workers": ["宇航员"], "createdTime": "2024-03-07T19:52:48.523303", - "status": 2, + "status": 5, "isConfirmed": false, "notes": [ { diff --git a/src/pages/TicketDetail/TicketDetail.tsx b/src/pages/TicketDetail/TicketDetail.tsx index ebb574e..fe88b72 100644 --- a/src/pages/TicketDetail/TicketDetail.tsx +++ b/src/pages/TicketDetail/TicketDetail.tsx @@ -21,6 +21,7 @@ import { addToOreo } from '@/service/addToOreo'; import { pickTicket } from '@/service/pickTicket'; import { retrieve } from '@/service/retrieve'; import { changeStatus } from '@/service/changeStatus'; +import { getDisable } from '@/service/getDisable'; const submitInterval = 5000; @@ -35,14 +36,18 @@ interface TicketDetailState { comment: string; isOreoLoading: boolean; isOreoDisable: boolean; + isOreoDisable_main: boolean; isPickLoading: boolean; isPickDisable: boolean; + isPickDisable_main: boolean; isRetrieveLoading: boolean; isRetrieveDisable: boolean; + isRetrieveDisable_main: boolean; isStatusLoading: boolean; isStatusDisable: boolean; isCommentLoading: boolean; isCommentDisable: boolean; + isCommentDisable_main: boolean; } export default class TicketDetail extends Component<{}, TicketDetailState> { @@ -57,14 +62,18 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { comment: '', isOreoLoading: false, isOreoDisable: false, + isOreoDisable_main: false, isPickLoading: false, isPickDisable: false, + isPickDisable_main: false, isRetrieveLoading: false, isRetrieveDisable: false, + isRetrieveDisable_main: false, isStatusLoading: false, isStatusDisable: false, isCommentLoading: false, isCommentDisable: false, + isCommentDisable_main: false, }; componentDidMount(): void { @@ -74,6 +83,7 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { id: id, isMember: wechatUser.getAccess(), }); + getDisable(this, id); } onAddToOreo(): void { @@ -237,7 +247,9 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { > @@ -250,7 +262,9 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { > @@ -280,7 +294,9 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { style={{ marginLeft: '20rpx', paddingRight: '10rpx', width: '50%' }} > { > @@ -313,7 +331,9 @@ export default class TicketDetail extends Component<{}, TicketDetailState> { style={{ marginRight: '20rpx', paddingLeft: '10rpx', width: '50%' }} > { + const data = res.data.data; + if (data.status === 3 || data.status === 5 || data.status === 7) { + that.setState({ + isRetrieveDisable_main: true, + isCommentDisable_main: true, + }); + } + if (wechatUser.getAccess()) { + if (data.workers.includes(wechatUser.getInfo().name)) { + that.setState({ + isPickDisable_main: true, + }); + } + } + }) + .catch((reason) => { + console.error(reason); + }); +} diff --git a/src/service/memberLogin.ts b/src/service/memberLogin.ts index 7285942..3e155ef 100644 --- a/src/service/memberLogin.ts +++ b/src/service/memberLogin.ts @@ -30,7 +30,7 @@ export function memberLogin(that: UserMemberPage) { wechatUser.setInfo(res.data.data as UserInfo); wechatUser.setAccess(true); Taro.reLaunch({ - url: '/pages/member/member', + url: '/pages/index/index', }); } else { Taro.atMessage({ diff --git a/src/service/ticketsInfo.ts b/src/service/ticketsInfo.ts index 923ee31..1f8a8b9 100644 --- a/src/service/ticketsInfo.ts +++ b/src/service/ticketsInfo.ts @@ -24,6 +24,7 @@ export function getTicketInfo(that: DetailFramework, id: number) { id: data.id, type: data.type, device: data.device, + workers: data.workers, deviceModel: data.deviceModel, description: data.description, createdTime: moment(data.createdTime as string),