Commit a9e15624 by 王昆

gsb

parent e90742db
......@@ -11,6 +11,11 @@ class OrderService extends ServiceBase {
return rs;
}
async orderInfo(params) {
let rs = await this.callms("order", "saasOrderInfo", params);
return rs;
}
async info(params) {
let rs = await this.callms("order", "saasOrderMerchantOrderInfo", params);
return rs;
......
......@@ -9,9 +9,10 @@ const moment = require("moment");
class MerchantApplet extends AppletBase {
constructor() {
super();
this.uploadCtl=system.getObject("web.common.uploadCtl");
this.uploadCtl = system.getObject("web.common.uploadCtl");
this.idcardClient = system.getObject("util.idcardClient");
this.merchantappletuserSve = system.getObject("service.uc.merchantappletuserSve");
this.orderSve = system.getObject("service.saas.orderSve");
this.merchantId = 1;
}
......@@ -19,7 +20,7 @@ class MerchantApplet extends AppletBase {
return {code: 0, data: 1};
}
async uploadConfig(gobj, pobj, req, loginUser){
async uploadConfig(gobj, pobj, req, loginUser) {
try {
// if(!loginUser){
// return {code: 0};
......@@ -56,7 +57,7 @@ class MerchantApplet extends AppletBase {
avatarUrl: avatarUrl,
};
let res = await this.merchantappletuserSve.login(params);
if(res.status === 0) {
if (res.status === 0) {
return this.returnSuccess(res.data);
} else {
return this.returnFail(res.msg, res.data);
......@@ -74,109 +75,153 @@ class MerchantApplet extends AppletBase {
// 保存订单信息
async saveOrder(gobj, pobj, req, loginUser) {
try {
let merchant = await this.getMerchant(merchant_id);
let rs = await this.buildOrder(pobj, merchant);
if(rs.code === 0) {
let rs = await this.buildOrder(pobj);
if (rs.code === 0) {
return rs;
}
let merchant = await this.getMerchant(pobj.merchant_id);
let loginUser = await this.getLoginUser(pobj.merchant_id, pobj.openid);
let order = {
saas_id: merchant.saas_id,
merchant_id: merchant.id,
product_id: "10010000",
merchant_app_user_id: loginUser.id,
price: system.y2f(merchant.sign.bm_reg_price) || 0,
bminfo: rs.data
}
var info = await this.bmorderSve.saveOrderBiz(rs.data);
var result = {code : 1};
return result;
let res = await this.orderSve.microAdd(order);
if (res.status === 0) {
return this.returnSuccess(res.data);
} else {
return this.returnFail(res.msg || "保存订单失败");
}
} catch (e) {
console.log(e.stack);
//日志记录
logCtl.error({
optitle: "查询商户信息错误, params [id = " + pobj.id + " ]",
op: "wxapplet/impl/xggApplet/merchantInfo",
content: e.stack,
clientIp: req.clientIp
});
if(e.name == 'SequelizeUniqueConstraintError') {
return {code: 2, msg:"您的信息已经提交成功,请到我的订单中查看"};
}
return {
code: -200,
msg: "error",
data: {},
stack : e.stack
stack: e.stack
};
}
}
async buildOrder(obj) {
if(!obj.idcard_front) {
if (!obj.idcard_front) {
return this.returnFail("请上传身份证人像面");
}
if(!obj.idcard_back) {
if (!obj.idcard_back) {
return this.returnFail("请上传身份证国徽图");
}
if(!obj.legal_name) {
if (!obj.legal_name) {
return this.returnFail("请填写法人姓名");
}
if(!obj.legal_mobile) {
if (!obj.legal_mobile) {
return this.returnFail("请填写联系手机");
}
if (!/^1\d{10}$/.test(obj.legal_mobile)) {
return this.returnFail("联系手机格式错误");
}
if(!obj.legal_idno) {
if (!obj.legal_idno) {
return this.returnFail("请填写身份证号码");
}
if(!await this.idcardClient.checkIDCard(obj.legal_idno)) {
if (!await this.idcardClient.checkIDCard(obj.legal_idno)) {
return this.returnFail("身份证号码错误,请检查后重新输入");
}
if(!obj.company_names) {
if (!obj.company_names) {
return this.returnFail("请填写公司名称");
}
if(!obj.bank_front) {
if (!obj.bank_front) {
return this.returnFail("请上传银行卡正面");
}
if(!obj.bank_back) {
if (!obj.bank_back) {
return this.returnFail("请上传银行卡反面");
}
if(!obj.bank_mobile) {
if (!obj.bank_name) {
return this.returnFail("请填写银行预留手机号");
}
if (!obj.bank_no) {
return this.returnFail("请填写银行预留手机号");
}
if (!obj.bank_mobile) {
return this.returnFail("请填写银行预留手机号");
}
var order = {
merchantId : obj.merchantId || this.merchantId,
companyId : obj.companyId,
orderNo : orderNo,
userId : loginUser.id,
ownerId: 0,
status: 0,
auditStatus:0
};
var userbiz = {
merchantId : obj.merchantId || this.merchantId,
companyId : obj.companyId,
orderNo: orderNo,
user_id: loginUser.id,
let bminfo = {
idcard_front: obj.idcard_front,
idcard_back: obj.idcard_back,
idcard: obj.idcard,
legal_name: obj.legal_name,
legal_mobile: obj.legal_mobile,
person_img: obj.person_img || "",
companyNames: obj.companyNames,
legal_idno: obj.legal_idno,
company_names: obj.company_names,
bank_front: obj.bank_front,
bank_back: obj.bank_back,
bank: obj.bank,
bankno: obj.bankno,
bankMobile: obj.bankMobile || "",
bank_name: obj.bank_name,
bank_no: obj.bank_no,
bank_mobile: obj.bank_mobile,
};
rs.code = 1;
rs.data = {
order : order,
userbiz: userbiz,
return this.returnSuccess(bminfo);
}
async myOrders(gobj, pobj, req) {
let loginUser = await this.getLoginUser(pobj.merchant_id, pobj.openid);
if (!loginUser) {
return this.returnSuccess({count: 0, rows: []});
}
try {
let params = {
pageSize: Number(pobj.pageSize || 10),
currentPage: Number(pobj.currentPage || 1),
merchant_app_user_id: loginUser.id,
merchant_id: loginUser.merchant_id,
}
let page = await this.orderSve.page(params);
if (page.status === 0) {
return this.returnSuccess(page.data);
} else {
return this.returnFail(page.msg);
}
} catch (e) {
console.log(e.stack);
//日志记录
return {
code: -200,
msg: "error",
data: {},
stack: e.stack
};
return rs;
}
console.log(decryptData);
}
/**
* 查询订单明细
* @param {*} gobj
* @param {*} pobj
* @param {*} req
* @param {*} loginUser
*/
async orderInfo(gobj, pobj, req) {
let loginUser = await this.getLoginUser(pobj.merchant_id, pobj.openid);
if (!loginUser) {
return this.returnSuccess({});
}
try {
let rs = await this.orderSve.orderInfo(pobj);
if (rs.status === 0) {
return this.returnSuccess(rs.data);
} else {
return this.returnFail(page.msg);
}
} catch (error) {
console.log(error);
return system.getResult(null, error);
}
}
//
......@@ -192,198 +237,25 @@ class MerchantApplet extends AppletBase {
// }
//
//
// // 保存订单信息
// async saveOrder(gobj, pobj, req, loginUser) {
// try {
// var rs = await this.buildOrder(pobj, loginUser);
// if(rs.code === 0) {
// return rs;
// }
//
// var info = await this.bmorderSve.saveOrderBiz(rs.data);
// var result = {code : 1};
// return result;
// } catch (e) {
// console.log(e.stack);
// //日志记录
// logCtl.error({
// optitle: "查询商户信息错误, params [id = " + pobj.id + " ]",
// op: "wxapplet/impl/xggApplet/merchantInfo",
// content: e.stack,
// clientIp: req.clientIp
// });
// if(e.name == 'SequelizeUniqueConstraintError') {
// return {code: 2, msg:"您的信息已经提交成功,请到我的订单中查看"};
// }
// return {
// code: -200,
// msg: "error",
// data: {},
// stack : e.stack
// };
// }
// }
//
// async buildOrder(obj, loginUser) {
// var rs = {code: 0};
// if(!loginUser) {
// rs.msg = "登录超时,请重新登录";
// return rs;
// }
//
// if(!obj.idcard_front) {
// rs.msg = "请上传身份证正面图";
// return rs;
// }
// if(!obj.idcard_back) {
// rs.msg = "请上传身份证反面图";
// return rs;
// }
// if(!obj.idcard) {
// rs.msg = "请填写身份证号码";
// return rs;
// }
// if(!await this.idcardClient.checkIDCard(obj.idcard)) {
//
// }
// if(!obj.legal_name) {
// rs.msg = "请填写法人姓名";
// return rs;
// }
// if(!obj.legal_mobile) {
// rs.msg = "请填写手机号码";
// return rs;
// }
//
// if(!obj.companyNames) {
// rs.msg = "请填写公司名称";
// return rs;
// }
//
// if(!obj.bank_front) {
// rs.msg = "请上传银行卡正面图";
// return rs;
// }
// if(!obj.bank_back) {
// rs.msg = "请上传银行卡反面图";
// return rs;
// }
//
// if(!obj.bankMobile) {
// rs.msg = "请填写银行预留手机号";
// return rs;
// }
//
// var orderNo = loginUser.id + "" + moment().format("YYYYMMDDHHmmss");
// var order = {
// merchantId : obj.merchantId || this.merchantId,
// companyId : obj.companyId,
// orderNo : orderNo,
// userId : loginUser.id,
// ownerId: 0,
// status: 0,
// auditStatus:0
// };
//
// var userbiz = {
// merchantId : obj.merchantId || this.merchantId,
// companyId : obj.companyId,
// orderNo: orderNo,
// user_id: loginUser.id,
// idcard_front: obj.idcard_front,
// idcard_back: obj.idcard_back,
// idcard: obj.idcard,
// legal_name: obj.legal_name,
// legal_mobile: obj.legal_mobile,
// person_img: obj.person_img || "",
// companyNames: obj.companyNames,
// bank_front: obj.bank_front,
// bank_back: obj.bank_back,
// bank: obj.bank,
// bankno: obj.bankno,
// bankMobile: obj.bankMobile || "",
// };
//
// rs.code = 1;
// rs.data = {
// order : order,
// userbiz: userbiz,
// };
// return rs;
// }
//
//
// async myOrders(gobj, pobj, req, loginUser) {
// if(!loginUser) {
// return {code: 1, data:{count:0, rows:[]}};
// }
// try {
// var params = {
// pageSize: pobj.pageSize || 10,
// currentPage: pobj.currentPage || 1,
// userId: loginUser.id,
// }
//
// var page = await this.bmorderSve.pageByCondition(params);
// var result = {code : 1, data: page};
// return result;
// } catch (e) {
// console.log(e.stack);
// //日志记录
// logCtl.error({
// optitle: "绑定手机, params [" + JSON.stringify(params) + " ]",
// op: "wxapplet/impl/xggApplet/myReqList",
// content: e.stack,
// clientIp: req.clientIp
// });
// return {
// code: -200,
// msg: "error",
// data: {},
// stack : e.stack
// };
// }
//
// console.log(decryptData);
// }
//
//
// /**
// * 查询订单明细
// * @param {*} gobj
// * @param {*} pobj
// * @param {*} req
// * @param {*} loginUser
// */
// async queryOrderInfo(gobj, pobj, req, loginUser){
// if(!loginUser){
// return system.getResult(null, `请先登陆`);
// }
// try {
// return await this.bmorderSve.queryOrderInfo(pobj);
// } catch (error) {
// console.log(error);
// return system.getResult(null,error);
// }
// }
//
// async idcardValid(gobj, pobj, req, loginUser){
// try {
// var idcard = (pobj.idcard || "").trim();
// if(!idcard) {
// return {code: 0, msg: "请填写身份证号码"};
// }
//
// var isIdcard = await this.idcardClient.checkIDCard(idcard);
// if(isIdcard) {
// return {code: 1};
// }
// return {code: 0, msg: "身份证号码错误"};
// } catch (error) {
// console.log(error);
// return {code: 500, msg: "服务忙,请稍后重试"};
// }
// }
async idNoValid(gobj, pobj, req, loginUser){
try {
let idno = (pobj.idno || "").trim();
if(!idno) {
return {code: 0, msg: "请填写身份证号码"};
}
let success = await this.idcardClient.checkIDCard(idno);
if(success) {
return this.returnSuccess(1);
}
return this.returnFail("身份证号码格式错误");
} catch (error) {
console.log(error);
return {code: 500, msg: "服务忙,请稍后重试"};
}
}
//
}
module.exports = MerchantApplet;
\ No newline at end of file
......@@ -5,7 +5,7 @@
## **<a name="login"> 登录</a>**
[返回到目录](#menu)
##### URL
[/web/uc/userCtl/login]
[/applet/merchantApplet/login]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
```javascript
......@@ -38,7 +38,7 @@
## **<a name="currentUser"> 当前用户信息查询</a>**
[返回到目录](#menu)
##### URL
[/web/uc/userCtl/currentUser]
[/applet/merchantApplet/loginUser]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
``` javascript
......
<a name="menu">目录</a>
1. [身份证校验](#idNoValid)
1. [保存订单](#saveOrder)
1. [我的订单](#myOrders)
1. [订单详情](#orderInfo)
## **<a name="idNoValid"> 身份证校验</a>**
[返回到目录](#menu)
##### URL
[/applet/merchantApplet/idNoValid]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
```javascript
{
"openid": "od1Y85FIQbVye0WzZnAKnTh5YC6k", // openId
"merchant_id": "11247613260000707", // 商户id
"idno": "210124198911021227", // 身份证
}
```
#### 返回结果
```javascript
{
"code": 0,
"msg": "身份证号码错误"
}
```
## **<a name="saveOrder"> 保存订单</a>**
[返回到目录](#menu)
##### URL
[/applet/merchantApplet/saveOrder]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
```javascript
{
"openid": "od1Y85FIQbVye0WzZnAKnTh5YC6k", // openId
"merchant_id": "11247613260000707", // 商户id
"idcard_front": "222222222", // 身份证人像面
"idcard_back": "222222222222", // 身份证国徽面
"legal_name": "2222222222", // 法人姓名
"legal_mobile": "18600440811", // 联系电话
"legal_idno": "210124198911021227", // 法人身份证
"company_names": "2222222", // 公司名称,英文逗号(,)分隔
"bank_front": "22222222222222", // 银行卡正面
"bank_back": "2222222222", // 银行卡反面
"bank_name": "2222222222", // 开户行
"bank_no": "222222222222", // 银行卡号
"bank_mobile": "2222222222222" // 手机号(银行卡预留手机号)
}
```
#### 返回结果
```javascript
{
"code": 1,
"msg": "success",
"data": null
}
```
## **<a name="myOrders"> 我的订单</a>**
[返回到目录](#menu)
##### URL
[/applet/merchantApplet/myOrders]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
``` javascript
{
"currentPage": "1",
"pageSize": "10",
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"count": 0,
"rows": [
{
"id": "1726724188001516", // 订单编号
"price": 1500, // 订单价格
"pay_voucher_img": "0", // 付款凭证
"audit_remark": "", // 审核凭证
"deliver_man": "", // 交付联系人
"deliver_mobile": "", // 交付联系电话
"deliver_addr": "", // 邮寄地址
"created_at": "2020-03-21 07:45:18", // 创建时间
"status": "3030", // 订单状态
"status_name": "已交付" // 订单状态名称
// 订单信息
"bminfo": {
"idcard_front": "11111", // 身份证正面
"idcard_back": "11111", // 身份证反面
"legal_name": "11111", // 法人名称
"legal_mobile": "11111", // 手机号
"legal_idno": "11111", // 身份证号码
"company_names": "11111", // 个体户名称
"bank_front": "11111", // 银行卡正面图
"bank_back": "11111", // 银行卡反面图
"bank_name": "11111", // 开户行
"bank_no": "11111", // 银行卡号
"bank_mobile": "11111", // 预留手机号
"domicile_id": "", // 注册地id
"domicile_name": "", // 注册地
"business_scope_id": "", // 经营范围id
"business_type": "", // 经营范围类型
"business_scope": "", // 经营范围详情
}
}
],
"total": 1
},
"requestid": "00521a0a0f094c8d982bf4375fbe91b1"
}
```
## **<a name="orderInfo"> 订单详情</a>**
[返回到目录](#menu)
##### URL
[/applet/merchantApplet/orderInfo]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
``` javascript
{
"id": "1",
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"id": "1726724188001516", // 订单编号
"price": 1500, // 订单价格
"pay_voucher_img": "0", // 付款凭证
"audit_remark": "", // 审核凭证
"deliver_man": "", // 交付联系人
"deliver_mobile": "", // 交付联系电话
"deliver_addr": "", // 邮寄地址
"created_at": "2020-03-21 07:45:18", // 创建时间
"status": "3030", // 订单状态
"status_name": "已交付" // 订单状态名称
// 订单信息
"bminfo": {
"idcard_front": "11111", // 身份证正面
"idcard_back": "11111", // 身份证反面
"legal_name": "11111", // 法人名称
"legal_mobile": "11111", // 手机号
"legal_idno": "11111", // 身份证号码
"company_names": "11111", // 个体户名称
"bank_front": "11111", // 银行卡正面图
"bank_back": "11111", // 银行卡反面图
"bank_name": "11111", // 开户行
"bank_no": "11111", // 银行卡号
"bank_mobile": "11111", // 预留手机号
"domicile_id": "", // 注册地id
"domicile_name": "", // 注册地
"business_scope_id": "", // 经营范围id
"business_type": "", // 经营范围类型
"business_scope": "", // 经营范围详情
}
},
"requestid": "00521a0a0f094c8d982bf4375fbe91b1"
}
```
\ No newline at end of file
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