Compare commits
3 Commits
327d8de438
...
e32b3853a3
Author | SHA1 | Date | |
---|---|---|---|
e32b3853a3 | |||
fc31bddddc | |||
dc2b34f013 |
@ -104,6 +104,24 @@ body #root{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.table-header-title{
|
||||||
|
position: relative;
|
||||||
|
top:8px;
|
||||||
|
line-height: 1.2;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
.tips {
|
||||||
|
font-size: 12px;
|
||||||
|
color: #ccc;
|
||||||
|
//position: absolute;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.semi-checkbox-addon{
|
||||||
|
.table-header-title{
|
||||||
|
top:2px;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/***************** semi overrides ****************/
|
/***************** semi overrides ****************/
|
||||||
.semi-dropdown-item{
|
.semi-dropdown-item{
|
||||||
max-width: 500%;
|
max-width: 500%;
|
||||||
|
@ -42,7 +42,7 @@ export const BillList: React.FC<BillListProps> = (props) => {
|
|||||||
showCols: string[]
|
showCols: string[]
|
||||||
}>({
|
}>({
|
||||||
showCols: [
|
showCols: [
|
||||||
"id", "merchant_ref", "student_number", "application_number", "initiated_paid_at", "delivered_at", "paid_at", "student_english_name", "student_email", "programme_chinese_name",
|
"id", "merchant_ref", "student_number", "application_number", "initiated_paid_at", "delivered_at", "paid_at", "student_english_name", "student_email", "programme_english_name",
|
||||||
"intake_year", "detail", "detail_confirms", "amount", "pay_amount", "actual_payment_amount", "pay_method", "status", "apply_status"
|
"intake_year", "detail", "detail_confirms", "amount", "pay_amount", "actual_payment_amount", "pay_method", "status", "apply_status"
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
@ -149,13 +149,15 @@ export const BillList: React.FC<BillListProps> = (props) => {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: t('bill.title_program_name'),
|
title: t('bill.title_program_name'),
|
||||||
|
dataIndex: 'programme_english_name',
|
||||||
width: 250,
|
width: 250,
|
||||||
dataIndex: i18n.language == 'en-US' ? 'programme_english_name' : 'programme_chinese_name',
|
render: (_, record) => (i18n.language == 'en-US' ? record.programme_english_name : record.programme_chinese_name),
|
||||||
|
// dataIndex: i18n.language == 'en-US' ? 'programme_english_name' : 'programme_chinese_name',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: t('bill.title_department'),
|
title: t('bill.title_department'),
|
||||||
width: 200,
|
width: 200,
|
||||||
dataIndex: '',
|
dataIndex: 'department_english_name',
|
||||||
render: (_, record) => (i18n.language == 'en-US' ? record.department_english_name : record.department_chinese_name),
|
render: (_, record) => (i18n.language == 'en-US' ? record.department_english_name : record.department_chinese_name),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -15,6 +15,7 @@ type SearchFormProps = {
|
|||||||
}
|
}
|
||||||
type SearchFormFields = {
|
type SearchFormFields = {
|
||||||
dateRange?: Date[];
|
dateRange?: Date[];
|
||||||
|
delivered_at?: Date[];
|
||||||
student_number?: string;
|
student_number?: string;
|
||||||
merchant_ref?: string;
|
merchant_ref?: string;
|
||||||
id?: string;
|
id?: string;
|
||||||
@ -32,8 +33,12 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
const params: BillQueryParams = {}
|
const params: BillQueryParams = {}
|
||||||
|
|
||||||
if (value.dateRange && value.dateRange.length == 2) {
|
if (value.dateRange && value.dateRange.length == 2) {
|
||||||
params.start_date = dayjs(value.dateRange[0]).format('YYYY-MM-DD');
|
params.start_initiated = dayjs(value.dateRange[0]).format('YYYY-MM-DD');
|
||||||
params.end_date = dayjs(value.dateRange[1]).format('YYYY-MM-DD');
|
params.end_initiated = dayjs(value.dateRange[1]).format('YYYY-MM-DD');
|
||||||
|
}
|
||||||
|
if (value.delivered_at && value.delivered_at.length == 2) {
|
||||||
|
params.start_delivered = dayjs(value.delivered_at[0]).format('YYYY-MM-DD');
|
||||||
|
params.end_delivered = dayjs(value.delivered_at[1]).format('YYYY-MM-DD');
|
||||||
}
|
}
|
||||||
if (value.id) {
|
if (value.id) {
|
||||||
params.id = value.id;
|
params.id = value.id;
|
||||||
@ -52,6 +57,11 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
if (value.confirm_status) {
|
if (value.confirm_status) {
|
||||||
params.confirm_status = value.confirm_status;
|
params.confirm_status = value.confirm_status;
|
||||||
}
|
}
|
||||||
|
// 支付方式
|
||||||
|
if (value.payment_channel) {
|
||||||
|
params.payment_channel = value.payment_channel;
|
||||||
|
}
|
||||||
|
|
||||||
// 账单状态
|
// 账单状态
|
||||||
if (value.bill_status) {
|
if (value.bill_status) {
|
||||||
params.status = value.bill_status;
|
params.status = value.bill_status;
|
||||||
@ -59,10 +69,6 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
if(!props.showApply){
|
if(!props.showApply){
|
||||||
params.status = 'PAID'
|
params.status = 'PAID'
|
||||||
}
|
}
|
||||||
// 支付方式
|
|
||||||
if (value.payment_channel) {
|
|
||||||
params.payment_channel = value.payment_channel;
|
|
||||||
}
|
|
||||||
// 排序
|
// 排序
|
||||||
if(value.sort_by){
|
if(value.sort_by){
|
||||||
const [field, order] = value.sort_by.split(' ')
|
const [field, order] = value.sort_by.split(' ')
|
||||||
@ -72,7 +78,11 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
params.sort_field = 'id'
|
params.sort_field = 'id'
|
||||||
params.sort_order = 'DESC'
|
params.sort_order = 'DESC'
|
||||||
}
|
}
|
||||||
props.onSearch?.(params);
|
|
||||||
|
props.onSearch?.({
|
||||||
|
...params,
|
||||||
|
...value
|
||||||
|
});
|
||||||
}
|
}
|
||||||
const {t, i18n} = useTranslation();
|
const {t, i18n} = useTranslation();
|
||||||
// 根据语言变化更新订单状态options
|
// 根据语言变化更新订单状态options
|
||||||
@ -106,7 +116,10 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
</Form.DatePicker>
|
</Form.DatePicker>
|
||||||
</Col>
|
</Col>
|
||||||
<Col xxl={4} xl={6} md={8}>
|
<Col xxl={4} xl={6} md={8}>
|
||||||
<Form.Input showClear field='id' label="ID / Merchant Ref" trigger='blur' placeholder={t('base.please_enter')}/>
|
<Form.Input type={'number'} showClear field='id' label="ID" trigger='blur' placeholder={t('base.please_enter')}/>
|
||||||
|
</Col>
|
||||||
|
<Col xxl={4} xl={6} md={8}>
|
||||||
|
<Form.Input showClear field='merchant_ref' label="Merchant Ref" trigger='blur' placeholder={t('base.please_enter')}/>
|
||||||
</Col>
|
</Col>
|
||||||
<Col xxl={4} xl={6} md={8}>
|
<Col xxl={4} xl={6} md={8}>
|
||||||
<Form.Input showClear field='student_number' label={t('base.student_number')} trigger='blur'
|
<Form.Input showClear field='student_number' label={t('base.student_number')} trigger='blur'
|
||||||
@ -142,7 +155,7 @@ const SearchForm: React.FC<SearchFormProps> = (props) => {
|
|||||||
</Col>
|
</Col>
|
||||||
<Col xxl={4} xl={6} md={8}>
|
<Col xxl={4} xl={6} md={8}>
|
||||||
<Form.Select
|
<Form.Select
|
||||||
field="bill_type" style={{width: '100%'}}
|
field="confirm_bill_type" style={{width: '100%'}}
|
||||||
label={t('manual.bill_type')}
|
label={t('manual.bill_type')}
|
||||||
placeholder={t('manual.bill_type')}
|
placeholder={t('manual.bill_type')}
|
||||||
>
|
>
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
"confirm_bill_number": "Confirm Bill Number",
|
"confirm_bill_number": "Confirm Bill Number",
|
||||||
"confirm_bill_type": "Confirm Bill",
|
"confirm_bill_type": "Confirm Bill",
|
||||||
"confirm_bill_type_batch": "Batch confirm Bill Type",
|
"confirm_bill_type_batch": "Batch confirm Bill Type",
|
||||||
"confirm_confirm_title": "Confirm check the Bill?",
|
"confirm_confirm_title": "Confirm check and sync the Bill?",
|
||||||
"confirm_select_empty": "Require confirm bill data",
|
"confirm_select_empty": "Require confirm bill data",
|
||||||
"confirm_student_number": "Confirm Student Number",
|
"confirm_student_number": "Confirm Student Number",
|
||||||
"confirm_success": "Confirm success!",
|
"confirm_success": "Confirm success!",
|
||||||
@ -94,7 +94,7 @@
|
|||||||
"logout": "Logout",
|
"logout": "Logout",
|
||||||
"menu": {
|
"menu": {
|
||||||
"bill": "Bill Query",
|
"bill": "Bill Query",
|
||||||
"check": "Reconciliation",
|
"check": "Reconciliation / Sync",
|
||||||
"manual": "Manual Pay",
|
"manual": "Manual Pay",
|
||||||
"permission": "Permission"
|
"permission": "Permission"
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
"confirm_bill_number": "确认账单编号",
|
"confirm_bill_number": "确认账单编号",
|
||||||
"confirm_bill_type": "确认账单",
|
"confirm_bill_type": "确认账单",
|
||||||
"confirm_bill_type_batch": "批量确认账单",
|
"confirm_bill_type_batch": "批量确认账单",
|
||||||
"confirm_confirm_title": "请确定对账此账单?",
|
"confirm_confirm_title": "请确定对账并同步此账单?",
|
||||||
"confirm_select_empty": "对账账单为空",
|
"confirm_select_empty": "对账账单为空",
|
||||||
"confirm_student_number": "确认学号",
|
"confirm_student_number": "确认学号",
|
||||||
"confirm_success": "对账成功!",
|
"confirm_success": "对账成功!",
|
||||||
@ -94,7 +94,7 @@
|
|||||||
"logout": "注销登录",
|
"logout": "注销登录",
|
||||||
"menu": {
|
"menu": {
|
||||||
"bill": "账单查询",
|
"bill": "账单查询",
|
||||||
"check": "对账",
|
"check": "对账/同步",
|
||||||
"manual": "现场支付",
|
"manual": "现场支付",
|
||||||
"permission": "权限管理"
|
"permission": "权限管理"
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
"confirm_bill_number": "確認帳單編號",
|
"confirm_bill_number": "確認帳單編號",
|
||||||
"confirm_bill_type": "確認賬單",
|
"confirm_bill_type": "確認賬單",
|
||||||
"confirm_bill_type_batch": "批次確認帳單",
|
"confirm_bill_type_batch": "批次確認帳單",
|
||||||
"confirm_confirm_title": "請確定對帳此帳單?",
|
"confirm_confirm_title": "請確定對帳并同步此帳單?",
|
||||||
"confirm_select_empty": "對帳帳單為空",
|
"confirm_select_empty": "對帳帳單為空",
|
||||||
"confirm_student_number": "確認學號",
|
"confirm_student_number": "確認學號",
|
||||||
"confirm_success": "對帳成功!",
|
"confirm_success": "對帳成功!",
|
||||||
@ -94,7 +94,7 @@
|
|||||||
"logout": "登出登入",
|
"logout": "登出登入",
|
||||||
"menu": {
|
"menu": {
|
||||||
"bill": "帳單查詢",
|
"bill": "帳單查詢",
|
||||||
"check": "對帳",
|
"check": "對帳/同步",
|
||||||
"manual": "現場支付",
|
"manual": "現場支付",
|
||||||
"permission": "權限管理"
|
"permission": "權限管理"
|
||||||
}
|
}
|
||||||
|
@ -58,6 +58,8 @@ const BillReconciliation = () => {
|
|||||||
title={'Notice'}
|
title={'Notice'}
|
||||||
content={t('bill.confirm_confirm_title')}
|
content={t('bill.confirm_confirm_title')}
|
||||||
onConfirm={() => confirmBill([_record.id])}
|
onConfirm={() => confirmBill([_record.id])}
|
||||||
|
okText={t('base.confirm')}
|
||||||
|
cancelText={t('base.cancel')}
|
||||||
>
|
>
|
||||||
<Button
|
<Button
|
||||||
loading={state.checkingId == _record.id} size={'small'} theme={'solid'}
|
loading={state.checkingId == _record.id} size={'small'} theme={'solid'}
|
||||||
|
18
src/types/bill.d.ts
vendored
18
src/types/bill.d.ts
vendored
@ -33,12 +33,30 @@ declare type BillQueryParam = {
|
|||||||
apply_status:string;
|
apply_status:string;
|
||||||
id:string|number;
|
id:string|number;
|
||||||
merchant_ref:string;
|
merchant_ref:string;
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
*/
|
||||||
bill_type:string;
|
bill_type:string;
|
||||||
|
confirm_bill_type:string;
|
||||||
student_number:string;
|
student_number:string;
|
||||||
application_number:string;
|
application_number:string;
|
||||||
payment_channel:string;
|
payment_channel:string;
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
*/
|
||||||
start_date:string;
|
start_date:string;
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
*/
|
||||||
end_date:string;
|
end_date:string;
|
||||||
|
start_initiated:string;
|
||||||
|
end_initiated:string;
|
||||||
|
start_delivered:string;
|
||||||
|
end_delivered:string;
|
||||||
|
merchant_ref:string;
|
||||||
|
/**
|
||||||
|
* @deprecated
|
||||||
|
*/
|
||||||
department:string;
|
department:string;
|
||||||
confirm_status: ConfirmStatus;
|
confirm_status: ConfirmStatus;
|
||||||
sort_field:string;
|
sort_field:string;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user