Merge branch 'dev' into release
This commit is contained in:
commit
738a2c5304
|
|
@ -44,6 +44,10 @@ export const desc = {
|
|||
type: "enum",
|
||||
enumeration: ["login", "changePassword", "confirm"]
|
||||
},
|
||||
applicationId: {
|
||||
type: "ref",
|
||||
ref: "application"
|
||||
},
|
||||
iState: {
|
||||
type: "enum",
|
||||
enumeration: ["unsent", "sending", "sent", "failure"]
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import { ForeignKey } from "oak-domain/lib/types/DataType";
|
||||
import { Q_DateValue, Q_BooleanValue, Q_NumberValue, Q_StringValue, Q_EnumValue, NodeId, ExprOp, ExpressionKey } from "oak-domain/lib/types/Demand";
|
||||
import { MakeAction as OakMakeAction, EntityShape } from "oak-domain/lib/types/Entity";
|
||||
import { Action, ParticularAction, IState } from "./Action";
|
||||
|
|
@ -12,6 +13,7 @@ export type OpSchema = EntityShape & {
|
|||
expired: Boolean;
|
||||
expiresAt: Datetime;
|
||||
type: "login" | "changePassword" | "confirm";
|
||||
applicationId?: ForeignKey<"application"> | null;
|
||||
iState?: IState | null;
|
||||
} & {
|
||||
[A in ExpressionKey]?: any;
|
||||
|
|
@ -31,6 +33,7 @@ export type OpFilter = {
|
|||
expired: Q_BooleanValue;
|
||||
expiresAt: Q_DateValue;
|
||||
type: Q_EnumValue<"login" | "changePassword" | "confirm">;
|
||||
applicationId: Q_StringValue;
|
||||
iState: Q_EnumValue<IState>;
|
||||
} & ExprOp<OpAttr | string>;
|
||||
export type OpProjection = {
|
||||
|
|
@ -49,6 +52,7 @@ export type OpProjection = {
|
|||
expired?: number;
|
||||
expiresAt?: number;
|
||||
type?: number;
|
||||
applicationId?: number;
|
||||
iState?: number;
|
||||
} & Partial<ExprOp<OpAttr | string>>;
|
||||
export type OpSortAttr = Partial<{
|
||||
|
|
@ -64,6 +68,7 @@ export type OpSortAttr = Partial<{
|
|||
expired: number;
|
||||
expiresAt: number;
|
||||
type: number;
|
||||
applicationId: number;
|
||||
iState: number;
|
||||
[k: string]: any;
|
||||
} | ExprOp<OpAttr | string>>;
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@
|
|||
"expired": "是否过期",
|
||||
"expiresAt": "过期时间",
|
||||
"iState": "状态",
|
||||
"type": "类型"
|
||||
"type": "类型",
|
||||
"application": "应用"
|
||||
},
|
||||
"action": {
|
||||
"send": "发送",
|
||||
|
|
|
|||
|
|
@ -1211,6 +1211,7 @@ export type Application = {
|
|||
system: System["Schema"];
|
||||
domain?: Domain["Schema"];
|
||||
applicationPassport$application?: Array<Omit<ApplicationPassport["Schema"], "application">>;
|
||||
captcha$application?: Array<Omit<Captcha["Schema"], "application">>;
|
||||
extraFile$application?: Array<Omit<ExtraFile["Schema"], "application">>;
|
||||
notification$application?: Array<Omit<Notification["Schema"], "application">>;
|
||||
sessionMessage$application?: Array<Omit<SessionMessage["Schema"], "application">>;
|
||||
|
|
@ -1228,6 +1229,7 @@ export type Application = {
|
|||
wpProduct$application?: Array<Omit<WpProduct["Schema"], "application">>;
|
||||
session$entity?: Array<Omit<Session["Schema"], "entity">>;
|
||||
applicationPassport$application$$aggr?: AggregationResult<Omit<ApplicationPassport["Schema"], "application">>;
|
||||
captcha$application$$aggr?: AggregationResult<Omit<Captcha["Schema"], "application">>;
|
||||
extraFile$application$$aggr?: AggregationResult<Omit<ExtraFile["Schema"], "application">>;
|
||||
notification$application$$aggr?: AggregationResult<Omit<Notification["Schema"], "application">>;
|
||||
sessionMessage$application$$aggr?: AggregationResult<Omit<SessionMessage["Schema"], "application">>;
|
||||
|
|
@ -1254,6 +1256,12 @@ export type Application = {
|
|||
applicationPassport$application$$aggr?: DeduceAggregation<Omit<ApplicationPassport["Projection"], "application">, Omit<ApplicationPassport["Filter"], "application">, ApplicationPassport["Sorter"]> & {
|
||||
$entity: "applicationPassport";
|
||||
};
|
||||
captcha$application?: OakSelection<"select", Omit<Captcha["Projection"], "application">, Omit<Captcha["Filter"], "application">, Captcha["Sorter"]> & {
|
||||
$entity: "captcha";
|
||||
};
|
||||
captcha$application$$aggr?: DeduceAggregation<Omit<Captcha["Projection"], "application">, Omit<Captcha["Filter"], "application">, Captcha["Sorter"]> & {
|
||||
$entity: "captcha";
|
||||
};
|
||||
extraFile$application?: OakSelection<"select", Omit<ExtraFile["Projection"], "application">, Omit<ExtraFile["Filter"], "application">, ExtraFile["Sorter"]> & {
|
||||
$entity: "extraFile";
|
||||
};
|
||||
|
|
@ -1355,6 +1363,7 @@ export type Application = {
|
|||
system: MakeFilter<System["FilterUnit"]>;
|
||||
domain: MakeFilter<Domain["FilterUnit"]>;
|
||||
applicationPassport$application: MakeFilter<Omit<ApplicationPassport["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
captcha$application: MakeFilter<Omit<Captcha["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
extraFile$application: MakeFilter<Omit<ExtraFile["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
notification$application: MakeFilter<Omit<Notification["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
sessionMessage$application: MakeFilter<Omit<SessionMessage["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
|
|
@ -1388,6 +1397,7 @@ export type Application = {
|
|||
system?: OakOperation<"create", System["CreateOperationData"]> | OakOperation<BaseSystem.OpUpdateAction, System["UpdateOperationData"], System["Filter"]>;
|
||||
domain?: OakOperation<"create", Domain["CreateOperationData"]> | OakOperation<BaseDomain.OpUpdateAction, Domain["UpdateOperationData"], Domain["Filter"]>;
|
||||
applicationPassport$application?: (OakOperation<"create", Omit<ApplicationPassport["CreateOperationData"], "application"> | Omit<ApplicationPassport["CreateOperationData"], "application">[]> | OakOperation<BaseApplicationPassport.OpUpdateAction, Omit<ApplicationPassport["UpdateOperationData"], "application">, ApplicationPassport["Filter"]>)[];
|
||||
captcha$application?: (OakOperation<"create", Omit<Captcha["CreateOperationData"], "application"> | Omit<Captcha["CreateOperationData"], "application">[]> | OakOperation<BaseCaptcha.OpUpdateAction, Omit<Captcha["UpdateOperationData"], "application">, Captcha["Filter"]>)[];
|
||||
extraFile$application?: (OakOperation<"create", Omit<ExtraFile["CreateOperationData"], "application"> | Omit<ExtraFile["CreateOperationData"], "application">[]> | OakOperation<BaseExtraFile.OpUpdateAction, Omit<ExtraFile["UpdateOperationData"], "application">, ExtraFile["Filter"]>)[];
|
||||
notification$application?: (OakOperation<"create", Omit<Notification["CreateOperationData"], "application"> | Omit<Notification["CreateOperationData"], "application">[]> | OakOperation<BaseNotification.OpUpdateAction, Omit<Notification["UpdateOperationData"], "application">, Notification["Filter"]>)[];
|
||||
sessionMessage$application?: (OakOperation<"create", Omit<SessionMessage["CreateOperationData"], "application"> | Omit<SessionMessage["CreateOperationData"], "application">[]> | OakOperation<BaseSessionMessage.OpUpdateAction, Omit<SessionMessage["UpdateOperationData"], "application">, SessionMessage["Filter"]>)[];
|
||||
|
|
@ -1412,6 +1422,7 @@ export type Application = {
|
|||
system?: OakOperation<"create", System["CreateOperationData"]> | OakOperation<BaseSystem.OpUpdateAction, System["UpdateOperationData"], System["Filter"]> | OakOperation<"remove", System["RemoveOperationData"], System["Filter"]>;
|
||||
domain?: OakOperation<"create", Domain["CreateOperationData"]> | OakOperation<BaseDomain.OpUpdateAction, Domain["UpdateOperationData"], Domain["Filter"]> | OakOperation<"remove", Domain["RemoveOperationData"], Domain["Filter"]>;
|
||||
applicationPassport$application?: (OakOperation<"create", Omit<ApplicationPassport["CreateOperationData"], "application"> | Omit<ApplicationPassport["CreateOperationData"], "application">[]> | OakOperation<BaseApplicationPassport.OpUpdateAction, Omit<ApplicationPassport["UpdateOperationData"], "application">, ApplicationPassport["Filter"]> | OakOperation<"remove", ApplicationPassport["RemoveOperationData"], ApplicationPassport["Filter"]>)[];
|
||||
captcha$application?: (OakOperation<"create", Omit<Captcha["CreateOperationData"], "application"> | Omit<Captcha["CreateOperationData"], "application">[]> | OakOperation<BaseCaptcha.OpUpdateAction, Omit<Captcha["UpdateOperationData"], "application">, Captcha["Filter"]> | OakOperation<"remove", Captcha["RemoveOperationData"], Captcha["Filter"]>)[];
|
||||
extraFile$application?: (OakOperation<"create", Omit<ExtraFile["CreateOperationData"], "application"> | Omit<ExtraFile["CreateOperationData"], "application">[]> | OakOperation<BaseExtraFile.OpUpdateAction, Omit<ExtraFile["UpdateOperationData"], "application">, ExtraFile["Filter"]> | OakOperation<"remove", ExtraFile["RemoveOperationData"], ExtraFile["Filter"]>)[];
|
||||
notification$application?: (OakOperation<"create", Omit<Notification["CreateOperationData"], "application"> | Omit<Notification["CreateOperationData"], "application">[]> | OakOperation<BaseNotification.OpUpdateAction, Omit<Notification["UpdateOperationData"], "application">, Notification["Filter"]> | OakOperation<"remove", Notification["RemoveOperationData"], Notification["Filter"]>)[];
|
||||
sessionMessage$application?: (OakOperation<"create", Omit<SessionMessage["CreateOperationData"], "application"> | Omit<SessionMessage["CreateOperationData"], "application">[]> | OakOperation<BaseSessionMessage.OpUpdateAction, Omit<SessionMessage["UpdateOperationData"], "application">, SessionMessage["Filter"]> | OakOperation<"remove", SessionMessage["RemoveOperationData"], SessionMessage["Filter"]>)[];
|
||||
|
|
@ -1675,11 +1686,19 @@ export type ArticleMenu = {
|
|||
export type Captcha = {
|
||||
OpSchema: BaseCaptcha.OpSchema;
|
||||
Action: BaseCaptcha.OpAction;
|
||||
Schema: BaseCaptcha.OpSchema & {};
|
||||
Projection: BaseCaptcha.OpProjection & {};
|
||||
FilterUnit: BaseCaptcha.OpFilter & {};
|
||||
Schema: BaseCaptcha.OpSchema & {
|
||||
application?: Application["Schema"];
|
||||
};
|
||||
Projection: BaseCaptcha.OpProjection & {
|
||||
application?: Application["Projection"];
|
||||
};
|
||||
FilterUnit: BaseCaptcha.OpFilter & {
|
||||
application: MakeFilter<Application["FilterUnit"]>;
|
||||
};
|
||||
Filter: MakeFilter<Captcha["FilterUnit"]>;
|
||||
SortAttr: Partial<BaseCaptcha.OpSortAttr | {}>;
|
||||
SortAttr: Partial<BaseCaptcha.OpSortAttr | {
|
||||
application: Application["SortAttr"];
|
||||
}>;
|
||||
SortNode: {
|
||||
$attr: Captcha["SortAttr"];
|
||||
$direction?: "asc" | "desc";
|
||||
|
|
@ -1687,11 +1706,15 @@ export type Captcha = {
|
|||
Sorter: Captcha["SortNode"][];
|
||||
Selection: OakSelection<"select", Captcha["Projection"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
Aggregation: DeduceAggregation<Captcha["Projection"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
CreateOperationData: FormCreateData<BaseCaptcha.OpSchema>;
|
||||
CreateOperationData: FormCreateData<BaseCaptcha.OpSchema & {
|
||||
application?: OakOperation<"create", Application["CreateOperationData"]> | OakOperation<BaseApplication.OpUpdateAction, Application["UpdateOperationData"], Application["Filter"]>;
|
||||
}>;
|
||||
CreateSingle: OakOperation<"create", Captcha["CreateOperationData"]>;
|
||||
CreateMulti: OakOperation<"create", Array<Captcha["CreateOperationData"]>>;
|
||||
Create: Captcha["CreateSingle"] | Captcha["CreateMulti"];
|
||||
UpdateOperationData: FormUpdateData<BaseCaptcha.OpSchema>;
|
||||
UpdateOperationData: FormUpdateData<BaseCaptcha.OpSchema & {
|
||||
application?: OakOperation<"create", Application["CreateOperationData"]> | OakOperation<BaseApplication.OpUpdateAction, Application["UpdateOperationData"], Application["Filter"]> | OakOperation<"remove", Application["RemoveOperationData"], Application["Filter"]>;
|
||||
}>;
|
||||
Update: OakOperation<BaseCaptcha.OpUpdateAction, Captcha["UpdateOperationData"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
RemoveOperationData: {};
|
||||
Remove: OakOperation<"remove", Captcha["RemoveOperationData"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ export const shipProjection = {
|
|||
order: {
|
||||
id: 1,
|
||||
iState: 1,
|
||||
desc: 1,
|
||||
pay$order: {
|
||||
$entity: 'pay',
|
||||
data: {
|
||||
|
|
@ -197,14 +198,14 @@ export async function uploadShippingInfo(shipId, context) {
|
|||
//订单 每笔微信支付调用一次接口
|
||||
//当已发货的订单再次调用小程序发货信息录入接口视为重新发货(仅可重新发货一次)
|
||||
const orders = shipOrder$ship.map((ele) => ele.order);
|
||||
const fromPhoneStr = maskPhone(from.phone);
|
||||
const toPhoneStr = maskPhone(to.phone);
|
||||
for (const order of orders) {
|
||||
const { pay$order, desc } = order;
|
||||
const wechatPay = pay$order.find((ele) => ele.entity === 'wpProduct');
|
||||
const meta = wechatPay?.meta;
|
||||
let shippingList = [];
|
||||
if (shipType === 'express') {
|
||||
const fromPhoneStr = maskPhone(from.phone);
|
||||
const toPhoneStr = maskPhone(to.phone);
|
||||
shippingList = [
|
||||
{
|
||||
tracking_no: extraShipId,
|
||||
|
|
|
|||
|
|
@ -47,6 +47,10 @@ exports.desc = {
|
|||
type: "enum",
|
||||
enumeration: ["login", "changePassword", "confirm"]
|
||||
},
|
||||
applicationId: {
|
||||
type: "ref",
|
||||
ref: "application"
|
||||
},
|
||||
iState: {
|
||||
type: "enum",
|
||||
enumeration: ["unsent", "sending", "sent", "failure"]
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import { ForeignKey } from "oak-domain/lib/types/DataType";
|
||||
import { Q_DateValue, Q_BooleanValue, Q_NumberValue, Q_StringValue, Q_EnumValue, NodeId, ExprOp, ExpressionKey } from "oak-domain/lib/types/Demand";
|
||||
import { MakeAction as OakMakeAction, EntityShape } from "oak-domain/lib/types/Entity";
|
||||
import { Action, ParticularAction, IState } from "./Action";
|
||||
|
|
@ -12,6 +13,7 @@ export type OpSchema = EntityShape & {
|
|||
expired: Boolean;
|
||||
expiresAt: Datetime;
|
||||
type: "login" | "changePassword" | "confirm";
|
||||
applicationId?: ForeignKey<"application"> | null;
|
||||
iState?: IState | null;
|
||||
} & {
|
||||
[A in ExpressionKey]?: any;
|
||||
|
|
@ -31,6 +33,7 @@ export type OpFilter = {
|
|||
expired: Q_BooleanValue;
|
||||
expiresAt: Q_DateValue;
|
||||
type: Q_EnumValue<"login" | "changePassword" | "confirm">;
|
||||
applicationId: Q_StringValue;
|
||||
iState: Q_EnumValue<IState>;
|
||||
} & ExprOp<OpAttr | string>;
|
||||
export type OpProjection = {
|
||||
|
|
@ -49,6 +52,7 @@ export type OpProjection = {
|
|||
expired?: number;
|
||||
expiresAt?: number;
|
||||
type?: number;
|
||||
applicationId?: number;
|
||||
iState?: number;
|
||||
} & Partial<ExprOp<OpAttr | string>>;
|
||||
export type OpSortAttr = Partial<{
|
||||
|
|
@ -64,6 +68,7 @@ export type OpSortAttr = Partial<{
|
|||
expired: number;
|
||||
expiresAt: number;
|
||||
type: number;
|
||||
applicationId: number;
|
||||
iState: number;
|
||||
[k: string]: any;
|
||||
} | ExprOp<OpAttr | string>>;
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@
|
|||
"expired": "是否过期",
|
||||
"expiresAt": "过期时间",
|
||||
"iState": "状态",
|
||||
"type": "类型"
|
||||
"type": "类型",
|
||||
"application": "应用"
|
||||
},
|
||||
"action": {
|
||||
"send": "发送",
|
||||
|
|
|
|||
|
|
@ -1211,6 +1211,7 @@ export type Application = {
|
|||
system: System["Schema"];
|
||||
domain?: Domain["Schema"];
|
||||
applicationPassport$application?: Array<Omit<ApplicationPassport["Schema"], "application">>;
|
||||
captcha$application?: Array<Omit<Captcha["Schema"], "application">>;
|
||||
extraFile$application?: Array<Omit<ExtraFile["Schema"], "application">>;
|
||||
notification$application?: Array<Omit<Notification["Schema"], "application">>;
|
||||
sessionMessage$application?: Array<Omit<SessionMessage["Schema"], "application">>;
|
||||
|
|
@ -1228,6 +1229,7 @@ export type Application = {
|
|||
wpProduct$application?: Array<Omit<WpProduct["Schema"], "application">>;
|
||||
session$entity?: Array<Omit<Session["Schema"], "entity">>;
|
||||
applicationPassport$application$$aggr?: AggregationResult<Omit<ApplicationPassport["Schema"], "application">>;
|
||||
captcha$application$$aggr?: AggregationResult<Omit<Captcha["Schema"], "application">>;
|
||||
extraFile$application$$aggr?: AggregationResult<Omit<ExtraFile["Schema"], "application">>;
|
||||
notification$application$$aggr?: AggregationResult<Omit<Notification["Schema"], "application">>;
|
||||
sessionMessage$application$$aggr?: AggregationResult<Omit<SessionMessage["Schema"], "application">>;
|
||||
|
|
@ -1254,6 +1256,12 @@ export type Application = {
|
|||
applicationPassport$application$$aggr?: DeduceAggregation<Omit<ApplicationPassport["Projection"], "application">, Omit<ApplicationPassport["Filter"], "application">, ApplicationPassport["Sorter"]> & {
|
||||
$entity: "applicationPassport";
|
||||
};
|
||||
captcha$application?: OakSelection<"select", Omit<Captcha["Projection"], "application">, Omit<Captcha["Filter"], "application">, Captcha["Sorter"]> & {
|
||||
$entity: "captcha";
|
||||
};
|
||||
captcha$application$$aggr?: DeduceAggregation<Omit<Captcha["Projection"], "application">, Omit<Captcha["Filter"], "application">, Captcha["Sorter"]> & {
|
||||
$entity: "captcha";
|
||||
};
|
||||
extraFile$application?: OakSelection<"select", Omit<ExtraFile["Projection"], "application">, Omit<ExtraFile["Filter"], "application">, ExtraFile["Sorter"]> & {
|
||||
$entity: "extraFile";
|
||||
};
|
||||
|
|
@ -1355,6 +1363,7 @@ export type Application = {
|
|||
system: MakeFilter<System["FilterUnit"]>;
|
||||
domain: MakeFilter<Domain["FilterUnit"]>;
|
||||
applicationPassport$application: MakeFilter<Omit<ApplicationPassport["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
captcha$application: MakeFilter<Omit<Captcha["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
extraFile$application: MakeFilter<Omit<ExtraFile["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
notification$application: MakeFilter<Omit<Notification["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
sessionMessage$application: MakeFilter<Omit<SessionMessage["FilterUnit"], "application">> & SubQueryPredicateMetadata;
|
||||
|
|
@ -1388,6 +1397,7 @@ export type Application = {
|
|||
system?: OakOperation<"create", System["CreateOperationData"]> | OakOperation<BaseSystem.OpUpdateAction, System["UpdateOperationData"], System["Filter"]>;
|
||||
domain?: OakOperation<"create", Domain["CreateOperationData"]> | OakOperation<BaseDomain.OpUpdateAction, Domain["UpdateOperationData"], Domain["Filter"]>;
|
||||
applicationPassport$application?: (OakOperation<"create", Omit<ApplicationPassport["CreateOperationData"], "application"> | Omit<ApplicationPassport["CreateOperationData"], "application">[]> | OakOperation<BaseApplicationPassport.OpUpdateAction, Omit<ApplicationPassport["UpdateOperationData"], "application">, ApplicationPassport["Filter"]>)[];
|
||||
captcha$application?: (OakOperation<"create", Omit<Captcha["CreateOperationData"], "application"> | Omit<Captcha["CreateOperationData"], "application">[]> | OakOperation<BaseCaptcha.OpUpdateAction, Omit<Captcha["UpdateOperationData"], "application">, Captcha["Filter"]>)[];
|
||||
extraFile$application?: (OakOperation<"create", Omit<ExtraFile["CreateOperationData"], "application"> | Omit<ExtraFile["CreateOperationData"], "application">[]> | OakOperation<BaseExtraFile.OpUpdateAction, Omit<ExtraFile["UpdateOperationData"], "application">, ExtraFile["Filter"]>)[];
|
||||
notification$application?: (OakOperation<"create", Omit<Notification["CreateOperationData"], "application"> | Omit<Notification["CreateOperationData"], "application">[]> | OakOperation<BaseNotification.OpUpdateAction, Omit<Notification["UpdateOperationData"], "application">, Notification["Filter"]>)[];
|
||||
sessionMessage$application?: (OakOperation<"create", Omit<SessionMessage["CreateOperationData"], "application"> | Omit<SessionMessage["CreateOperationData"], "application">[]> | OakOperation<BaseSessionMessage.OpUpdateAction, Omit<SessionMessage["UpdateOperationData"], "application">, SessionMessage["Filter"]>)[];
|
||||
|
|
@ -1412,6 +1422,7 @@ export type Application = {
|
|||
system?: OakOperation<"create", System["CreateOperationData"]> | OakOperation<BaseSystem.OpUpdateAction, System["UpdateOperationData"], System["Filter"]> | OakOperation<"remove", System["RemoveOperationData"], System["Filter"]>;
|
||||
domain?: OakOperation<"create", Domain["CreateOperationData"]> | OakOperation<BaseDomain.OpUpdateAction, Domain["UpdateOperationData"], Domain["Filter"]> | OakOperation<"remove", Domain["RemoveOperationData"], Domain["Filter"]>;
|
||||
applicationPassport$application?: (OakOperation<"create", Omit<ApplicationPassport["CreateOperationData"], "application"> | Omit<ApplicationPassport["CreateOperationData"], "application">[]> | OakOperation<BaseApplicationPassport.OpUpdateAction, Omit<ApplicationPassport["UpdateOperationData"], "application">, ApplicationPassport["Filter"]> | OakOperation<"remove", ApplicationPassport["RemoveOperationData"], ApplicationPassport["Filter"]>)[];
|
||||
captcha$application?: (OakOperation<"create", Omit<Captcha["CreateOperationData"], "application"> | Omit<Captcha["CreateOperationData"], "application">[]> | OakOperation<BaseCaptcha.OpUpdateAction, Omit<Captcha["UpdateOperationData"], "application">, Captcha["Filter"]> | OakOperation<"remove", Captcha["RemoveOperationData"], Captcha["Filter"]>)[];
|
||||
extraFile$application?: (OakOperation<"create", Omit<ExtraFile["CreateOperationData"], "application"> | Omit<ExtraFile["CreateOperationData"], "application">[]> | OakOperation<BaseExtraFile.OpUpdateAction, Omit<ExtraFile["UpdateOperationData"], "application">, ExtraFile["Filter"]> | OakOperation<"remove", ExtraFile["RemoveOperationData"], ExtraFile["Filter"]>)[];
|
||||
notification$application?: (OakOperation<"create", Omit<Notification["CreateOperationData"], "application"> | Omit<Notification["CreateOperationData"], "application">[]> | OakOperation<BaseNotification.OpUpdateAction, Omit<Notification["UpdateOperationData"], "application">, Notification["Filter"]> | OakOperation<"remove", Notification["RemoveOperationData"], Notification["Filter"]>)[];
|
||||
sessionMessage$application?: (OakOperation<"create", Omit<SessionMessage["CreateOperationData"], "application"> | Omit<SessionMessage["CreateOperationData"], "application">[]> | OakOperation<BaseSessionMessage.OpUpdateAction, Omit<SessionMessage["UpdateOperationData"], "application">, SessionMessage["Filter"]> | OakOperation<"remove", SessionMessage["RemoveOperationData"], SessionMessage["Filter"]>)[];
|
||||
|
|
@ -1675,11 +1686,19 @@ export type ArticleMenu = {
|
|||
export type Captcha = {
|
||||
OpSchema: BaseCaptcha.OpSchema;
|
||||
Action: BaseCaptcha.OpAction;
|
||||
Schema: BaseCaptcha.OpSchema & {};
|
||||
Projection: BaseCaptcha.OpProjection & {};
|
||||
FilterUnit: BaseCaptcha.OpFilter & {};
|
||||
Schema: BaseCaptcha.OpSchema & {
|
||||
application?: Application["Schema"];
|
||||
};
|
||||
Projection: BaseCaptcha.OpProjection & {
|
||||
application?: Application["Projection"];
|
||||
};
|
||||
FilterUnit: BaseCaptcha.OpFilter & {
|
||||
application: MakeFilter<Application["FilterUnit"]>;
|
||||
};
|
||||
Filter: MakeFilter<Captcha["FilterUnit"]>;
|
||||
SortAttr: Partial<BaseCaptcha.OpSortAttr | {}>;
|
||||
SortAttr: Partial<BaseCaptcha.OpSortAttr | {
|
||||
application: Application["SortAttr"];
|
||||
}>;
|
||||
SortNode: {
|
||||
$attr: Captcha["SortAttr"];
|
||||
$direction?: "asc" | "desc";
|
||||
|
|
@ -1687,11 +1706,15 @@ export type Captcha = {
|
|||
Sorter: Captcha["SortNode"][];
|
||||
Selection: OakSelection<"select", Captcha["Projection"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
Aggregation: DeduceAggregation<Captcha["Projection"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
CreateOperationData: FormCreateData<BaseCaptcha.OpSchema>;
|
||||
CreateOperationData: FormCreateData<BaseCaptcha.OpSchema & {
|
||||
application?: OakOperation<"create", Application["CreateOperationData"]> | OakOperation<BaseApplication.OpUpdateAction, Application["UpdateOperationData"], Application["Filter"]>;
|
||||
}>;
|
||||
CreateSingle: OakOperation<"create", Captcha["CreateOperationData"]>;
|
||||
CreateMulti: OakOperation<"create", Array<Captcha["CreateOperationData"]>>;
|
||||
Create: Captcha["CreateSingle"] | Captcha["CreateMulti"];
|
||||
UpdateOperationData: FormUpdateData<BaseCaptcha.OpSchema>;
|
||||
UpdateOperationData: FormUpdateData<BaseCaptcha.OpSchema & {
|
||||
application?: OakOperation<"create", Application["CreateOperationData"]> | OakOperation<BaseApplication.OpUpdateAction, Application["UpdateOperationData"], Application["Filter"]> | OakOperation<"remove", Application["RemoveOperationData"], Application["Filter"]>;
|
||||
}>;
|
||||
Update: OakOperation<BaseCaptcha.OpUpdateAction, Captcha["UpdateOperationData"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
RemoveOperationData: {};
|
||||
Remove: OakOperation<"remove", Captcha["RemoveOperationData"], Captcha["Filter"], Captcha["Sorter"]>;
|
||||
|
|
|
|||
|
|
@ -61,6 +61,7 @@ exports.shipProjection = {
|
|||
order: {
|
||||
id: 1,
|
||||
iState: 1,
|
||||
desc: 1,
|
||||
pay$order: {
|
||||
$entity: 'pay',
|
||||
data: {
|
||||
|
|
@ -201,14 +202,14 @@ async function uploadShippingInfo(shipId, context) {
|
|||
//订单 每笔微信支付调用一次接口
|
||||
//当已发货的订单再次调用小程序发货信息录入接口视为重新发货(仅可重新发货一次)
|
||||
const orders = shipOrder$ship.map((ele) => ele.order);
|
||||
const fromPhoneStr = maskPhone(from.phone);
|
||||
const toPhoneStr = maskPhone(to.phone);
|
||||
for (const order of orders) {
|
||||
const { pay$order, desc } = order;
|
||||
const wechatPay = pay$order.find((ele) => ele.entity === 'wpProduct');
|
||||
const meta = wechatPay?.meta;
|
||||
let shippingList = [];
|
||||
if (shipType === 'express') {
|
||||
const fromPhoneStr = maskPhone(from.phone);
|
||||
const toPhoneStr = maskPhone(to.phone);
|
||||
shippingList = [
|
||||
{
|
||||
tracking_no: extraShipId,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "oak-pay-business",
|
||||
"version": "3.1.4",
|
||||
"version": "3.1.5",
|
||||
"description": "",
|
||||
"files": [
|
||||
"lib/**/*",
|
||||
|
|
@ -33,8 +33,8 @@
|
|||
"dayjs": "^1.11.5",
|
||||
"oak-domain": "^5.1.27",
|
||||
"oak-external-sdk": "^2.3.10",
|
||||
"oak-frontend-base": "^5.3.34",
|
||||
"oak-general-business": "~5.7.8",
|
||||
"oak-frontend-base": "^5.3.35",
|
||||
"oak-general-business": "~5.7.9",
|
||||
"react-markdown": "^9.0.3",
|
||||
"wechat-pay-nodejs": "^0.2.3"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ export const shipProjection: EntityDict['ship']['Projection'] = {
|
|||
order: {
|
||||
id: 1,
|
||||
iState: 1,
|
||||
desc: 1,
|
||||
pay$order: {
|
||||
$entity: 'pay',
|
||||
data: {
|
||||
|
|
@ -218,8 +219,6 @@ export async function uploadShippingInfo(
|
|||
//订单 每笔微信支付调用一次接口
|
||||
//当已发货的订单再次调用小程序发货信息录入接口视为重新发货(仅可重新发货一次)
|
||||
const orders = shipOrder$ship.map((ele) => ele.order);
|
||||
const fromPhoneStr = maskPhone(from!.phone!);
|
||||
const toPhoneStr = maskPhone(to!.phone!);
|
||||
for (const order of orders) {
|
||||
const { pay$order, desc } = order;
|
||||
const wechatPay = pay$order!.find((ele) => ele.entity === 'wpProduct');
|
||||
|
|
@ -231,6 +230,8 @@ export async function uploadShippingInfo(
|
|||
};
|
||||
let shippingList: Array<Object> = [];
|
||||
if (shipType === 'express') {
|
||||
const fromPhoneStr = maskPhone(from!.phone!);
|
||||
const toPhoneStr = maskPhone(to!.phone!);
|
||||
shippingList = [
|
||||
{
|
||||
tracking_no: extraShipId,
|
||||
|
|
|
|||
Loading…
Reference in New Issue