You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

242 lines
11 KiB

// //测试
//const serverUrl = 'http://42.194.147.251:8080/';
const serverUrl = 'http://127.0.0.1/';
const H5ServerUrl = 'trackcorrectiontest';
//生产
// const serverUrl = 'https://zhongnengyunche.cn/';
// const H5ServerUrl = 'trackcorrection';
const urlList = {
// 登录
loginUrl: serverUrl + 'api/v1/login', //授权登录
decryptPhone: serverUrl + 'api/v1/decryptphone', //解析手机号 post
// 注册账号
getPhoneCode:serverUrl + 'api/company/send-sms-for-register', //获取手机验证码
checkPhoneCode:serverUrl + 'api/company/verification-code', //效验手机号和验证码
getUserCompany:serverUrl + 'api/v1/company', //获取get/修改put 公司信息
getLocationName:serverUrl + 'api/v1/address', //根据经纬度获取位置名称
register:serverUrl + 'api/v1/register', // 平台入驻
// 找回密码
setPassword:serverUrl + 'api/user/retrieve-password', //找回密码
setPwdCode:serverUrl + 'api/user/send-sms-for-retrieve-password', //手机验证码
// 首页
getCarList:serverUrl + 'api/v1/maps', //获取车辆列表
getCarInfo:serverUrl + 'api/v1/vehicle/gps', //根据ID获取车辆信息
getUnreadCount:serverUrl + 'api/v1/unreadalarm', //获取报警信息未读数
// 车辆列表
getCarTab:serverUrl + 'api/v1/vehicles/search', //获取车辆列表
// 车辆信息
putCarInfo:serverUrl + 'api/v1/vehicle', //保存车辆信息
// 超速报警
setOverSpeed:serverUrl + 'api/v1/vehicle/overspeed', //车辆超速报警设置
getUnreadCount:serverUrl + 'api/v1/unreadalarm', //获取报警信息未读数
getSpeedList:serverUrl + 'api/v1/vehicles/alertspeeds', //获取超速记录列表
// my
getUserInfo:serverUrl + 'api/v1/user', //获取用户信息
setUserInfo:serverUrl + 'api/v1/user', //修改用户资料
// 车场管理
getCarYardList:serverUrl + 'api/yard/page', //获取车场信息列表 get
addCarYard:serverUrl + 'api/yard', //新增车场 post --- 编辑车场put
clearCarYard:serverUrl + 'api/yard/yard-by-id', //删除车场 delete --- 根据id获取车场信息 get
setDefaultCarYard:serverUrl + 'api/yard/is-default', //设置默认车场 put
// 人员管理
getPeoPleList:serverUrl + 'api/employee/page', //获取人员管理列表
getRoleList:serverUrl + 'api/role/role', //获取角色列表
getUserInfoId:serverUrl + 'api/employee/employee-by-id', //获取人员信息
delUser:serverUrl + 'api/employee/employee-by-id', //通过id删除人员delete
// 系统设置
setShowDispatchGcName:serverUrl + 'api/v1/company/opendispatch', //一键派工是否显示工程名称 put
setShowDispatchRwCar:serverUrl + 'api/v1/company/isOpenVehicleType', //一键派工是否显示任务车型 put
setShowDDGcName:serverUrl + 'api/v1/company/schedulingaddproject', //调度角色是否有添 加工程名称的权限 put
getTimeStopTag:serverUrl + 'api/dictionary/list', //获取公司停留标示字典
setTimeStopTagId:serverUrl + 'api/v1/company/stoptag', //设置停留标示 put
clearStorage:serverUrl + 'api/login/cache', //清理缓存
changePassWord:serverUrl + 'api/user/password', //修改密码 put
subFeedBack:serverUrl + 'api/report', //意见反馈 post
// 图片上传
getCosToken:serverUrl + 'api/v1/costoken', // 获取CosToken
// 派工任务
addTaskList:serverUrl + 'api/v1/order/stayassign', // 保存指派任务 post
getTaskList:serverUrl + 'api/v1/admin/orders/search', //任务列表
getTaskInfo:serverUrl + 'api/v1/order', //任务详情 /id
clearTask:serverUrl + 'api/v1/order', //删除任务 id
backTask:serverUrl + 'api/v1/cancel/order', //撤销任务 id
overTask:serverUrl + 'api/v1/order/complete', //任务 完工
addDisPatch:serverUrl + 'api/v1/order/assign', //指派任务 确定
addProjectConstruction: serverUrl + 'api/v1/project/autoinsert', //派工没有识别出来新增施工单位和工程名称
// 获取员工信息
getemployee:serverUrl+'api/v1/employees/search', //外请 1010
getemployeesInfo:serverUrl+'api/v1/employee',
putAddUserInfo:serverUrl + 'api/v1/employee', //修改put / 新增post 人员信息
// 车辆管理
getvehiclList:serverUrl + 'api/v1/basics/vehicles/search', //车辆列表
getvehiclInfo:serverUrl + 'api/v1/basics/vehicle',
// 工程管理
getEngineering:serverUrl + 'api/v1/projects/search', //查询工程列表
addEngineering:serverUrl + 'api/v1/project', //添加工程
// 接单端
getDriverIndexTaskList:serverUrl + 'api/v1/driver/orders/search', //接单端任务列表
getDriverIndexTaskListWZHB:serverUrl + 'api/v1/train/orders/search', //接单端 外租伙伴任务列表
orderReceiving:serverUrl + 'api/v1/order/receive', //接单
orderSign:serverUrl + 'api/v1/order/sign', //签单
orderVisa:serverUrl + 'api/v1/ordervisa', //更新签单
// 车主人员邀请注册
user_register:serverUrl+'api/v1/user/register', //注册
// 任务统计
statistics_employee:serverUrl+'api/v1/order/statistics/employee/search', //人员统计
statistics_vehicle:serverUrl+'api/v1/order/statistics/vehicle/search', //车辆统计
statistics_project:serverUrl+'api/v1/order/statistics/project/search', //按项目
statistics_construction:serverUrl+'api/v1/order/statistics/construction/search',//按客户
// 菜单权限
rolemenulist:serverUrl+'api/v1/menus',//菜单权限
// 回单查询
orders_query:serverUrl+'api/v1/receipt/orders/search/',//回单查询
rolemenulist:serverUrl+'api/v1/menus', //菜单权限
// 查询个人资料
getuserInfo:serverUrl+'api/v1/user',//个人资料
// 油耗管理
getoils_list:serverUrl+'api/v1/plus/oils/search',//加油记录
getoils_census:serverUrl+'api/v1/census/oils/search',//油耗统计
operation_oil:serverUrl+'api/v1/oil',//添加/修改/删除/查询 油耗
// 任务车型
getVehicleTypeList:serverUrl + 'api/v1/vehicletypes/search', //任务车型列表
addVehicleType:serverUrl + 'api/v1/vehicletype', //新增任务车型
// 施工单位
get_construction:serverUrl+'api/v1/constructions/search',//post新增 get获取列表 put修改
add_construction:serverUrl+'api/v1/construction',//post新增 get获取列表 put修改
};
/**
* @param {请求地址} url
* @param {请求方式} urltype
* @param {token} token
* @param {请求数据} data
* @param {loading内容} text
*/
const request = (url,urltype,data,text) => {
if(text){
uni.showLoading({
title: text,
})
};
let token = uni.getStorageSync('token').token;
return new Promise((reslove, reject) => {
uni.request({
url: url,
method: urltype.toUpperCase(),
data: data,
header: {
'content-type': 'application/json',
'Authorization':`Bearer ${token}`
},
dataType:'json',
success(request) {
let data = request.data;
if(request.statusCode == 401 || request.statusCode == 403){
uni.showToast({
title:'您的权限发生变化,请重新登录',
icon:'none',
duration:1500,
success() {
let pages = getCurrentPages(),
currentPage = pages[pages.length - 1];
if(currentPage.route != 'pages/login/login'){
uni.clearStorage();
uni.reLaunch({
url: '/pages/login/login',
})
}
}
});
return;
};
if(request.statusCode == 200){
if(data.code == 200 || data.code == 204){
reslove(data);
}else if(data.code == 400){
reject(data.message);
}else if(data.code == 500){
reject('程序异常');
}else if(data.code == 4011){
// '正在审核 / 审核未通过'
uni.navigateTo({
url:'/pages/welcome/welcome'
})
reject(data.message);
}else if(data.code == 4012){
// '第一次登录'
uni.navigateTo({
url:'/pages/login/login?type="meIn"'
})
reject(data.message);
}else if(data.code == 4044){
uni.reLaunch({
url: '/pages/login/login'
});
}else{
reject('出错了!!!');
}
}else{
reject('请求失败');
}
},
fail(err) {
//返回失败也同样传入reject()方法
reject('系统错误');
},
complete: function () {
if(text){
uni.hideLoading();
};
uni.stopPullDownRefresh();
}//请求完成后执行的函数
})
})
};
// 上传图片
const COS = require('@/static/cos-wx-sdk-v5');
const uploadImg = (Key,FilePath) => {
return new Promise((reslove, reject) => {
request(urlList.getCosToken,'GET','','').then(res => {
const cos = new COS({
getAuthorization: (options, callback) => {
const obj = {
TmpSecretId:res.data.credentials.tmpSecretId,
TmpSecretKey: res.data.credentials.tmpSecretKey,
SecurityToken:res.data.credentials.token,
// 建议返回服务器时间作为签名的开始时间,避免用户浏览器本地时间偏差过大导致签名错误
StartTime: res.data.startTime, // 时间戳,单位秒,如:1580000000
ExpiredTime: res.data.expiredTime, // 时间戳,单位秒,如:1580000900
ScopeLimit: true, // 细粒度控制权限需要设为 true,会限制密钥只在相同请求时重复使用
}
callback(obj)
}
})
const Bucket = 'znyc-images-1304677865';
const Region = 'ap-guangzhou';
// 执行上传操作
cos.postObject({Bucket,Region,Key,FilePath}, (err, data) => {
if(err){
reject('图片上传失败');
return
}
if (data.statusCode === 200) {
let avatarUrl = cos.getObjectUrl({Bucket,Region,Sign: false,Key,});
console.log('图片上传成功',avatarUrl)
reslove(avatarUrl);
}
})
}).catch(err => {
console.log('图片上传CosToken接口错误',err)
reject(err)
})
})
};
module.exports = {
urlList,
https: request,
H5ServerUrl,
uploadImg
};