diff --git a/src/components/DetailFramework/DetailFramework.tsx b/src/components/DetailFramework/DetailFramework.tsx index f14ec0e..641941b 100644 --- a/src/components/DetailFramework/DetailFramework.tsx +++ b/src/components/DetailFramework/DetailFramework.tsx @@ -80,10 +80,10 @@ export default class DetailFramework extends Component< } const status = this.state.ticketInfo.status; - this.setState({ - current: mapStatusStep.get(status) || 0, - items: pt.get().ticketDetail.stepItems, - }); + // this.setState({ + // current: mapStatusStep.get(status) || 0, + // items: pt.get().ticketDetail.stepItems, + // }); const elements: ShowElements = { device: this.props.isInfoShow['device'] ? ( diff --git a/src/pages/repair/repair.tsx b/src/pages/repair/repair.tsx index ff5011c..e70f385 100644 --- a/src/pages/repair/repair.tsx +++ b/src/pages/repair/repair.tsx @@ -152,14 +152,7 @@ export default class RepairPage extends Component<{}, RepairPageState> { } onSubmit() { - this.setState({ - isLoading: true, - isDisable: true, - }); submitTicket(this); - Taro.reLaunch({ - url: '/pages/repair/repair', - }); } render(): ReactNode { diff --git a/src/plain-text/Button.ts b/src/plain-text/Button.ts index 2efd33b..416e848 100644 --- a/src/plain-text/Button.ts +++ b/src/plain-text/Button.ts @@ -8,6 +8,7 @@ export interface ButtonText { submitText: { success: string; error: string; + blank: string; }; loginText: { success: string; @@ -29,6 +30,7 @@ export const buttonZhCn: ButtonText = { submitText: { success: '提交成功', error: '提交失败:', + blank: '请填写完整!', }, loginText: { success: '登录成功', @@ -50,6 +52,7 @@ export const buttonEnUs: ButtonText = { submitText: { success: 'Success', error: 'Error: ', + blank: 'Please fill in the blanks!', }, loginText: { success: 'Login Success', diff --git a/src/service/memberLogin.ts b/src/service/memberLogin.ts index f8c3c89..bb700f2 100644 --- a/src/service/memberLogin.ts +++ b/src/service/memberLogin.ts @@ -8,8 +8,22 @@ const logInterval = 5000; export function memberLogin(that: UserMemberPage) { that.setState({ + isDisable: true, isLoading: true, }); + if (that.state.stuid == '' || that.state.passwd == '') { + Taro.atMessage({ + message: pt.get().button.submitText.blank, + type: 'error', + }); + setTimeout(() => { + that.setState({ + isDisable: false, + isLoading: false, + }); + }, logInterval); + return; + } Taro.request({ url: getUrl('/member/login'), method: 'POST', @@ -43,7 +57,7 @@ export function memberLogin(that: UserMemberPage) { type: 'error', }); setTimeout(() => { - this.setState({ + that.setState({ isDisable: false, }); }, logInterval); @@ -85,7 +99,7 @@ export function memberLogout(that: UserMemberPage) { type: 'error', }); setTimeout(() => { - this.setState({ + that.setState({ isDisable: false, }); }, logInterval); diff --git a/src/service/myTicket.ts b/src/service/myTicket.ts index 20c0e29..b90e705 100644 --- a/src/service/myTicket.ts +++ b/src/service/myTicket.ts @@ -29,7 +29,8 @@ export function getMyTicketList(that: MyTicketPage) { item.device, item.deviceModel, item.status, - moment(), + moment(item.createdTime), + item.isMember, ), ), }); diff --git a/src/service/submitTicket.ts b/src/service/submitTicket.ts index abb5da4..a49f91f 100644 --- a/src/service/submitTicket.ts +++ b/src/service/submitTicket.ts @@ -3,10 +3,35 @@ import Taro from '@tarojs/taro'; import pt from '@/plain-text'; import { getUrl } from '.'; +const submitInterval = 5000; + export function submitTicket(that: RepairPage) { - that.setState({ - isLoading: true, - }); + if (that.state.isDisable != true || that.state.isLoading != true) { + that.setState({ + isDisable: true, + isLoading: true, + }); + } + if ( + that.state.description == '' || + that.state.device == '' || + that.state.deviceModel == '' || + that.state.owner == '' || + that.state.phone == '' || + that.state.checkedList.length === 0 + ) { + Taro.atMessage({ + message: pt.get().button.submitText.blank, + type: 'error', + }); + setTimeout(() => { + that.setState({ + isDisable: false, + isLoading: false, + }); + }, submitInterval); + return; + } Taro.request({ url: getUrl('/tickets/create'), method: 'POST', @@ -30,6 +55,9 @@ export function submitTicket(that: RepairPage) { message: pt.get().button.submitText.success, type: 'success', }); + Taro.reLaunch({ + url: '/pages/repair/repair', + }); }) .catch((err) => { console.log(err); @@ -41,4 +69,10 @@ export function submitTicket(that: RepairPage) { type: 'error', }); }); + setTimeout(() => { + that.setState({ + isDisable: false, + isLoading: false, + }); + }, submitInterval); }