Commit e5e30a7f authored by 周健威's avatar 周健威

Merge remote-tracking branch 'origin/dev' into dev

parents 7c722bba 3009349a
...@@ -25,7 +25,16 @@ public class AppUserPositionTempDTO { ...@@ -25,7 +25,16 @@ public class AppUserPositionTempDTO {
private String name; private String name;
@ApiModelProperty(value = "职位id") @ApiModelProperty(value = "身份id")
private Integer positionId; private Integer positionId;
@ApiModelProperty(value = "员工职位id")
private Integer jobId;
@ApiModelProperty(value = "分公司id")
private Integer companyId;
@ApiModelProperty(value = "分公司")
private String companyName;
} }
...@@ -14,4 +14,5 @@ public class AppUserPositionTempFindDTO extends PageParam { ...@@ -14,4 +14,5 @@ public class AppUserPositionTempFindDTO extends PageParam {
private String phone; private String phone;
private String name; private String name;
private Integer status; private Integer status;
private Integer companyId;
} }
...@@ -66,6 +66,11 @@ public class AppUserPositionTemp implements Serializable { ...@@ -66,6 +66,11 @@ public class AppUserPositionTemp implements Serializable {
private Long crtTime; private Long crtTime;
@Column(name = "upd_time")
@ApiModelProperty(value = "更新时间", hidden = true )
private Long updTime;
@Column(name = "is_del") @Column(name = "is_del")
@ApiModelProperty(value = "是否删除:0-正常;1-删除") @ApiModelProperty(value = "是否删除:0-正常;1-删除")
private Integer isDel; private Integer isDel;
......
...@@ -66,6 +66,16 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -66,6 +66,16 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
|| appUserPositionTempDTO.getPositionId() == null || appUserPositionTempDTO.getPositionId() == 0) { || appUserPositionTempDTO.getPositionId() == null || appUserPositionTempDTO.getPositionId() == 0) {
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "参数不能为空"); return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "参数不能为空");
} }
Integer companyId=appUserPositionTempDTO.getCompanyId();
String companyName=appUserPositionTempDTO.getCompanyName();
if (!(companyId!=null&&companyId>0&&StringUtils.isNotBlank(companyName)))
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "分公司不存在");
BranchCompany branchCompany=vehicleFeign.companyId(companyName);
if (branchCompany==null){
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, "分公司不存在");
}
companyId=branchCompany.getId();
companyName=branchCompany.getName();
String phone = appUserPositionTempDTO.getPhone(); String phone = appUserPositionTempDTO.getPhone();
Integer id = appUserPositionTempDTO.getId() == null ? 0 : appUserPositionTempDTO.getId(); Integer id = appUserPositionTempDTO.getId() == null ? 0 : appUserPositionTempDTO.getId();
Example example = new Example(AppUserPositionTemp.class); Example example = new Example(AppUserPositionTemp.class);
...@@ -82,6 +92,8 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -82,6 +92,8 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
AppUserPositionTemp userPositionTemp = new AppUserPositionTemp(); AppUserPositionTemp userPositionTemp = new AppUserPositionTemp();
BeanUtils.copyProperties(appUserPositionTempDTO, userPositionTemp); BeanUtils.copyProperties(appUserPositionTempDTO, userPositionTemp);
userPositionTemp.setUserId(userId); userPositionTemp.setUserId(userId);
userPositionTemp.setCompanyId(companyId);
userPositionTemp.setCompanyName(companyName);
//编辑 //编辑
if (id == null || id == 0) { if (id == null || id == 0) {
insertSelective(userPositionTemp); insertSelective(userPositionTemp);
...@@ -112,6 +124,9 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -112,6 +124,9 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
if (StringUtils.isNotEmpty(appUserPositionTempFindDTO.getPhone())) { if (StringUtils.isNotEmpty(appUserPositionTempFindDTO.getPhone())) {
criteria.andEqualTo("phone", appUserPositionTempFindDTO.getPhone()); criteria.andEqualTo("phone", appUserPositionTempFindDTO.getPhone());
} }
if (Objects.nonNull(appUserPositionTempFindDTO.getCompanyId())) {
criteria.andEqualTo("companyId", appUserPositionTempFindDTO.getCompanyId());
}
if(Objects.nonNull(appUserPositionTempFindDTO.getStatus())) { if(Objects.nonNull(appUserPositionTempFindDTO.getStatus())) {
if (DataStatus.USERED.code == appUserPositionTempFindDTO.getStatus()) { if (DataStatus.USERED.code == appUserPositionTempFindDTO.getStatus()) {
criteria.andIsNotNull("userId"); criteria.andIsNotNull("userId");
...@@ -120,6 +135,7 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -120,6 +135,7 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
criteria.andIsNull("userId"); criteria.andIsNull("userId");
} }
} }
example.setOrderByClause("upd_time desc");
PageDataVO<AppUserPositionTemp> pageDataVO = PageDataVO.pageInfo(appUserPositionTempFindDTO.getPage(), appUserPositionTempFindDTO.getLimit(), () -> mapper.selectByExample(example)); PageDataVO<AppUserPositionTemp> pageDataVO = PageDataVO.pageInfo(appUserPositionTempFindDTO.getPage(), appUserPositionTempFindDTO.getLimit(), () -> mapper.selectByExample(example));
List<AppUserPositionTemp> data = pageDataVO.getData(); List<AppUserPositionTemp> data = pageDataVO.getData();
if (CollectionUtils.isEmpty(data)) { if (CollectionUtils.isEmpty(data)) {
...@@ -177,8 +193,26 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -177,8 +193,26 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
if (StringUtils.isEmpty(postionName)){ if (StringUtils.isEmpty(postionName)){
throw new BaseException("身份为空"); throw new BaseException("身份为空");
} }
if (StringUtils.isNotBlank(name)){
name.replaceAll(" ","");
}
Example example = new Example(AppUserPositionTemp.class);
example.createCriteria().andEqualTo("phone", phone).andEqualTo("isDel", 0);
List<AppUserPositionTemp> list = selectByExample(example);
Integer id=0;
Integer userId=0;
if (list.size()>0){
AppUserPositionTemp appUserPositionTemp1= list.get(0);
id=appUserPositionTemp1.getId();
userId=appUserPositionTemp1.getUserId();
}
if (userId==null||userId==0){
//根据手机号查询userId //根据手机号查询userId
AppUserLogin userLogin = loginBiz.checkeUserLogin(phone); AppUserLogin userLogin = loginBiz.checkeUserLogin(phone);
if (Objects.nonNull(userLogin)) {
userId=userLogin.getId();
}
}
for (Map.Entry<Integer, String> integerStringEntry : entrySet) { for (Map.Entry<Integer, String> integerStringEntry : entrySet) {
if (integerStringEntry.getValue().contains(postionName)) { if (integerStringEntry.getValue().contains(postionName)) {
postionId = integerStringEntry.getKey(); postionId = integerStringEntry.getKey();
...@@ -202,20 +236,24 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -202,20 +236,24 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
jobId=1; jobId=1;
} }
appUserPositionTemp = new AppUserPositionTemp(); appUserPositionTemp = new AppUserPositionTemp();
appUserPositionTemp.setCrtTime(Instant.now().toEpochMilli());
appUserPositionTemp.setName(name); appUserPositionTemp.setName(name);
appUserPositionTemp.setPositionId(postionId); appUserPositionTemp.setPositionId(postionId);
appUserPositionTemp.setPhone(phone); appUserPositionTemp.setPhone(phone);
appUserPositionTemp.setUserId(0);
appUserPositionTemp.setCompanyId(companyId); appUserPositionTemp.setCompanyId(companyId);
appUserPositionTemp.setCompanyName(companyName); appUserPositionTemp.setCompanyName(companyName);
appUserPositionTemp.setJobId(jobId); appUserPositionTemp.setJobId(jobId);
if (Objects.nonNull(userLogin)) { if (userId!=null&&userId>0) {
//更新用户身份信息 //更新用户身份信息
detailBiz.updateUserPositionByUserId(userLogin.getId(), postionId); detailBiz.updateUserPositionByUserId(userId, postionId);
appUserPositionTemp.setUserId(userLogin.getId()); appUserPositionTemp.setUserId(userId);
} }
if (id!=null&&id>0){
appUserPositionTemp.setId(id);
updateSelectiveById(appUserPositionTemp);
}else {
insertSelective(appUserPositionTemp); insertSelective(appUserPositionTemp);
}
} catch (BaseException ex) { } catch (BaseException ex) {
errorResultMap = new HashMap<>(1); errorResultMap = new HashMap<>(1);
errorResultMap.put("num", i); errorResultMap.put("num", i);
...@@ -260,4 +298,5 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A ...@@ -260,4 +298,5 @@ public class AppUserPositionTempBiz extends BaseBiz<AppUserPositionTempMapper, A
postionIdAndNameMap = appUserPositionBiz.findPostionIdAndNameMap() == null ? Collections.EMPTY_MAP : appUserPositionBiz.findPostionIdAndNameMap(); postionIdAndNameMap = appUserPositionBiz.findPostionIdAndNameMap() == null ? Collections.EMPTY_MAP : appUserPositionBiz.findPostionIdAndNameMap();
} }
} }
...@@ -59,10 +59,19 @@ public class AppUserPositionController { ...@@ -59,10 +59,19 @@ public class AppUserPositionController {
* 新增或编辑身份信息 * 新增或编辑身份信息
* @return * @return
*/ */
@PostMapping("/add") @PostMapping("/addUserPostion")
public ObjectRestResponse<Void> addUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO){ public ObjectRestResponse<Void> addUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO){
appUserPositionTempBiz.add(appUserPositionTempDTO); return appUserPositionTempBiz.add(appUserPositionTempDTO);
return ObjectRestResponse.succ(); }
/**
* 新增或编辑身份信息
* @return
*/
@PostMapping("/updUserPostion")
public ObjectRestResponse<Void> updUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO){
return appUserPositionTempBiz.add(appUserPositionTempDTO);
} }
/** /**
......
package com.xxfc.platform.tour.comstnt;
public enum WebsiteTourType {
POPULAR(1,"热门路线"),CHARACTERISTIC(2,"特色旅游"),
NEW(3,"新开辟路线"),RECOMMEND(4,"推荐路线");
private Integer code;
private String msg;
WebsiteTourType(Integer code, String msg) {
this.code = code;
this.msg = msg;
}
public Integer getCode() {
return code;
}
public String getMsg() {
return msg;
}
}
package com.xxfc.platform.tour.entity;
import lombok.Data;
import java.util.List;
@Data
public class WebsiteQuery {
private Integer limit=6;
private Integer type = 1;
private List<Integer> tagIds;
}
...@@ -13,6 +13,7 @@ import com.github.wxiaoqi.security.common.util.RandomUtil; ...@@ -13,6 +13,7 @@ import com.github.wxiaoqi.security.common.util.RandomUtil;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.vo.GoodDataVO; import com.github.wxiaoqi.security.common.vo.GoodDataVO;
import com.github.wxiaoqi.security.common.vo.PageDataVO; import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.google.common.collect.Lists;
import com.xxfc.platform.tour.dto.*; import com.xxfc.platform.tour.dto.*;
import com.xxfc.platform.tour.entity.*; import com.xxfc.platform.tour.entity.*;
import com.xxfc.platform.tour.mapper.*; import com.xxfc.platform.tour.mapper.*;
...@@ -20,8 +21,12 @@ import com.xxfc.platform.tour.vo.TourGoodVo; ...@@ -20,8 +21,12 @@ import com.xxfc.platform.tour.vo.TourGoodVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
...@@ -38,6 +43,11 @@ import java.util.*; ...@@ -38,6 +43,11 @@ import java.util.*;
@Slf4j @Slf4j
public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> { public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
@Value("${officialWebsite.popular}")
private String popular;
@Value("${officialWebsite.characteristic}")
private String characteristic;
@Autowired @Autowired
private TourGoodBannerBiz bannerBiz; private TourGoodBannerBiz bannerBiz;
@Autowired @Autowired
...@@ -322,7 +332,7 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> { ...@@ -322,7 +332,7 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
*/ */
public List<GoodDataVO> getAllByHome(Integer page, Integer limit){ public List<GoodDataVO> getAllByHome(Integer page, Integer limit){
return mapper.findAllByHome((page-1)*limit,limit); return mapper.findAllByHome((page-1)*limit,limit);
}; }
/** /**
* 获取指定数量的随机旅游路线 * 获取指定数量的随机旅游路线
...@@ -345,6 +355,48 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> { ...@@ -345,6 +355,48 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
} }
return ObjectRestResponse.succ(resultList); return ObjectRestResponse.succ(resultList);
} }
public List homePageTour(WebsiteQuery query) {
if (Objects.isNull(query)) {
return new ArrayList();
}
setQueryTagIds(query);
List<TourGood> list = mapper.getList(query);
return CollectionUtils.isNotEmpty(list)?list:new ArrayList<>();
}
private void setQueryTagIds(WebsiteQuery query) {
if (CollectionUtils.isEmpty(query.getTagIds())) {
List<Integer> list=new ArrayList<>();
Integer type = query.getType();
if (type==1) {
if (StringUtils.isNotBlank(popular)) {
String[] popularIds = popular.split(",");
for (String id : popularIds) {
list.add(Integer.parseInt(id));
}
}
}
if (type==2) {
if (StringUtils.isNotBlank(characteristic)) {
String[] characteristicIds = characteristic.split(",");
for (String id : characteristicIds) {
list.add(Integer.parseInt(id));
}
}
}
query.setTagIds(list);
}
}
public List newTour(Integer limit) {
List list = mapper.newTour(limit);
return CollectionUtils.isNotEmpty(list)?list:new ArrayList<>();
}
} }
...@@ -3,6 +3,7 @@ package com.xxfc.platform.tour.mapper; ...@@ -3,6 +3,7 @@ package com.xxfc.platform.tour.mapper;
import com.github.wxiaoqi.security.common.vo.GoodDataVO; import com.github.wxiaoqi.security.common.vo.GoodDataVO;
import com.xxfc.platform.tour.dto.GoodSearchDTO; import com.xxfc.platform.tour.dto.GoodSearchDTO;
import com.xxfc.platform.tour.entity.TourGood; import com.xxfc.platform.tour.entity.TourGood;
import com.xxfc.platform.tour.entity.WebsiteQuery;
import com.xxfc.platform.tour.vo.TourGoodVo; import com.xxfc.platform.tour.vo.TourGoodVo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
...@@ -36,4 +37,8 @@ public interface TourGoodMapper extends Mapper<TourGood> { ...@@ -36,4 +37,8 @@ public interface TourGoodMapper extends Mapper<TourGood> {
* @return * @return
*/ */
List<GoodDataVO> findAllByHome(@Param("start") Integer start, @Param("size") Integer size); List<GoodDataVO> findAllByHome(@Param("start") Integer start, @Param("size") Integer size);
List<TourGood> getList(WebsiteQuery query);
List newTour(Integer limit);
} }
package com.xxfc.platform.tour.rest.officialWebsite;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.tour.biz.TourGoodBiz;
import com.xxfc.platform.tour.comstnt.WebsiteTourType;
import com.xxfc.platform.tour.entity.TourGood;
import com.xxfc.platform.tour.entity.WebsiteQuery;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("website")
@IgnoreClientToken
@IgnoreUserToken
@Api(tags = {"官网"})
public class OfficialWebsiteTourController extends BaseController<TourGoodBiz, TourGood> {
@PostMapping("/app/unauth/tour")
public ObjectRestResponse homePageTour(@RequestBody WebsiteQuery query) throws Exception {
return ObjectRestResponse.succ(baseBiz.homePageTour(query));
}
@GetMapping("/app/unauth/tour/new")
public ObjectRestResponse newTour(@RequestParam(value = "limit", defaultValue = "6") Integer limit) {
return ObjectRestResponse.succ(baseBiz.newTour(limit));
}
}
\ No newline at end of file
...@@ -56,8 +56,10 @@ ...@@ -56,8 +56,10 @@
SELECT t.* from tour_good t SELECT t.* from tour_good t
left join ( left join (
select good_id, select good_id,
IFNULL(ROUND(( (2 * ASIN( SQRT( POW( SIN((latitude * PI() / 180.0- #{params.latitude}* PI() / 180.0)/2), 2)+COS( latitude * PI() / 180.0)*COS( #{params.latitude} * PI() / 180.0) IFNULL(ROUND(( (2 * ASIN( SQRT( POW( SIN((latitude * PI() / 180.0- #{params.latitude}* PI() / 180.0)/2), 2)+COS(
*POW(SIN((longitude * PI() / 180.0 - #{params.longitude}* PI() /180.0)/2),2))))*6378.137)*10000)/10000 ,0 ) AS distance latitude * PI() / 180.0)*COS( #{params.latitude} * PI() / 180.0)
*POW(SIN((longitude * PI() / 180.0 - #{params.longitude}* PI() /180.0)/2),2))))*6378.137)*10000)/10000 ,0 ) AS
distance
FROM tour_good_site WHERE type=2 ) gs ON t.id=gs.good_id FROM tour_good_site WHERE type=2 ) gs ON t.id=gs.good_id
where t.is_del=0 AND t.status=1 where t.is_del=0 AND t.status=1
<if test="params.distance != null and params.distance != ''and params.distance >0"> <if test="params.distance != null and params.distance != ''and params.distance >0">
...@@ -121,4 +123,45 @@ ...@@ -121,4 +123,45 @@
ORDER BY g.rank DESC ,g.id DESC ORDER BY g.rank DESC ,g.id DESC
</select> </select>
<select id="getList" resultType="com.github.wxiaoqi.security.common.vo.GoodDataVO">
SELECT
g.id AS `id`,
g. NAME AS `name`,
g.cover AS `imgUrl`,
g.price
FROM
tour_good g,
tour_good_tag t
WHERE
g.id = t.good_id
AND g.is_del = 0
AND t.is_del = 0
AND g.status = 1
AND t.tag_id IN
<foreach collection="tagIds" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
GROUP BY g.id
ORDER BY
g.rank ASC,
g.crt_time DESC
LIMIT #{limit}
</select>
<select id="newTour" resultType="com.github.wxiaoqi.security.common.vo.GoodDataVO">
SELECT
id,
name,
cover AS imgUrl,
price
FROM
tour_good
WHERE
is_del = 0
AND
status = 1
ORDER BY
crt_time DESC
LIMIT #{limit}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -107,8 +107,8 @@ public class ArticleBiz extends BaseBiz<ArticleMapper, Article> { ...@@ -107,8 +107,8 @@ public class ArticleBiz extends BaseBiz<ArticleMapper, Article> {
* @param type * @param type
* @return * @return
*/ */
public List getHomePageArticle(Integer type) { public List getHomePageArticle(Integer type,Integer limit) {
List<Article> articleList = mapper.getArticleList(type,HOME_PAGE_NUMBER,null,null); List<Article> articleList = mapper.getArticleList(type,limit,null,null);
// if (Objects.isNull(articleList)) { // if (Objects.isNull(articleList)) {
// return new ArrayList(); // return new ArrayList();
// } else { // } else {
......
...@@ -55,8 +55,9 @@ public class ArticleController extends BaseController<ArticleBiz, Article> { ...@@ -55,8 +55,9 @@ public class ArticleController extends BaseController<ArticleBiz, Article> {
@GetMapping("/app/unauth/homePage/{type}") @GetMapping("/app/unauth/homePage/{type}")
@ApiOperation(value = "获取首页文章列表") @ApiOperation(value = "获取首页文章列表")
public ObjectRestResponse getHomePageArticle(@PathVariable Integer type){ public ObjectRestResponse getHomePageArticle(@PathVariable Integer type
return ObjectRestResponse.succ(baseBiz.getHomePageArticle(type)); ,@RequestParam(value = "limit",defaultValue = "9") Integer limit){
return ObjectRestResponse.succ(baseBiz.getHomePageArticle(type,limit));
} }
@Override @Override
......
...@@ -19,7 +19,7 @@ import java.util.List; ...@@ -19,7 +19,7 @@ import java.util.List;
*/ */
@RestController @RestController
@RequiredArgsConstructor(onConstructor = @__(@Autowired)) @RequiredArgsConstructor(onConstructor = @__(@Autowired))
@RequestMapping("/member_level") @RequestMapping("/member_level/app/unauth")
public class MemberLevelController { public class MemberLevelController {
private final UserFeign userFeign; private final UserFeign userFeign;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment