Commit 48e5e7a5 by guojuxing

自定义域字段-新增服务

parent 7750cd19
......@@ -45,4 +45,13 @@ public enum StoreFieldTypeEnum {
}
return null;
}
public static String getNameByCode(int code) {
for(StoreFieldTypeEnum transactType : values()){
if (transactType.getCode() == code) {
return transactType.getMessage();
}
}
return "未知";
}
}
......@@ -65,6 +65,15 @@ public class StoreFieldDTO implements Serializable {
*/
private String erpRelCode;
/**
* 排序字段
*/
private Double sort;
/**
* 排序值
*/
private Integer seq;
public Integer getStoreFieldId() {
return storeFieldId;
}
......@@ -152,4 +161,20 @@ public class StoreFieldDTO implements Serializable {
public void setErpRelCode(String erpRelCode) {
this.erpRelCode = erpRelCode;
}
public Double getSort() {
return sort;
}
public void setSort(Double sort) {
this.sort = sort;
}
public Integer getSeq() {
return seq;
}
public void setSeq(Integer seq) {
this.seq = seq;
}
}
......@@ -50,6 +50,11 @@ public class StoreFieldSelectDTO implements Serializable {
*/
private Integer storeFieldId;
/**
* 顺序
*/
private Integer seq;
public Integer getStoreFieldSelectId() {
return storeFieldSelectId;
}
......@@ -113,4 +118,12 @@ public class StoreFieldSelectDTO implements Serializable {
public void setStoreFieldId(Integer storeFieldId) {
this.storeFieldId = storeFieldId;
}
public Integer getSeq() {
return seq;
}
public void setSeq(Integer seq) {
this.seq = seq;
}
}
package com.gic.store.service;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.store.dto.StoreFieldDTO;
import java.util.List;
/**
* @author zhiwj
* @date 2019/6/24
......@@ -16,4 +19,47 @@ public interface StoreFieldApiService {
*/
ServiceResponse<Integer> save(StoreFieldDTO storeFieldDTO);
/**
* 上下移动
* @param storeFieldId
* @param isUp 向上
* @return
*/
ServiceResponse<Integer> upOrDown(int storeFieldId, boolean isUp);
/**
* 置顶、置底,自定义序号
* @param storeFieldId
* @param setValue
* @return
*/
ServiceResponse<Integer> setStoreFieldSort(int storeFieldId, int setValue);
ServiceResponse<Integer> delete(int storeFieldId);
ServiceResponse<Integer> deleteAll(int enterpriseId);
ServiceResponse<Integer> deleteBatch(List<Integer> storeFieldIds);
ServiceResponse<Integer> edit(StoreFieldDTO storeFieldDTO);
/**
* 分页查询列表数据
* @param enterpriseId
* @param search
* @param pageNum
* @param pageSize
* @return
*/
ServiceResponse<Page<StoreFieldDTO>> listStoreField(int enterpriseId, String search, Integer pageNum, Integer pageSize);
/**
* 主键查询记录
* @param storeFieldId
* @return
*/
ServiceResponse<StoreFieldDTO> getStoreField(int storeFieldId);
}
package com.gic.store.service;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.store.dto.StoreFieldSelectDTO;
......@@ -29,14 +30,31 @@ public interface StoreFieldSelectApiService {
/**
* 置顶、置底,自定义序号
* @param storeFieldSelectId
* @param storeFieldId
* @param setValue
* @return
*/
ServiceResponse<Integer> setStoreFieldSelectSort(int storeFieldSelectId, int storeFieldId, int setValue);
ServiceResponse<Integer> setStoreFieldSelectSort(int storeFieldSelectId, int setValue);
ServiceResponse<Integer> delete(int storeFieldSelectId);
ServiceResponse<Integer> edit(StoreFieldSelectDTO storeFieldSelectDTO);
/**
* 分页查询列表数据
* @param storeFieldId
* @param search
* @param pageNum
* @param pageSize
* @return
*/
ServiceResponse<Page<StoreFieldSelectDTO>> listStoreFieldSelect(int storeFieldId, String search, Integer pageNum, Integer pageSize);
/**
* 主键查询记录
* @param storeFieldSelectId
* @return
*/
ServiceResponse<StoreFieldSelectDTO> getStoreFieldSelect(int storeFieldSelectId);
}
package com.gic.store.dao.mapper;
import com.gic.store.entity.TabStoreField;
import com.gic.store.entity.TabStoreFieldSelect;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface TabStoreFieldMapper {
/**
......@@ -50,4 +54,57 @@ public interface TabStoreFieldMapper {
* @return 更新条目数
*/
int updateByPrimaryKey(TabStoreField record);
/**
* 获取下一个排序值
* @param enterpriseId
* @param sort
* @return
*/
TabStoreField selectNextByEnterpriseIdAndSort(@Param("enterpriseId") Integer enterpriseId, @Param("sort") Double sort);
/**
* 获取上一个排序值
* @param enterpriseId
* @param sort
* @return
*/
TabStoreField selectPrevByStoreFieldIdAndSort(@Param("enterpriseId") Integer enterpriseId, @Param("sort") Double sort);
/**
* 查询某字段最小排序值
* @param enterpriseId
* @return
*/
double getMinSort(@Param("enterpriseId") Integer enterpriseId);
/**
* 查询某字段最大排序值
* @param enterpriseId
* @return
*/
double getMaxSort(@Param("enterpriseId") Integer enterpriseId);
/**
* 查询几条连续的记录
* @param storeFieldId 要除外的id
* @param start 开始的位置
* @param size 查询几条条
* @param enterpriseId
* @return
*/
List<TabStoreField> listTwoElementExceptId(@Param("storeFieldId") Integer storeFieldId, @Param("start") int start,
@Param("size") int size, @Param("enterpriseId") Integer enterpriseId);
/**
* 分页查询
* @param enterpriseId
* @param search
* @return
*/
List<TabStoreField> listStoreField(@Param("enterpriseId") Integer enterpriseId, @Param("search") String search);
int deleteAll(@Param("enterpriseId") Integer enterpriseId);
int deleteBatch(@Param("storeFieldIds") List<Integer> storeFieldIds);
}
\ No newline at end of file
......@@ -95,4 +95,12 @@ public interface TabStoreFieldSelectMapper {
List<TabStoreFieldSelect> listTwoElementExceptId(@Param("storeFieldId") Integer storeFieldId, @Param("start") int start,
@Param("size") int size, @Param("storeFieldSelectId") Integer storeFieldSelectId);
/**
* 分页查询
* @param storeFieldId
* @param search
* @return
*/
List<TabStoreFieldSelect> listStoreFieldSelect(@Param("storeFieldId") Integer storeFieldId, @Param("search") String search);
}
\ No newline at end of file
......@@ -61,6 +61,11 @@ public class TabStoreField {
*/
private String erpRelCode;
/**
* 排序字段
*/
private Double sort;
public Integer getStoreFieldId() {
return storeFieldId;
}
......@@ -148,4 +153,12 @@ public class TabStoreField {
public void setErpRelCode(String erpRelCode) {
this.erpRelCode = erpRelCode;
}
public Double getSort() {
return sort;
}
public void setSort(Double sort) {
this.sort = sort;
}
}
\ No newline at end of file
......@@ -2,6 +2,7 @@ package com.gic.store.service;
import com.gic.store.dto.StoreFieldSelectDTO;
import com.gic.store.entity.TabStoreFieldSelect;
import com.github.pagehelper.Page;
/**
* @author guojx
......@@ -57,4 +58,14 @@ public interface StoreFieldSelectService {
int delete(int storeFieldSelectId);
int edit(int storeFieldSelectId, String storeFieldSelectName, String storeFieldSelectCode);
/**
* 分页查询列表数据
* @param storeFieldId
* @param search
* @param pageNum
* @param pageSize
* @return
*/
Page<TabStoreFieldSelect> listStoreFieldSelect(int storeFieldId, String search, Integer pageNum, Integer pageSize);
}
package com.gic.store.service;
import com.gic.store.dto.StoreFieldDTO;
import com.gic.store.entity.TabStoreField;
import com.github.pagehelper.Page;
import java.util.List;
/**
* @author guojx
......@@ -15,6 +19,8 @@ public interface StoreFieldService {
*/
int save(StoreFieldDTO storeFieldDTO);
int edit(StoreFieldDTO storeFieldDTO);
/**
*
* @param storeFieldCode
......@@ -22,4 +28,59 @@ public interface StoreFieldService {
* @return
*/
boolean isStoreFieldCodeRepeat(String storeFieldCode, int enterpriseId);
/**
* 查询下一个排序值的属性值
* @param enterpriseId
* @param sort
* @return
*/
TabStoreField getNextSort(int enterpriseId, double sort);
/**
* 查询上一个排序值的属性值
* @param enterpriseId
* @param sort
* @return
*/
TabStoreField getPrevSort(int enterpriseId, double sort);
/**
* 根据主键查询
* @param storeFieldId
* @return
*/
TabStoreField getStoreFieldById(int storeFieldId);
/**
* 更新序号
* @param storeFieldId
* @param sort
* @return
*/
int updateSortById(int storeFieldId, double sort);
int deleteAll(int enterpriseId);
int deleteBatch(List<Integer> storeFieldIds);
/**
* 置顶、置底,自定义序号
* @param storeFieldId
* @param enterpriseId
* @param setValue
*/
void setStoreFieldSort(int storeFieldId, int enterpriseId, int setValue);
int delete(int storeFieldId);
/**
* 分页查询列表数据
* @param enterpriseId
* @param search
* @param pageNum
* @param pageSize
* @return
*/
Page<TabStoreField> listStoreField(int enterpriseId, String search, Integer pageNum, Integer pageSize);
}
......@@ -5,6 +5,8 @@ import com.gic.store.dao.mapper.TabStoreFieldSelectMapper;
import com.gic.store.dto.StoreFieldSelectDTO;
import com.gic.store.entity.TabStoreFieldSelect;
import com.gic.store.service.StoreFieldSelectService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -92,6 +94,13 @@ public class StoreFieldSelectServiceImpl implements StoreFieldSelectService{
return tabStoreFieldSelectMapper.updateByPrimaryKeySelective(tabStoreFieldSelect);
}
@Override
public Page<TabStoreFieldSelect> listStoreFieldSelect(int storeFieldId, String search, Integer pageNum, Integer pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<TabStoreFieldSelect> list = tabStoreFieldSelectMapper.listStoreFieldSelect(storeFieldId, search);
return (Page<TabStoreFieldSelect>) list;
}
private void sortTopping(int storeFieldId, int storeFieldSelectId) {
Double sort = tabStoreFieldSelectMapper.getMinSort(storeFieldId);
......
......@@ -5,9 +5,14 @@ import com.gic.store.dao.mapper.TabStoreFieldMapper;
import com.gic.store.dto.StoreFieldDTO;
import com.gic.store.entity.TabStoreField;
import com.gic.store.service.StoreFieldService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author guojx
* @date 2019/7/1 9:13 AM
......@@ -22,7 +27,106 @@ public class StoreFieldServiceImpl implements StoreFieldService{
}
@Override
public int edit(StoreFieldDTO storeFieldDTO) {
return tabStoreFieldMapper.updateByPrimaryKeySelective(EntityUtil.changeEntityNew(TabStoreField.class, storeFieldDTO));
}
@Override
public boolean isStoreFieldCodeRepeat(String storeFieldCode, int enterpriseId) {
return false;
}
@Override
public TabStoreField getNextSort(int enterpriseId, double sort) {
return tabStoreFieldMapper.selectNextByEnterpriseIdAndSort(enterpriseId, sort);
}
@Override
public TabStoreField getPrevSort(int enterpriseId, double sort) {
return tabStoreFieldMapper.selectPrevByStoreFieldIdAndSort(enterpriseId, sort);
}
@Override
public TabStoreField getStoreFieldById(int storeFieldId) {
return tabStoreFieldMapper.selectByPrimaryKey(storeFieldId);
}
@Override
public int updateSortById(int storeFieldId, double sort) {
TabStoreField storeField = new TabStoreField();
storeField.setStoreFieldId(storeFieldId);
storeField.setSort(sort);
tabStoreFieldMapper.updateByPrimaryKeySelective(storeField);
return 1;
}
@Override
public int deleteAll(int enterpriseId) {
return tabStoreFieldMapper.deleteAll(enterpriseId);
}
@Override
public int deleteBatch(List<Integer> storeFieldIds) {
return tabStoreFieldMapper.deleteBatch(storeFieldIds);
}
@Override
public void setStoreFieldSort(int storeFieldId, int enterpriseId, int setValue) {
if (setValue <= 1) {
// 相当于置顶
sortTopping(enterpriseId, storeFieldId);
} else {
int start = setValue - 2;
int size = 2;
List<TabStoreField> list = tabStoreFieldMapper.listTwoElementExceptId(storeFieldId, start, size, enterpriseId);
if (CollectionUtils.isEmpty(list)) {
// 置底
sortBottom(enterpriseId, storeFieldId);
} else {
Double sort;
if (list.size() == 1) {
// 置底
sort = list.get(0).getSort() + 1d;
} else {
sort = (list.get(0).getSort() + list.get(1).getSort()) / 2d;
}
TabStoreField storeField = new TabStoreField();
storeField.setStoreFieldId(storeFieldId);
storeField.setSort(sort);
tabStoreFieldMapper.updateByPrimaryKeySelective(storeField);
}
}
}
@Override
public int delete(int storeFieldId) {
TabStoreField storeField = new TabStoreField();
storeField.setStoreFieldId(storeFieldId);
storeField.setStatus(0);
return tabStoreFieldMapper.updateByPrimaryKeySelective(storeField);
}
@Override
public Page<TabStoreField> listStoreField(int enterpriseId, String search, Integer pageNum, Integer pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<TabStoreField> list = tabStoreFieldMapper.listStoreField(enterpriseId, search);
return (Page<TabStoreField>) list;
}
private void sortTopping(int enterpriseId, int storeFieldId) {
Double sort = tabStoreFieldMapper.getMinSort(enterpriseId);
TabStoreField storeField = new TabStoreField();
storeField.setStoreFieldId(storeFieldId);
storeField.setSort(sort - 1d);
tabStoreFieldMapper.updateByPrimaryKeySelective(storeField);
}
private void sortBottom(int enterpriseId, int storeFieldId) {
Double sort = tabStoreFieldMapper.getMaxSort(enterpriseId);
TabStoreField storeField = new TabStoreField();
storeField.setStoreFieldId(storeFieldId);
storeField.setSort(sort + 1d);
tabStoreFieldMapper.updateByPrimaryKeySelective(storeField);
}
}
package com.gic.store.service.outer;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.PageHelperUtils;
import com.gic.store.dto.StoreFieldDTO;
import com.gic.store.entity.TabStoreField;
import com.gic.store.service.StoreFieldApiService;
import com.gic.store.service.StoreFieldService;
import com.gic.store.utils.ErrorCode;
......@@ -10,6 +14,9 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @author guojx
* @date 2019/6/28 1:40 PM
......@@ -21,10 +28,76 @@ public class StoreFieldApiServiceImpl implements StoreFieldApiService{
@Override
public ServiceResponse<Integer> save(StoreFieldDTO storeFieldDTO) {
if (StringUtils.isBlank(storeFieldDTO.getStoreFieldName())) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "属性名称参数值错误");
}
if (storeFieldDTO.getStoreFieldType() == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "字段类型参数值错误");
}
if (StringUtils.isBlank(storeFieldDTO.getStoreRegionId())) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "所属域参数值错误");
}
ServiceResponse validParamResult = StoreFieldValidParamUtil.validStoreFieldDetail(storeFieldDTO.getStoreFieldType(), storeFieldDTO.getStoreFieldDetail());
if (!validParamResult.isSuccess()) {
return validParamResult;
}
return ServiceResponse.success(storeFieldService.save(storeFieldDTO));
}
@Override
public ServiceResponse<Integer> upOrDown(int storeFieldId, boolean isUp) {
TabStoreField storeField = storeFieldService.getStoreFieldById(storeFieldId);
if (storeField == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "主键错误,查询不到数据");
}
TabStoreField needUpdateSort;
if (isUp) {
needUpdateSort = storeFieldService.getPrevSort(storeField.getEnterpriseId(), storeField.getSort());
if (needUpdateSort == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "已经是第一条,不能上移");
}
} else {
needUpdateSort = storeFieldService.getNextSort(storeField.getEnterpriseId(), storeField.getSort());
if (needUpdateSort == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "已经是最后一条,不能下移");
}
}
storeFieldService.updateSortById(needUpdateSort.getStoreFieldId(), storeField.getSort());
storeFieldService.updateSortById(storeField.getStoreFieldId(), needUpdateSort.getSort());
return ServiceResponse.success();
}
@Override
public ServiceResponse<Integer> setStoreFieldSort(int storeFieldId, int setValue) {
TabStoreField storeField = storeFieldService.getStoreFieldById(storeFieldId);
if (storeField == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "主键错误,查询不到数据");
}
storeFieldService.setStoreFieldSort(storeFieldId, storeField.getEnterpriseId(), setValue);
return ServiceResponse.success();
}
@Override
public ServiceResponse<Integer> delete(int storeFieldId) {
return ServiceResponse.success(storeFieldService.delete(storeFieldId));
}
@Override
public ServiceResponse<Integer> deleteAll(int enterpriseId) {
return ServiceResponse.success(storeFieldService.deleteAll(enterpriseId));
}
@Override
public ServiceResponse<Integer> deleteBatch(List<Integer> storeFieldIds) {
return ServiceResponse.success(storeFieldService.deleteBatch(storeFieldIds));
}
@Override
public ServiceResponse<Integer> edit(StoreFieldDTO storeFieldDTO) {
TabStoreField storeField = storeFieldService.getStoreFieldById(storeFieldDTO.getStoreFieldId());
if (storeField == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "主键错误,查询不到数据");
}
if (StringUtils.isBlank(storeFieldDTO.getStoreFieldName())) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "属性名称参数值错误");
}
......@@ -34,6 +107,30 @@ public class StoreFieldApiServiceImpl implements StoreFieldApiService{
if (StringUtils.isBlank(storeFieldDTO.getStoreRegionId())) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "所属域参数值错误");
}
return ServiceResponse.success(storeFieldService.save(storeFieldDTO));
ServiceResponse validParamResult = StoreFieldValidParamUtil.validStoreFieldDetail(storeFieldDTO.getStoreFieldType(), storeFieldDTO.getStoreFieldDetail());
if (!validParamResult.isSuccess()) {
return validParamResult;
}
storeFieldDTO.setCreateTime(storeField.getCreateTime());
storeFieldDTO.setUpdateTime(new Date());
storeFieldDTO.setErpRelCode(storeField.getErpRelCode());
return ServiceResponse.success(storeFieldService.edit(storeFieldDTO));
}
@Override
public ServiceResponse<Page<StoreFieldDTO>> listStoreField(int enterpriseId, String search, Integer pageNum, Integer pageSize) {
com.github.pagehelper.Page storeFieldList = storeFieldService.listStoreField(enterpriseId, search, pageNum, pageSize);
Page<StoreFieldDTO> page = PageHelperUtils.changePageHelperToCurrentPage(storeFieldList, StoreFieldDTO.class);
List<StoreFieldDTO> selectDTOList = page.getResult();
int index = (pageNum - 1) * pageSize + 1;
for (int i = 0, length = selectDTOList.size(); i < length; i++) {
selectDTOList.get(i).setSeq(index + i);
}
return ServiceResponse.success(page);
}
@Override
public ServiceResponse<StoreFieldDTO> getStoreField(int storeFieldId) {
return ServiceResponse.success(EntityUtil.changeEntityNew(StoreFieldDTO.class, storeFieldService.getStoreFieldById(storeFieldId)));
}
}
package com.gic.store.service.outer;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.PageHelperUtils;
import com.gic.store.dto.StoreFieldSelectDTO;
import com.gic.store.entity.TabStoreFieldSelect;
import com.gic.store.service.StoreFieldSelectApiService;
......@@ -11,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @author guojx
......@@ -65,8 +69,12 @@ public class StoreFieldSelectApiServiceImpl implements StoreFieldSelectApiServic
}
@Override
public ServiceResponse<Integer> setStoreFieldSelectSort(int storeFieldSelectId, int storeFieldId, int setValue) {
storeFieldSelectService.setStoreFieldSelectSort(storeFieldSelectId, storeFieldId, setValue);
public ServiceResponse<Integer> setStoreFieldSelectSort(int storeFieldSelectId, int setValue) {
TabStoreFieldSelect tabStoreFieldSelect = storeFieldSelectService.getStoreFieldSelectById(storeFieldSelectId);
if (tabStoreFieldSelect == null) {
return ServiceResponse.failure(ErrorCode.ERR_5.getCode(), "主键错误,查询不到数据");
}
storeFieldSelectService.setStoreFieldSelectSort(storeFieldSelectId, tabStoreFieldSelect.getStoreFieldId(), setValue);
return ServiceResponse.success(1);
}
......@@ -90,4 +98,21 @@ public class StoreFieldSelectApiServiceImpl implements StoreFieldSelectApiServic
storeFieldSelectDTO.getStoreFieldSelectName(), storeFieldSelectDTO.getStoreFieldSelectCode()));
}
@Override
public ServiceResponse<Page<StoreFieldSelectDTO>> listStoreFieldSelect(int storeFieldId, String search, Integer pageNum, Integer pageSize) {
com.github.pagehelper.Page listStoreFieldSelect = storeFieldSelectService.listStoreFieldSelect(storeFieldId, search, pageNum, pageSize);
Page<StoreFieldSelectDTO> selectDTOPage = PageHelperUtils.changePageHelperToCurrentPage(listStoreFieldSelect, StoreFieldSelectDTO.class);
List<StoreFieldSelectDTO> selectDTOList = selectDTOPage.getResult();
int index = (pageNum - 1) * pageSize + 1;
for (int i = 0, length = selectDTOList.size(); i < length; i++) {
selectDTOList.get(i).setSeq(index + i);
}
return ServiceResponse.success(selectDTOPage);
}
@Override
public ServiceResponse<StoreFieldSelectDTO> getStoreFieldSelect(int storeFieldSelectId) {
return ServiceResponse.success(EntityUtil.changeEntityNew(StoreFieldSelectDTO.class, storeFieldSelectService.getStoreFieldSelectById(storeFieldSelectId)));
}
}
......@@ -13,10 +13,11 @@
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="store_field_detail" jdbcType="VARCHAR" property="storeFieldDetail" />
<result column="erp_rel_code" jdbcType="VARCHAR" property="erpRelCode" />
<result column="sort" jdbcType="DOUBLE" property="sort" />
</resultMap>
<sql id="Base_Column_List">
store_field_id, store_field_name, store_field_code, store_field_type, enterprise_id,
store_region_id, status, create_time, update_time, store_field_detail, erp_rel_code
store_region_id, status, create_time, update_time, store_field_detail, erp_rel_code, sort
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
......@@ -32,11 +33,11 @@
insert into tab_store_field (store_field_id, store_field_name, store_field_code,
store_field_type, enterprise_id, store_region_id,
status, create_time, update_time,
store_field_detail, erp_rel_code)
store_field_detail, erp_rel_code, sort)
values (#{storeFieldId,jdbcType=INTEGER}, #{storeFieldName,jdbcType=VARCHAR}, #{storeFieldCode,jdbcType=VARCHAR},
#{storeFieldType,jdbcType=INTEGER}, #{enterpriseId,jdbcType=INTEGER}, #{storeRegionId,jdbcType=VARCHAR},
#{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{storeFieldDetail,jdbcType=VARCHAR}, #{erpRelCode,jdbcType=VARCHAR})
#{storeFieldDetail,jdbcType=VARCHAR}, #{erpRelCode,jdbcType=VARCHAR}, #{sort,jdbcType=DOUBLE})
</insert>
<insert id="insertSelective" parameterType="com.gic.store.entity.TabStoreField">
insert into tab_store_field
......@@ -74,6 +75,9 @@
<if test="erpRelCode != null">
erp_rel_code,
</if>
<if test="sort != null">
sort,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="storeFieldId != null">
......@@ -109,6 +113,9 @@
<if test="erpRelCode != null">
#{erpRelCode,jdbcType=VARCHAR},
</if>
<if test="sort != null">
#{sort,jdbcType=DOUBLE},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.store.entity.TabStoreField">
......@@ -144,6 +151,9 @@
<if test="erpRelCode != null">
erp_rel_code = #{erpRelCode,jdbcType=VARCHAR},
</if>
<if test="sort != null">
sort = #{sort,jdbcType=DOUBLE},
</if>
</set>
where store_field_id = #{storeFieldId,jdbcType=INTEGER}
</update>
......@@ -158,7 +168,81 @@
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP},
store_field_detail = #{storeFieldDetail,jdbcType=VARCHAR},
erp_rel_code = #{erpRelCode,jdbcType=VARCHAR}
erp_rel_code = #{erpRelCode,jdbcType=VARCHAR},
sort = #{sort,jdbcType=DOUBLE}
where store_field_id = #{storeFieldId,jdbcType=INTEGER}
</update>
<select id="selectNextByEnterpriseIdAndSort" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_field
where enterprise_id = #{enterpriseId}
and sort > #{sort}
and status = 1
order by sort
limit 1
</select>
<select id="selectPrevByStoreFieldIdAndSort" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_field
where enterprise_id = #{enterpriseId}
and sort &lt; #{sort}
and status = 1
order by sort
limit 1
</select>
<select id="getMinSort" resultType="java.lang.Double">
select ifnull(sort, 0) from tab_store_field where enterprise_id = #{enterpriseId} and status = 1 order by sort limit 0, 1
</select>
<select id="getMaxSort" resultType="java.lang.Double">
select ifnull(sort, 0) from tab_store_field where enterprise_id = #{enterpriseId} and status = 1 order by sort desc limit 0, 1
</select>
<select id="listTwoElementExceptId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_field
where store_field_id &lt;&gt; #{storeFieldId}
and enterprise_id = #{enterpriseId}
and status = 1
order by sort
limit #{start}, #{size}
</select>
<select id="listStoreField" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_field
where status = 1
<if test="enterpriseId != null ">
and enterprise_id = #{enterpriseId}
</if>
<if test="search != null and search != '' ">
and ( store_field_name like concat('%', #{search}, '%') or store_field_code like concat('%', #{search}, '%') )
</if>
order by sort
</select>
<update id="deleteAll">
update tab_store_field
set
status = 0
where enterprise_id = #{enterpriseId}
</update>
<update id="deleteBatch">
update tab_store_field
set
status = 0
where store_field_id in
<foreach collection="storeFieldIds" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</update>
</mapper>
\ No newline at end of file
......@@ -161,9 +161,23 @@
select
<include refid="Base_Column_List" />
from tab_store_field_select
where store_field_select_id &lt;&gt; #{storeBrandId}
where store_field_select_id &lt;&gt; #{storeFieldSelectId}
and store_field_id = #{storeFieldId}
order by sort
limit #{start}, #{size}
</select>
<select id="listStoreFieldSelect" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_field_select
where 1 = 1
<if test="storeFieldId != null ">
and store_field_id = #{storeFieldId}
</if>
<if test="search != null and search != '' ">
and ( store_field_select_name like concat('%', #{search}, '%') or store_field_select_code like concat('%', #{search}, '%') )
</if>
order by sort
</select>
</mapper>
\ No newline at end of file
......@@ -15,10 +15,15 @@ public class StoreFieldQO implements Serializable{
public interface SaveValidView {
}
public interface RemoveValidView {
}
/**
*
*/
@NotNull(message = "主键不能为空", groups = {RemoveValidView.class})
private Integer storeFieldId;
/**
......
package com.gic.store.web.qo.storefield;
import com.gic.store.constant.StoreGroupConstant;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
......@@ -15,21 +19,42 @@ public class StoreFieldSelectQO implements Serializable{
public interface SaveValidView {
}
public interface EditValidView {
}
public interface SwapValidView {
}
public interface RemoveValidView {
}
public interface SetSortValueValidView {
}
public interface ListValidView {
}
/**
*
*/
@NotNull(message = "主键ID不能为空", groups = {EditValidView.class, RemoveValidView.class})
private Integer storeFieldSelectId;
/**
* 属性名称
*/
@NotBlank(message = "属性值名称不能为空", groups = {SaveValidView.class})
@NotBlank(message = "属性值名称不能为空", groups = {SaveValidView.class, EditValidView.class})
private String storeFieldSelectName;
/**
* 属性code
*/
@NotBlank(message = "属性值code不能为空", groups = {SaveValidView.class})
@NotBlank(message = "属性值code不能为空", groups = {SaveValidView.class, EditValidView.class})
private String storeFieldSelectCode;
/**
......@@ -55,9 +80,30 @@ public class StoreFieldSelectQO implements Serializable{
/**
* 自定义属性字段ID
*/
@NotNull(message = "字段值不能为空", groups = {SaveValidView.class})
@NotNull(message = "字段值不能为空", groups = {SaveValidView.class, ListValidView.class})
private Integer storeFieldId;
/**
* 上移或者下移
*/
@NotNull(message = "移动标志参数值不能为空", groups = {SwapValidView.class})
@Min(value = StoreGroupConstant.SORT_UP, message = "移动标志参数值错误,小于1", groups = {SwapValidView.class})
@Max(value = StoreGroupConstant.SORT_DOWN, message = "移动标志参数值错误,大于2", groups = {SwapValidView.class})
private Integer upOrDown;
/**
* 想要排序的值
*/
@NotNull(message = "排序值不能为空", groups = {SetSortValueValidView.class})
private Integer sortValue;
/**
* 名称或者code模糊查询
*/
private String search;
private boolean isUp;
public Integer getStoreFieldSelectId() {
return storeFieldSelectId;
}
......@@ -121,4 +167,37 @@ public class StoreFieldSelectQO implements Serializable{
public void setStoreFieldId(Integer storeFieldId) {
this.storeFieldId = storeFieldId;
}
public Integer getUpOrDown() {
return upOrDown;
}
public void setUpOrDown(Integer upOrDown) {
this.upOrDown = upOrDown;
}
public boolean isUp() {
if (upOrDown == StoreGroupConstant.SORT_UP) {
return true;
} else {
return false;
}
}
public Integer getSortValue() {
return sortValue;
}
public void setSortValue(Integer sortValue) {
this.sortValue = sortValue;
}
public String getSearch() {
return search;
}
public void setSearch(String search) {
this.search = search;
}
}
package com.gic.store.web.vo.storefield;
import com.gic.store.constant.StoreFieldTypeEnum;
import java.io.Serializable;
/**
* @author guojx
* @date 2019/7/2 2:40 PM
*/
public class StoreFieldVO implements Serializable{
private static final long serialVersionUID = -3797107559383935002L;
/**
*
*/
private Integer storeFieldId;
/**
* 属性名称
*/
private String storeFieldName;
/**
* 属性code
*/
private String storeFieldCode;
/**
* 字段类型;1文本 2单选 3多选 4实数 5时间
*/
private Integer storeFieldType;
private String storeFieldTypeName;
/**
* 门店域id
*/
private String storeRegionId;
/**
* 域名称
*/
private String regionName;
/**
* 排序字段
*/
private Double sort;
/**
* 排序值
*/
private Integer seq;
public Integer getStoreFieldId() {
return storeFieldId;
}
public void setStoreFieldId(Integer storeFieldId) {
this.storeFieldId = storeFieldId;
}
public String getStoreFieldName() {
return storeFieldName;
}
public void setStoreFieldName(String storeFieldName) {
this.storeFieldName = storeFieldName;
}
public String getStoreFieldCode() {
return storeFieldCode;
}
public void setStoreFieldCode(String storeFieldCode) {
this.storeFieldCode = storeFieldCode;
}
public Integer getStoreFieldType() {
return storeFieldType;
}
public void setStoreFieldType(Integer storeFieldType) {
this.storeFieldType = storeFieldType;
}
public Double getSort() {
return sort;
}
public void setSort(Double sort) {
this.sort = sort;
}
public Integer getSeq() {
return seq;
}
public void setSeq(Integer seq) {
this.seq = seq;
}
public String getStoreFieldTypeName() {
return StoreFieldTypeEnum.getNameByCode(storeFieldType);
}
public void setStoreFieldTypeName(String storeFieldTypeName) {
this.storeFieldTypeName = storeFieldTypeName;
}
public String getRegionName() {
return regionName;
}
public void setRegionName(String regionName) {
this.regionName = regionName;
}
public String getStoreRegionId() {
return storeRegionId;
}
public void setStoreRegionId(String storeRegionId) {
this.storeRegionId = storeRegionId;
}
}
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