Commit 3e1c2379 by 王昆

gsb

parent 3d1a0c0d
......@@ -46,6 +46,10 @@ class TradeService extends ServiceBase {
}
async lockOrder(params) {
let order_type = this.trim(params.order_type);
if (["10", "20"].indexOf(order_type) == -1) {
return system.getResult(null, `order_type[${params.order_type || null}]设置错误`)
}
params.acc_type = this.trim(params.acc_type);
params.fileUrl = this.trim(params.fileUrl);
let itemList = params.itemList || [];
......@@ -68,11 +72,19 @@ class TradeService extends ServiceBase {
// 计算预计付款金额
let result = await this.countAmt(itemList, info, params);
let current = new Date();
for (let item of itemList) {
item.amt = system.y2f(item.actual_amt);
item.actual_amt = system.y2f(item.actual_amt);
item.deduct_amt = system.y2f(item.deduct_amt);
item.service_tax = system.y2f(item.service_tax);
item.trade_status = "01";
if (order_type == "20") {
item.trade_time = current;
item.trade_status = "00";
item.trade_desc = "商户自行交易";
}
}
let out_trade_no = await this.redisClient.genrateId("gsb_out_trade_no");
......@@ -89,7 +101,7 @@ class TradeService extends ServiceBase {
item_count: itemList.length,
acc_type: params.acc_type,
order_file: params.fileUrl,
order_type: "10",
order_type: order_type,
// 付款凭证信息
pay_voucher: "",
pay_bank_account: main.bank_account,
......@@ -97,6 +109,14 @@ class TradeService extends ServiceBase {
pay_bank_no: main.bank_no,
itemList: itemList
};
// 商户交易上传
if (order_type == "20") {
order.trade_status = "00";
order.check_status = "05";
order.check1_remark = "商户自行交易";
order.check2_remark = "商户自行交易";
}
let rs = await this.callms("trade", "orderAdd", order);
if (rs.data) {
this.transFields([rs.data]);
......@@ -118,6 +138,11 @@ class TradeService extends ServiceBase {
}
async parseItems(params) {
params.order_type = this.trim(params.order_type);
if (["10", "20"].indexOf(params.order_type) == -1) {
return system.getResult(null, `order_type[${params.order_type || null}]设置错误`)
}
// 获取商户签约信息
let info = await this.merchantSve.signInfo({id: params.saas_merchant_id}) || {};
info = info.data || {};
......@@ -134,6 +159,7 @@ class TradeService extends ServiceBase {
// 计算预计付款基恩
let result = await this.countAmt(itemList, info, params);
result.order_type = params.order_type;
// 封装返回对象
result.error = error;
if (result.error) {
......@@ -248,6 +274,12 @@ class TradeService extends ServiceBase {
creditCodes: creditCodes,
attrs: "credit_code"
});
let order_type = this.trim(params.order_type);
let amtName = "商户请求打款金额";
if (order_type == "20") {
amtName = "实发金额";
}
for (let data of itemList) {
this.checkField(data, "acc_name", {name: "收款户名", is_require: true, maxLen: 64});
let bm = creditCodeMap[data.credit_code];
......@@ -257,7 +289,7 @@ class TradeService extends ServiceBase {
this.checkField(data, "credit_code", {name: "个体户统一信用代码", is_require: true, eqLen: 18});
this.checkField(data, "acc_no", {name: "收款账号", is_require: true, maxLen: 30, is_number: true});
this.checkField(data, "open_bank", {name: "开户银行全称", maxLen: 100});
this.checkField(data, "amt", {name: "商户请求打款金额", is_require: true, maxLen: 100, is_number: true});
this.checkField(data, "amt", {name: amtName, is_require: true, maxLen: 100, is_number: true});
this.checkField(data, "remark", {name: "备注", maxLen: 100});
if (!error && data.errors.length > 0) {
......@@ -298,9 +330,6 @@ class TradeService extends ServiceBase {
if (rule.is_number && isNaN(v)) {
data.errors.push(`${rule.name}需要填写数字类型`);
}
if (rule.is_number && isNaN(v)) {
data.errors.push(`${rule.name}需要填写数字类型`);
}
}
transFields(rows) {
......
......@@ -96,6 +96,7 @@
"status": 0,
"msg": "success",
"data": {
"order_type": "10", // 10批量上传 20交易上传
"actual_amt": "131083.32", // 实发总额
"deduct_amt": "133704.99", // 扣除总额
"service_tax": "2621.67", // 服务费
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment