zhangbo1_wd

公共header梳理,user相关、定位相关修改

... ... @@ -34,6 +34,8 @@ export class SpConstants{
//定位相关
static LOCATION_CITY_NAME = "location_city_name" //定位
static LOCATION_CITY_CODE = "location_city_code" //定位
static LOCATION_PROVINCE_CODE = "location_province_code" //定位,省份code
static LOCATION_DISTRICT_CODE = "location_district_code" //定位,区县,返回9位,如:合肥-瑶海区-310115114
static LOCATION_PERMISSION_REFUSE = "location_permission_refuse" //定位
//启动页数据存储key
... ...
import data_preferences from '@ohos.data.preferences';
import { Logger } from './Logger';
const TAG = 'SPHelper'
/**
* sp存储
*
* 单例模式
* TODO 新增内存存储,避免频繁sp获取
*/
// SPHelper.default.get("key1", "defValue1").then((value1) => {
// this.message = value1.toString();
// })
// let value2: string = await SPHelper.default.get("key2", "defValue2");
// this.message = result;
export class SPHelper {
private static context: Context;
private static spFilename: string = '__SPHelper';
... ... @@ -51,7 +45,11 @@ export class SPHelper {
saveSync(key: string, value: data_preferences.ValueType) {
const preferences: data_preferences.Preferences = this.getVideoPreferencesSync();
preferences.putSync(key, value)
preferences.flush() // todo:Asynchronously
preferences.flush().then(() => {
Logger.debug(TAG, 'saveSync flush success')
}).catch((error: object) => {
Logger.debug(TAG, 'saveSync flush failed: ' + JSON.stringify(error))
});
}
async get(key: string, defValue: data_preferences.ValueType): Promise<data_preferences.ValueType> {
... ... @@ -86,7 +84,11 @@ export class SPHelper {
deleteSync(key: string) {
const preferences: data_preferences.Preferences = this.getVideoPreferencesSync();
preferences.deleteSync(key)
preferences.flush(); // todo:Asynchronously
preferences.flush().then(() => {
Logger.debug(TAG, 'deleteSync flush success')
}).catch((error: object) => {
Logger.debug(TAG, 'deleteSync flush failed: ' + JSON.stringify(error))
});
}
async clearSync() {
... ... @@ -98,12 +100,6 @@ export class SPHelper {
});
}
// clearSync() {
// let preferences: data_preferences.Preferences = this.getVideoPreferencesSync()
// preferences.clearSync()
// preferences.flush()
// }
public getPreferences() {
let preferences = data_preferences.getPreferences(SPHelper.context, SPHelper.spFilename);
return preferences;
... ...
... ... @@ -25,15 +25,14 @@ export class HttpParams {
headers['imei'] = DeviceUtil.clientId()
headers['Accept-Language'] = 'zh'
headers['timestamp'] = DateTimeUtils.getTimeStamp() + ''
headers['mpassid'] = 'ZbHTMeTsfaYDAHqt8ZHIzcPs'
HttpParams.setLocationHeader(headers)
// // TODO 判断是否登录
headers['RMRB-X-TOKEN'] = HttpUtils.getXToken()
if (HttpUtils.getXToken() != '') {
headers['cookie'] = 'RMRB-X-TOKEN=' + HttpUtils.getXToken()
}
if (HttpUtils.isLogin()) {
headers['RMRB-X-TOKEN'] = HttpUtils.getUserToken()
headers['cookie'] = 'RMRB-X-TOKEN=' + HttpUtils.getUserToken()
headers['userId'] = HttpUtils.getUserId()
headers['userType'] = HttpUtils.getUserType()
headers['mpassid'] = 'ZbHTMeTsfaYDAHqt8ZHIzcPs'
}
HttpParams.addSpecialHeaders(headers);
return headers;
}
... ...
import { SpConstants } from 'wdConstant/Index';
import { DeviceUtil, SPHelper, StringUtils } from 'wdKit/Index';
import { HttpParams } from '../http/HttpCommonParams';
import { HttpRequest } from '../http/HttpRequest';
const TAG: string = '[HttpUtils]'
... ... @@ -9,10 +8,6 @@ const TAG: string = '[HttpUtils]'
* http相关工具类,对外暴露
*/
export class HttpUtils {
private static userId = ''
private static userType = ''
private static token = ''
/**
* 添加公共参数,如登录后,添加登录信息
*/
... ... @@ -49,25 +44,27 @@ export class HttpUtils {
* 定位,城市code
*/
public static getCityCode(): string {
// TODO
// 城市编码
return '340100';
return SPHelper.default.getSync(SpConstants.LOCATION_CITY_CODE, '') as string
}
/**
* 定位,省份code
*/
public static getProvinceCode(): string {
// TODO
return '340000';
return SPHelper.default.getSync(SpConstants.LOCATION_PROVINCE_CODE, '') as string
}
/**
* 定位,地区code
*/
public static getDistrictCode(): string {
// TODO
return '340103';
let districtCode = SPHelper.default.getSync(SpConstants.LOCATION_DISTRICT_CODE, '') as string
if (districtCode === '') {
return districtCode
}
// 截取前6位,如返回310115114,需要310115 (上海浦东)
return districtCode.substring(0, 6);
}
public static getImei(): string {
... ... @@ -75,43 +72,22 @@ export class HttpUtils {
}
public static getUserId(): string {
// TODO 对接登录
if (StringUtils.isNotEmpty(HttpUtils.userId)) {
return HttpUtils.userId
}
HttpUtils.userId = SPHelper.default.getSync(SpConstants.USER_ID, "") as string
return HttpUtils.userId;
return SPHelper.default.getSync(SpConstants.USER_ID, "") as string
}
public static getUserType(): string {
if (StringUtils.isNotEmpty(HttpUtils.userType)) {
return HttpUtils.userType
}
HttpUtils.userType = SPHelper.default.getSync(SpConstants.USER_Type, "") as string
return HttpUtils.userType;
return SPHelper.default.getSync(SpConstants.USER_Type, "") as string
}
static getXToken(): string {
if (StringUtils.isNotEmpty(HttpUtils.token)) {
return HttpUtils.token
}
HttpUtils.token = SPHelper.default.getSync(SpConstants.USER_JWT_TOKEN, "") as string
if (StringUtils.isNotEmpty(HttpUtils.token)) {
return HttpUtils.token
}
return ''
}
public static setUserId(userId: string) {
// TODO 优化赋值
HttpUtils.userId = userId;
static getUserToken(): string {
return SPHelper.default.getSync(SpConstants.USER_JWT_TOKEN, "") as string
}
public static setUserType(userType: string) {
HttpUtils.userType = userType;
public static isLogin(): boolean {
let token = HttpUtils.getUserToken()
if (token == null || token == undefined || token.length <= 0) {
return false
}
public static setUserToken(token: string) {
HttpUtils.token = token;
return true
}
}
\ No newline at end of file
... ...
... ... @@ -29,9 +29,6 @@ export class LogoutViewModel{
SPHelper.default.saveSync(SpConstants.USER_Type, '')
SPHelper.default.saveSync(SpConstants.USER_NAME, '')
SPHelper.default.saveSync(SpConstants.USER_PHONE, '')
HttpUtils.setUserId("")
HttpUtils.setUserType("")
HttpUtils.setUserToken('')
UserDataLocal.clearUserData()
}
}
\ No newline at end of file
... ...
... ... @@ -9,8 +9,6 @@ import { ResponseDTO } from 'wdNetwork/Index';
* 系统定位服务实现
* */
export class HWLocationUtils {
static LOCATION: Permissions = 'ohos.permission.LOCATION'
static APPROXIMATELY_LOCATION: Permissions = 'ohos.permission.APPROXIMATELY_LOCATION'
... ... @@ -115,17 +113,23 @@ export class HWLocationUtils {
if (cityName == name) {
return
}
let code = await HWLocationUtils.getCityCode(data[0].administrativeArea, data[0].subAdministrativeArea)
if (code) {
// code=[省份code,城市code]
let code: string[] = await HWLocationUtils.getCityCode(data[0].administrativeArea, data[0].subAdministrativeArea)
if (code && code.length >= 2) {
SPHelper.default.save(SpConstants.LOCATION_CITY_NAME, cityName)
SPHelper.default.save(SpConstants.LOCATION_CITY_CODE, code)
SPHelper.default.save(SpConstants.LOCATION_PROVINCE_CODE, code[0])
SPHelper.default.save(SpConstants.LOCATION_CITY_CODE, code[1])
}
if (data[0].descriptions && data[0].descriptions.length > 1) {
// 保存区县code,9位数字
let districtCode = data[0].descriptions[1] || ''
SPHelper.default.save(SpConstants.LOCATION_DISTRICT_CODE, districtCode)
}
}
}
})
}
//取消定位
static cancelLocation() {
// geoLocationManager.off('locationChange')
... ... @@ -143,10 +147,14 @@ export class HWLocationUtils {
if (bean.code == 0 && bean.data) {
for (let i = 0; i < bean.data.length; i++) {
if (bean.data[i].label == administrativeArea) {
let str:string[] = []
let provinceCode = bean.data[i].code
str[0] = provinceCode
for (let j = 0; j < bean.data[i].children.length; j++) {
if (bean.data[i].children[j].label == cityName) {
Logger.debug("huaw" + bean.data[i].children[j].code)
return bean.data[i].children[j].code
str[1] = bean.data[i].children[j].code
return str
}
}
}
... ... @@ -155,7 +163,7 @@ export class HWLocationUtils {
}
}
return ''
return []
}
// 通过省份code获取省份名称
... ...
... ... @@ -55,9 +55,6 @@ export class LoginViewModel {
SPHelper.default.saveSync(SpConstants.USER_STATUS, data.status)
SPHelper.default.saveSync(SpConstants.USER_Type, data.userType)
SPHelper.default.saveSync(SpConstants.USER_NAME, data.userName)
HttpUtils.setUserId(data.id+"")
HttpUtils.setUserType(data.userType+"")
HttpUtils.setUserToken(data.jwtToken)
success(data)
}).catch((error:string) => {
fail(error)
... ... @@ -85,9 +82,6 @@ export class LoginViewModel {
SPHelper.default.saveSync(SpConstants.USER_STATUS, data.status)
SPHelper.default.saveSync(SpConstants.USER_Type, data.userType)
SPHelper.default.saveSync(SpConstants.USER_NAME, data.userName)
HttpUtils.setUserId(data.id+"")
HttpUtils.setUserType(data.userType+"")
HttpUtils.setUserToken(data.jwtToken)
success(data)
}).catch((value: string) => {
fail(value)
... ... @@ -163,9 +157,6 @@ export class LoginViewModel {
SPHelper.default.saveSync(SpConstants.USER_STATUS, '')
SPHelper.default.saveSync(SpConstants.USER_Type, '')
SPHelper.default.saveSync(SpConstants.USER_NAME, '')
HttpUtils.setUserId("")
HttpUtils.setUserType("")
HttpUtils.setUserToken('')
success(data)
}).catch((message: string) => {
fail(message)
... ...