Commit 344a97ef authored by 周健威's avatar 周健威

Revert "Merge branch 'revert-dfea0d80' into 'dev-temp0831'"

This reverts merge request !25
parent 87507fdc
...@@ -16,6 +16,7 @@ spring: ...@@ -16,6 +16,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml shared-dataids: common-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
package com.github.wxiaoqi.security.common.biz; package com.github.wxiaoqi.security.common.biz;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.Page; import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.msg.TableResultResponse; import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.util.EntityUtils; import com.github.wxiaoqi.security.common.util.EntityUtils;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import tk.mybatis.mapper.weekend.Fn;
import tk.mybatis.mapper.weekend.WeekendSqls;
import java.lang.reflect.Field;
import java.lang.reflect.ParameterizedType; import java.lang.reflect.ParameterizedType;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.function.Function;
import java.util.function.Supplier;
/** /**
* Created by Mr.AG * Created by Mr.AG
...@@ -24,6 +32,9 @@ public abstract class BaseBiz<M extends Mapper<T>, T> { ...@@ -24,6 +32,9 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
@Autowired @Autowired
protected M mapper; protected M mapper;
//第二个泛型class
protected Class<T> entityClass = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[1];
public void setMapper(M mapper) { public void setMapper(M mapper) {
this.mapper = mapper; this.mapper = mapper;
} }
...@@ -32,11 +43,69 @@ public abstract class BaseBiz<M extends Mapper<T>, T> { ...@@ -32,11 +43,69 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
return mapper.selectOne(entity); return mapper.selectOne(entity);
} }
public WeekendSqls<T> newWeekendSql() {
return WeekendSqls.<T>custom();
}
public T selectById(Object id) { public T selectById(Object id) {
return mapper.selectByPrimaryKey(id); return mapper.selectByPrimaryKey(id);
} }
public void updateByWeekendSelective(T target, Function<WeekendSqls<T>, WeekendSqls<T>> where) {
WeekendSqls whereSqls = where.apply(WeekendSqls.<T>custom());
Example.Builder builder = new Example.Builder(entityClass)
.where(whereSqls);
Example example = builder.build();
mapper.updateByExampleSelective(target, example);
}
public List<T> selectByWeekend(Function<WeekendSqls<T>, WeekendSqls<T>> where, String orderStr) {
WeekendSqls whereSqls = where.apply(WeekendSqls.<T>custom());
Example.Builder builder = new Example.Builder(entityClass)
.where(whereSqls);
Example example = builder.build();
if(StrUtil.isNotBlank(orderStr)) {
example.setOrderByClause(orderStr);
}
return selectByExample(example);
}
public List<T> selectByWeekendsOr(Supplier<List<WeekendSqls<T>>> where, String orderStr) {
List<WeekendSqls<T>> whereSqlss = where.get();
Example.Builder builder = new Example.Builder(entityClass);
for(WeekendSqls weekendSqls : whereSqlss) {
builder.andWhere(weekendSqls);
}
Example example = builder.build();
if(StrUtil.isNotBlank(orderStr)) {
example.setOrderByClause(orderStr);
}
return selectByExample(example);
}
public List<T> selectByWeekend(Function<WeekendSqls<T>, WeekendSqls<T>> where) {
return selectByWeekend(where, null);
}
public List<T> selectByAttrs(Fn<T, Object> attrFn, List attrFnList) {
return selectByExample(new Example.Builder(entityClass)
.where(WeekendSqls.<T>custom().andIn(attrFn, attrFnList)).build());
}
public List<T> selectBetween(Fn<T, Object> attrFn, Object start, Object end) {
return selectBetween(attrFn, start, end, null);
}
public List<T> selectBetween(Fn<T, Object> attrFn, Object start, Object end, Fn<T, Object> deleteAttrFn) {
WeekendSqls<T> weekendSqls = WeekendSqls.<T>custom()
.andGreaterThanOrEqualTo(attrFn, start)
.andLessThanOrEqualTo(attrFn, end);
if(null != deleteAttrFn) {
weekendSqls.andEqualTo(deleteAttrFn, 0);
}
return selectByExample(new Example.Builder(entityClass)
.where(weekendSqls).build());
}
public List<T> selectList(T entity) { public List<T> selectList(T entity) {
return mapper.select(entity); return mapper.select(entity);
...@@ -125,6 +194,88 @@ public abstract class BaseBiz<M extends Mapper<T>, T> { ...@@ -125,6 +194,88 @@ public abstract class BaseBiz<M extends Mapper<T>, T> {
return new TableResultResponse<T>(result.getTotal(), list); return new TableResultResponse<T>(result.getTotal(), list);
} }
public TableResultResponse<T> selectPageByQuery(Query query) {
Class<T> clazz = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[1];
Example example = new Example(clazz);
Example.Criteria criteria=null;
if (checkFieldName(clazz,"isDel")){
criteria=example.createCriteria();
criteria.andEqualTo("isDel",0);
}
if (checkFieldName(clazz,"isDelete")){
criteria=example.createCriteria();
criteria.andEqualTo("isDelete",0);
}
if(query.entrySet().size()>0) {
if (criteria==null){
criteria=example.createCriteria();
}
for (Map.Entry<String, Object> entry : query.entrySet()) {
if(null != entry.getValue()) {
criteria.andLike(entry.getKey(), "%" + entry.getValue().toString() + "%");
}
}
}
if (checkFieldName(clazz,"sortOrder")) {
example.setOrderByClause("sort_order desc");
}else if(checkFieldName(clazz,"rank")){
example.setOrderByClause("rank desc");
}else {
example.setOrderByClause("id desc");
}
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit());
List<T> list = mapper.selectByExample(example);
return new TableResultResponse<T>(result.getTotal(), list);
}
public ObjectRestResponse selectAll(){
List<T> list = selectListAlls();
return ObjectRestResponse.succ(list);
}
public List<T> selectListAlls(){
Class<T> clazz = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[1];
Example example = new Example(clazz);
Example.Criteria criteria=example.createCriteria();
if (checkFieldName(clazz,"isDel")){
criteria.andEqualTo("isDel",0);
}
if (checkFieldName(clazz,"sortOrder")){
example.setOrderByClause("sort_order desc");
}else if(checkFieldName(clazz,"rank")){
example.setOrderByClause("rank desc");
}else {
example.setOrderByClause("id desc");
}
return mapper.selectByExample(example);
}
public List<T> getList(String appId)throws Exception{
Class<T> clazz = (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[1];
Example example = new Example(clazz);
Example.Criteria criteria=example.createCriteria();
if (checkFieldName(clazz,"isDel")){
criteria.andEqualTo("isDel",0);
}
example.setOrderByClause("id desc");
return mapper.selectByExample(example);
}
public boolean checkFieldName(Class<T> clazz,String fieldname){
Field[] fields=clazz.getDeclaredFields();
boolean flag=false;
for (int i = 0; i < fields.length; i++) {
if(fields[i].getName().equals(fieldname))
{
flag=true;
break;
}
}
return flag;
}
} }
...@@ -5,6 +5,7 @@ import com.github.wxiaoqi.security.common.context.BaseContextHandler; ...@@ -5,6 +5,7 @@ import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.msg.TableResultResponse; import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.github.wxiaoqi.security.common.util.ReflectionUtils;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -76,7 +77,7 @@ public class BaseController<Biz extends BaseBiz,Entity> extends CommonBaseContro ...@@ -76,7 +77,7 @@ public class BaseController<Biz extends BaseBiz,Entity> extends CommonBaseContro
public TableResultResponse<Entity> list(@RequestParam Map<String, Object> params){ public TableResultResponse<Entity> list(@RequestParam Map<String, Object> params){
//查询列表数据 //查询列表数据
Query query = new Query(params); Query query = new Query(params);
return baseBiz.selectByQuery(query); return baseBiz.selectPageByQuery(query);
} }
@ApiOperation("根据参数查询,等于") @ApiOperation("根据参数查询,等于")
...@@ -88,4 +89,22 @@ public class BaseController<Biz extends BaseBiz,Entity> extends CommonBaseContro ...@@ -88,4 +89,22 @@ public class BaseController<Biz extends BaseBiz,Entity> extends CommonBaseContro
} }
@ApiOperation("查询所有")
@RequestMapping(value = "/alls",method = RequestMethod.GET)
@ResponseBody
public ObjectRestResponse alls(){
return baseBiz.selectAll();
}
@ApiOperation("删除")
@RequestMapping(value = "/del",method = RequestMethod.DELETE)
@ResponseBody
public ObjectRestResponse del( Entity entity){
ReflectionUtils.setFieldValue(entity,"isDel",1);
baseBiz.updateSelectiveById(entity);
return ObjectRestResponse.succ();
}
} }
package com.github.wxiaoqi.security.common.vo;
import java.util.List;
public interface DataInter {
List<Integer> getDataCompanyIds();
List<Integer> getDataCorporationIds();
void setDataCompanyIds(List<Integer> dataCompanyIds);
void setDataCorporationIds(List<Integer> dataCorporationIds);
}
...@@ -5,6 +5,7 @@ spring: ...@@ -5,6 +5,7 @@ spring:
nacos: nacos:
discovery: discovery:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
namespace: tiande_spcloud
server: server:
port: 8764 #启动端口 port: 8764 #启动端口
......
...@@ -19,6 +19,7 @@ spring: ...@@ -19,6 +19,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
package com.github.wxiaoqi.security.admin.entity; package com.github.wxiaoqi.security.admin.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.GeneratedValue; import javax.persistence.GeneratedValue;
import javax.persistence.Id; import javax.persistence.Id;
...@@ -7,6 +10,7 @@ import javax.persistence.Table; ...@@ -7,6 +10,7 @@ import javax.persistence.Table;
import java.util.Date; import java.util.Date;
@Table(name = "base_user") @Table(name = "base_user")
@Data
public class User { public class User {
@Id @Id
@GeneratedValue(generator = "JDBC")//此处加上注解 @GeneratedValue(generator = "JDBC")//此处加上注解
...@@ -38,9 +42,16 @@ public class User { ...@@ -38,9 +42,16 @@ public class User {
private Integer status; private Integer status;
@Column(name = "zone_id") @Column(name = "zone_id")
@ApiModelProperty("片区id")
private Integer zoneId; private Integer zoneId;
@Column(name = "corporation_id")
@ApiModelProperty("公司id")
private Long corporationId;
@Column(name = "company_id") @Column(name = "company_id")
@ApiModelProperty("门店id")
private Integer companyId; private Integer companyId;
private String description; private String description;
...@@ -78,6 +89,10 @@ public class User { ...@@ -78,6 +89,10 @@ public class User {
@Column(name = "data_company") @Column(name = "data_company")
private String dataCompany; private String dataCompany;
@Column(name = "data_corporation")
private String dataCorporation;
private String attr1; private String attr1;
private String attr2; private String attr2;
...@@ -94,445 +109,5 @@ public class User { ...@@ -94,445 +109,5 @@ public class User {
private String attr8; private String attr8;
/**
* @return id
*/
public Integer getId() {
return id;
}
/**
* @param id
*/
public void setId(Integer id) {
this.id = id;
}
/**
* @return username
*/
public String getUsername() {
return username;
}
/**
* @param username
*/
public void setUsername(String username) {
this.username = username;
}
/**
* @return password
*/
public String getPassword() {
return password;
}
/**
* @param password
*/
public void setPassword(String password) {
this.password = password;
}
/**
* @return name
*/
public String getName() {
return name;
}
/**
* @param name
*/
public void setName(String name) {
this.name = name;
}
/**
* @return birthday
*/
public String getBirthday() {
return birthday;
}
/**
* @param birthday
*/
public void setBirthday(String birthday) {
this.birthday = birthday;
}
/**
* @return address
*/
public String getAddress() {
return address;
}
/**
* @param address
*/
public void setAddress(String address) {
this.address = address;
}
/**
* @return mobile_phone
*/
public String getMobilePhone() {
return mobilePhone;
}
/**
* @param mobilePhone
*/
public void setMobilePhone(String mobilePhone) {
this.mobilePhone = mobilePhone;
}
/**
* @return tel_phone
*/
public String getTelPhone() {
return telPhone;
}
/**
* @param telPhone
*/
public void setTelPhone(String telPhone) {
this.telPhone = telPhone;
}
/**
* @return email
*/
public String getEmail() {
return email;
}
/**
* @param email
*/
public void setEmail(String email) {
this.email = email;
}
/**
* @return sex
*/
public String getSex() {
return sex;
}
/**
* @param sex
*/
public void setSex(String sex) {
this.sex = sex;
}
/**
* @return type
*/
public String getType() {
return type;
}
/**
* @param type
*/
public void setType(String type) {
this.type = type;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Integer getZoneId() {
return zoneId;
}
public void setZoneId(Integer zoneId) {
this.zoneId = zoneId;
}
public Integer getCompanyId() {
return companyId;
}
public void setCompanyId(Integer companyId) {
this.companyId = companyId;
}
/**
* @return description
*/
public String getDescription() {
return description;
}
/**
* @param description
*/
public void setDescription(String description) {
this.description = description;
}
/**
* @return crt_time
*/
public Date getCrtTime() {
return crtTime;
}
/**
* @param crtTime
*/
public void setCrtTime(Date crtTime) {
this.crtTime = crtTime;
}
/**
* @return crt_user
*/
public String getCrtUser() {
return crtUser;
}
/**
* @param crtUser
*/
public void setCrtUser(String crtUser) {
this.crtUser = crtUser;
}
/**
* @return crt_name
*/
public String getCrtName() {
return crtName;
}
/**
* @param crtName
*/
public void setCrtName(String crtName) {
this.crtName = crtName;
}
/**
* @return crt_host
*/
public String getCrtHost() {
return crtHost;
}
/**
* @param crtHost
*/
public void setCrtHost(String crtHost) {
this.crtHost = crtHost;
}
/**
* @return upd_time
*/
public Date getUpdTime() {
return updTime;
}
/**
* @param updTime
*/
public void setUpdTime(Date updTime) {
this.updTime = updTime;
}
/**
* @return upd_user
*/
public String getUpdUser() {
return updUser;
}
/**
* @param updUser
*/
public void setUpdUser(String updUser) {
this.updUser = updUser;
}
/**
* @return upd_name
*/
public String getUpdName() {
return updName;
}
/**
* @param updName
*/
public void setUpdName(String updName) {
this.updName = updName;
}
/**
* @return upd_host
*/
public String getUpdHost() {
return updHost;
}
/**
* @param updHost
*/
public void setUpdHost(String updHost) {
this.updHost = updHost;
}
public Integer getDataAll() {
return dataAll;
}
public void setDataAll(Integer dataAll) {
this.dataAll = dataAll;
}
public String getDataZone() {
return dataZone;
}
public void setDataZone(String dataZone) {
this.dataZone = dataZone;
}
public String getDataCompany() {
return dataCompany;
}
public void setDataCompany(String dataCompany) {
this.dataCompany = dataCompany;
}
/**
* @return attr1
*/
public String getAttr1() {
return attr1;
}
/**
* @param attr1
*/
public void setAttr1(String attr1) {
this.attr1 = attr1;
}
/**
* @return attr2
*/
public String getAttr2() {
return attr2;
}
/**
* @param attr2
*/
public void setAttr2(String attr2) {
this.attr2 = attr2;
}
/**
* @return attr3
*/
public String getAttr3() {
return attr3;
}
/**
* @param attr3
*/
public void setAttr3(String attr3) {
this.attr3 = attr3;
}
/**
* @return attr4
*/
public String getAttr4() {
return attr4;
}
/**
* @param attr4
*/
public void setAttr4(String attr4) {
this.attr4 = attr4;
}
/**
* @return attr5
*/
public String getAttr5() {
return attr5;
}
/**
* @param attr5
*/
public void setAttr5(String attr5) {
this.attr5 = attr5;
}
/**
* @return attr6
*/
public String getAttr6() {
return attr6;
}
/**
* @param attr6
*/
public void setAttr6(String attr6) {
this.attr6 = attr6;
}
/**
* @return attr7
*/
public String getAttr7() {
return attr7;
}
/**
* @param attr7
*/
public void setAttr7(String attr7) {
this.attr7 = attr7;
}
/**
* @return attr8
*/
public String getAttr8() {
return attr8;
}
/**
* @param attr8
*/
public void setAttr8(String attr8) {
this.attr8 = attr8;
}
} }
\ No newline at end of file
...@@ -20,6 +20,10 @@ public class UserDTO extends User { ...@@ -20,6 +20,10 @@ public class UserDTO extends User {
return str2List(getDataCompany()); return str2List(getDataCompany());
} }
public List<Integer> dataCorporation2List() {
return str2List(getDataCorporation());
}
private List<Integer> str2List(String str) { private List<Integer> str2List(String str) {
if(StringUtils.isNotBlank(str)) { if(StringUtils.isNotBlank(str)) {
return Arrays.asList(str.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList()); return Arrays.asList(str.split(",")).parallelStream().map(s -> Integer.valueOf(s)).collect(Collectors.toList());
......
...@@ -6,10 +6,13 @@ import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; ...@@ -6,10 +6,13 @@ import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.common.context.BaseContextHandler; import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
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.DataInter;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
public interface UserRestInterface { public interface UserRestInterface {
public UserFeign getUserFeign(); public UserFeign getUserFeign();
...@@ -41,4 +44,28 @@ public interface UserRestInterface { ...@@ -41,4 +44,28 @@ public interface UserRestInterface {
throw new BaseException(ResultCode.NOTEXIST_CODE); throw new BaseException(ResultCode.NOTEXIST_CODE);
} }
} }
default void setPowerData(DataInter dataInter){
UserDTO userDTO = getAdminUserInfo();
if (userDTO == null) {
return;
}
Integer dataAll=userDTO.getDataAll()== null ? 2 : userDTO.getDataAll();
if (dataAll == 2){
List<Integer> dataCompany2List = userDTO.dataCompany2List();
if (dataCompany2List != null && dataCompany2List.size() > 0){
dataInter.setDataCompanyIds(dataCompany2List);
}else {
List<Integer> dataCorporation2List = userDTO.dataCorporation2List();
if (dataCorporation2List != null && dataCorporation2List.size() > 0){
dataInter.setDataCorporationIds(dataCorporation2List);
}else {
List<Integer> ids=new ArrayList<>();
ids.add(0);
dataInter.setDataCompanyIds(ids);
}
}
}
}
} }
package com.github.wxiaoqi.security.admin.vo;
import com.github.wxiaoqi.security.admin.entity.Group;
import com.github.wxiaoqi.security.admin.entity.User;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/7/8 16:08
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BaseUserVo extends User {
private String companyName;
private String corporationName;
private List<Group> groupList;
private String groupStr;
public String getGroupStr(){
if (groupList != null && groupList.size() > 0){
groupStr= groupList.stream().map(Group::getName).collect(Collectors.joining(","));
}
return groupStr;
}
}
...@@ -7,20 +7,28 @@ import com.github.pagehelper.PageHelper; ...@@ -7,20 +7,28 @@ import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.admin.entity.User; import com.github.wxiaoqi.security.admin.entity.User;
import com.github.wxiaoqi.security.admin.mapper.MenuMapper; import com.github.wxiaoqi.security.admin.mapper.MenuMapper;
import com.github.wxiaoqi.security.admin.mapper.UserMapper; import com.github.wxiaoqi.security.admin.mapper.UserMapper;
import com.github.wxiaoqi.security.admin.vo.BaseUserVo;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil; import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.constant.UserConstant; import com.github.wxiaoqi.security.common.constant.UserConstant;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.msg.TableResultResponse; import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.util.Query; import com.github.wxiaoqi.security.common.util.Query;
import com.xxfc.platform.vehicle.entity.CompanyInfo;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import com.xxfc.platform.vehicle.pojo.dto.CompanyInfoFindDTO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
import java.util.Arrays;
import java.util.List; import java.util.*;
import java.util.Map; import java.util.stream.Collectors;
import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_TRUE; import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_TRUE;
...@@ -39,6 +47,14 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -39,6 +47,14 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
@Autowired @Autowired
private UserAuthUtil userAuthUtil; private UserAuthUtil userAuthUtil;
@Autowired
private VehicleFeign vehicleFeign;
@Autowired
private GroupBiz groupBiz;
@Override @Override
public void insertSelective(User entity) { public void insertSelective(User entity) {
String password = new BCryptPasswordEncoder(UserConstant.PW_ENCORDER_SALT).encode(entity.getPassword()); String password = new BCryptPasswordEncoder(UserConstant.PW_ENCORDER_SALT).encode(entity.getPassword());
...@@ -70,7 +86,10 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -70,7 +86,10 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
return mapper.selectOne(user); return mapper.selectOne(user);
} }
public TableResultResponse<User> selectPage(Query query, User currentUser) { public TableResultResponse<BaseUserVo> selectPage(Query query, User currentUser) {
List<BaseUserVo> userVos=new ArrayList<>();
List<User> list =new ArrayList<>();
Page<Object> result;
if(DATA_ALL_TRUE.equals(currentUser.getDataAll())) { if(DATA_ALL_TRUE.equals(currentUser.getDataAll())) {
Example example = new Example(User.class); Example example = new Example(User.class);
if(query.entrySet().size()>0) { if(query.entrySet().size()>0) {
...@@ -80,9 +99,8 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -80,9 +99,8 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
} }
} }
example.createCriteria().andGreaterThan("id",1); example.createCriteria().andGreaterThan("id",1);
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit()); result = PageHelper.startPage(query.getPage(), query.getLimit());
List<User> list = mapper.selectByExample(example); list = mapper.selectByExample(example);
return new TableResultResponse<User>(result.getTotal(), list);
}else { }else {
Example example = new Example(User.class); Example example = new Example(User.class);
if(query.entrySet().size()>0) { if(query.entrySet().size()>0) {
...@@ -97,11 +115,59 @@ public class UserBiz extends BaseBiz<UserMapper,User> { ...@@ -97,11 +115,59 @@ public class UserBiz extends BaseBiz<UserMapper,User> {
if(StringUtils.isNotBlank(currentUser.getDataZone())){ if(StringUtils.isNotBlank(currentUser.getDataZone())){
example.createCriteria().andIn("zoneId", Arrays.asList(currentUser.getDataZone().split(","))); example.createCriteria().andIn("zoneId", Arrays.asList(currentUser.getDataZone().split(",")));
} }
if(StringUtils.isNotBlank(currentUser.getDataCorporation())){
example.createCriteria().andIn("corporationId", Arrays.asList(currentUser.getDataCorporation().split(",")));
}
example.createCriteria().andGreaterThan("id",1); example.createCriteria().andGreaterThan("id",1);
Page<Object> result = PageHelper.startPage(query.getPage(), query.getLimit()); result = PageHelper.startPage(query.getPage(), query.getLimit());
List<User> list = mapper.selectByExample(example); list = mapper.selectByExample(example);
return new TableResultResponse<User>(result.getTotal(), list);
}
if (list.size() > 0){
List<Long> corporationIds=list.stream().map(User::getCorporationId).distinct().collect(Collectors.toList());
CompanyInfoFindDTO companyInfoFindDTO=new CompanyInfoFindDTO();
companyInfoFindDTO.setIds(corporationIds);
ObjectRestResponse< List<CompanyInfo>> restResponse = vehicleFeign.listByIds(companyInfoFindDTO);
Map<Long,CompanyInfo> companyInfoMaps=new HashMap<>();
if (restResponse.getData() != null){
List<CompanyInfo> companyInfos=restResponse.getData();
if (companyInfos != null && companyInfos.size() > 0){
for (CompanyInfo companyInfo:companyInfos){
companyInfoMaps.put(companyInfo.getId(),companyInfo);
}
}
}
List<Integer> companyIds=list.stream().map(User::getCompanyId).distinct().collect(Collectors.toList());
CompanySearchDTO companySearchDTO=new CompanySearchDTO();
companySearchDTO.setCompanyIds(companyIds);
ObjectRestResponse<List<CompanySearchVO>> restResponse1= vehicleFeign.listByIds(companySearchDTO);
Map<Integer,CompanySearchVO> companyMaps=new HashMap<>();
if (restResponse1.getData() != null){
List<CompanySearchVO> companySearchVOS=restResponse1.getData();
if (companySearchVOS != null && companySearchVOS.size() > 0){
for (CompanySearchVO companySearchVO:companySearchVOS){
companyMaps.put(companySearchVO.getId(),companySearchVO);
}
}
}
for (User user : list){
BaseUserVo userVo=new BaseUserVo();
BeanUtils.copyProperties(user,userVo);
CompanyInfo companyInfo=companyInfoMaps.get(userVo.getCorporationId());
if (companyInfo != null ){
userVo.setCorporationName(companyInfo.getName());
}
CompanySearchVO companySearchVO= companyMaps.get(userVo.getCompanyId());
if (companySearchVO != null ){
userVo.setCompanyName(companySearchVO.getName());
}
userVo.setGroupList(groupBiz.getUserGroups(userVo.getId()));
userVos.add(userVo);
}
} }
return new TableResultResponse<BaseUserVo>(result.getTotal(), userVos);
} }
public List<User> getCountByUsername(String username){ public List<User> getCountByUsername(String username){
......
...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.admin.config; ...@@ -3,6 +3,7 @@ package com.github.wxiaoqi.security.admin.config;
import com.github.wxiaoqi.security.auth.client.interceptor.ServiceAuthRestInterceptor; import com.github.wxiaoqi.security.auth.client.interceptor.ServiceAuthRestInterceptor;
import com.github.wxiaoqi.security.auth.client.interceptor.UserAuthRestInterceptor; import com.github.wxiaoqi.security.auth.client.interceptor.UserAuthRestInterceptor;
import com.github.wxiaoqi.security.common.handler.GlobalExceptionHandler; import com.github.wxiaoqi.security.common.handler.GlobalExceptionHandler;
import com.github.wxiaoqi.security.common.interceptor.CorsInterceptor;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Primary;
...@@ -33,7 +34,10 @@ public class WebConfiguration implements WebMvcConfigurer { ...@@ -33,7 +34,10 @@ public class WebConfiguration implements WebMvcConfigurer {
registry.addInterceptor(getUserAuthRestInterceptor()). registry.addInterceptor(getUserAuthRestInterceptor()).
addPathPatterns(getIncludePathPatterns()); addPathPatterns(getIncludePathPatterns());
} }
@Bean
CorsInterceptor getCorsInterceptor() {
return new CorsInterceptor();
}
@Bean @Bean
ServiceAuthRestInterceptor getServiceAuthRestInterceptor() { ServiceAuthRestInterceptor getServiceAuthRestInterceptor() {
return new ServiceAuthRestInterceptor(); return new ServiceAuthRestInterceptor();
......
...@@ -5,7 +5,6 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel; ...@@ -5,7 +5,6 @@ import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
import io.swagger.models.auth.In;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import tk.mybatis.mapper.entity.Example; import tk.mybatis.mapper.entity.Example;
......
...@@ -7,6 +7,7 @@ import com.github.wxiaoqi.security.admin.entity.Menu; ...@@ -7,6 +7,7 @@ import com.github.wxiaoqi.security.admin.entity.Menu;
import com.github.wxiaoqi.security.admin.entity.User; import com.github.wxiaoqi.security.admin.entity.User;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.rpc.service.PermissionService; import com.github.wxiaoqi.security.admin.rpc.service.PermissionService;
import com.github.wxiaoqi.security.admin.vo.BaseUserVo;
import com.github.wxiaoqi.security.admin.vo.FrontUser; import com.github.wxiaoqi.security.admin.vo.FrontUser;
import com.github.wxiaoqi.security.admin.vo.GroupUsers; import com.github.wxiaoqi.security.admin.vo.GroupUsers;
import com.github.wxiaoqi.security.admin.vo.MenuTree; import com.github.wxiaoqi.security.admin.vo.MenuTree;
...@@ -147,15 +148,10 @@ public class UserController extends CommonBaseController { ...@@ -147,15 +148,10 @@ public class UserController extends CommonBaseController {
@RequestMapping(value = "/page",method = RequestMethod.GET) @RequestMapping(value = "/page",method = RequestMethod.GET)
@ResponseBody @ResponseBody
public TableResultResponse<User> list(@RequestParam Map<String, Object> params){ public TableResultResponse<BaseUserVo> list(@RequestParam Map<String, Object> params)throws Exception{
//查询列表数据 //查询列表数据
Query query = new Query(params); Query query = new Query(params);
try {
return userBiz.selectPage(query, userBiz.getUserByUsername(userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request)).getUniqueName())); return userBiz.selectPage(query, userBiz.getUserByUsername(userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request)).getUniqueName()));
}catch (Exception e) {
log.error(e.getMessage());
return new TableResultResponse<User>();
}
} }
......
...@@ -18,7 +18,7 @@ spring: ...@@ -18,7 +18,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -240,7 +240,7 @@ ...@@ -240,7 +240,7 @@
<if test="realName !=null and realName != ''"> <if test="realName !=null and realName != ''">
and d.realname like CONCAT('%',#{realName},'%') and d.realname like CONCAT('%',#{realName},'%')
</if> </if>
<if test="citySet != null "> <if test="citySet != null and citySet.size > 0 ">
and d.city_code in and d.city_code in
<foreach collection="citySet" item="item" index="index" open="(" separator="," close=")"> <foreach collection="citySet" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
......
...@@ -26,6 +26,7 @@ spring: ...@@ -26,6 +26,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -26,6 +26,7 @@ spring: ...@@ -26,6 +26,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -16,7 +16,7 @@ spring: ...@@ -16,7 +16,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -26,6 +26,7 @@ spring: ...@@ -26,6 +26,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -8,6 +8,7 @@ import com.xxfc.platform.order.entity.OrderItem; ...@@ -8,6 +8,7 @@ import com.xxfc.platform.order.entity.OrderItem;
import com.xxfc.platform.order.entity.inter.OrderDetail; import com.xxfc.platform.order.entity.inter.OrderDetail;
import com.xxfc.platform.order.entity.OrderRentVehicleDetail; import com.xxfc.platform.order.entity.OrderRentVehicleDetail;
import com.xxfc.platform.order.pojo.OrderAccompanyDTO; import com.xxfc.platform.order.pojo.OrderAccompanyDTO;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleModel; import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.pojo.BookVehicleVO; import com.xxfc.platform.vehicle.pojo.BookVehicleVO;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
...@@ -68,12 +69,24 @@ public class RentVehicleBO extends OrderRentVehicleDetail implements OrderDetail ...@@ -68,12 +69,24 @@ public class RentVehicleBO extends OrderRentVehicleDetail implements OrderDetail
private Date startDate; private Date startDate;
/** /**
* 开始时间 * 结束时间
*/ */
private Date endDate; private Date endDate;
/**
* 开始时间字符串
*/
private String startDateStr;
/**
* 结束时间字符串
*/
private String endDateStr;
public void initDate() { public void initDate() {
this.startDate = DateUtil.date(getStartTime()); this.startDate = DateUtil.date(getStartTime());
this.endDate = DateUtil.date(getEndTime()); this.endDate = DateUtil.date(getEndTime());
this.startDateStr = DateUtil.formatDate(this.startDate);
this.startDateStr = DateUtil.formatDate(this.endDate);
} }
} }
...@@ -124,6 +124,9 @@ public class AddRentVehicleDTO extends AddOrderCommonDTO{ ...@@ -124,6 +124,9 @@ public class AddRentVehicleDTO extends AddOrderCommonDTO{
@ApiModelProperty(value = "随车物品", hidden = true) @ApiModelProperty(value = "随车物品", hidden = true)
private List<OrderAccompanyDTO> accompanyItems; private List<OrderAccompanyDTO> accompanyItems;
@ApiModelProperty(value = "车辆id")
private String vehicleId;
public void setStartTime(Long startTime) { public void setStartTime(Long startTime) {
this.startTime = startTime; this.startTime = startTime;
this.bookStartDate = YMR_SLASH_FORMATTER.format(LocalDateTime.ofInstant(Instant.ofEpochMilli(startTime), ZoneOffset.ofHours(8))); this.bookStartDate = YMR_SLASH_FORMATTER.format(LocalDateTime.ofInstant(Instant.ofEpochMilli(startTime), ZoneOffset.ofHours(8)));
......
...@@ -35,6 +35,7 @@ import com.xxfc.platform.vehicle.common.RestResponse; ...@@ -35,6 +35,7 @@ import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.constant.AccompanyingItemType; import com.xxfc.platform.vehicle.constant.AccompanyingItemType;
import com.xxfc.platform.vehicle.entity.BranchCompany; import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.entity.VehicleBookRecord; import com.xxfc.platform.vehicle.entity.VehicleBookRecord;
import com.xxfc.platform.vehicle.entity.VehicleHolidayPriceInfo;
import com.xxfc.platform.vehicle.entity.VehicleModel; import com.xxfc.platform.vehicle.entity.VehicleModel;
import com.xxfc.platform.vehicle.feign.VehicleFeign; import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO; import com.xxfc.platform.vehicle.pojo.RentVehicleBookDTO;
...@@ -309,7 +310,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -309,7 +310,12 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
VehicleModel vehicleModel = vehicleFeign.get(detail.getModelId()).getData(); VehicleModel vehicleModel = vehicleFeign.get(detail.getModelId()).getData();
detail.initDate(); detail.initDate();
List<VehicleModelCalendarPriceDTO> metaVmcpds = vehicleFeign.findVehicleModelCalendarPriceByDate(detail.getStartTime(), detail.getEndTime(), detail.getModelId(), dto.getUserid()).getData(); List<VehicleModelCalendarPriceDTO> metaVmcpds = vehicleFeign.getByVehicleIdFeign(detail.getVehicleId(), detail.getStartDateStr(), detail.getEndDateStr(), dto.getUserid(), detail.getStartCompanyId()).getData();
// List<VehicleModelCalendarPriceDTO> metaVmcpds = vehicleFeign.findVehicleModelCalendarPriceByDate(detail.getStartTime(), detail.getEndTime(), detail.getModelId(), dto.getUserid()).getData();
// List<VehicleModelCalendarPriceDTO> metaVmcpds;
// for (VehicleHolidayPriceInfo vhpi : vhpis) {
// vhpi.getAllModelUse()
// }
List<VMCalendarPriceCostDTO> vmcpds = Convert.toList(VMCalendarPriceCostDTO.class, metaVmcpds); List<VMCalendarPriceCostDTO> vmcpds = Convert.toList(VMCalendarPriceCostDTO.class, metaVmcpds);
...@@ -333,17 +339,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -333,17 +339,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
} }
// //循环价格列表 获得对应消耗的免费天数 // //循环价格列表 获得对应消耗的免费天数
// for(VehicleModelCalendarPriceDTO vmcpd : vmcpds) {
// //如果新的相加消耗天数 大于 拥有天数
// if(freeDayNum+ vmcpd.getFreeDays() > dto.getRentFreeDays()) {
// //freeDayNum = dto.getRentFreeDays();
// break;
// }else {
// freeDayNum += detail.getDayNum();
// cutDayNum += 1;
// }
// }
// vehicleOrderItem.setCutNum(cutDayNum);
vehicleOrderItem.initDetail(dto.getRentFreeDays()); vehicleOrderItem.initDetail(dto.getRentFreeDays());
freeDayNum = vehicleOrderItem.getCutNum(); freeDayNum = vehicleOrderItem.getCutNum();
offsetNum = vehicleOrderItem.getOffsetNum(); offsetNum = vehicleOrderItem.getOffsetNum();
...@@ -367,25 +362,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -367,25 +362,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
String[] prices = StrUtil.isBlank(vehicleModel.getRentDiscountPrice()) String[] prices = StrUtil.isBlank(vehicleModel.getRentDiscountPrice())
?new String[]{vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString()} ?new String[]{vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString(),vehicleModel.getPrice().toString()}
:vehicleModel.getRentDiscountPrice().split(","); :vehicleModel.getRentDiscountPrice().split(",");
// HandleDiscountDTO handleDiscountDTO = new HandleDiscountDTO();
// handleDiscountDTO.setRebate(100);
// handleDiscountDTO.setModelAmount(vehicleModel.getPrice());
// switch (MemberEnum.getByCode(dto.getMemberLevel())) {
// case NORMAL:
// handleDiscountDTO = handleDiscount(dto, vehicleModel, prices, NORMAL);
// detail.getOrder().setHasMemberRight(SYS_TRUE);
// break;
// case GOLD:
// handleDiscountDTO = handleDiscount(dto, vehicleModel, prices, GOLD);
// detail.getOrder().setHasMemberRight(SYS_TRUE);
// break;
// case DIAMOND:
// handleDiscountDTO = handleDiscount(dto, vehicleModel, prices, DIAMOND);
// detail.getOrder().setHasMemberRight(SYS_TRUE);
// break;
// default:
// break;
// }
//设置是否使用会员权益 //设置是否使用会员权益
for(VMCalendarPriceCostDTO vmcpcd : vehicleOrderItem.getVehicleDetail()) { for(VMCalendarPriceCostDTO vmcpcd : vehicleOrderItem.getVehicleDetail()) {
if(!vmcpcd.getNo_discount_price().equals(vmcpcd.getPrice())) { if(!vmcpcd.getNo_discount_price().equals(vmcpcd.getPrice())) {
...@@ -395,7 +371,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -395,7 +371,6 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
} }
detail.setRebate(dto.getDiscount()); detail.setRebate(dto.getDiscount());
// vehicleOrderItem.setUnitPrice(handleDiscountDTO.getModelAmount());
} }
//计算价格 //计算价格
...@@ -577,6 +552,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl ...@@ -577,6 +552,7 @@ public class OrderRentVehicleService extends AbstractOrderHandle<OrderRentVehicl
rentVehicleBookDTO.setNumberPlate(numberPlate); rentVehicleBookDTO.setNumberPlate(numberPlate);
rentVehicleBookDTO.setStatus(status); rentVehicleBookDTO.setStatus(status);
rentVehicleBookDTO.setUseType(detail.getUseType()); rentVehicleBookDTO.setUseType(detail.getUseType());
rentVehicleBookDTO.setVehicleId(detail.getVehicleId());
if (detail.getRentFreeDay() > 0) {//使用了免费天数 if (detail.getRentFreeDay() > 0) {//使用了免费天数
rentVehicleBookDTO.setMemberUse(detail.getAppUserDTO().getMemberType()); rentVehicleBookDTO.setMemberUse(detail.getAppUserDTO().getMemberType());
} }
......
...@@ -16,7 +16,7 @@ spring: ...@@ -16,7 +16,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,+ mongodb日志配置 #共用配置,+ mongodb日志配置
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
#--- #---
#spring: #spring:
# profiles: pro # profiles: pro
......
...@@ -26,6 +26,7 @@ spring: ...@@ -26,6 +26,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -26,6 +26,15 @@ public class GoodSearchDTO extends PageParam { ...@@ -26,6 +26,15 @@ public class GoodSearchDTO extends PageParam {
private String tagId; private String tagId;
@ApiModelProperty("公司id")
private Long corporationId;
@ApiModelProperty("门店id")
private Integer companyId;
} }
...@@ -123,4 +123,12 @@ public class TourGoodDTO { ...@@ -123,4 +123,12 @@ public class TourGoodDTO {
@ApiModelProperty("seo*html标签优化") @ApiModelProperty("seo*html标签优化")
private String imgDesc; private String imgDesc;
@ApiModelProperty("公司id")
private Long corporationId;
@ApiModelProperty("门店id")
private Integer companyId;
} }
...@@ -149,4 +149,15 @@ public class TourGood implements Serializable { ...@@ -149,4 +149,15 @@ public class TourGood implements Serializable {
@Column(name = "img_desc") @Column(name = "img_desc")
@ApiModelProperty("seo*html标签优化") @ApiModelProperty("seo*html标签优化")
private String imgDesc; private String imgDesc;
@Column(name = "corporation_id")
@ApiModelProperty("公司id")
private Long corporationId;
@Column(name = "company_id")
@ApiModelProperty("门店id")
private Integer companyId;
} }
...@@ -141,4 +141,13 @@ public class TourGoodDetailVo { ...@@ -141,4 +141,13 @@ public class TourGoodDetailVo {
@ApiModelProperty("seo*html标签优化") @ApiModelProperty("seo*html标签优化")
private String imgDesc; private String imgDesc;
@ApiModelProperty("公司id")
private Long corporationId;
@ApiModelProperty("门店id")
private Integer companyId;
} }
...@@ -110,4 +110,24 @@ public class TourGoodVo implements Serializable { ...@@ -110,4 +110,24 @@ public class TourGoodVo implements Serializable {
private String tagNames; private String tagNames;
@ApiModelProperty("公司id")
private Long corporationId;
@ApiModelProperty("门店id")
private Integer companyId;
@ApiModelProperty("公司")
private String corporationName;
@ApiModelProperty("门店")
private String companyName;
} }
...@@ -18,6 +18,11 @@ import com.xxfc.platform.tour.dto.*; ...@@ -18,6 +18,11 @@ 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.*;
import com.xxfc.platform.tour.vo.TourGoodVo; import com.xxfc.platform.tour.vo.TourGoodVo;
import com.xxfc.platform.vehicle.entity.CompanyInfo;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import com.xxfc.platform.vehicle.pojo.dto.CompanyInfoFindDTO;
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;
...@@ -63,6 +68,10 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> { ...@@ -63,6 +68,10 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
@Autowired @Autowired
private UserFeign userFeign; private UserFeign userFeign;
@Autowired
private VehicleFeign vehicleFeign;
/** /**
* 查询旅游路线列表 * 查询旅游路线列表
* *
...@@ -105,7 +114,50 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> { ...@@ -105,7 +114,50 @@ public class TourGoodBiz extends BaseBiz<TourGoodMapper, TourGood> {
public PageDataVO<TourGoodVo> getAll(GoodSearchDTO dto) { public PageDataVO<TourGoodVo> getAll(GoodSearchDTO dto) {
PageHelper.startPage(dto.getPage(), dto.getLimit()); PageHelper.startPage(dto.getPage(), dto.getLimit());
PageInfo<TourGoodVo> goodPageInfo = new PageInfo<>(mapper.findGoodList(dto)); PageInfo<TourGoodVo> goodPageInfo = new PageInfo<>(mapper.findGoodList(dto));
return PageDataVO.pageInfo(goodPageInfo); goodPageInfo.getList();
PageDataVO<TourGoodVo> dataVO = PageDataVO.pageInfo(goodPageInfo);
List<TourGoodVo> list = dataVO.getData();
if (list != null && list.size() > 0){
List<Long> corporationIds=list.stream().map(TourGoodVo::getCorporationId).distinct().collect(Collectors.toList());
CompanyInfoFindDTO companyInfoFindDTO=new CompanyInfoFindDTO();
companyInfoFindDTO.setIds(corporationIds);
ObjectRestResponse< List<CompanyInfo>> restResponse = vehicleFeign.listByIds(companyInfoFindDTO);
Map<Long,CompanyInfo> companyInfoMaps=new HashMap<>();
if (restResponse.getData() != null){
List<CompanyInfo> companyInfos=restResponse.getData();
if (companyInfos != null && companyInfos.size() > 0){
for (CompanyInfo companyInfo:companyInfos){
companyInfoMaps.put(companyInfo.getId(),companyInfo);
}
}
}
List<Integer> companyIds=list.stream().map(TourGoodVo::getCompanyId).distinct().collect(Collectors.toList());
CompanySearchDTO companySearchDTO=new CompanySearchDTO();
companySearchDTO.setCompanyIds(companyIds);
ObjectRestResponse<List<CompanySearchVO>> restResponse1= vehicleFeign.listByIds(companySearchDTO);
Map<Integer,CompanySearchVO> companyMaps=new HashMap<>();
if (restResponse1.getData() != null){
List<CompanySearchVO> companySearchVOS=restResponse1.getData();
if (companySearchVOS != null && companySearchVOS.size() > 0){
for (CompanySearchVO companySearchVO:companySearchVOS){
companyMaps.put(companySearchVO.getId(),companySearchVO);
}
}
}
for (TourGoodVo tourGoodVo : list){
CompanyInfo companyInfo=companyInfoMaps.get(tourGoodVo.getCorporationId());
if (companyInfo != null ){
tourGoodVo.setCorporationName(companyInfo.getName());
}
CompanySearchVO companySearchVO= companyMaps.get(tourGoodVo.getCompanyId());
if (companySearchVO != null ){
tourGoodVo.setCompanyName(companySearchVO.getName());
}
}
}
return dataVO;
} }
//获取商品列表 //获取商品列表
......
...@@ -37,6 +37,7 @@ spring: ...@@ -37,6 +37,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -25,6 +25,8 @@ ...@@ -25,6 +25,8 @@
<result property="stock" column="stock"/> <result property="stock" column="stock"/>
<result property="unit" column="unit"/> <result property="unit" column="unit"/>
<result property="isOutside" column="is_outside"/> <result property="isOutside" column="is_outside"/>
<result property="corporationId" column="corporation_id"/>
<result property="companyId" column="company_id"/>
</resultMap> </resultMap>
<resultMap type="com.xxfc.platform.tour.vo.TourGoodVo" id="tourGoodVoMap"> <resultMap type="com.xxfc.platform.tour.vo.TourGoodVo" id="tourGoodVoMap">
...@@ -49,6 +51,8 @@ ...@@ -49,6 +51,8 @@
<result property="unit" column="unit"/> <result property="unit" column="unit"/>
<result property="tagNames" column="tagNames"/> <result property="tagNames" column="tagNames"/>
<result property="isOutside" column="is_outside"/> <result property="isOutside" column="is_outside"/>
<result property="corporationId" column="corporation_id"/>
<result property="companyId" column="company_id"/>
</resultMap> </resultMap>
<!--查询旅游路线列表--> <!--查询旅游路线列表-->
...@@ -113,6 +117,12 @@ ...@@ -113,6 +117,12 @@
<if test="params.name != null and params.name != ''"> <if test="params.name != null and params.name != ''">
and (g.`name` like CONCAT('%',#{params.name},'%') or g.introduce like CONCAT('%',#{params.name},'%')) and (g.`name` like CONCAT('%',#{params.name},'%') or g.introduce like CONCAT('%',#{params.name},'%'))
</if> </if>
<if test="params.companyId != null and params.companyId > 0">
and g.company_id=#{params.companyId}
</if>
<if test="params.corporationId != null and params.corporationId > 0 ">
and g.corporation_id=#{params.corporationId}
</if>
<if test="params.tagId != null and params.tagId != '' "> <if test="params.tagId != null and params.tagId != '' ">
and g.id in (SELECT good_id from tour_good_tag and g.id in (SELECT good_id from tour_good_tag
where tag_id = #{params.tagId} and is_del=0 ) where tag_id = #{params.tagId} and is_del=0 )
......
...@@ -17,6 +17,7 @@ spring: ...@@ -17,6 +17,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -75,6 +75,9 @@ public class DictionaryKey { ...@@ -75,6 +75,9 @@ public class DictionaryKey {
public static final String ACT_TOUR = "ACT_TOUR"; public static final String ACT_TOUR = "ACT_TOUR";
public static final String ACT_MEMBER = "ACT_MEMBER"; public static final String ACT_MEMBER = "ACT_MEMBER";
public static final String VEHICLE_MANUFACTURER = "VEHICLE_MANUFACTURER";
public static final String VEHICLE = "VEHICLE";
/** /**
* 支付价格减低 * 支付价格减低
*/ */
......
...@@ -27,6 +27,7 @@ spring: ...@@ -27,6 +27,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -17,6 +17,7 @@ spring: ...@@ -17,6 +17,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -22,12 +22,22 @@ public class BranchCompany { ...@@ -22,12 +22,22 @@ public class BranchCompany {
@ApiModelProperty("主键id") @ApiModelProperty("主键id")
private Integer companyBaseId; private Integer companyBaseId;
@Column(name = "company_id")
@ApiModelProperty("公司id")
private Long companyId;
/** /**
* 分公司名称 * 分公司名称
*/ */
@ApiModelProperty("分公司名称") @ApiModelProperty("分公司名称")
private String name; private String name;
@Column(name = "short_name")
@ApiModelProperty("简称")
private String shortName;
/** /**
* 分支机构类型 * 分支机构类型
*/ */
......
package com.xxfc.platform.vehicle.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Data
@Table(name = "branch_company_apply")
public class BranchCompanyApply {
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键id")
private Long id;
@ApiModelProperty("公司名称")
private String name;
@ApiModelProperty("联系人")
private String contact;
@ApiModelProperty("联系电话")
private String moblie;
@ApiModelProperty("入驻类型:1-公司入驻;2-个人入驻")
private Integer type;
@ApiModelProperty("状态:0-未读;1-已读")
private Integer status;
@Column(name = "crt_time")
private Long crtTime;
@Column(name = "upd_time")
private Long updTime;
@Column(name = "is_del")
private Integer isDel;
}
\ No newline at end of file
package com.xxfc.platform.vehicle.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Data
@Table(name = "company_info")
public class CompanyInfo {
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键id")
private Long id;
@ApiModelProperty("公司名称")
private String name;
@ApiModelProperty("法人姓名")
@Column(name = "legal_person")
private String legalPerson;
@ApiModelProperty("公司名称")
@Column(name = "legal_id_number")
private String legalIdNumber;
@ApiModelProperty("联系人")
private String contact;
@ApiModelProperty("联系电话")
private String mobile;
@ApiModelProperty("营业执照")
@Column(name = "business_license")
private String businessLicense;
@Column(name = "crt_time")
private Long crtTime;
@Column(name = "upd_time")
private Long updTime;
@Column(name = "is_del")
private Integer isDel;
}
\ No newline at end of file
package com.xxfc.platform.vehicle.entity; package com.xxfc.platform.vehicle.entity;
import com.github.wxiaoqi.security.common.vo.DataInter;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.persistence.Column; import javax.persistence.*;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
...@@ -21,7 +20,7 @@ import java.util.Date; ...@@ -21,7 +20,7 @@ import java.util.Date;
*/ */
@Data @Data
@Table(name = "vehicle_common_price_info") @Table(name = "vehicle_common_price_info")
public class VehicleCommonPriceInfo implements Serializable { public class VehicleCommonPriceInfo implements Serializable, DataInter {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
...@@ -112,4 +111,9 @@ public class VehicleCommonPriceInfo implements Serializable { ...@@ -112,4 +111,9 @@ public class VehicleCommonPriceInfo implements Serializable {
@Column(name = "is_del") @Column(name = "is_del")
private Integer isDel; private Integer isDel;
@Transient
List<Integer> dataCompanyIds;
@Transient
List<Integer> dataCorporationIds;
} }
package com.xxfc.platform.vehicle.entity; package com.xxfc.platform.vehicle.entity;
import com.github.wxiaoqi.security.common.vo.DataInter;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -7,6 +8,7 @@ import javax.persistence.*; ...@@ -7,6 +8,7 @@ import javax.persistence.*;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
...@@ -18,7 +20,7 @@ import java.util.Date; ...@@ -18,7 +20,7 @@ import java.util.Date;
*/ */
@Data @Data
@Table(name = "vehicle_holiday_price_info") @Table(name = "vehicle_holiday_price_info")
public class VehicleHolidayPriceInfo implements Serializable { public class VehicleHolidayPriceInfo implements Serializable, DataInter {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
...@@ -117,8 +119,14 @@ public class VehicleHolidayPriceInfo implements Serializable { ...@@ -117,8 +119,14 @@ public class VehicleHolidayPriceInfo implements Serializable {
private Integer isDel; private Integer isDel;
@Transient @Transient
private String startDate; private String startTime;
@Transient @Transient
private String endDate; private String endTime;
@Transient
List<Integer> dataCompanyIds;
@Transient
List<Integer> dataCorporationIds;
} }
...@@ -8,10 +8,12 @@ import com.xxfc.platform.vehicle.entity.*; ...@@ -8,10 +8,12 @@ import com.xxfc.platform.vehicle.entity.*;
import com.xxfc.platform.vehicle.pojo.*; import com.xxfc.platform.vehicle.pojo.*;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.CompanyInfoFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.VehicleModelCalendarPriceDTO; import com.xxfc.platform.vehicle.pojo.dto.VehicleModelCalendarPriceDTO;
import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo; import com.xxfc.platform.vehicle.pojo.vo.AccompanyingItemVo;
import com.xxfc.platform.vehicle.pojo.vo.BranComanyLeaderVo; import com.xxfc.platform.vehicle.pojo.vo.BranComanyLeaderVo;
import com.xxfc.platform.vehicle.pojo.vo.BranchCompanyListVO; import com.xxfc.platform.vehicle.pojo.vo.BranchCompanyListVO;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -217,4 +219,16 @@ public interface VehicleFeign { ...@@ -217,4 +219,16 @@ public interface VehicleFeign {
@GetMapping("/branchCompany/compnays_area") @GetMapping("/branchCompany/compnays_area")
public List<BranchCompanyAreaDTO> findBranchCompnayAreaByIds(@RequestParam("companyIds") List<Integer> compnayIds); public List<BranchCompanyAreaDTO> findBranchCompnayAreaByIds(@RequestParam("companyIds") List<Integer> compnayIds);
@ApiOperation("列表")
@RequestMapping(value = "company/info/app/unauth/listByIds", method = RequestMethod.POST)
ObjectRestResponse<List<CompanyInfo>> listByIds(@RequestBody CompanyInfoFindDTO companyInfoFindDTO);
@PostMapping("branchCompany/app/unauth/listByIds")
ObjectRestResponse<List<CompanySearchVO>> listByIds(@RequestBody CompanySearchDTO vo);
@GetMapping(value = "/vehicleHolidayPriceInfo/getByVehicleIdFeign")
public ObjectRestResponse<List<VehicleModelCalendarPriceDTO>> getByVehicleIdFeign(
@RequestParam("vehicleId") String vehicleId, @RequestParam("startDate") String startDate, @RequestParam("endDate") String endDate, @RequestParam("userId") Integer userId, @RequestParam("companyId") Integer companyId);
} }
...@@ -174,4 +174,19 @@ public class AddOrUpdateVehicleVo { ...@@ -174,4 +174,19 @@ public class AddOrUpdateVehicleVo {
//可用会员类型 //可用会员类型
private Integer memberUse; private Integer memberUse;
/**
* 车辆状况:1、全新,2、9成新,3、8成新,4、7成新
*/
private Integer vehicleStatus;
/**
* 车身状况:1、无剐蹭,2、微瑕疵,3、无瑕疵
*/
private Integer vehicleBodyStatus;
/**
* 内饰:1、全新,2、9成新,3、8成新,4、7成新
*/
private Integer vehicleInnerStatus;
} }
\ No newline at end of file
package com.xxfc.platform.vehicle.pojo; package com.xxfc.platform.vehicle.pojo;
import com.github.wxiaoqi.security.common.vo.DataInter;
import com.github.wxiaoqi.security.common.vo.PageParam;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class CompanySearchDTO { public class CompanySearchDTO extends PageParam implements DataInter {
Integer page;
Integer limit;
Integer addrCity; Integer addrCity;
String lon; String lon;
String lat; String lat;
Integer state; Integer state;
Integer isShow = 1; Integer isShow;
Integer isDel = 0; Integer isDel;
Integer addrProvince;
Long companyId;
String name;
Integer id;
List<Integer> companyIds;
List<Integer> dataCorporationIds;
List<Integer> dataCompanyIds;
} }
...@@ -8,4 +8,6 @@ import java.math.BigDecimal; ...@@ -8,4 +8,6 @@ import java.math.BigDecimal;
@Data @Data
public class CompanySearchVO extends BranchCompany { public class CompanySearchVO extends BranchCompany {
BigDecimal distance; BigDecimal distance;
String companyName;
} }
...@@ -107,6 +107,9 @@ public class RentVehicleBookDTO extends PageParam { ...@@ -107,6 +107,9 @@ public class RentVehicleBookDTO extends PageParam {
@ApiModelProperty("会员免费类型") @ApiModelProperty("会员免费类型")
Integer memberUse; Integer memberUse;
@ApiModelProperty("车辆id")
String vehicleId;
/** /**
* 用途 1 租车 * 用途 1 租车
*/ */
......
...@@ -56,7 +56,10 @@ public class ResultVehicleVo { ...@@ -56,7 +56,10 @@ public class ResultVehicleVo {
*/ */
private String parkBranchCompanyName; private String parkBranchCompanyName;
/**
* 所属公司名称
*/
private String companyName;
/** /**
* 目的地分支机构(id) * 目的地分支机构(id)
......
...@@ -15,6 +15,8 @@ public class UsableVehicleModelVO { ...@@ -15,6 +15,8 @@ public class UsableVehicleModelVO {
@ApiModelProperty(value = "车型信息") @ApiModelProperty(value = "车型信息")
VehicleModel vehicleModel; VehicleModel vehicleModel;
private String vehicleIds;
@ApiModelProperty(value = "公司信息") @ApiModelProperty(value = "公司信息")
BranchCompany company; BranchCompany company;
......
...@@ -88,6 +88,10 @@ public class VehicleExcelVo { ...@@ -88,6 +88,10 @@ public class VehicleExcelVo {
private String insuranceNo; private String insuranceNo;
/**
* 所属公司名称
*/
private String companyName;
/** /**
......
package com.xxfc.platform.vehicle.pojo; package com.xxfc.platform.vehicle.pojo;
import com.sun.org.apache.xpath.internal.operations.Bool;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
...@@ -29,9 +28,19 @@ public class VehiclePageQueryVo { ...@@ -29,9 +28,19 @@ public class VehiclePageQueryVo {
private Integer brand; private Integer brand;
/** /**
* 所属分支机构(id) * 所属门店(id)
*/ */
private Integer subordinateBranch; private Integer subordinateBranch;
/**
* 停靠门店
*/
private Integer parkBranchCompanyId;
/**
* 所属公司
*/
private Integer companyId;
/** /**
* 所属省份(id) * 所属省份(id)
*/ */
......
package com.xxfc.platform.vehicle.pojo.dto;
import com.github.wxiaoqi.security.common.vo.PageParam;
import lombok.Data;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/23 16:27
*/
@Data
public class BranchCompanyApplyFindDTO extends PageParam {
private Integer status;
private Integer type;
private Long startTime;
private Long endTime;
}
package com.xxfc.platform.vehicle.pojo.dto;
import com.github.wxiaoqi.security.common.vo.PageParam;
import lombok.Data;
import java.util.List;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/23 16:27
*/
@Data
public class CompanyInfoFindDTO extends PageParam {
private String name;
private List<Long> ids;
}
...@@ -7,4 +7,16 @@ import lombok.Data; ...@@ -7,4 +7,16 @@ import lombok.Data;
public class VehicleCommonPriceDto extends PageParam { public class VehicleCommonPriceDto extends PageParam {
private Integer companyId; private Integer companyId;
private Integer modelId; private Integer modelId;
private Integer code;
private String numberPlate;
/**
* 所属门店(id)
*/
private Integer subordinateBranch;
/**
* 停靠门店
*/
private Integer parkBranchCompanyId;
} }
...@@ -16,4 +16,8 @@ public class VehicleCommonPriceVo extends VehicleCommonPriceInfo { ...@@ -16,4 +16,8 @@ public class VehicleCommonPriceVo extends VehicleCommonPriceInfo {
private Integer mileage = 0; private Integer mileage = 0;
//车辆状况 //车辆状况
private Integer vehicleStatus; private Integer vehicleStatus;
private String modelName;
private Integer vehicleBodyStatus;
} }
package com.xxfc.platform.vehicle.pojo.vo;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class VehicleHolidayPriceInfoVo {
private Integer festivalId;
private String festivalDay;
private String startTime;
private String endTime;
private BigDecimal rentPrice;
private Integer rentFreeDay;
private String vehicleId;
private Integer allModelUse;
private Integer allVehicleUse;
}
package com.xxfc.platform.vehicle.pojo.vo;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.pojo.dto.VehicleModelCalendarPriceDTO;
import lombok.Data;
import java.util.List;
@Data
public class VehicleVO extends Vehicle {
private List<VehicleModelCalendarPriceDTO> priceDTOS;
}
\ No newline at end of file
package com.xxfc.platform.vehicle.biz;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.entity.*;
import com.xxfc.platform.vehicle.mapper.BranchCompanyApplyMapper;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyApplyFindDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
@Service
@Slf4j
public class BranchCompanyApplyBiz extends BaseBiz<BranchCompanyApplyMapper, BranchCompanyApply>{
public ObjectRestResponse addOrUpd(BranchCompanyApply branchCompanyApply){
Long id = branchCompanyApply.getId() == null ? 0L :branchCompanyApply.getId();
if (id > 0L){
updateSelectiveById(branchCompanyApply);
}else {
insertSelective(branchCompanyApply);
}
return ObjectRestResponse.succ();
}
public List<BranchCompanyApply> getList(BranchCompanyApplyFindDTO applyFindDTO){
Example example=new Example(BranchCompanyApply.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("isDel",0);
if (applyFindDTO.getStatus() != null ){
criteria.andEqualTo("status",applyFindDTO.getStatus());
}
if (applyFindDTO.getType() != null ){
criteria.andEqualTo("type",applyFindDTO.getType());
}
if (applyFindDTO.getStartTime() != null && applyFindDTO.getStartTime() > 0 ){
criteria.andGreaterThanOrEqualTo("crtTime",applyFindDTO.getStartTime());
}
if (applyFindDTO.getEndTime() != null && applyFindDTO.getEndTime() > 0 ){
criteria.andLessThanOrEqualTo("crtTime",applyFindDTO.getEndTime());
}
example.setOrderByClause("crt_time desc ");
return selectByExample(example);
}
public ObjectRestResponse selectList(BranchCompanyApplyFindDTO applyFindDTO){
PageHelper.startPage(applyFindDTO.getPage(), applyFindDTO.getLimit());
PageInfo<BranchCompanyApply> pageInfo = new PageInfo<>(getList(applyFindDTO));
return ObjectRestResponse.succ(PageDataVO.pageInfo(pageInfo));
}
}
...@@ -24,6 +24,7 @@ import com.xxfc.platform.vehicle.mapper.BranchCompanyMapper; ...@@ -24,6 +24,7 @@ import com.xxfc.platform.vehicle.mapper.BranchCompanyMapper;
import com.xxfc.platform.vehicle.pojo.BranchCompanyVo; import com.xxfc.platform.vehicle.pojo.BranchCompanyVo;
import com.xxfc.platform.vehicle.pojo.CompanyDetail; import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO; import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyListDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyListDTO;
...@@ -53,8 +54,7 @@ import java.util.concurrent.TimeUnit; ...@@ -53,8 +54,7 @@ import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_FALSE; import static com.github.wxiaoqi.security.auth.common.constatns.CommonConstants.DATA_ALL_FALSE;
import static com.xxfc.platform.vehicle.constant.DbColumnConstant.COMPANY_ZONE_ID; import static com.xxfc.platform.vehicle.constant.DbColumnConstant.*;
import static com.xxfc.platform.vehicle.constant.DbColumnConstant.ID;
import static com.xxfc.platform.vehicle.constant.RedisKey.BRANCH_COMPANY_CACHE_DATAZONE; import static com.xxfc.platform.vehicle.constant.RedisKey.BRANCH_COMPANY_CACHE_DATAZONE;
@Service @Service
...@@ -207,6 +207,9 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany ...@@ -207,6 +207,9 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany
if (StringUtils.isNotBlank(userDTO.getDataCompany())) { if (StringUtils.isNotBlank(userDTO.getDataCompany())) {
criteria.andIn(ID, userDTO.dataCompany2List()); criteria.andIn(ID, userDTO.dataCompany2List());
} }
if (StringUtils.isNotBlank(userDTO.getDataCorporation())) {
criteria.andIn(COMPANY_COMPANY_ID, userDTO.dataCorporation2List());
}
} }
example.setOrderByClause("`id` desc"); example.setOrderByClause("`id` desc");
PageHelper.startPage(page, limit); PageHelper.startPage(page, limit);
...@@ -214,13 +217,18 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany ...@@ -214,13 +217,18 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany
return PageDataVO.pageInfo(branchCompanyPageInfo); return PageDataVO.pageInfo(branchCompanyPageInfo);
} }
public PageDataVO<BranchCompany> search(CompanySearchDTO vo) { public PageDataVO<CompanySearchVO> search(CompanySearchDTO vo) {
PageHelper.startPage(vo.getPage(), vo.getLimit()); PageHelper.startPage(vo.getPage(), vo.getLimit());
PageInfo<BranchCompany> branchCompanyPageInfo = new PageInfo<>(mapper.search(vo.getLon(), vo.getLat(), vo.getAddrCity(), vo.getState(), vo.getIsShow(), vo.getIsDel())); PageInfo<CompanySearchVO> branchCompanyPageInfo = new PageInfo<>(getList(vo));
return PageDataVO.pageInfo(branchCompanyPageInfo); return PageDataVO.pageInfo(branchCompanyPageInfo);
} }
public List<CompanySearchVO> getList(CompanySearchDTO vo){
return mapper.search(vo);
}
@Cache(key = RedisKey.BRANCH_COMPANY_CACHE_ALL) @Cache(key = RedisKey.BRANCH_COMPANY_CACHE_ALL)
public List<BranchCompany> getAll() { public List<BranchCompany> getAll() {
Example example = new Example(BranchCompany.class); Example example = new Example(BranchCompany.class);
......
package com.xxfc.platform.vehicle.biz;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.entity.CompanyInfo;
import com.xxfc.platform.vehicle.mapper.CompanyInfoMapper;
import com.xxfc.platform.vehicle.pojo.dto.CompanyInfoFindDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
@Service
@Slf4j
public class CompanyInfoBiz extends BaseBiz<CompanyInfoMapper, CompanyInfo>{
public ObjectRestResponse addOrUpd(CompanyInfo companyInfo){
Long id = companyInfo.getId() == null ? 0L :companyInfo.getId();
if (id > 0L){
updateSelectiveById(companyInfo);
}else {
insertSelective(companyInfo);
}
return ObjectRestResponse.succ();
}
public List<CompanyInfo> getList(CompanyInfoFindDTO companyInfoFindDTO){
Example example=new Example(CompanyInfo.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("isDel",0);
if (StringUtils.isNotBlank(companyInfoFindDTO.getName()) ){
criteria.andLike("name","%" + companyInfoFindDTO.getName() + "%");
}
if (companyInfoFindDTO.getIds() != null && companyInfoFindDTO.getIds().size() > 0){
criteria.andIn("id",companyInfoFindDTO.getIds());
}
example.setOrderByClause("crt_time desc ");
return selectByExample(example);
}
public ObjectRestResponse selectList(CompanyInfoFindDTO companyInfoFindDTO){
PageHelper.startPage(companyInfoFindDTO.getPage(), companyInfoFindDTO.getLimit());
PageInfo<CompanyInfo> pageInfo = new PageInfo<>(getList(companyInfoFindDTO));
return ObjectRestResponse.succ(PageDataVO.pageInfo(pageInfo));
}
}
...@@ -3,6 +3,7 @@ package com.xxfc.platform.vehicle.biz; ...@@ -3,6 +3,7 @@ package com.xxfc.platform.vehicle.biz;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.bean.copier.CopyOptions;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
...@@ -17,6 +18,9 @@ import com.github.wxiaoqi.security.common.vo.PageDataVO; ...@@ -17,6 +18,9 @@ import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.google.common.base.Function; import com.google.common.base.Function;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.xxfc.platform.universal.constant.DictionaryKey;
import com.xxfc.platform.universal.entity.Dictionary;
import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.vehicle.common.CustomIllegalParamException; import com.xxfc.platform.vehicle.common.CustomIllegalParamException;
import com.xxfc.platform.vehicle.common.RestResponse; import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.constant.*; import com.xxfc.platform.vehicle.constant.*;
...@@ -93,7 +97,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -93,7 +97,8 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
@Autowired @Autowired
private VehicleJobHandler vehicleJobHandler; private VehicleJobHandler vehicleJobHandler;
@Autowired
private ThirdFeign thirdFeign;
@Override @Override
public UserFeign getUserFeign() { public UserFeign getUserFeign() {
return userFeign; return userFeign;
...@@ -1393,20 +1398,18 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -1393,20 +1398,18 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
/** /**
* 获取所属公司所有车辆 * 获取所属公司所有车辆
* @param companyId * @param companyIds
* @return * @return
*/ */
public List<Vehicle> getAllVehicleByCompanyId(Integer companyId, Integer modelId) { public List<Vehicle> getAllVehicleByCompanyId(List<Integer> companyIds, Integer modelId) {
Example example = new Example(Vehicle.class); Map<String, Object> param = new HashMap<>();
Example.Criteria criteria = example.createCriteria(); if (companyIds != null) {
if (companyId != null) { param.put("companyIds", companyIds);
criteria.andEqualTo("subordinateBranch", companyId);
} }
if (modelId != null) { if (modelId != null) {
criteria.andEqualTo("modelId", modelId); param.put("modelId", modelId);
} }
criteria.andEqualTo("isDel", 0); return mapper.getAllVehicleByParam(param);
return mapper.selectByExample(example);
} }
public ObjectRestResponse<PageDataVO<VehicleAndModelInfoVo>> getVehicle(VehiclePlanDto vehiclePlanDto) { public ObjectRestResponse<PageDataVO<VehicleAndModelInfoVo>> getVehicle(VehiclePlanDto vehiclePlanDto) {
...@@ -1545,4 +1548,18 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -1545,4 +1548,18 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
return mapper.getAllVehicleInfo(); return mapper.getAllVehicleInfo();
} }
/**
* 获取所有车辆生产商
* @return
*/
public ObjectRestResponse getAllManufacturer() {
Dictionary dictionary = thirdFeign.findDictionaryByTypeAndCode(DictionaryKey.VEHICLE, DictionaryKey.VEHICLE_MANUFACTURER);
if (dictionary != null && StringUtils.isNotBlank(dictionary.getDetail())) {
return ObjectRestResponse.succ(JSONArray.parseArray(dictionary.getDetail()));
} else {
return ObjectRestResponse.succ(new JSONArray());
}
}
} }
...@@ -41,6 +41,7 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap ...@@ -41,6 +41,7 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap
public UserFeign getUserFeign() { public UserFeign getUserFeign() {
return userFeign; return userFeign;
} }
public ObjectRestResponse<VehicleCommonPriceInfo> addOrUpdate(VehicleCommonPriceInfo vehicleCommonPriceInfo) { public ObjectRestResponse<VehicleCommonPriceInfo> addOrUpdate(VehicleCommonPriceInfo vehicleCommonPriceInfo) {
if (vehicleCommonPriceInfo == null) { if (vehicleCommonPriceInfo == null) {
return ObjectRestResponse.paramIsEmpty(); return ObjectRestResponse.paramIsEmpty();
...@@ -49,17 +50,19 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap ...@@ -49,17 +50,19 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap
if (vehicle == null) { if (vehicle == null) {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE, "车辆不存在!"); return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE, "车辆不存在!");
} }
setPowerData(vehicleCommonPriceInfo);
vehicleCommonPriceInfo.setCompanyId(vehicle.getSubordinateBranch()); vehicleCommonPriceInfo.setCompanyId(vehicle.getSubordinateBranch());
List<Vehicle> vehicleList = null; List<Vehicle> vehicleList = null;
if (vehicleCommonPriceInfo.getAllVehicleUse() != null && vehicleCommonPriceInfo.getAllVehicleUse() == 1) {//所有车辆可用 if (vehicleCommonPriceInfo.getAllVehicleUse() != null && vehicleCommonPriceInfo.getAllVehicleUse() == 1) {//所有车辆可用
vehicleList = vehicleBiz.getAllVehicleByCompanyId(vehicle.getSubordinateBranch(), null); vehicleList = vehicleBiz.getAllVehicleByCompanyId(vehicleCommonPriceInfo.getDataCompanyIds(), null);
} }
if (vehicleCommonPriceInfo.getAllModelUse() != null && vehicleCommonPriceInfo.getAllModelUse() == 1) {//所有车型可用 if (vehicleCommonPriceInfo.getAllModelUse() != null && vehicleCommonPriceInfo.getAllModelUse() == 1) {//车型可用
vehicleList = vehicleBiz.getAllVehicleByCompanyId(vehicle.getSubordinateBranch(), null); vehicleList = vehicleBiz.getAllVehicleByCompanyId(vehicleCommonPriceInfo.getDataCompanyIds(), vehicle.getModelId());
} }
if (vehicleList == null || vehicleList.size() <= 0) { //单个车辆可用 if (vehicleList == null || vehicleList.size() <= 0) { //单个车辆可用
VehicleCommonPriceInfo oldValue = getByVehicleId(vehicleCommonPriceInfo.getVehicleId()); VehicleCommonPriceInfo oldValue = getByVehicleId(vehicleCommonPriceInfo.getVehicleId());
if (oldValue == null) { if (oldValue == null) {
vehicleCommonPriceInfo.setId(null);
insertSelectiveRe(vehicleCommonPriceInfo); insertSelectiveRe(vehicleCommonPriceInfo);
} else { } else {
BeanUtil.copyProperties(vehicleCommonPriceInfo, oldValue, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true)); BeanUtil.copyProperties(vehicleCommonPriceInfo, oldValue, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));
...@@ -67,16 +70,20 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap ...@@ -67,16 +70,20 @@ public class VehicleCommonPriceInfoBiz extends BaseBiz<VehicleCommonPriceInfoMap
} }
} else { } else {
vehicleList.parallelStream().forEach(vehicleInfo -> { vehicleList.parallelStream().forEach(vehicleInfo -> {
if (vehicleInfo != null) {
VehicleCommonPriceInfo oldValue = getByVehicleId(vehicleInfo.getId()); VehicleCommonPriceInfo oldValue = getByVehicleId(vehicleInfo.getId());
vehicleCommonPriceInfo.setVehicleId(vehicleInfo.getId()); vehicleCommonPriceInfo.setVehicleId(vehicleInfo.getId());
vehicleCommonPriceInfo.setCompanyId(vehicleInfo.getSubordinateBranch()); vehicleCommonPriceInfo.setCompanyId(vehicleInfo.getSubordinateBranch());
vehicleCommonPriceInfo.setModelId(vehicleInfo.getModelId()); vehicleCommonPriceInfo.setModelId(vehicleInfo.getModelId());
vehicleCommonPriceInfo.setId(null);
if (oldValue == null) { if (oldValue == null) {
insertSelectiveRe(vehicleCommonPriceInfo); insertSelectiveRe(vehicleCommonPriceInfo);
} else { } else {
BeanUtil.copyProperties(vehicleCommonPriceInfo, oldValue, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true)); BeanUtil.copyProperties(vehicleCommonPriceInfo, oldValue, CopyOptions.create().setIgnoreNullValue(true).setIgnoreError(true));
updateSelectiveByIdRe(oldValue); updateSelectiveByIdRe(oldValue);
} }
}
}); });
} }
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
......
...@@ -73,7 +73,9 @@ public class WebConfiguration implements WebMvcConfigurer { ...@@ -73,7 +73,9 @@ public class WebConfiguration implements WebMvcConfigurer {
"/vehicleInfo/**", "/vehicleInfo/**",
"/branchCompany/**", "/branchCompany/**",
"/vehicleModel/**", "/vehicleModel/**",
"/departure/**" "/departure/**",
"/company/**",
"/vehicleHolidayPriceInfo/**"
}; };
Collections.addAll(list, urls); Collections.addAll(list, urls);
return list; return list;
......
package com.xxfc.platform.vehicle.mapper;
import com.xxfc.platform.vehicle.entity.BranchCompanyApply;
import tk.mybatis.mapper.additional.idlist.SelectByIdListMapper;
import tk.mybatis.mapper.common.Mapper;
public interface BranchCompanyApplyMapper extends Mapper<BranchCompanyApply>, SelectByIdListMapper<BranchCompanyApply,Long> {
}
\ No newline at end of file
...@@ -2,6 +2,8 @@ package com.xxfc.platform.vehicle.mapper; ...@@ -2,6 +2,8 @@ package com.xxfc.platform.vehicle.mapper;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.xxfc.platform.vehicle.entity.BranchCompany; import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyListDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyListDTO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -13,7 +15,7 @@ import java.util.List; ...@@ -13,7 +15,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
public interface BranchCompanyMapper extends Mapper<BranchCompany>, SelectByIdListMapper<BranchCompany,Integer> { public interface BranchCompanyMapper extends Mapper<BranchCompany>, SelectByIdListMapper<BranchCompany,Integer> {
List<BranchCompany> search(@Param("lon") String lon, @Param("lat") String lat, @Param("addrCity") Integer addrCity, Integer state, Integer isShow, Integer isDel); List<CompanySearchVO> search(CompanySearchDTO companySearchDTO);
List<BranchCompany> selectByZoneId(Map<String, Object> param); List<BranchCompany> selectByZoneId(Map<String, Object> param);
List<Integer> findCompanyIdsByAreaId(@Param("areaId") Integer areaId); List<Integer> findCompanyIdsByAreaId(@Param("areaId") Integer areaId);
......
package com.xxfc.platform.vehicle.mapper;
import com.xxfc.platform.vehicle.entity.CompanyInfo;
import tk.mybatis.mapper.additional.idlist.SelectByIdListMapper;
import tk.mybatis.mapper.common.Mapper;
public interface CompanyInfoMapper extends Mapper<CompanyInfo>, SelectByIdListMapper<CompanyInfo,Long> {
}
\ No newline at end of file
package com.xxfc.platform.vehicle.mapper; package com.xxfc.platform.vehicle.mapper;
import com.xxfc.platform.vehicle.entity.VehicleHolidayPriceInfo; import com.xxfc.platform.vehicle.entity.VehicleHolidayPriceInfo;
import com.xxfc.platform.vehicle.pojo.vo.VehicleHolidayPriceInfoVo;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
import java.util.List;
/** /**
* 车辆节假日价格信息表 * 车辆节假日价格信息表
* *
...@@ -11,5 +14,7 @@ import tk.mybatis.mapper.common.Mapper; ...@@ -11,5 +14,7 @@ import tk.mybatis.mapper.common.Mapper;
* @date 2020-05-11 09:16:23 * @date 2020-05-11 09:16:23
*/ */
public interface VehicleHolidayPriceInfoMapper extends Mapper<VehicleHolidayPriceInfo> { public interface VehicleHolidayPriceInfoMapper extends Mapper<VehicleHolidayPriceInfo> {
List<VehicleHolidayPriceInfoVo> getAll(String vehicleId, Integer festivalId);
Integer selectMaxFestivalId();
} }
...@@ -55,4 +55,6 @@ public interface VehicleMapper extends Mapper<Vehicle> { ...@@ -55,4 +55,6 @@ public interface VehicleMapper extends Mapper<Vehicle> {
List<String> findExistVehicleIds(); List<String> findExistVehicleIds();
List<BranchCompanyVehicleCountVo> getAllVehicleInfo(); List<BranchCompanyVehicleCountVo> getAllVehicleInfo();
List<Vehicle> getAllVehicleByParam(Map<String, Object> param);
} }
\ No newline at end of file
...@@ -19,6 +19,7 @@ import com.xxfc.platform.vehicle.entity.BranchCompany; ...@@ -19,6 +19,7 @@ import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.pojo.BranchCompanyVo; import com.xxfc.platform.vehicle.pojo.BranchCompanyVo;
import com.xxfc.platform.vehicle.pojo.CompanyDetail; import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO; import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyAreaDTO;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO; import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyFindDTO;
import com.xxfc.platform.vehicle.pojo.vo.BranComanyLeaderVo; import com.xxfc.platform.vehicle.pojo.vo.BranComanyLeaderVo;
...@@ -74,12 +75,6 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> { ...@@ -74,12 +75,6 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
return RestResponse.data(baseBiz.getAll(page,limit,addrProvince, addrCity, addrTown, null,null)); return RestResponse.data(baseBiz.getAll(page,limit,addrProvince, addrCity, addrTown, null,null));
} }
@RequestMapping(value ="/search",method = RequestMethod.GET)
@IgnoreUserToken
@IgnoreClientToken
public RestResponse<PageDataVO<BranchCompany>> search(@Validated CompanySearchDTO vo) {
return RestResponse.data(baseBiz.search(vo));
}
@RequestMapping(value ="",method = RequestMethod.GET) @RequestMapping(value ="",method = RequestMethod.GET)
public RestResponse<List<BranchCompany>> getAll() { public RestResponse<List<BranchCompany>> getAll() {
...@@ -234,4 +229,17 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> { ...@@ -234,4 +229,17 @@ public class BranchCompanyController extends BaseController<BranchCompanyBiz> {
return baseBiz.findBranchCompanyAreaByIds(compnayIds); return baseBiz.findBranchCompanyAreaByIds(compnayIds);
} }
@GetMapping("/alls")
public ObjectRestResponse alls(CompanySearchDTO vo){
return ObjectRestResponse.succ(baseBiz.getList(vo));
}
@PostMapping("app/unauth/listByIds")
@IgnoreUserToken
public ObjectRestResponse<List<CompanySearchVO>> listByIds(@RequestBody CompanySearchDTO vo){
return ObjectRestResponse.succ(baseBiz.getList(vo));
}
} }
package com.xxfc.platform.vehicle.rest; package com.xxfc.platform.vehicle.rest;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
...@@ -21,8 +22,10 @@ import com.xxfc.platform.vehicle.constant.VehicleMemberType; ...@@ -21,8 +22,10 @@ import com.xxfc.platform.vehicle.constant.VehicleMemberType;
import com.xxfc.platform.vehicle.entity.Vehicle; import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleBookRecord; import com.xxfc.platform.vehicle.entity.VehicleBookRecord;
import com.xxfc.platform.vehicle.pojo.*; import com.xxfc.platform.vehicle.pojo.*;
import com.xxfc.platform.vehicle.pojo.dto.VehicleModelCalendarPriceDTO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -33,6 +36,7 @@ import java.time.LocalDateTime; ...@@ -33,6 +36,7 @@ import java.time.LocalDateTime;
import java.time.ZoneOffset; import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.HashSet; import java.util.HashSet;
import java.util.List;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.*; import static com.github.wxiaoqi.security.common.constant.CommonConstants.*;
import static com.xxfc.platform.vehicle.constant.VehicleConstant.USER_APP; import static com.xxfc.platform.vehicle.constant.VehicleConstant.USER_APP;
...@@ -123,7 +127,22 @@ public class RentVehicleController extends BaseController<VehicleBiz> implements ...@@ -123,7 +127,22 @@ public class RentVehicleController extends BaseController<VehicleBiz> implements
} }
//设置显示是否有车 //设置显示是否有车
dto.setYearNo4Where(Boolean.TRUE); dto.setYearNo4Where(Boolean.TRUE);
return ObjectRestResponse.succ(vehicleBiz.searchUsableModel(dto)); PageDataVO<UsableVehicleModelVO> uvmvpdvs = vehicleBiz.searchUsableModel(dto);
// if(CollUtil.isNotEmpty(uvmvpdvs.getData())){
// uvmvpdvs.getData().forEach(data -> {
// if(StrUtil.isNotBlank(data.getVehicleIds())) {
// String[] strs = StrUtil.split(data.getVehicleIds(), ",");
// List<Vehicle> vehicleList = vehicleBiz.selectByWeekend(w -> {
// w.andIn(Vehicle::getId, CollUtil.toList(strs));
// return w;
// });
// vehicleList.forEach(vehicle -> {
// baseBiz
// });
// }
// });
// }
return ObjectRestResponse.succ(uvmvpdvs);
} }
/** /**
...@@ -181,6 +200,8 @@ public class RentVehicleController extends BaseController<VehicleBiz> implements ...@@ -181,6 +200,8 @@ public class RentVehicleController extends BaseController<VehicleBiz> implements
setIsDel(SYS_FALSE); setIsDel(SYS_FALSE);
}}); }});
bookVehicleId = vehicle.getId(); bookVehicleId = vehicle.getId();
}else if(null != dto.getVehicleId()){
bookVehicleId = dto.getVehicleId();
}else { }else {
dto.setLimit(1); dto.setLimit(1);
dto.setPage(1); dto.setPage(1);
......
...@@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.*;
@RestController @RestController
@RequestMapping("vehicleCommonPriceInfo") @RequestMapping("vehicleCommonPriceInfo")
public class VehicleCommonPriceInfoController extends BaseController<VehicleCommonPriceInfoBiz,VehicleCommonPriceInfo> { public class VehicleCommonPriceInfoController extends BaseController<VehicleCommonPriceInfoBiz,VehicleCommonPriceInfo>{
@PostMapping(value = "/admin/addOrUpdate") @PostMapping(value = "/admin/addOrUpdate")
public ObjectRestResponse saveOrUpdate(@RequestBody VehicleCommonPriceInfo vehicleCommonPriceInfo) { public ObjectRestResponse saveOrUpdate(@RequestBody VehicleCommonPriceInfo vehicleCommonPriceInfo) {
......
...@@ -129,6 +129,11 @@ public class VehicleController extends BaseController<VehicleBiz> implements Use ...@@ -129,6 +129,11 @@ public class VehicleController extends BaseController<VehicleBiz> implements Use
return RestResponse.suc(vehicles); return RestResponse.suc(vehicles);
} }
@GetMapping(value = "getAllManufacturer")
public ObjectRestResponse getAllManufacturer() {
return baseBiz.getAllManufacturer();
}
@PostMapping(value = "/test") @PostMapping(value = "/test")
public ObjectRestResponse test(@RequestBody VehicleBookRecord vehicleBookRecord) { public ObjectRestResponse test(@RequestBody VehicleBookRecord vehicleBookRecord) {
return vehicleBiz.addVehicleBookRecord(vehicleBookRecord); return vehicleBiz.addVehicleBookRecord(vehicleBookRecord);
......
package com.xxfc.platform.vehicle.rest; package com.xxfc.platform.vehicle.rest;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.vehicle.biz.VehicleBiz;
import com.xxfc.platform.vehicle.biz.VehicleHolidayPriceInfoBiz; import com.xxfc.platform.vehicle.biz.VehicleHolidayPriceInfoBiz;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.entity.VehicleHolidayPriceInfo; import com.xxfc.platform.vehicle.entity.VehicleHolidayPriceInfo;
import com.xxfc.platform.vehicle.pojo.dto.VehicleModelCalendarPriceDTO;
import com.xxfc.platform.vehicle.pojo.vo.VehicleVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController @RestController
@RequestMapping("vehicleHolidayPriceInfo") @RequestMapping("vehicleHolidayPriceInfo")
public class VehicleHolidayPriceInfoController extends BaseController<VehicleHolidayPriceInfoBiz, VehicleHolidayPriceInfo> { public class VehicleHolidayPriceInfoController extends BaseController<VehicleHolidayPriceInfoBiz, VehicleHolidayPriceInfo> {
@Autowired
VehicleBiz vehicleBiz;
@PostMapping(value = "/saveOrUpdate") @PostMapping(value = "/saveOrUpdate")
public ObjectRestResponse saveOrUpdate(@RequestBody VehicleHolidayPriceInfo vehicleHolidayPriceInfo) { public ObjectRestResponse saveOrUpdate(@RequestBody VehicleHolidayPriceInfo vehicleHolidayPriceInfo) {
return baseBiz.addOrUpdate(vehicleHolidayPriceInfo); return baseBiz.addOrUpdate(vehicleHolidayPriceInfo);
} }
@GetMapping(value = "getByVehicleId") @GetMapping(value = "getByVehicleId")
public ObjectRestResponse getByVehicleId(String vehicleId, String startDate, String endDate) { public ObjectRestResponse getByVehicleId(String vehicleId, String startTime, String endTime) {
return ObjectRestResponse.succ(baseBiz.getByVehicleIdAndDate(vehicleId, startDate, endDate)); return ObjectRestResponse.succ(baseBiz.getByVehicleIdAndDate(vehicleId, startTime, endTime));
}
@GetMapping(value = "getByVehicleIdFeign")
@IgnoreUserToken
public ObjectRestResponse<List<VehicleModelCalendarPriceDTO>> getByVehicleIdFeign(String vehicleId, String startDate, String endDate, Integer userId, Integer companyId) {
return ObjectRestResponse.succ(baseBiz.getSynthesizePrice(vehicleId, startDate, endDate, userId, companyId));
}
@GetMapping(value = "calendarPrice")
@IgnoreUserToken
public ObjectRestResponse<List<VehicleModelCalendarPriceDTO>> calendarPrice(String vehicleId, String startDate, String endDate, Integer companyId) {
Integer userId = Integer.valueOf(getCurrentUserId());
return ObjectRestResponse.succ(baseBiz.getSynthesizePrice(vehicleId, startDate, endDate, userId, companyId));
}
@DeleteMapping(value = "deleteByVehicleId")
public ObjectRestResponse deleteByVehicleId(String vehicleId, Integer festivalId) {
return baseBiz.deleteByVehicleId(vehicleId, festivalId);
}
@GetMapping(value = "multiCalendarPrice")
@IgnoreUserToken
public ObjectRestResponse<List<VehicleVO>> multiCalendarPrice(String vehicleIds, String startDate, String endDate, Integer companyId) {
Integer userId = Integer.valueOf(getCurrentUserId());
List<VehicleVO> vehicleVOS = CollUtil.newArrayList();
if(StrUtil.isNotBlank(vehicleIds)) {
String[] strs = StrUtil.split(vehicleIds, ",");
List<Vehicle> vehicleList = vehicleBiz.selectByWeekend(w -> {
w.andIn(Vehicle::getId, CollUtil.toList(strs));
return w;
});
for (Vehicle vehicle : vehicleList) {
VehicleVO vehicleVO = BeanUtil.toBean(vehicle, VehicleVO.class);
vehicleVO.setPriceDTOS(baseBiz.getSynthesizePrice(vehicle.getId(), startDate, endDate, userId, companyId));
vehicleVOS.add(vehicleVO);
}
}
return ObjectRestResponse.succ(vehicleVOS);
} }
@GetMapping(value = "getAllByVehicleId") @GetMapping(value = "getAllByVehicleId")
public ObjectRestResponse getAllByVehicleId(String vehicleId) { public ObjectRestResponse getAllByVehicleId(String vehicleId) {
return baseBiz.getByVehicleId(vehicleId); return baseBiz.getByVehicleId(vehicleId);
} }
@GetMapping(value = "getOne") @GetMapping(value = "getOne")
public ObjectRestResponse getOne(Integer id) { public ObjectRestResponse getOne(Integer id) {
return ObjectRestResponse.succ(baseBiz.selectById(id)); return ObjectRestResponse.succ(baseBiz.selectById(id));
} }
@GetMapping(value = "getAll")
public ObjectRestResponse getAll(String vehicleId, Integer festivalId) {
return baseBiz.getAll(vehicleId, festivalId);
}
} }
\ No newline at end of file
package com.xxfc.platform.vehicle.rest.admin;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.vehicle.biz.BranchCompanyBiz;
import com.xxfc.platform.vehicle.common.RestResponse;
import com.xxfc.platform.vehicle.entity.BranchCompany;
import com.xxfc.platform.vehicle.pojo.CompanySearchDTO;
import com.xxfc.platform.vehicle.pojo.CompanySearchVO;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("admin/branchCompany")
@Slf4j
@IgnoreClientToken
@IgnoreUserToken
@Api(value="公司controller",tags={"公司操作接口"})
public class AdminBranchCompanyController extends BaseController<BranchCompanyBiz,BranchCompany> implements UserRestInterface {
@Autowired
UserFeign userFeign;
@Override
public UserFeign getUserFeign() {
return userFeign;
}
@RequestMapping(value ="/search",method = RequestMethod.GET)
public RestResponse<PageDataVO<CompanySearchVO>> search(@Validated CompanySearchDTO vo) {
setPowerData(vo);
return RestResponse.data(baseBiz.search(vo));
}
@RequestMapping(value ="/details",method = RequestMethod.GET)
public RestResponse details(@Validated CompanySearchDTO vo) {
List<CompanySearchVO> list = baseBiz.getList(vo);
CompanySearchVO companySearchVO=new CompanySearchVO();
if (list.size() > 0){
companySearchVO=list.get(0);
}
return RestResponse.data(companySearchVO);
}
}
package com.xxfc.platform.vehicle.rest.admin;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.vehicle.biz.BranchCompanyApplyBiz;
import com.xxfc.platform.vehicle.common.BaseController;
import com.xxfc.platform.vehicle.entity.BranchCompanyApply;
import com.xxfc.platform.vehicle.pojo.dto.BranchCompanyApplyFindDTO;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("company/apply")
public class CompanyApplyController extends BaseController<BranchCompanyApplyBiz> {
@ApiOperation("查询入驻公司列表")
@RequestMapping(value = "/selectList", method = RequestMethod.GET)
public ObjectRestResponse getList(BranchCompanyApplyFindDTO applyFindDTO){
return baseBiz.selectList(applyFindDTO);
}
@ApiOperation("更新入驻公司")
@RequestMapping(value = "/upd", method = RequestMethod.POST)
public ObjectRestResponse updCompany(@RequestBody BranchCompanyApply branchCompanyApply){
return baseBiz.addOrUpd(branchCompanyApply);
}
@ApiOperation("新增入驻公司")
@RequestMapping(value = "app/unauth/add", method = RequestMethod.POST)
@IgnoreUserToken
public ObjectRestResponse addCompany(@RequestBody BranchCompanyApply branchCompanyApply){
return baseBiz.addOrUpd(branchCompanyApply);
}
}
package com.xxfc.platform.vehicle.rest.admin;
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.vehicle.biz.CompanyInfoBiz;
import com.xxfc.platform.vehicle.entity.CompanyInfo;
import com.xxfc.platform.vehicle.pojo.dto.CompanyInfoFindDTO;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping("company/info")
public class CompanyInfoController extends BaseController<CompanyInfoBiz,CompanyInfo> {
@ApiOperation("查询公司列表")
@RequestMapping(value = "/selectList", method = RequestMethod.GET)
public ObjectRestResponse getList(CompanyInfoFindDTO companyInfoFindDTO){
return baseBiz.selectList(companyInfoFindDTO);
}
@ApiOperation("新增公司")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public ObjectRestResponse saveCompany(@RequestBody CompanyInfo companyInfo){
return baseBiz.addOrUpd(companyInfo);
}
@ApiOperation("更新公司")
@RequestMapping(value = "/upd", method = RequestMethod.POST)
public ObjectRestResponse updCompany(@RequestBody CompanyInfo companyInfo){
return baseBiz.addOrUpd(companyInfo);
}
@ApiOperation("列表")
@RequestMapping(value = "app/unauth/listByIds", method = RequestMethod.POST)
@IgnoreUserToken
@IgnoreClientToken
public ObjectRestResponse<List<CompanyInfo>> listByIds(@RequestBody CompanyInfoFindDTO companyInfoFindDTO){
return ObjectRestResponse.succ(baseBiz.getList(companyInfoFindDTO));
}
@ApiOperation("删除")
@RequestMapping(value = "/del", method = RequestMethod.POST)
public ObjectRestResponse delCompany(@RequestBody CompanyInfo companyInfo){
companyInfo.setIsDel(1);
return baseBiz.addOrUpd(companyInfo);
}
}
...@@ -26,7 +26,7 @@ spring: ...@@ -26,7 +26,7 @@ spring:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
namespace: tiande_spcloud
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
--> -->
<id column="id" property="id" jdbcType="INTEGER"/> <id column="id" property="id" jdbcType="INTEGER"/>
<result column="name" property="name" jdbcType="VARCHAR"/> <result column="name" property="name" jdbcType="VARCHAR"/>
<result column="short_name" property="shortName" jdbcType="VARCHAR"/>
<result column="branch_type" property="branchType" jdbcType="INTEGER"/> <result column="branch_type" property="branchType" jdbcType="INTEGER"/>
<result column="subordinate_branch" property="subordinateBranch" jdbcType="INTEGER"/> <result column="subordinate_branch" property="subordinateBranch" jdbcType="INTEGER"/>
<result column="addr_province" property="addrProvince" jdbcType="INTEGER"/> <result column="addr_province" property="addrProvince" jdbcType="INTEGER"/>
...@@ -23,32 +24,66 @@ ...@@ -23,32 +24,66 @@
<result column="state" property="state"/> <result column="state" property="state"/>
</resultMap> </resultMap>
<select id="search" resultType="com.xxfc.platform.vehicle.pojo.CompanySearchVO"> <select id="search" parameterType="com.xxfc.platform.vehicle.pojo.CompanySearchDTO" resultType="com.xxfc.platform.vehicle.pojo.CompanySearchVO">
select * select c.*,i.name as companyName
<if test="lon != null and lat != null"> <if test="lon != null and lat != null">
, st_distance_sphere(point(#{lon}, #{lat}), point(longitude, latitude)) as distance , st_distance_sphere(point(#{lon}, #{lat}), point(c.longitude, c.latitude)) as distance
</if> </if>
from branch_company from branch_company c
LEFT JOIN company_info i on c.company_id=i.id
<where> <where>
c.is_del = 0
<if test="id != null">
and c.id = #{id}
</if>
<if test="addrCity != null"> <if test="addrCity != null">
and (addr_city = #{addrCity} or addr_province = #{addrCity} or addr_town = #{addrCity}) and (c.addr_city = #{addrCity} or c.addr_province = #{addrCity} or c.addr_town = #{addrCity})
</if>
<if test="addrProvince != null">
and c.addr_province = #{addrProvince}
</if> </if>
<if test="lon != null and lat != null"> <if test="lon != null and lat != null">
and longitude is not null and latitude is not null and c.longitude is not null and c.latitude is not null
</if> </if>
<if test="state != null"> <if test="state != null">
and state = #{state} and c.state = #{state}
</if>
<if test="companyId != null">
and c.company_id = #{companyId}
</if> </if>
<if test="isShow != null"> <if test="isShow != null">
and is_show = #{isShow} and c.is_show = #{isShow}
</if> </if>
<if test="isDel != null"> <if test="name != null and name != '' ">
and is_del = #{isDel} and ( c.name like concat('%',#{name},'%') or c.short_name like concat('%',#{name},'%') )
</if> </if>
</where> <if test="companyIds != null and companyIds.size > 0">
<if test="lon != null and lat != null"> and c.id in
order by distance asc <foreach collection="companyIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if> </if>
<if test="dataCompanyIds != null and dataCompanyIds.size > 0">
and c.id in
<foreach collection="dataCompanyIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="dataCorporationIds != null and dataCorporationIds.size > 0">
and c.company_id in
<foreach collection="dataCorporationIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
</where>
<choose>
<when test="lon != null and lat != null">
order by c.distance asc
</when>
<otherwise>
order by c.id desc
</otherwise>
</choose>
</select> </select>
<select id="selectByZoneId" parameterType="java.util.Map" <select id="selectByZoneId" parameterType="java.util.Map"
resultType="com.xxfc.platform.vehicle.entity.BranchCompany"> resultType="com.xxfc.platform.vehicle.entity.BranchCompany">
......
...@@ -11,18 +11,32 @@ ...@@ -11,18 +11,32 @@
YEAR (NOW()) - YEAR (v.vehicle_register_date) YEAR (NOW()) - YEAR (v.vehicle_register_date)
) as vehicleAge, ) as vehicleAge,
v.vehicle_status, v.vehicle_status,
v.vehicle_body_status,
vm.name as modelName,
v.mileage_last_update AS mileage v.mileage_last_update AS mileage
FROM FROM
vehicle_common_price_info vci vehicle v
LEFT JOIN vehicle v ON v.id = vci.vehicle_id LEFT JOIN vehicle_common_price_info vci ON v.id = vci.vehicle_id
LEFT JOIN branch_company bc2 ON v.subordinate_branch = bc2.id
LEFT JOIN company_info ci on ci.id = bc2.company_id
LEFT JOIN vehicle_model vm ON v.model_id = vm.id
<where> <where>
<if test="companyId != null and companyId > 0">
and vci.company_id = #{companyId}
</if>
<if test="modelId != null and modelId > 0"> <if test="modelId != null and modelId > 0">
and vci.model_id = #{modelId} and vci.model_id = #{modelId}
</if> </if>
and v.is_del = 0 and v.status &lt; 3 <if test="subordinateBranch !=null ">
and ( v.park_branch_company_id = #{subordinateBranch})
</if>
<if test="parkBranchCompanyId !=null ">
and ( bc.id = #{parkBranchCompanyId})
</if>
<if test="companyId !=null ">
and ( ci.id = #{companyId})
</if>
<if test="numberPlate !=null and numberPlate != ''">
and v.number_plate like concat('%',#{numberPlate},'%')
</if>
and v.is_del = 0
</where> </where>
order by vci.upd_time DESC order by vci.upd_time DESC
</select> </select>
......
...@@ -3,5 +3,17 @@ ...@@ -3,5 +3,17 @@
<mapper namespace="com.xxfc.platform.vehicle.mapper.VehicleHolidayPriceInfoMapper"> <mapper namespace="com.xxfc.platform.vehicle.mapper.VehicleHolidayPriceInfoMapper">
<select id="getAll" resultType="com.xxfc.platform.vehicle.pojo.vo.VehicleHolidayPriceInfoVo">
select festival_id, festival_day, MIN(festival_date) as startTime, MAX(festival_date) as endTime, rent_price, rent_free_day,vehicle_id from vehicle_holiday_price_info
where is_del = 0
GROUP BY festival_id,festival_day,rent_price, rent_free_day,vehicle_id
HAVING vehicle_id = #{vehicleId}
<if test="festivalId != null">
and festival_id = #{festivalId}
</if>
</select>
<select id="selectMaxFestivalId" resultType="java.lang.Integer">
select max(festival_id) from vehicle_holiday_price_info
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -3,15 +3,10 @@ ...@@ -3,15 +3,10 @@
<mapper namespace="com.xxfc.platform.vehicle.mapper.VehicleMapper"> <mapper namespace="com.xxfc.platform.vehicle.mapper.VehicleMapper">
<resultMap id="searchUsableModelMap" type="com.xxfc.platform.vehicle.pojo.UsableVehicleModelVO"> <resultMap id="searchUsableModelMap" type="com.xxfc.platform.vehicle.pojo.UsableVehicleModelVO">
<!-- <collection column="company_id" property="id" ofType="com.xxfc.platform.vehicle.entity.BranchCompany" select="com.xxfc.platform.vehicle.mapper.BranchCompanyMapper.selectByPrimaryKey" />-->
<!-- <result column="company_id" property="companyId" jdbcType="VARCHAR" javaType="java.lang.Integer"/>-->
<!-- <result column="model_id" property="modelId" jdbcType="INTEGER" javaType="java.lang.Integer"/>-->
<!-- <result column="vehicle_id" property="modelId" jdbcType="INTEGER" javaType="java.lang.Integer"/>-->
<association property="company" column="company_id" <association property="company" column="company_id"
select="com.xxfc.platform.vehicle.mapper.BranchCompanyMapper.selectByPrimaryKey"/> select="com.xxfc.platform.vehicle.mapper.BranchCompanyMapper.selectByPrimaryKey"/>
<association property="vehicleModel" column="model_id" <association property="vehicleModel" column="model_id"
select="com.xxfc.platform.vehicle.mapper.VehicleModelMapper.selectByPrimaryKey"/> select="com.xxfc.platform.vehicle.mapper.VehicleModelMapper.selectByPrimaryKey"/>
<!-- <association property="vehicle" column="vehicle_id" select="com.xxfc.platform.vehicle.mapper.VehicleMapper.selectByPrimaryKey" />-->
</resultMap> </resultMap>
<resultMap id="searchModel" type="com.xxfc.platform.vehicle.pojo.VehicleAndModelInfoVo"> <resultMap id="searchModel" type="com.xxfc.platform.vehicle.pojo.VehicleAndModelInfoVo">
...@@ -74,8 +69,10 @@ ...@@ -74,8 +69,10 @@
v.vehicle_status, v.vehicle_status,
v.vehicle_body_status, v.vehicle_body_status,
v.vehicle_inner_status, v.vehicle_inner_status,
v.vehicle_register_date,
v.mileage_last_update as mileage, v.mileage_last_update as mileage,
c.val as useTypeName, c.val as useTypeName,
ci.name as companyName,
vm.name as vehicleType vm.name as vehicleType
<if test=" yearMonthAndParam != null "> <if test=" yearMonthAndParam != null ">
,vbi.booked_date ,vbi.booked_date
...@@ -96,6 +93,7 @@ ...@@ -96,6 +93,7 @@
LEFT JOIN vehicle_book_record v2 on v2.id = (select id from vehicle_book_record where vehicle_id = v.id order by update_time DESC LIMIT 1) LEFT JOIN vehicle_book_record v2 on v2.id = (select id from vehicle_book_record where vehicle_id = v.id order by update_time DESC LIMIT 1)
LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id
LEFT JOIN vehicle_model vm ON v.model_id = vm.id LEFT JOIN vehicle_model vm ON v.model_id = vm.id
LEFT JOIN company_info ci on ci.id = bc2.company_id
LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code
where where
v.is_del=0 v.is_del=0
...@@ -170,6 +168,12 @@ ...@@ -170,6 +168,12 @@
<if test="subordinateBranch !=null "> <if test="subordinateBranch !=null ">
and ( v.park_branch_company_id = #{subordinateBranch}) and ( v.park_branch_company_id = #{subordinateBranch})
</if> </if>
<if test="parkBranchCompanyId !=null ">
and ( bc.id = #{parkBranchCompanyId})
</if>
<if test="companyId !=null ">
and ( ci.id = #{companyId})
</if>
<if test=" addrProvince !=null or addrCity !=null or zoneId !=null "> <if test=" addrProvince !=null or addrCity !=null or zoneId !=null ">
<if test="addrProvince !=null"> <if test="addrProvince !=null">
and bc.addr_province=#{addrProvince} and bc.addr_province=#{addrProvince}
...@@ -227,8 +231,10 @@ ...@@ -227,8 +231,10 @@
v.vehicle_status, v.vehicle_status,
v.vehicle_body_status, v.vehicle_body_status,
v.vehicle_inner_status, v.vehicle_inner_status,
v.vehicle_register_date,
v.mileage_last_update as mileage, v.mileage_last_update as mileage,
c.val as useTypeName, c.val as useTypeName,
ci.name as companyName,
vm.name as vehicleType vm.name as vehicleType
<if test=" yearMonthAndParam !=null "> <if test=" yearMonthAndParam !=null ">
,vbi.booked_date ,vbi.booked_date
...@@ -247,6 +253,7 @@ ...@@ -247,6 +253,7 @@
LEFT JOIN vehicle_book_record v2 on v2.id = (select id from vehicle_book_record where vehicle_id = v.id order by update_time DESC LIMIT 1) LEFT JOIN vehicle_book_record v2 on v2.id = (select id from vehicle_book_record where vehicle_id = v.id order by update_time DESC LIMIT 1)
LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id
LEFT JOIN vehicle_model vm ON v.model_id = vm.id LEFT JOIN vehicle_model vm ON v.model_id = vm.id
LEFT JOIN company_info ci on ci.id = bc2.company_id
LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code
where where
v.is_del=0 v.is_del=0
...@@ -335,8 +342,13 @@ ...@@ -335,8 +342,13 @@
</foreach> </foreach>
</if> </if>
<if test="subordinateBranch !=null "> <if test="subordinateBranch !=null ">
and ( v.park_branch_company_id = #{subordinateBranch} or and ( v.park_branch_company_id = #{subordinateBranch})
v.expect_destination_branch_company_id=#{subordinateBranch} ) </if>
<if test="parkBranchCompanyId !=null ">
and ( bc.id = #{parkBranchCompanyId})
</if>
<if test="companyId !=null ">
and ( ci.id = #{companyId})
</if> </if>
<if test=" addrProvince !=null or addrCity !=null or zoneId !=null "> <if test=" addrProvince !=null or addrCity !=null or zoneId !=null ">
<if test="addrProvince !=null"> <if test="addrProvince !=null">
...@@ -359,8 +371,10 @@ ...@@ -359,8 +371,10 @@
select select
v.`code`, v.`code`,
v.number_plate, v.number_plate,
v.vehicle_register_date,
bc.name as parkBranchCompanyName, bc.name as parkBranchCompanyName,
c.val as useType, c.val as useType,
ci.name as companyName,
vm.name as vehicleType vm.name as vehicleType
from vehicle v from vehicle v
<if test=" yearMonthAndParam != null "> <if test=" yearMonthAndParam != null ">
...@@ -378,6 +392,7 @@ ...@@ -378,6 +392,7 @@
LEFT JOIN vehicle_book_record v2 on v2.vehicle_id = v.id LEFT JOIN vehicle_book_record v2 on v2.vehicle_id = v.id
LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id LEFT JOIN vehicle_departure_log v3 on v2.id = v3.book_record_id
LEFT JOIN vehicle_model vm ON v.model_id = vm.id LEFT JOIN vehicle_model vm ON v.model_id = vm.id
LEFT JOIN company_info ci on ci.id = bc2.company_id
LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code LEFT JOIN (select * from constant where type = 2) c ON v.use_type = c.code
where where
v.is_del=0 v.is_del=0
...@@ -452,6 +467,12 @@ ...@@ -452,6 +467,12 @@
<if test="subordinateBranch !=null "> <if test="subordinateBranch !=null ">
and ( v.park_branch_company_id = #{subordinateBranch}) and ( v.park_branch_company_id = #{subordinateBranch})
</if> </if>
<if test="parkBranchCompanyId !=null ">
and ( bc.id = #{parkBranchCompanyId})
</if>
<if test="companyId !=null ">
and ( ci.id = #{companyId})
</if>
<if test=" addrProvince !=null or addrCity !=null or zoneId !=null "> <if test=" addrProvince !=null or addrCity !=null or zoneId !=null ">
<if test="addrProvince !=null"> <if test="addrProvince !=null">
and bc.addr_province=#{addrProvince} and bc.addr_province=#{addrProvince}
...@@ -472,6 +493,7 @@ ...@@ -472,6 +493,7 @@
select select
v.`code`, v.`code`,
v.number_plate, v.number_plate,
v.vehicle_register_date,
bc.name as parkBranchCompanyName, bc.name as parkBranchCompanyName,
c.val as useType, c.val as useType,
vm.name as vehicleType vm.name as vehicleType
...@@ -740,6 +762,20 @@ ...@@ -740,6 +762,20 @@
ORDER BY parkCompanyName ORDER BY parkCompanyName
</select> </select>
<select id="getAllVehicleByParam" resultType="com.xxfc.platform.vehicle.entity.Vehicle">
select * from vehicle v
where v.is_del != 1
<if test="modelId != null and modelId != ''">
and v.model_id = #{modelId}
</if>
<if test="companyIds != null and companyIds.size > 0">
and v.subordinate_branch in
<foreach collection="companyIds" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
</select>
<select id="countVehicleByParam" parameterType="com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto" <select id="countVehicleByParam" parameterType="com.xxfc.platform.vehicle.pojo.dto.VehiclePlanDto"
resultType="com.xxfc.platform.vehicle.pojo.VehicleCountVo"> resultType="com.xxfc.platform.vehicle.pojo.VehicleCountVo">
SELECT count(*) total , SELECT count(*) total ,
...@@ -828,7 +864,7 @@ ...@@ -828,7 +864,7 @@
<select id="searchUsableModel" parameterType="java.util.Map" <select id="searchUsableModel" parameterType="java.util.Map"
resultMap="searchUsableModelMap"> resultMap="searchUsableModelMap">
(select distinct vm.id as model_id, bc.id as company_id (select distinct vm.id as model_id, bc.id as company_id, group_concat(v.id) as vehicle_ids
<if test=" catas != null "> <if test=" catas != null ">
,GROUP_CONCAT(vc.cata_id) as catas ,GROUP_CONCAT(vc.cata_id) as catas
</if> </if>
...@@ -875,31 +911,32 @@ ...@@ -875,31 +911,32 @@
</if> </if>
) )
<!-- union 所有下架车型 --> <!-- union 所有下架车型 -->
<if test="startCompanyId != null or parkBranchCompanyId != null "> <!-- -->
union <!-- <if test="startCompanyId != null or parkBranchCompanyId != null ">-->
(select vm.id as model_id, bc.id as company_id <!-- union-->
<if test=" catas != null "> <!-- (select vm.id as model_id, bc.id as company_id-->
,null as catas <!-- <if test=" catas != null ">-->
</if> <!-- ,null as catas-->
<if test=" yearMonthAndParam !=null and yearNo4Where != null and yearNo4Where == true"> <!-- </if>-->
,0 as hasVehicle <!-- <if test=" yearMonthAndParam !=null and yearNo4Where != null and yearNo4Where == true">-->
</if> <!-- ,0 as hasVehicle-->
<if test="lon != null and lat != null"> <!-- </if>-->
<!-- 处理距离 --> <!-- <if test="lon != null and lat != null">-->
,st_distance_sphere(point(#{lon}, #{lat}), point(bc.longitude, bc.latitude)) as distance <!-- &lt;!&ndash; 处理距离 &ndash;&gt;-->
</if> <!-- ,st_distance_sphere(point(#{lon}, #{lat}), point(bc.longitude, bc.latitude)) as distance-->
from vehicle_model vm <!-- </if>-->
left join branch_company bc on <!-- from vehicle_model vm-->
<choose> <!-- left join branch_company bc on-->
<when test="startCompanyId != null"> <!-- <choose>-->
bc.id = #{startCompanyId} <!-- <when test="startCompanyId != null">-->
</when> <!-- bc.id = #{startCompanyId}-->
<otherwise> <!-- </when>-->
bc.id = #{parkBranchCompanyId} <!-- <otherwise>-->
</otherwise> <!-- bc.id = #{parkBranchCompanyId}-->
</choose> <!-- </otherwise>-->
where vm.isdel = 0 and vm.status = 0 and vm.app_show = 1) <!-- </choose>-->
</if> <!-- where vm.isdel = 0 and vm.status = 0 and vm.app_show = 1)-->
<!-- </if>-->
<if test="lon != null and lat != null"> <if test="lon != null and lat != null">
order by order by
<if test=" yearMonthAndParam !=null and yearNo4Where != null and yearNo4Where == true"> <if test=" yearMonthAndParam !=null and yearNo4Where != null and yearNo4Where == true">
......
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