into('cn/com/taiji/core/model/comm/protocol/ias') | into('cn/com/taiji/core/model/comm/protocol/ias') | ||||
dependsOn(classes) | dependsOn(classes) | ||||
} | } | ||||
task iawProtocol(type:Jar){ | |||||
archiveBaseName='tj' | |||||
archiveAppendix='iaw-protocol' | |||||
archiveVersion='1.0.0-SNAPSHOT' | |||||
archiveExtension='jar' | |||||
from("build/classes/java/main/cn/com/taiji/core/model/comm/protocol/iaw") | |||||
into('cn/com/taiji/core/model/comm/protocol/iaw') | |||||
dependsOn(classes) | |||||
} | |||||
task odsProtocol(type:Jar){ | task odsProtocol(type:Jar){ | ||||
archiveBaseName='tj' | archiveBaseName='tj' | ||||
archiveAppendix='ods-protocol' | archiveAppendix='ods-protocol' | ||||
artifact iasProtocol | artifact iasProtocol | ||||
artifact packageCoreSrc | artifact packageCoreSrc | ||||
} | } | ||||
myPublicationIawProtocol(MavenPublication) { | |||||
groupId ="${groupname}" | |||||
artifactId ='iaw-protocol' | |||||
version ='1.0.0-SNAPSHOT' | |||||
artifact iawProtocol | |||||
artifact packageCoreSrc | |||||
} | |||||
myPublicationOdsProtocol(MavenPublication) { | myPublicationOdsProtocol(MavenPublication) { | ||||
groupId ="${groupname}" | groupId ="${groupname}" | ||||
artifactId ='ods-protocol' | artifactId ='ods-protocol' |
implementation "${groupname}:entity-core:1.0.0-SNAPSHOT" | implementation "${groupname}:entity-core:1.0.0-SNAPSHOT" | ||||
implementation "${groupname}:comm-core:1.0.0-SNAPSHOT" | implementation "${groupname}:comm-core:1.0.0-SNAPSHOT" | ||||
implementation "${groupname}:sample-protocol:1.0.0-SNAPSHOT" | implementation "${groupname}:sample-protocol:1.0.0-SNAPSHOT" | ||||
implementation "${groupname}:iaw-protocol:1.0.0-SNAPSHOT" | |||||
implementation "${groupname}:smp-protocol:1.0.0-SNAPSHOT" | implementation "${groupname}:smp-protocol:1.0.0-SNAPSHOT" | ||||
implementation('cn.com.taiji.common:sso-client:2.3.10.7') | implementation('cn.com.taiji.common:sso-client:2.3.10.7') | ||||
implementation "org.springframework.boot:spring-boot-starter-security" | implementation "org.springframework.boot:spring-boot-starter-security" |
import cn.com.taiji.common.manager.ManagerException; | import cn.com.taiji.common.manager.ManagerException; | ||||
import cn.com.taiji.common.model.dao.Pagination; | import cn.com.taiji.common.model.dao.Pagination; | ||||
import cn.com.taiji.common.web.ApiResponse; | import cn.com.taiji.common.web.ApiResponse; | ||||
import cn.com.taiji.core.entity.issue.IssueOrderAddress; | |||||
import cn.com.taiji.core.entity.comm.AddressInfo; | |||||
import cn.com.taiji.iaw.api.MyValidController; | import cn.com.taiji.iaw.api.MyValidController; | ||||
import cn.com.taiji.iaw.dto.comm.*; | import cn.com.taiji.iaw.dto.comm.*; | ||||
import cn.com.taiji.iaw.manager.comm.AddressManager; | import cn.com.taiji.iaw.manager.comm.AddressManager; | ||||
@ApiOperation("地址查询") | @ApiOperation("地址查询") | ||||
@PostMapping("/findById") | @PostMapping("/findById") | ||||
public ApiResponse<IssueOrderAddress> findById(@Valid @RequestBody AddressInfoRequestDTO dto) throws ManagerException { | |||||
public ApiResponse<AddressInfo> findById(@Valid @RequestBody AddressInfoRequestDTO dto) throws ManagerException { | |||||
return ApiResponse.of(manager.findById(dto)); | return ApiResponse.of(manager.findById(dto)); | ||||
} | } | ||||
@ApiOperation("地址添加、修改") | @ApiOperation("地址添加、修改") | ||||
@PostMapping("/add") | @PostMapping("/add") | ||||
public ApiResponse<IssueOrderAddress> add(@Valid @RequestBody AddressAddRequestDTO dto) throws ManagerException { | |||||
public ApiResponse<AddressInfo> add(@Valid @RequestBody AddressAddRequestDTO dto) throws ManagerException { | |||||
return ApiResponse.of(manager.add(dto)); | return ApiResponse.of(manager.add(dto)); | ||||
} | } | ||||
package cn.com.taiji.iaw.dto.comm; | package cn.com.taiji.iaw.dto.comm; | ||||
import cn.com.taiji.common.pub.dao.HqlBuilder; | |||||
import cn.com.taiji.common.valid.ViolationValidator; | |||||
import cn.com.taiji.core.entity.issue.IssueOrderAddress; | |||||
import cn.com.taiji.iaw.dto.AbstractBizRequestDTO; | import cn.com.taiji.iaw.dto.AbstractBizRequestDTO; | ||||
import io.swagger.annotations.ApiModel; | import io.swagger.annotations.ApiModel; | ||||
import io.swagger.annotations.ApiModelProperty; | import io.swagger.annotations.ApiModelProperty; |
import cn.com.taiji.common.manager.ManagerException; | import cn.com.taiji.common.manager.ManagerException; | ||||
import cn.com.taiji.common.model.dao.Pagination; | import cn.com.taiji.common.model.dao.Pagination; | ||||
import cn.com.taiji.core.entity.issue.IssueOrderAddress; | |||||
import cn.com.taiji.core.entity.comm.AddressInfo; | |||||
import cn.com.taiji.iaw.dto.comm.*; | import cn.com.taiji.iaw.dto.comm.*; | ||||
public interface AddressManager { | public interface AddressManager { | ||||
Pagination page(AddressQueryRequestDTO dto) throws ManagerException; | Pagination page(AddressQueryRequestDTO dto) throws ManagerException; | ||||
IssueOrderAddress findById(AddressInfoRequestDTO dto) throws ManagerException; | |||||
AddressInfo findById(AddressInfoRequestDTO dto) throws ManagerException; | |||||
IssueOrderAddress add(AddressAddRequestDTO dto) throws ManagerException; | |||||
AddressInfo add(AddressAddRequestDTO dto) throws ManagerException; | |||||
void delete(AddressInfoRequestDTO dto) throws ManagerException; | void delete(AddressInfoRequestDTO dto) throws ManagerException; | ||||
import cn.com.taiji.common.manager.ManagerException; | import cn.com.taiji.common.manager.ManagerException; | ||||
import cn.com.taiji.common.model.dao.Pagination; | import cn.com.taiji.common.model.dao.Pagination; | ||||
import cn.com.taiji.common.pub.BeanTools; | import cn.com.taiji.common.pub.BeanTools; | ||||
import cn.com.taiji.core.entity.comm.AddressInfo; | |||||
import cn.com.taiji.core.entity.dict.basic.SourceType; | import cn.com.taiji.core.entity.dict.basic.SourceType; | ||||
import cn.com.taiji.core.entity.issue.IssueOrderAddress; | |||||
import cn.com.taiji.core.entity.user.AccountInfo; | import cn.com.taiji.core.entity.user.AccountInfo; | ||||
import cn.com.taiji.core.repo.jpa.issue.IssueOrderAddressRepo; | |||||
import cn.com.taiji.core.repo.jpa.comm.AddressInfoRepo; | |||||
import cn.com.taiji.core.repo.jpa.user.AccountInfoRepo; | import cn.com.taiji.core.repo.jpa.user.AccountInfoRepo; | ||||
import cn.com.taiji.iaw.dto.comm.*; | import cn.com.taiji.iaw.dto.comm.*; | ||||
import cn.com.taiji.iaw.manager.AbstractCommManager; | import cn.com.taiji.iaw.manager.AbstractCommManager; | ||||
import cn.com.taiji.iaw.repo.jpa.request.comm.IssueOrderAddressPageRequest; | |||||
import cn.com.taiji.iaw.repo.jpa.request.comm.AddressInfoPageRequest; | |||||
import cn.hutool.core.bean.BeanUtil; | import cn.hutool.core.bean.BeanUtil; | ||||
import cn.hutool.core.collection.CollectionUtil; | import cn.hutool.core.collection.CollectionUtil; | ||||
import org.apache.commons.compress.utils.Lists; | import org.apache.commons.compress.utils.Lists; | ||||
@Autowired | @Autowired | ||||
private AccountInfoRepo accountInfoRepo; | private AccountInfoRepo accountInfoRepo; | ||||
@Autowired | @Autowired | ||||
private IssueOrderAddressRepo repo; | |||||
private AddressInfoRepo repo; | |||||
// @Autowired | // @Autowired | ||||
// private QtkPromptTextRepo qtkPromptTextRepo; | // private QtkPromptTextRepo qtkPromptTextRepo; | ||||
@Override | @Override | ||||
public Pagination page(AddressQueryRequestDTO dto) throws ManagerException { | public Pagination page(AddressQueryRequestDTO dto) throws ManagerException { | ||||
dto.validate(); | dto.validate(); | ||||
IssueOrderAddressPageRequest req = new IssueOrderAddressPageRequest(); | |||||
AddressInfoPageRequest req = new AddressInfoPageRequest(); | |||||
BeanTools.copyProperties(dto, req); | BeanTools.copyProperties(dto, req); | ||||
List<String> openIds = Lists.newArrayList(); | List<String> openIds = Lists.newArrayList(); | ||||
if (SourceType.WECHAT.equals(dto.getOrderSource()) || SourceType.ALI.equals(dto.getOrderSource())) { | if (SourceType.WECHAT.equals(dto.getOrderSource()) || SourceType.ALI.equals(dto.getOrderSource())) { | ||||
} | } | ||||
@Override | @Override | ||||
public IssueOrderAddress findById(AddressInfoRequestDTO dto) throws ManagerException { | |||||
public AddressInfo findById(AddressInfoRequestDTO dto) throws ManagerException { | |||||
dto.validate(); | dto.validate(); | ||||
return repo.findById(dto.getId()).orElse(null); | return repo.findById(dto.getId()).orElse(null); | ||||
} | } | ||||
@Override | @Override | ||||
public IssueOrderAddress add(AddressAddRequestDTO dto) throws ManagerException { | |||||
public AddressInfo add(AddressAddRequestDTO dto) throws ManagerException { | |||||
dto.validate(); | dto.validate(); | ||||
IssueOrderAddress entity = new IssueOrderAddress(); | |||||
AddressInfo entity = new AddressInfo(); | |||||
if (hasText(dto.getId())) { | if (hasText(dto.getId())) { | ||||
entity = repo.findById(dto.getId()).orElse(null); | entity = repo.findById(dto.getId()).orElse(null); | ||||
if (entity == null) { | if (entity == null) { | ||||
return entity; | return entity; | ||||
} | } | ||||
private void changeDefault(IssueOrderAddress entity) { | |||||
List<IssueOrderAddress> managementList = repo.listDefault(entity.getOpenId(), entity.getDefaultAddress(), entity.getStatus()); | |||||
private void changeDefault(AddressInfo entity) { | |||||
List<AddressInfo> managementList = repo.listDefault(entity.getOpenId(), entity.getDefaultAddress(), entity.getStatus()); | |||||
if (!CollectionUtil.isEmpty(managementList)) { | if (!CollectionUtil.isEmpty(managementList)) { | ||||
for (IssueOrderAddress vo : managementList) { | |||||
for (AddressInfo vo : managementList) { | |||||
if (!vo.getId().equals(entity.getId())) { | if (!vo.getId().equals(entity.getId())) { | ||||
vo.setDefaultAddress(2); | vo.setDefaultAddress(2); | ||||
} | } | ||||
@Override | @Override | ||||
public void delete(AddressInfoRequestDTO dto) throws ManagerException { | public void delete(AddressInfoRequestDTO dto) throws ManagerException { | ||||
dto.validate(); | dto.validate(); | ||||
IssueOrderAddress entity = repo.findById(dto.getId()).orElse(null); | |||||
AddressInfo entity = repo.findById(dto.getId()).orElse(null); | |||||
if (entity == null) { | if (entity == null) { | ||||
throw new ManagerException("地址不存在"); | throw new ManagerException("地址不存在"); | ||||
} else if (!dto.getOpenId().equals(entity.getOpenId())) { | } else if (!dto.getOpenId().equals(entity.getOpenId())) { |
import cn.com.taiji.common.pub.dao.HqlBuilder; | import cn.com.taiji.common.pub.dao.HqlBuilder; | ||||
import cn.com.taiji.common.repo.request.jpa.JpaDatePageableDataRequest; | import cn.com.taiji.common.repo.request.jpa.JpaDatePageableDataRequest; | ||||
import cn.com.taiji.core.entity.issue.IssueOrderAddress; | |||||
import cn.com.taiji.core.entity.comm.AddressInfo; | |||||
import lombok.Getter; | import lombok.Getter; | ||||
import lombok.Setter; | import lombok.Setter; | ||||
import lombok.experimental.Accessors; | import lombok.experimental.Accessors; | ||||
@Getter | @Getter | ||||
@Setter | @Setter | ||||
@Accessors(chain = true) | @Accessors(chain = true) | ||||
public class IssueOrderAddressPageRequest extends JpaDatePageableDataRequest<IssueOrderAddress> { | |||||
public class AddressInfoPageRequest extends JpaDatePageableDataRequest<AddressInfo> { | |||||
private List<String> openIds; // openId列表 | private List<String> openIds; // openId列表 | ||||
@Override | @Override | ||||
public HqlBuilder toSelectHql() { | public HqlBuilder toSelectHql() { | ||||
HqlBuilder hql = new HqlBuilder("from " + IssueOrderAddress.class.getName() + " a where 1=1 AND status = 1"); | |||||
HqlBuilder hql = new HqlBuilder("from " + AddressInfo.class.getName() + " a where 1=1 AND status = 1"); | |||||
hql.append(" and openId IN :openId", openIds); | hql.append(" and openId IN :openId", openIds); | ||||
hql.append(" ORDER BY defaultAddress ASC, insertTime DESC"); | hql.append(" ORDER BY defaultAddress ASC, insertTime DESC"); | ||||
return hql; | return hql; |