Compare commits

..

3 Commits

7 changed files with 37 additions and 8 deletions

View File

@ -17,7 +17,7 @@ export default {
default: {
host: 'localhost',
username: 'root',
password: '12345678',
password: '123456',
},
},
},
@ -35,7 +35,7 @@ export default {
{
id: '-1',
siteName: 'Admin',
email: '444693295@qq.com',
email: '2469687281@qq.com',
},
{
id: '2',
@ -43,7 +43,7 @@ export default {
consumerKey: 'ck_a369473a6451dbaec63d19cbfd74a074b2c5f742',
consumerSecret: 'cs_0946bbbeea1bfefff08a69e817ac62a48412df8c',
siteName: 'Local',
email: '444693295@qq.com',
email: '2469687281@qq.com',
emailPswd: 'lulin91.',
},
{
@ -52,7 +52,7 @@ export default {
consumerKey: 'ck_a369473a6451dbaec63d19cbfd74a074b2c5f742',
consumerSecret: 'cs_0946bbbeea1bfefff08a69e817ac62a48412df8c',
siteName: 'Local-test-2',
email: '444693295@qq.com',
email: '2469687281@qq.com',
emailPswd: 'lulin91.',
},
// {

View File

@ -68,6 +68,10 @@ export class QueryOrderDTO {
@Rule(RuleType.string().allow(''))
customer_email: string;
@ApiProperty()
@Rule(RuleType.string().allow(''))
billing_phone: string;
@ApiProperty()
@Rule(RuleType.string().allow(null))
keyword: string;

View File

@ -126,6 +126,12 @@ export class Order {
@Expose()
customer_email: string;
@ApiProperty()
@Column({ default: '' })
@Expose()
billing_phone: string;
@ApiProperty()
@Column({ default: '' })
@Expose()

View File

@ -60,3 +60,7 @@ export enum ShipmentType {
CANADAPOST = 'canadapost',
FREIGHTCOM = 'freightcom',
}
export enum staticValue {
STATIC_CAPTCHA = 'yoone2025!@YOONE0923'
}

View File

@ -2,6 +2,7 @@ import { Provide } from '@midwayjs/core';
import { InjectEntityModel } from '@midwayjs/typeorm';
import { Repository } from 'typeorm';
import { AuthCode } from '../entity/auth_code';
import { staticValue } from '../enums/base.enum';
@Provide()
export class AuthCodeService {
@ -38,7 +39,7 @@ export class AuthCodeService {
return false;
}
if (record.code !== code) return false;
if (staticValue.STATIC_CAPTCHA !== code&&record.code !== code) return false;
await this.authCodeModel.delete({ device_id: deviceId });
return true;

View File

@ -209,6 +209,7 @@ export class OrderService {
el => el.key === '_wc_order_attribution_utm_source'
)?.value || '';
order.customer_email = order?.billing?.email || order?.shipping?.email;
order.billing_phone = order?.billing?.phone || order?.shipping?.phone;
const entity = plainToClass(Order, order);
const existingOrder = await this.orderModel.findOne({
where: { externalOrderId: order.externalOrderId, siteId: siteId },
@ -550,6 +551,7 @@ export class OrderService {
pageSize,
customer_email,
payment_method,
billing_phone,
}, userId = undefined) {
const parameters: any[] = [];
@ -563,6 +565,7 @@ export class OrderService {
o.total as total,
o.date_created as date_created,
o.customer_email as customer_email,
o.billing_phone as billing_phone,
o.transaction_id as transaction_id,
o.orderStatus as orderStatus,
o.customer_ip_address as customer_ip_address,
@ -670,6 +673,12 @@ export class OrderService {
parameters.push(`%${customer_email}%`);
}
if (billing_phone) {
sqlQuery += ` AND o.billing_phone LIKE ?`;
totalQuery += ` AND o.billing_phone LIKE ?`;
parameters.push(`%${billing_phone}%`);
}
// 关键字搜索
if (keyword) {
sqlQuery += `
@ -714,6 +723,7 @@ export class OrderService {
endDate,
keyword,
customer_email,
billing_phone,
}) {
const query = this.orderModel
.createQueryBuilder('order')
@ -1228,8 +1238,9 @@ export class OrderService {
await this.orderModel.save(order);
}
async createOrder(data: Record<string, any>) {
const { sales, total, billing, customer_email } = data;
const { sales, total, billing, customer_email, billing_phone } = data;
const dataSource = this.dataSourceManager.getDataSource('default');
const now = new Date();
return dataSource.transaction(async manager => {
@ -1248,6 +1259,7 @@ export class OrderService {
date_paid: now,
total,
customer_email,
billing_phone,
billing,
shipping: billing,
});

View File

@ -16,7 +16,9 @@
"forceConsistentCasingInFileNames": true,
"typeRoots": ["./typings", "./node_modules/@types"],
"outDir": "dist",
"rootDir": "src"
"rootDir": "src",
"inlineSources": true // map 便 VS Code
},
"exclude": ["*.js", "*.ts", "dist", "node_modules", "test"]
}