package com.stylefeng.guns.modular.system.service.impl;
|
|
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
|
import com.stylefeng.guns.modular.system.dao.PhoneMapper;
|
import com.stylefeng.guns.modular.system.model.Phone;
|
import com.stylefeng.guns.modular.system.service.IPhoneService;
|
import com.stylefeng.guns.modular.system.util.GoogleMap.AddressComponentsVo;
|
import com.stylefeng.guns.modular.system.util.GoogleMap.GoogleMapUtil;
|
import com.stylefeng.guns.modular.system.util.GoogleMap.ReverseGeocodeVo;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
|
@Service
|
public class PhoneServiceImpl extends ServiceImpl<PhoneMapper, Phone> implements IPhoneService {
|
|
@Resource
|
private PhoneMapper phoneMapper;
|
|
/**
|
* 获取所有系统电话
|
* @return
|
* @throws Exception
|
*/
|
@Override
|
public List<Phone> queryPhones(Double lat, Double lnt) throws Exception {
|
ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt);
|
if(null == reverseGeocode){
|
return new ArrayList<>();
|
}
|
AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos();
|
String[] city = new String[addressComponentsVos.length];
|
for (int i = 0; i < addressComponentsVos.length; i++) {
|
city[i] = addressComponentsVos[i].getLongName();
|
}
|
List<Phone> list = phoneMapper.queryPhones(city);
|
return list;
|
}
|
|
|
/**
|
* 获取客服电话(个人中心)
|
* @return
|
* @throws Exception
|
*/
|
@Override
|
public Map<String, Object> queryCustomerPhone(Double lat, Double lnt) throws Exception {
|
ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(lat, lnt);
|
if(null == reverseGeocode){
|
return new HashMap<>();
|
}
|
AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos();
|
String[] city = new String[addressComponentsVos.length];
|
for (int i = 0; i < addressComponentsVos.length; i++) {
|
city[i] = addressComponentsVos[i].getLongName();
|
}
|
Map<String, Object> map = new HashMap<>();
|
//平台电话
|
Phone query = phoneMapper.query(2, 1, city);
|
map.put("platform", null != query ? query.getPhone() : "");
|
|
//公司
|
query = phoneMapper.query(2, 2, city);
|
map.put("company", null != query ? query.getPhone() : "");
|
return map;
|
}
|
}
|