package com.xzx.gc.order.service;
|
|
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.util.StrUtil;
|
import com.xzx.gc.common.utils.BusinessUtil;
|
import com.xzx.gc.entity.AddressLevelInfo;
|
import com.xzx.gc.order.mapper.AddressLevelInfoMapper;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import tk.mybatis.mapper.entity.Example;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
@Service
|
@Transactional
|
public class AddressLevelService {
|
|
@Autowired
|
private AddressLevelInfoMapper addressLevelMapper;
|
|
public List<AddressLevelInfo> findByTownIds(String townIds){
|
if(StrUtil.isNotBlank(townIds)) {
|
Example example = new Example(AddressLevelInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
criteria.andIn("level3Id", CollUtil.newArrayList(townIds.split(",")));
|
List<AddressLevelInfo> addressLevelInfos = addressLevelMapper.selectByExample(example);
|
return addressLevelInfos;
|
}else {
|
return new ArrayList<>();
|
}
|
}
|
|
|
/**
|
* TODO 根据区判断唯一是不对的
|
* @return
|
*/
|
public String findByLevle3Name(String level3Name){
|
AddressLevelInfo addressLevelInfo=new AddressLevelInfo();
|
addressLevelInfo.setLevel3Name(level3Name);
|
AddressLevelInfo addressLevelInfo1 = addressLevelMapper.selectOne(addressLevelInfo);
|
if(addressLevelInfo1!=null){
|
return addressLevelInfo1.getAdcode();
|
}
|
return "";
|
}
|
|
|
|
public AddressLevelInfo findByAdcode(String adcode){
|
Example example = new Example(AddressLevelInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
criteria.andEqualTo("adcode", adcode);
|
AddressLevelInfo addressLevelInfos = addressLevelMapper.selectOneByExample(example);
|
return addressLevelInfos;
|
}
|
|
public AddressLevelInfo find(String level1Id,String level2Id,String level3Id){
|
Example example = new Example(AddressLevelInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
criteria.andEqualTo("level3Id", level3Id);
|
criteria.andEqualTo("level2Id",level2Id);
|
criteria.andEqualTo("level1Id", level1Id);
|
List<AddressLevelInfo> addressLevelInfos = addressLevelMapper.selectByExample(example);
|
if(CollUtil.isNotEmpty(addressLevelInfos)){
|
return addressLevelInfos.get(0);
|
}
|
return null;
|
}
|
|
|
public String queryAreaName(String type,String id){
|
Example example = new Example(AddressLevelInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
if(type.equals("1")){
|
criteria.andEqualTo("level1Id", id);
|
}else if(type.equals("2")){
|
criteria.andEqualTo("level2Id", id);
|
}else{
|
criteria.andEqualTo("level3Id", id);
|
}
|
List<AddressLevelInfo> addressLevelInfos = addressLevelMapper.selectByExample(example);
|
if(CollUtil.isNotEmpty(addressLevelInfos)){
|
if(type.equals("1")){
|
return addressLevelInfos.get(0).getLevel1Name();
|
}else if(type.equals("2")){
|
return addressLevelInfos.get(0).getLevel2Name();
|
}else{
|
return addressLevelInfos.get(0).getLevel3Name();
|
}
|
}
|
|
return "";
|
}
|
|
/**
|
* TODO 根据区判断唯一是不对的
|
* @param type
|
* @param name
|
* @return
|
*/
|
public String findIdByName(String type,String name){
|
Example example = new Example(AddressLevelInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
if(type.equals("1")){
|
criteria.andEqualTo("level1Name", name);
|
}else if(type.equals("2")){
|
criteria.andEqualTo("level2Name", name);
|
}else{
|
criteria.andEqualTo("level3Name", name);
|
}
|
List<AddressLevelInfo> addressLevelInfos = addressLevelMapper.selectByExample(example);
|
if(CollUtil.isNotEmpty(addressLevelInfos)){
|
if(type.equals("1")){
|
return addressLevelInfos.get(0).getLevel1Id();
|
}else if(type.equals("2")){
|
return addressLevelInfos.get(0).getLevel2Id();
|
}else{
|
return addressLevelInfos.get(0).getLevel3Id();
|
}
|
}
|
|
return "";
|
}
|
|
}
|