Commit 1dda2b0c by linboxuan

Merge branch 'center-channel' of http://gitlab.gongsibao.com/jiangyong/zhichan into center-channel

parents 606ad34e 04bf6a69
...@@ -40,6 +40,11 @@ class OpNeed extends APIBase { ...@@ -40,6 +40,11 @@ class OpNeed extends APIBase {
case "opNeedDetailByChannelNo"://需求详情--包含方案 case "opNeedDetailByChannelNo"://需求详情--包含方案
opResult = await this.utilsOpNeedSve.opNeedDetailByChannelNo(pobj, pobj.actionBody); opResult = await this.utilsOpNeedSve.opNeedDetailByChannelNo(pobj, pobj.actionBody);
break; break;
case "getItemByNeedNo"://需求详情
opResult = await this.utilsOpNeedSve.getItemByNeedNo(pobj, pobj.actionBody);
break;
// case "getItemByChannelNeedNo"://方案反馈 // case "getItemByChannelNeedNo"://方案反馈
// opResult = await this.utilsOpNeedSve.getItemByChannelNeedNo(pobj, pobj.actionBody); // opResult = await this.utilsOpNeedSve.getItemByChannelNeedNo(pobj, pobj.actionBody);
// break; // break;
......
...@@ -7,35 +7,57 @@ class diagnosisNeedBus extends WEBBase { ...@@ -7,35 +7,57 @@ class diagnosisNeedBus extends WEBBase {
this.unSve = system.getObject('service.utilsSve.utilsNdbSve') this.unSve = system.getObject('service.utilsSve.utilsNdbSve')
} }
async springBoard (pobj, qobj, req) { async springBoard(pobj, qobj, req) {
var result = await this.opActionProcess(pobj, pobj.actionType, req); var result = await this.opActionProcess(pobj, pobj.actionType, req);
return result; return result;
} }
async opActionProcess (pobj, action_type, req) { async opActionProcess(pobj, action_type, req) {
var opResult = null; var opResult = null;
switch (action_type) { switch (action_type) {
case "test"://测试 case "test"://测试
opResult = system.getResultSuccess(null, "测试成功"); opResult = system.getResultSuccess(null, "测试成功");
break; break;
case "getDnList":// 精确检索 case "getDnList":// 精确检索
opResult = await this.unSve.getList(pobj); if (Object.keys(pobj.actionBody).length < 1) {
break; return system.getResult(null, `参数不能为空`)
case 'getDnListPending': // 获取详情 }
pobj.actionBody.status = 'dcl' opResult = await this.unSve.getList(pobj);
opResult = await this.unSve.getList(pobj); break;
break; case 'getDnListPending': // 获取列表
case 'getDnDetail': // 获取列表 pobj.actionBody.status = 'dcl';
opResult = await this.unSve.getDetail(pobj); opResult = await this.unSve.getList(pobj);
break; break;
case 'doDnEAV': case 'getDnDetail': // 获取详情
opResult = await this.unSve.doEAV(pobj); if (!pobj.actionBody.id) {
break; return system.getResult(null, `id不能为空`)
default: }
opResult = system.getResult(null, "actionType参数错误"); opResult = await this.unSve.getDetail(pobj);
break; break;
} case 'doDnEAV': //认证
return opResult; if (!pobj.actionBody.id) {
return system.getResult(null, `id不能为空`)
}
if (!pobj.actionBody.diagnosisResult) {
return system.getResult(null, `诊断结果不能为空`)
}
opResult = await this.unSve.doEAV(pobj);
break;
case 'getDnNeedList': //获取需求列表
opResult = await this.unSve.getNeedList(pobj);
break;
case 'getDnNeedDetail': //获取需求详情
if (!pobj.actionBody.needNo) {
return system.getResult(null, `needNo不能为空`)
}
opResult = await this.unSve.getNeedDetail(pobj);
break;
default:
opResult = system.getResult(null, "actionType参数错误");
break;
}
return opResult;
} }
} }
module.exports = diagnosisNeedBus; module.exports = diagnosisNeedBus;
\ No newline at end of file
const System = require("../../../system"); const system = require("../../../system");
var settings = require("../../../../config/settings"); var settings = require("../../../../config/settings");
const AppServiceBase = require("../../app.base"); const AppServiceBase = require("../../app.base");
class FblicenseService extends AppServiceBase { class FblicenseService extends AppServiceBase {
constructor () { constructor() {
super(); super();
this.centerOrderUrl = settings.centerOrderUrl() this.centerOrderUrl = settings.centerOrderUrl()
this.restClient = System.getObject("util.restClient") this.restClient = system.getObject("util.restClient")
}; };
//获取列表、检索
async getList(pobj) {
try {
let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard`
console.log(url)
pobj.actionType = 'getList'
let result = await this.restClient.execPost(pobj, url)
return JSON.parse(result.stdout)
} catch (error) {
return system.getResultFail(-1, error.message || 'failed')
}
}
// 获取详情
async getDetail(pobj) {
try {
let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard`
pobj.actionType = 'getDetail'
let result = await this.restClient.execPost(pobj, url)
let data = JSON.parse(result.stdout)
if (data.status != 0)
return system.getResultFail(-1, error.message || 'failed')
return data;
} catch (error) {
return system.getResultFail(-1, error.message || 'failed')
}
}
async getList (data) { // 认证
try { async doEAV(pobj) {
let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard` try {
console.log(url) let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard`
data.actionType = 'getList' pobj.actionType = 'doEAV'
let result = await this.restClient.execPost(data, url) let result = await this.restClient.execPost(pobj, url)
return result return JSON.parse(result.stdout)
} catch (error) { } catch (error) {
return { return system.getResultFail(-1, error.message || 'failed')
code: -1, }
msg: error.message || 'failed', }
}
// 获取需求列表
async getNeedList(pobj) {
try {
let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard`
pobj.actionType = 'getNeedList'
let result = await this.restClient.execPost(pobj, url)
return JSON.parse(result.stdout)
} catch (error) {
return system.getResultFail(-1, error.message || 'failed')
}
}
// 获取需求详情
async getNeedDetail(pobj) {
try {
let url = `${this.centerOrderUrl}action/diagnosisneedbus/springBoard`
pobj.actionType = 'getNeedDetail'
let result = await this.restClient.execPost(pobj, url)
return JSON.parse(result.stdout)
} catch (error) {
return system.getResultFail(-1, error.message || 'failed')
}
} }
}
} }
module.exports = FblicenseService; module.exports = FblicenseService;
...@@ -24,17 +24,19 @@ class UtilsOpNeedService extends AppServiceBase { ...@@ -24,17 +24,19 @@ class UtilsOpNeedService extends AppServiceBase {
*/ */
async opSubmitNeed(pobj, actionBody) { async opSubmitNeed(pobj, actionBody) {
var sobj = pobj; var sobj = pobj;
// 获取商品类型 if (actionBody.type) {
sobj.actionType = "getProductTypeInfo"; // 获取商品类型
var url = settings.centerAppUrl() + "action/opProduct/springBoard"; sobj.actionType = "getProductTypeInfo";
var opResult =await this.restPostUrl(sobj,url); var url = settings.centerAppUrl() + "action/opProduct/springBoard";
if (opResult.status != 0) { var opResult = await this.restPostUrl(sobj, url);
return system.getResultFail(-5015, "需求类型查询失败"); if (opResult.status != 0) {
return system.getResultFail(-5015, "需求类型查询失败");
}
pobj.actionBody.type_code = opResult.data.type_code;
pobj.actionBody.type_name = opResult.data.type_name;
pobj.actionBody.channel_type_code = opResult.data.channel_type_code;
pobj.actionBody.channel_type_name = opResult.data.channel_type_name;
} }
pobj.actionBody.type_code = opResult.data.type_code;
pobj.actionBody.type_name = opResult.data.type_name;
pobj.actionBody.channel_type_code = opResult.data.channel_type_code;
pobj.actionBody.channel_type_name = opResult.data.channel_type_name;
// 提交需求 暂未做推送 // 提交需求 暂未做推送
pobj.actionType = "opSubmitNeed"; pobj.actionType = "opSubmitNeed";
var reqUrl = this.centerOrderUrl + "action/opNeed/springBoard"; var reqUrl = this.centerOrderUrl + "action/opNeed/springBoard";
...@@ -52,10 +54,10 @@ class UtilsOpNeedService extends AppServiceBase { ...@@ -52,10 +54,10 @@ class UtilsOpNeedService extends AppServiceBase {
* @param {*} pobj * @param {*} pobj
* @param {*} actionBody * @param {*} actionBody
*/ */
async opNeedList(pobj, actionBody) { async opNeedList(pobj, actionBody) {
// 获取需求列表 // 获取需求列表
var reqUrl = this.centerOrderUrl + "action/opNeed/springBoard"; var reqUrl = this.centerOrderUrl + "action/opNeed/springBoard";
var opNeedListResult =await this.restPostUrl(pobj,reqUrl); var opNeedListResult = await this.restPostUrl(pobj, reqUrl);
return opNeedListResult; return opNeedListResult;
} }
...@@ -103,6 +105,13 @@ class UtilsOpNeedService extends AppServiceBase { ...@@ -103,6 +105,13 @@ class UtilsOpNeedService extends AppServiceBase {
return result; return result;
} }
async getNeedList(pobj, actionBody){
// pobj.
var reqUrl = this.centerOrderUrl + "action/need/springBoard";
var result = await this.restPostUrl(pobj, reqUrl);
return result;
}
//状态更新 //状态更新
async icpNotify(pobj) { async icpNotify(pobj) {
var actionBody = pobj.actionBody; var actionBody = pobj.actionBody;
...@@ -287,12 +296,10 @@ class UtilsOpNeedService extends AppServiceBase { ...@@ -287,12 +296,10 @@ class UtilsOpNeedService extends AppServiceBase {
} }
return jsonarr; return jsonarr;
} }
// async test1() {
// var a = await this.aliclient.reqbyget({ action: "CloseIntention", reqbody: { BizId: "20200416125415000001", Note: "测试需求关闭" }, apiVersion: "2019-05-08" }); //  async opNeedDetailByChannelNo(pobj, actionBody){
// console.log(a.data);
// return a; // }
// }
} }
module.exports = UtilsOpNeedService; module.exports = UtilsOpNeedService;
......
...@@ -63,3 +63,6 @@ ...@@ -63,3 +63,6 @@
## 20. 需求 ## 20. 需求
  1 [需求相关接口](doc/api/platform/opNeed.md)   1 [需求相关接口](doc/api/platform/opNeed.md)
## 21. 诊断运营端相关接口
  1 [诊断运营端相关接口](doc/api/appDesc/diagnosisneedbusDesc.md)
\ No newline at end of file
<a name="menu" href="/doc">返回主目录</a>
1. [精确检索](#getDnList)
2. [获取列表](#getDnListPending)
3. [获取详情](#getDnDetail)
4. [认证](#doDnEAV)
## **<a name="getDnList"> 获取全部诊断单列表</a>**
[返回到目录](#menu) <a name="menu" href="/doc">返回主目录</a>
##### URL
[/web/zzzd/diagnosisneedbus/springBoard]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDnList
``` javascript
{
"diagnosis_no": "申请编号",
"publish_name": "联系人名称",
"publish_mobile": "联系人电话",
"corporate_type": "店铺类型",
"status": "状态",
"updated_at": "更新时间",
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"count": 1,
"rows": [
{
"id": 10,
"diagnosis_no": "N2020081211076qlz86H",
"corporate_type": "qjd",
"corporate_type_name": "旗舰店",
"corporate_name": "林氏集团",
"publish_name": null,
"publish_mobile": "13911391996",
"status": "dcl",
"status_name": "待处理"
}
],
"requestId": "ad648f41e2df471f99834e782ea993d6"
},
"requestId": "c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnListPending"> 获取待处理诊断单列表</a>**
[返回到目录](#menu) <a name="menu" href="/doc">返回主目录</a>
##### URL
[/web/zzzd/diagnosisneedbus/springBoard]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDnListPending
``` javascript
{
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"count": 1,
"rows": [
{
"id": 10,
"diagnosis_no": "N2020081211076qlz86H",
"corporate_type": "qjd",
"corporate_type_name": "旗舰店",
"corporate_name": "林氏集团",
"publish_name": null,
"publish_mobile": "13911391996",
"status": "dcl",
"status_name": "待处理"
}
],
"requestId": "ad648f41e2df471f99834e782ea993d6"
},
"requestId": "c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnDetail"> 获取诊断单详情</a>**
[返回到目录](#menu) <a name="menu" href="/doc">返回主目录</a>
##### URL
[/web/zzzd/diagnosisneedbus/springBoard]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDnListPending
``` javascript
{
"id": 0
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"count": 1,
"rows": [
{
"id": 10,
"diagnosis_no": "N2020081211076qlz86H",
"corporate_type": "qjd",
"corporate_type_name": "旗舰店",
"corporate_name": "林氏集团",
"publish_name": null,
"publish_mobile": "13911391996",
"status": "dcl",
"status_name": "待处理"
}
],
"requestId": "ad648f41e2df471f99834e782ea993d6"
},
"requestId": "c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="doDnEAV"> 认证</a>**
[返回到目录](#menu) <a name="menu" href="/doc">返回主目录</a>
##### URL
[/web/zzzd/diagnosisneedbus/springBoard]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:doDnEAV
``` javascript
{
"id":0,
"diagnosisResult":"诊断结果"
}
```
#### 返回结果
```javascript
{
"status": 0,
"msg": "success",
"data": {
"count": 1,
"rows": [
{
"id": 10,
"diagnosis_no": "N2020081211076qlz86H",
"corporate_type": "qjd",
"corporate_type_name": "旗舰店",
"corporate_name": "林氏集团",
"publish_name": null,
"publish_mobile": "13911391996",
"status": "dcl",
"status_name": "待处理"
}
],
"requestId": "ad648f41e2df471f99834e782ea993d6"
},
"requestId": "c0dbbd7ba07c4a63899b672816c2276e"
}
```
\ No newline at end of file
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
1. [下需求](#opSubmitNeed) 1. [下需求](#opSubmitNeed)
2. [需求关闭](#opNeedClose) 2. [需求关闭](#opNeedClose)
3. [需求列表](#opNeedList) 3. [需求列表](#opNeedList)
4. [需求详情](#getItemByNeedNo)
## **<a name="opSubmitNeed"> 下需求</a>** ## **<a name="opSubmitNeed"> 下需求</a>**
[返回到目录](#menu) [返回到目录](#menu)
...@@ -10,24 +11,43 @@ ...@@ -10,24 +11,43 @@
#### 参数格式 `JSON` #### 参数格式 `JSON`
#### HTTP请求方式 `POST` #### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:opSubmitNeed #### 渠道执行的类型 actionType:opSubmitNeed
|参数名 | 必须 | 字段类型 | 说明 |
| ---- | ---- | ---- | ---- |
|userName | Y | string | 用户名称 |
|area | N | string | 地区名称 |
|description | Y | string | 备注 |
|mobile | Y | string | 用户电话 |
|type | Y | int | 产品类型 |
``` javascript ``` javascript
{ {
"actionType":"opSubmitNeed",
"actionBody":{
"area": "北京市-北京市-大兴区", "area": "北京市-北京市-大兴区",
"description": "公司注册 - ", "description": "公司注册 - ",
"mobile": "13911391996", "mobile": "13911391996",
"type": "gszc", "type": "gszc",
"userName": "" "userName": ""
} }
}
``` ```
|参数名 | 字段类型 | 说明 |
| ---- | ---- | ---- |
|needNo | string | 需求号 |
#### 返回结果 #### 返回结果
``` javascript ``` javascript
{ {
"status": 0, "status": 0,
"msg": "success", "msg": "success",
"data": null, "data": {
"requestId": "d8ff1ec957e8473f863e79ad91440c60" "needNo": "N202008120920C5NEHz9",
} },
"requestId": "5579e010573b430ebf4b456156061081"
}
``` ```
## **<a name="opNeedClose"> 需求关闭</a>** ## **<a name="opNeedClose"> 需求关闭</a>**
...@@ -37,11 +57,20 @@ ...@@ -37,11 +57,20 @@
#### 参数格式 `JSON` #### 参数格式 `JSON`
#### HTTP请求方式 `POST` #### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:opNeedClose #### 渠道执行的类型 actionType:opNeedClose
|参数名 | 必须 | 字段类型 | 说明 |
| ---- | ---- | ---- | ---- |
|needNo | Y | string | 需求号|
|note | N | string | 备注|
``` javascript ``` javascript
{ {
"needNo": "N202008081803V5zoAk4", // 必填 "actionType":"opNeedClose",
"note":"不想买了" // 必填 "actionBody":{
"needNo": "N202008120920C5NEHz9",
"note":"不想买了"
} }
}
``` ```
#### 返回结果 #### 返回结果
...@@ -61,31 +90,159 @@ ...@@ -61,31 +90,159 @@
#### 参数格式 `JSON` #### 参数格式 `JSON`
#### HTTP请求方式 `POST` #### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:opNeedList #### 渠道执行的类型 actionType:opNeedList
| 参数名 | 必填 | 类型 | 描述 |
| ---- | ---- | ---- | ---- |
| pageNumber | 否 | string | 页码 |
| pageSize | 否 | string | 页面大小 |
| status | 否 | string | 状态 |
| consultType | 否 | string | 需求类型 |
``` javascript ``` javascript
{ {
// 时间段,分页,排序,需求状态 条件展示未做 "actionType":"opNeedList",
"actionBody":{
"pageNumber":"1",
"pageSize":"10",
"consultType":"gszc"
} }
}
``` ```
#### 返回结果 #### 返回结果
``` javascript ``` javascript
// 返回字段需要根据原型来做,目前只返回基础数据 // 返回字段需要根据原型来做,目前只返回基础数据
{ {
"status": 0, "status": 0,
"msg": "操作成功", "msg": "success",
"data": [ "data": {
"count": 2,
"rows": [
{ {
"needNo": "N202008081803V5zoAk4", "id": 2846,
"status": "ygb", "uapp_id": 22,
"statusName": "已关闭" "channelNeedNo": "N202008111937PK2R1ld",
"needNo": "N202008111937PK2R1ld",
"channelUserId": "15010929366",
"publishName": "",
"publisherOnlyCode": null,
"publishContent": "公司注册 - ",
"publishMobile": "13911391996",
"followManUserId": null,
"followManName": null,
"followManMobile": null,
"followManOnlyCode": null,
"followContent": null,
"productOneType_id": null,
"productType_id": null,
"notes": null,
"disposeNotes": null,
"statusName": "未推送",
"status": "wts",
"city": "北京市-北京市-大兴区",
"province": null,
"typeCode": "gszc",
"typeName": "公司注册",
"channelTypeCode": "gszc",
"channelTypeName": "公司注册",
"created_at": "2020-08-11T11:37:48.000Z",
"updated_at": "2020-08-11T11:37:48.000Z",
"deleted_at": null,
"version": 0
}, },
{ {
"needNo": "N202008081637iFxoxrE", "id": 2845,
"uapp_id": 22,
"channelNeedNo": "N202008111825jPFPjyw",
"needNo": "N202008111825jPFPjyw",
"channelUserId": "15010929366",
"publishName": "",
"publisherOnlyCode": null,
"publishContent": "公司注册 - ",
"publishMobile": "13911391996",
"followManUserId": null,
"followManName": null,
"followManMobile": null,
"followManOnlyCode": null,
"followContent": null,
"productOneType_id": null,
"productType_id": null,
"notes": null,
"disposeNotes": null,
"statusName": "未推送",
"status": "wts", "status": "wts",
"statusName": "未推送" "city": "北京市-北京市-大兴区",
"province": null,
"typeCode": "gszc",
"typeName": "公司注册",
"channelTypeCode": "gszc",
"channelTypeName": "公司注册",
"created_at": "2020-08-11T10:25:26.000Z",
"updated_at": "2020-08-11T10:25:26.000Z",
"deleted_at": null,
"version": 0
} }
], ]
"bizmsg": "empty", },
"requestId": "c1e67d2f7eb7416b988f60ce0c93559b" "requestId": "ffe3d8ad5ea246bc81ee8d93c6bb0c6e"
}
```
## **<a name="opNeedList"> 需求详情</a>**
[返回到目录](#menu)
##### URL
[/web/action/opNeed/springBoard]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getItemByNeedNo
| 参数名 | 必填 | 类型 | 描述 |
| ---- | ---- | ---- | ---- |
| needNo | 是 | string | 需求号 |
``` javascript
{
"actionType":"getItemByNeedNo",
"actionBody":{
"needNo": "N202008120920C5NEHz9"
} }
``` }
\ No newline at end of file
```
#### 返回结果
``` javascript
// 返回字段需要根据原型来做,目前只返回基础数据
{
"status": 0,
"msg": "success",
"data": {
"id": 2848,
"uapp_id": 22,
"needNo": "N202008120920C5NEHz9",
"channelNeedNo": "N202008120920C5NEHz9",
"channelUserId": "15010929366",
"followManUserId": null,
"followManMobile": null,
"city": "北京市-北京市-大兴区",
"province": null,
"publishContent": "公司注册 - ",
"publishName": "",
"publishMobile": "13911391996",
"notes": null,
"followContent": null,
"disposeNotes": null,
"status": "ygb",
"typeCode": "gszc",
"typeName": "公司注册",
"channelTypeCode": "gszc",
"channelTypeName": "公司注册",
"publisherOnlyCode": null,
"followManName": null,
"followManOnlyCode": null
},
"requestId": "b8c105d8015b4d1eb9fd3c016ca7b21f"
}
```
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