接口1:联系人列表(联系人主界面)[寇璐]
Action:"/mobile/contactList.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |key|查询关键字|否||key="张三"|模糊查询| |type|联系人类型|是|0|0:我的联系人;1:客户联系人|区分联系人是我的联系人,还是客户联系人|
请求返回: 我的联系人:
{
"contacts":[
{
"companyName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},{
"companyName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
}
]
}
复制代码
客户联系人:
{
"cusContacts":[
{
"customerName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},{
"customerName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
}
]
}
复制代码
接口2:新建我的联系人[寇璐]
Action: "/mobile/contactAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |baseInfo|基本信息|是|||json对象| |contacts|联系方式|是|||json对象| |imagsId|名片照片ID|是|||上传名片之后的ID|
baseInfo 字段说明
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |companyName|公司名称|否|| |name|姓名|是||| |sex|性别|是||| |age|年龄|否||| |position|职务|否||| |department|部门|否||| |brithday|生日|否||| |isDMakers|是否关键决策人|是|1|1:是;0:否| |notes|备注|否|||
contacts 字段说明:
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |phone|手机号|是|||json数组,多个| |email|邮箱|否|||json数组,多个| |tel|座机号|否|||json数组,多个|
举例:
{
"baseInfo":{
"companyName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},
"contacts":{
"phones":[
{
"phone":"13243234243"
}
],
"emails":[
{
"email":"1242139@qq.com"
}
],
"tels":[
{
"tel":"0755-213213"
}
]
}
}
复制代码
请求返回:
id为单据id,后面删除,修改用
{"success":true,"id":"18293821"} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
------:更新我的联系人[寇璐]
Action: "/mobile/contactUpdate.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是||id=10002|id| |baseInfo|基本信息|是|||json对象| |contacts|联系方式|是|||json对象| |imagsId|名片照片ID|是|||上传名片之后的ID|
baseInfo 字段说明
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |companyName|公司名称|否|| |name|姓名|是||| |sex|性别|是||| |age|年龄|否||| |position|职务|否||| |department|部门|否||| |brithday|生日|否||| |isDMakers|是否关键决策人|是|1|1:是;0:否| |notes|备注|否|||
contacts 字段说明:
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |phone|手机号|是|||json数组,多个| |email|邮箱|否|||json数组,多个| |tel|座机号|否|||json数组,多个|
举例:
{
"baseInfo":{
"companyName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},
"contacts":{
"phones":[
{
"phone":"13243234243"
}
],
"emails":[
{
"email":"1242139@qq.com"
}
],
"tels":[
{
"tel":"0755-213213"
}
]
}
}
复制代码
请求返回:
id为单据id,后面删除,修改用
{"success":true,"id":"18293821"} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
接口3:新建客户联系人
Action:"/mobile/cusContactAdd.action" 请求方法:post 请求参数:
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |baseInfo|基本信息|是| |contacts|联系方式|是| |imagsId|名片照片ID|是|
baseInfo 字段说明 |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |customerName|客户名称|是||| |name|姓名|是||| |sex|性别|是||| |age|年龄|否||| |position|职务|否||| |department|部门|否||| |brithday|生日|否||| |isDMakers|是否关键决策人|是|1|1:是;0:否| |notes|备注|否|||
contacts 字段说明: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |phone|手机号|是||| |email|邮箱|否||| |tel|座机号|否|||
举例:
{
"baseInfo":{
"customerName":"深圳市优软科技有限公司",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},
"contacts":{
"phones":[
{
"phone":"13243234243"
}
],
"emails":[
{
"email":"1242139@qq.com"
}
],
"tels":[
{
"tel":"0755-213213"
}
]
}
}
复制代码
请求返回:
id为单据id,后面删除,修改用
{"success":true,"id":"18293821"} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
接口4:我的联系人详情[寇璐]
Action:"/mobile/contactDetail.action" 请求方法:get 请求参数:
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是||id=1239023|我的联系人单据ID|
请求返回:
{
"baseInfo":{
"imagesUrl":"https://upload.jianshu.io/users/upload_avatars/1131704/b74e880b59f9?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240",
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},
"contacts":{
"phones":[
{
"phone":"13243234243"
}
],
"emails":[
{
"email":"1242139@qq.com"
}
],
"tels":[
{
"tel":"0755-213213"
}
]
}
}
复制代码
接口5:客户联系人详情
Action:"/mobile/cusContactDetail.action" 请求方法:get 请求参数:
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|id=1239023|客户联系人单据ID|
请求返回:
{
"baseInfo":{
"imagesUrl":"https://upload.jianshu.io/users/upload_avatars/1131704/b74e880b59f9?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240",
"customerName":"深圳市优软科技有限公司"
"name":"张三",
"sex":"男",
"age":25,
"position":"财务经理",
"department":"财务部",
"brithday":"1992-08-17",
"isDMakers":1,
"notes":"特殊客户"
},
"contacts":{
"phones":[
{
"phone":"13243234243"
}
],
"emails":[
{
"email":"1242139@qq.com"
}
],
"tels":[
{
"tel":"0755-213213"
}
]
}
}
复制代码
接口6:删除我的联系人[寇璐]
Action:"/mobile/contactDelete.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|||我的联系人单据ID| 请求返回:
{"success":true} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
接口6:客户联系人(取消关系)解除关联
Action:"/mobile/cusContactDelete.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|||客户联系人单据ID|
请求返回:
{"success":true} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
接口7:上传图片[寇璐]
用系统已有的上传文件接口
客户管理
接口8:客户管理主界面
Action:"/mobile/customerHome.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义|
请求返回:
{
"panel":{
"lNum":"联系人数",
"cNum":"客户数",
"vNum":"拜访数",
"oNum":"外勤记录数"
},
"historys":[{
"name":"客户名称",
"fpTime":"跟进时间",
"state":"状态"
}],
"care":[{
"name":"联系人名字",
"birthday":"生日时间",
"state":"状态"
}],
"statistics":[{
"name":"业务员A",
"cNum":"客户个数",
"vPNum":"拜访计划个数",
"vRNum":"拜访报告个数"
}]
}
复制代码
接口9:新增正式客户
Action:"/mobile/customerAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |data|表单数据|是|-|-|json对象|
请求举例:
{
"data":{
"bill":{
"num":"c0000001",
"state":"已保存"
},
"customer":{
"name":"客户名称",
"type":"客户类型",
"level":"客户级别",
"source":"客户来源",
"industry":"所在行业",
"phone":"客户电话",
"website":"客户网址"
},
"address":[
{
"customerAddress":"客户地址",
"detailAddress":"详细地址",
"locationAddress":"定位地址"
}
],
"isSaveAdd":"true"
}
}
复制代码
请求返回:
{"success":true,"id":"12312312"}
{"success":false,"msg":"失败原因"}
复制代码
接口10:新增预录入客户
Action:"/mobile/planCustomerAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |data|from表单数据|是|-|-|json对象| 请求举例:
{
"data":{
"customer":{
"name":"客户名称",
"type":"客户类型",
"level":"客户级别",
"source":"客户来源",
"industry":"所在行业",
"phone":"客户电话",
"website":"客户网址"
},
"address":[
{
"customerAddress":"客户地址",
"detailAddress":"详细地址",
"locationAddress":"定位地址"
}
],
"isSaveAdd":"true"
}
}
复制代码
请求返回:
{"success":true,"id":"12312312"}
{"success":false,"msg":"失败原因"}
复制代码
接口11:新增拜访报告
接口12:客户列表
Action:"/mobile/customerList.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |key|关键字|否|-|key="客户"|模糊查询| |type|类型|是|0|0:我负责的客户;1:我下属的客户|-|
请求返回:
{
"list":[
{
"company":"深圳华商龙",
"level":"重要客户",
"name":"钟总",
"phone":"1344232323",
"total":"1,000,00",
"state":"未成交",
}
]
}
复制代码
接口13:客户详情
Action:"/mobile/customerDetail.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|-|-|-| 请求返回:
{
"data":{
"bill":{
"num":"c0000001",
"state":"已保存"
},
"customer":{
"name":"客户名称",
"type":"客户类型",
"level":"客户级别",
"source":"客户来源",
"industry":"所在行业",
"phone":"客户电话",
"website":"客户网址"
},
"address":[
{
"customerAddress":"客户地址",
"detailAddress":"详细地址",
"locationAddress":"定位地址"
}
],
"customers":[{
"name":"李四",
"position":"总经理",
"phone":"13259324934",
}],
"visitrecords":[{
}],
"business":[{
}]
}
}
复制代码
接口14:客户编辑
Action:"/mobile/customerUpdate.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|客户单据ID| |data|表单数据|是|-|-|JSON对象| 请求举例:
与客户新增数据格式相同
复制代码
请求返回:
{"success":true,"id":"12312312"}
{"success":false,"msg":"失败原因"}
复制代码
接口15:客户联系人列表
客户拜访
接口16:拜访报告列表
Action:"/mobile/visitList.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |key|搜索关键字|否|-|key="英唐集团"|搜索查询关键字| |type|类型|是|0|0:我的拜访报告 1:下属的拜访报告|搜索查询关键字| 请求返回:
{
"data":[
{
"customer":"英唐集团",
"state":"未完成",
}
]
}
复制代码
接口17:新增拜访计划
Action:"/mobile/visitPlanAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |data|表单数据|是|-|-|json对象| 请求举例:
{
"data":{
"name":"客户名称",
"address":"客户地址",
"destination":"拜访目的",
"time":"计划日期",
"leader":"负责人",
"visitor":"协访人",
"isOutside":"是否开启外勤计划0或者1",
"timer":"时段",
"createAddress":"创建位置",
"createTime":"创建时间",
"plantime":"预计达到时间",
"signAddress":"考勤地址",
}
}
复制代码
请求返回:
{"success":true,"id":"12312312"}
{"success":false,"msg":"失败原因"}
复制代码
接口18:新增拜访报告
Action:"/mobile/visitAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |data|表单数据|是|-|-|json对象| 请求举例:
{
"data":{
"visit":{
"num":"c0000001",
"state":"已保存",
"creater":"张三",
"createtime":"2018-09-02:18:00",
}
"plans":{
"name":"客户名称",
"address":"客户地址",
"destination":"拜访目的",
"time":"计划日期",
"leader":"负责人",
"visitor":"协访人",
"isOutside":"是否开启外勤计划0或者1",
"timer":"时段",
"createAddress":"创建位置",
"createTime":"创建时间",
"plantime":"预计达到时间",
"signAddress":"考勤地址",
"realtime":"实际达到时间",
"lasttime":"最后记录时间",
"isSuccess":"true",
"feedback":"拜访反馈内容",
}
}
}
复制代码
请求返回:
{"success":true,"id":"12312312"}
{"success":false,"msg":"失败原因"}
复制代码
接口19:拜访计划详情
Action:"/mobile/visitPlanDetail.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|拜访计划单据ID|
请求返回:
{
"data":{
"name":"客户名称",
"address":"客户地址",
"destination":"拜访目的",
"time":"计划日期",
"leader":"负责人",
"visitor":"协访人",
"isOutside":"是否开启外勤计划0或者1",
"timer":"时段",
"createAddress":"创建位置",
"createTime":"创建时间",
"plantime":"预计达到时间",
"signAddress":"考勤地址",
"realtime":"实际达到时间",
"lasttime":"最后记录时间",
}
}
复制代码
接口20:拜访报告详情
Action:"/mobile/visitDetail.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|拜访报告单据ID|
请求返回:
{
"data":{
"visit":{
"num":"c0000001",
"state":"已保存",
"creater":"张三",
"createtime":"2018-09-02:18:00",
}
"plans":{
"name":"客户名称",
"address":"客户地址",
"destination":"拜访目的",
"time":"计划日期",
"leader":"负责人",
"visitor":"协访人",
"isOutside":"是否开启外勤计划0或者1",
"timer":"时段",
"createAddress":"创建位置",
"createTime":"创建时间",
"plantime":"预计达到时间",
"signAddress":"考勤地址",
"realtime":"实际达到时间",
"lasttime":"最后记录时间",
"isSuccess":"true",
"feedback":"拜访反馈内容",
}
}
}
复制代码
商机模块
接口21:商机管理主界面
Action:"/mobile/businessOppHome.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义|
请求返回:
{
"panel":{
"buinessNum":"新增商机数",
"changeNum":"阶段变化商机数",
"sNum":"赢单数",
"fNum":"输单数",
"nNum":"无效数",
"eNum":"商机跟进记录数"
},
"scales":[{
"name":"商机名称",
"time":"时间",
"info":"商机阶段变更信息",
"man":"跟进人"
}
],
"timeOutBusiness":[{
"name":"商机名称",
"lastetime":"上次操作时间",
"stepName":"阶段名称",
"man":"跟进人"
}
],
"ranks":[{
"name":"业务员",
"bnum":"商机数",
"snun":"赢单数",
"fnum":"输单数"
"nnum":"无效数",
"srates":"成功率",
}]
}
复制代码
接口22:新建商机
Action:"/mobile/businessOppAdd.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |data|data|是|-|-|json对象|
header |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |num|客户编号|是|-|-|-| |state|单据状态|是|-|-|-| |creater|创建人|是|-|-|-| |createTime|创建时间|是|-|-|-|
basic
|参数|字段名称|是否必须|默认值|格式举例|含义| |-| |name|商机名称|是|-|-|-| |srouce|商机来源|是|-|-|-| |createTime|创建时间|是|-|-|-| |creater|创建人|是|-|-|-| |type|商机类型|是|-|-|-| |man|跟进人|是|-|-|-|
请求举例:
{
"data":{
"header":{
"num":"c80321940",
"state":"已保存",
"creater":"张三",
"createTime":"2018-09-02 18:00"
},
"basic":{
"name":"****",
"srouce":"****",
"createTime":"****",
"creater":"****",
"type":"****",
"man":"****"
}
}
}
复制代码
请求返回:
id为单据id,后面删除,修改用
{"success":true,"id":"18293821"} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
接口23:商机列表
Action:"/mobile/businessOppList.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |key|查询关键字|否|-|key="****"|模糊查询| |type|商机类型|是|0|0:我负责的商机;1:我下属的商机|-|
请求返回:
{
"data":[
{
"name":"英唐收购项目",
"state":"进行中",
"content":"产品语言",
"time":"2018-09-10 16:00"
}
]
}
复制代码
接口24:商机详情
Action:"/mobile/businessOppDetail.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|商机单据ID|
请求返回:
{
"businessInfo":{
"num":"SJ000001",
"name":"英唐收购腾讯计划",
"source":"公司商机库",
"createrTime":"2018-08-10 12:00",
"creater":"程小龙",
"type":"项目商机",
"updater":"陈大龙",
"updateTime":"2018-09-01 12:00"
},
"customerInfo":{
"name":"深圳市英唐控股有限公司"
},
"businessSteps":{
"steps":["阶段A","阶段B","阶段C"],
"curStep":"阶段A",
"tips":"客户对产品有意向"
},
"businessRecord":[
{
"salesman":"业务员A",
"time":"9月20日 10:22",
"steps":"阶段A",
"tips":"客户对产品有意向",
"updater":"业务员B",
"notes":"备注",
}
]
}
复制代码
接口25:商机阶段详情
Action:"/mobile/businessOppStepsDetail.action" 请求方法:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|商机单据ID|
请求返回:
{
"data":[
{
"name":"客户探索",
"day":"3",
"tips":[
"要点内容1",
"要点内容2"
]
},
{"name":"客户探索",
"day":"3",
"tips":[
"要点内容1",
"要点内容2"
]},
{"name":"客户探索",
"day":"3",
"tips":[
"要点内容1",
"要点内容2"
]},
{"name":"赢单",
"day":"3",
"tips":[
"要点内容1",
"要点内容2"
]},
{"name":"输单",
"day":"3",
"tips":[
"要点内容1",
"要点内容2"
]}
]
}
复制代码
接口26:商机更新
Action:"/mobile/businessOppUpdate.action" 请求方法:post 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据ID|是|-|-|商机单据ID| |data|数据对象|是|-|-|json对象| 请求举例:
格式与商机新建相同
复制代码
请求返回:
{"success":true} //成功
{"success":false, "msg":"失败原因返回!"}//失败
复制代码
mobile/common/getformandgriddetail.action //初始化
/mobile/commonUpdate.action //更新
/mobile/oa/commonSaveAndSubmit.action //保存和提交
/mobile/commonres.action //反提交 /mobile/commondelete.action //删除
mobile/common/list.action //列表查看 mobile/common/getformandgriddata.action //单据详情
接口27:动态表单初始化
Action: "mobile/common/getformandgriddetail.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |caller|caller|是|-|-|-| |condition|条件查询|是|-|-|条件查询| |id|单据ID|是|-|-|商机单据ID| |sessionId|-|是|-|-|-| 请求返回:
接口28:保存和提交
Action: "mobile/oa/commonSaveAndSubmit.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |caller|caller|是|-|-|-| |formStore|主表项数据|是|-|-|-| |gridStore|明细项数据|是|-|-|-| |sessionId|-|是|-|-|-| 请求返回:
接口29:更新
Action: "mobile/commonUpdate.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |keyid|单据id|是|-|-|-| |caller|caller|是|-|-|-| |formStore|主表项数据|是|-|-|-| |gridStore|明细项数据|是|-|-|-| |sessionId|-|是|-|-|-| 请求返回:
接口30:详情
Action: "mobile/common/getformandgriddata.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|-|-|-| |caller|caller|是|-|-|-| |sessionId|-|是|-|-|-| 请求返回:
接口31:反提交
Action: "mobile/commonres.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|-|-|-| |caller|caller|是|-|-|-| |sessionId|-|是|-|-|-| 请求返回:
接口32:删除
Action: "mobile/commondelete.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |id|单据id|是|-|-|-| |caller|caller|是|-|-|-| |sessionId|-|是|-|-|-| 请求返回:
接口33:列表查看
Action: "mobile/common/list.action" 请求方式:get 请求参数: |参数|字段名称|是否必须|默认值|格式举例|含义| |-| |page|单据id|是|-|-|-| |caller|caller|是|-|-|-| |pageSize|页数|是|-|-|-| |condition|查询条件|是|-|-|-| |sessionId|-|是|||| 请求返回: