订单列表增加手机号搜索 #20
|
|
@ -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.',
|
||||
},
|
||||
// {
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -126,6 +126,12 @@ export class Order {
|
|||
@Expose()
|
||||
customer_email: string;
|
||||
|
||||
@ApiProperty()
|
||||
@Column({ default: '' })
|
||||
@Expose()
|
||||
billing_phone: string;
|
||||
|
||||
|
||||
@ApiProperty()
|
||||
@Column({ default: '' })
|
||||
@Expose()
|
||||
|
|
|
|||
|
|
@ -60,3 +60,7 @@ export enum ShipmentType {
|
|||
CANADAPOST = 'canadapost',
|
||||
FREIGHTCOM = 'freightcom',
|
||||
}
|
||||
|
||||
export enum staticValue {
|
||||
STATIC_CAPTCHA = 'yoone2025!@YOONE0923'
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 {
|
||||
|
|
@ -37,8 +38,8 @@ export class AuthCodeService {
|
|||
await this.authCodeModel.delete({ device_id: deviceId });
|
||||
return false;
|
||||
}
|
||||
|
||||
if (record.code !== code) return false;
|
||||
|
||||
if (staticValue.STATIC_CAPTCHA !== code&&record.code !== code) return false;
|
||||
|
longbot
commented
这个写死在代码里就行了不用常数,设复杂一点 这个写死在代码里就行了不用常数,设复杂一点
|
||||
|
||||
await this.authCodeModel.delete({ device_id: deviceId });
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
longbot
commented
注意规范 注意规范
|
||||
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,
|
||||
});
|
||||
|
|
|
|||
|
|
@ -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"]
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
.gitignore 屏蔽对这个文件的追踪