记得上下班打卡 | git大法好,push需谨慎

Commit 23dedf23 authored by Tice's avatar Tice

申请添加 mongo

parent 6676ce6e
...@@ -23,10 +23,10 @@ public class MerchantFieldApplyParam implements java.io.Serializable { ...@@ -23,10 +23,10 @@ public class MerchantFieldApplyParam implements java.io.Serializable {
@NotBlank(message = "名称不能为空") @NotBlank(message = "名称不能为空")
private String name; private String name;
@ApiModelProperty(position = 12, required = true, value = "logo图", example = "https://img.zhengzai.tv/partner/2019/05/14/5cda2d0520177.png") @ApiModelProperty(position = 12, required = true, value = "logo图", example = "https://img.zhengzai.tv/partner/2019/05/14/5cda2d0520177.png")
@NotNull(message = "logo图不能为空") @NotBlank(message = "logo图不能为空")
private String logo; private String logo;
@ApiModelProperty(position = 13, required = true, value = "背景图", example = "https://img.zhengzai.tv/partner/2019/05/14/5cda2d0520177.png") @ApiModelProperty(position = 13, required = true, value = "背景图", example = "https://img.zhengzai.tv/partner/2019/05/14/5cda2d0520177.png")
@NotNull(message = "背景图不能为空") @NotBlank(message = "背景图不能为空")
private String background; private String background;
@ApiModelProperty(position = 14, required = true, value = "介绍[1000]", example = "这是一段介绍文字") @ApiModelProperty(position = 14, required = true, value = "介绍[1000]", example = "这是一段介绍文字")
private String description; private String description;
...@@ -35,28 +35,38 @@ public class MerchantFieldApplyParam implements java.io.Serializable { ...@@ -35,28 +35,38 @@ public class MerchantFieldApplyParam implements java.io.Serializable {
private String builtDate; private String builtDate;
@ApiModelProperty(position = 16, required = true, value = "省id") @ApiModelProperty(position = 16, required = true, value = "省id")
@NotNull(message = "省id不能为null")
private String provinceId; private String provinceId;
@ApiModelProperty(position = 17, required = true, value = "省名称") @ApiModelProperty(position = 17, required = true, value = "省名称")
@NotNull(message = "省名称不能为null")
private String provinceName; private String provinceName;
@ApiModelProperty(position = 18, required = true, value = "城市id") @ApiModelProperty(position = 18, required = true, value = "城市id")
@NotNull(message = "城市id不能为null")
private String cityId; private String cityId;
@ApiModelProperty(position = 19, required = true, value = "城市名称") @ApiModelProperty(position = 19, required = true, value = "城市名称")
@NotNull(message = "城市名称不能为null")
private String cityName; private String cityName;
@ApiModelProperty(position = 20, required = true, value = "县id") @ApiModelProperty(position = 20, required = true, value = "县id")
@NotNull(message = "县id不能为null")
private String districtId; private String districtId;
@ApiModelProperty(position = 21, required = true, value = "县名称") @ApiModelProperty(position = 21, required = true, value = "县名称")
@NotNull(message = "县名称不能为null")
private String districtName; private String districtName;
@ApiModelProperty(position = 22, required = true, value = "详细地址[100]", example = "广渠路1号创1958园区") @ApiModelProperty(position = 22, required = true, value = "详细地址[100]", example = "广渠路1号创1958园区")
@Size(max = 100, message = "已超出详细地址长度限制") @Size(max = 100, message = "已超出详细地址长度限制")
private String address; private String address;
@ApiModelProperty(position = 23, required = true, value = "经度") @ApiModelProperty(position = 23, required = true, value = "经度")
@NotNull()
private String longitude; private String longitude;
@ApiModelProperty(position = 24, required = true, value = "纬度") @ApiModelProperty(position = 24, required = true, value = "纬度")
@NotNull()
private String latitude; private String latitude;
@ApiModelProperty(position = 25, required = true, value = "联系人姓名", example = "张三") @ApiModelProperty(position = 25, required = true, value = "联系人姓名", example = "张三")
@NotNull()
private String contactName; private String contactName;
@ApiModelProperty(position = 26, required = true, value = "联系人邮箱", example = "zhangsan@zhengzai.tv") @ApiModelProperty(position = 26, required = true, value = "联系人邮箱", example = "zhangsan@zhengzai.tv")
@NotNull()
private String contactEmail; private String contactEmail;
@ApiModelProperty(position = 27, required = true, value = "企业名称") @ApiModelProperty(position = 27, required = true, value = "企业名称")
......
package com.liquidnet.service.merchant.service; package com.liquidnet.service.merchant.service;
import com.liquidnet.service.merchant.dto.vo.MerchantAuthorizationRecordsVo;
import java.util.List;
public interface IMerchantAuthorizationRecordsService { public interface IMerchantAuthorizationRecordsService {
void performanceCheckerAdd(String cuid, String performanceId, String uid, boolean statistics); void performanceCheckerAdd(String cuid, String performanceId, String uid, String mobile, String name, boolean statistics);
void performanceCheckerDel(String cuid, String performanceId, String uid); void performanceCheckerDel(String cuid, String performanceId, String uid);
void performanceCheckers(String cuid, String performanceId); List<MerchantAuthorizationRecordsVo> performanceCheckers(String cuid, String performanceId);
} }
...@@ -95,12 +95,11 @@ public class MerchantFieldAppliesController extends BaseController { ...@@ -95,12 +95,11 @@ public class MerchantFieldAppliesController extends BaseController {
@RequiresPermissions("merchant:field:apply:approve") @RequiresPermissions("merchant:field:apply:approve")
@PostMapping("/approve") @PostMapping("/approve")
@ResponseBody @ResponseBody
public AjaxResult approve(@RequestParam(required = true) String uid, public AjaxResult approve(@RequestParam(required = true) String fieldApplyId) {
@RequestParam(required = true) String fieldApplyId) {
String authUid = ShiroUtils.getUserId().toString(); String authUid = ShiroUtils.getUserId().toString();
String authName = ShiroUtils.getLoginName(); String authName = ShiroUtils.getLoginName();
return toAjax(merchantFieldAppliesAdminService.applyApprove(uid, fieldApplyId, authUid, authName)); return toAjax(merchantFieldAppliesAdminService.applyApprove(fieldApplyId, authUid, authName));
} }
@ApiOperation(value = "审核驳回") @ApiOperation(value = "审核驳回")
...@@ -108,12 +107,11 @@ public class MerchantFieldAppliesController extends BaseController { ...@@ -108,12 +107,11 @@ public class MerchantFieldAppliesController extends BaseController {
@RequiresPermissions("merchant:field:apply:reject") @RequiresPermissions("merchant:field:apply:reject")
@PostMapping("/reject") @PostMapping("/reject")
@ResponseBody @ResponseBody
public AjaxResult reject(@RequestParam(required = true) String uid, public AjaxResult reject(@RequestParam(required = true) String fieldApplyId,
@RequestParam(required = true) String fieldApplyId,
@RequestParam(required = true) String reject) { @RequestParam(required = true) String reject) {
String authUid = ShiroUtils.getUserId().toString(); String authUid = ShiroUtils.getUserId().toString();
String authName = ShiroUtils.getLoginName(); String authName = ShiroUtils.getLoginName();
return toAjax(merchantFieldAppliesAdminService.applyReject(uid, fieldApplyId, authUid, authName, reject)); return toAjax(merchantFieldAppliesAdminService.applyReject(fieldApplyId, authUid, authName, reject));
} }
} }
...@@ -76,12 +76,11 @@ public class MerchantSponsorAppliesController extends BaseController { ...@@ -76,12 +76,11 @@ public class MerchantSponsorAppliesController extends BaseController {
@RequiresPermissions("merchant:sponsor:apply:approve") @RequiresPermissions("merchant:sponsor:apply:approve")
@PostMapping("/approve") @PostMapping("/approve")
@ResponseBody @ResponseBody
public AjaxResult approve(@RequestParam(required = true) String uid, public AjaxResult approve(@RequestParam(required = true) String sponsorApplyId) {
@RequestParam(required = true) String sponsorApplyId) {
String authUid = ShiroUtils.getUserId().toString(); String authUid = ShiroUtils.getUserId().toString();
String authName = ShiroUtils.getLoginName(); String authName = ShiroUtils.getLoginName();
return toAjax(merchantSponsorAppliesAdminService.applyApprove(uid, sponsorApplyId, authUid, authName)); return toAjax(merchantSponsorAppliesAdminService.applyApprove(sponsorApplyId, authUid, authName));
} }
@ApiOperation(value = "审核驳回") @ApiOperation(value = "审核驳回")
...@@ -89,12 +88,11 @@ public class MerchantSponsorAppliesController extends BaseController { ...@@ -89,12 +88,11 @@ public class MerchantSponsorAppliesController extends BaseController {
@RequiresPermissions("merchant:sponsor:apply:reject") @RequiresPermissions("merchant:sponsor:apply:reject")
@PostMapping("/reject") @PostMapping("/reject")
@ResponseBody @ResponseBody
public AjaxResult reject(@RequestParam(required = true) String uid, public AjaxResult reject(@RequestParam(required = true) String sponsorApplyId,
@RequestParam(required = true) String sponsorApplyId,
@RequestParam(required = true) String reject) { @RequestParam(required = true) String reject) {
String authUid = ShiroUtils.getUserId().toString(); String authUid = ShiroUtils.getUserId().toString();
String authName = ShiroUtils.getLoginName(); String authName = ShiroUtils.getLoginName();
return toAjax(merchantSponsorAppliesAdminService.applyReject(uid, sponsorApplyId, authUid, authName, reject)); return toAjax(merchantSponsorAppliesAdminService.applyReject(sponsorApplyId, authUid, authName, reject));
} }
} }
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.merchant.entity.MerchantFieldApplies; import com.liquidnet.service.merchant.entity.MerchantFieldApplies;
public interface IMerchantFieldAppliesAdminService extends IService<MerchantFieldApplies> { public interface IMerchantFieldAppliesAdminService extends IService<MerchantFieldApplies> {
boolean applyApprove(String uid, String fieldApplyId, String auditUid, String auditName); boolean applyApprove(String fieldApplyId, String auditUid, String auditName);
boolean applyReject(String uid, String fieldApplyId, String auditUid, String auditName, String reject); boolean applyReject(String fieldApplyId, String auditUid, String auditName, String reject);
} }
...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.merchant.entity.MerchantSponsorApplies; import com.liquidnet.service.merchant.entity.MerchantSponsorApplies;
public interface IMerchantSponsorAppliesAdminService extends IService<MerchantSponsorApplies> { public interface IMerchantSponsorAppliesAdminService extends IService<MerchantSponsorApplies> {
boolean applyApprove(String uid, String sponsorApplyId, String auditUid, String auditName); boolean applyApprove(String sponsorApplyId, String auditUid, String auditName);
boolean applyReject(String uid, String sponsorApplyId, String auditUid, String auditName, String reject); boolean applyReject(String sponsorApplyId, String auditUid, String auditName, String reject);
} }
...@@ -251,7 +251,6 @@ public class MerchantAuthorizationRecordsAdminServiceImpl extends ServiceImpl<Me ...@@ -251,7 +251,6 @@ public class MerchantAuthorizationRecordsAdminServiceImpl extends ServiceImpl<Me
String[] checkerPermissionIds = { String[] checkerPermissionIds = {
MerchantPermissionConst.PerformancePermission.CHECK.getId() MerchantPermissionConst.PerformancePermission.CHECK.getId()
}; };
for (MerchantFieldCheckersVo fieldCheckersVo: fieldCheckersVos) { for (MerchantFieldCheckersVo fieldCheckersVo: fieldCheckersVos) {
// 验票员 授权记录 entity // 验票员 授权记录 entity
MerchantAuthorizationRecords checkerAuthorizationRecords = new MerchantAuthorizationRecords(); MerchantAuthorizationRecords checkerAuthorizationRecords = new MerchantAuthorizationRecords();
......
...@@ -26,12 +26,9 @@ import org.springframework.data.mongodb.core.query.Query; ...@@ -26,12 +26,9 @@ import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update; import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.IntStream;
@Slf4j @Slf4j
@Service @Service
...@@ -56,84 +53,71 @@ public class MerchantFieldAppliesAdminServiceImpl extends ServiceImpl<MerchantFi ...@@ -56,84 +53,71 @@ public class MerchantFieldAppliesAdminServiceImpl extends ServiceImpl<MerchantFi
@Override @Override
@Transactional @Transactional
public boolean applyApprove(String uid, String fieldApplyId, String auditUid, String auditName) { public boolean applyApprove(String fieldApplyId, String auditUid, String auditName) {
List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(uid); LocalDateTime now = LocalDateTime.now();
if (CollectionUtils.isEmpty(fieldAppliesVos)) {
// todo error // 场地申请 entity
throw new LiquidnetServiceException(); LambdaQueryWrapper<MerchantFieldApplies> fieldAppliesLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantFieldApplies.class);
} fieldAppliesLambdaQueryWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldApplyId);
int idx = IntStream.range(0, fieldAppliesVos.size()) MerchantFieldApplies fieldAppliesEntity = getOne(fieldAppliesLambdaQueryWrapper);
.filter(i -> fieldAppliesVos.get(i).getFieldApplyId().equals(fieldApplyId)) if (0 != fieldAppliesEntity.getApplyStatus()) {
.findFirst()
.orElse(-1);
if (idx < 0) {
// todo error
throw new LiquidnetServiceException();
}
MerchantFieldAppliesVo fieldAppliesVo = fieldAppliesVos.get(idx);
if (0 != fieldAppliesVo.getApplyStatus()) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
LocalDateTime now = LocalDateTime.now(); if (fieldAppliesEntity.getApplyType().equals("claim")) {
if (fieldAppliesVo.getApplyType().equals("claim")) {
// 认领逻辑 // 认领逻辑
// 公司 entity mysql // 公司 entity mysql
MerchantCompanies companiesEntity = new MerchantCompanies(); MerchantCompanies companiesEntity = new MerchantCompanies();
companiesEntity.setCompanyId(IDGenerator.nextSnowId()); companiesEntity.setCompanyId(IDGenerator.nextSnowId());
companiesEntity.setName(fieldAppliesVo.getCompanyName()); companiesEntity.setName(fieldAppliesEntity.getCompanyName());
companiesEntity.setLicenseCode(fieldAppliesVo.getLicenseCode()); companiesEntity.setLicenseCode(fieldAppliesEntity.getLicenseCode());
companiesEntity.setLicenseImg(fieldAppliesVo.getLicenseImg()); companiesEntity.setLicenseImg(fieldAppliesEntity.getLicenseImg());
companiesEntity.setLegalName(fieldAppliesVo.getLegalName()); companiesEntity.setLegalName(fieldAppliesEntity.getLegalName());
companiesEntity.setLegalIdentity(fieldAppliesVo.getLegalIdentity()); companiesEntity.setLegalIdentity(fieldAppliesEntity.getLegalIdentity());
companiesEntity.setLegalIdentityObverse(fieldAppliesVo.getLegalIdentityObverse()); companiesEntity.setLegalIdentityObverse(fieldAppliesEntity.getLegalIdentityObverse());
companiesEntity.setLegalIdentityReverse(fieldAppliesVo.getLegalIdentityReverse()); companiesEntity.setLegalIdentityReverse(fieldAppliesEntity.getLegalIdentityReverse());
companiesEntity.setCreatedAt(now); companiesEntity.setCreatedAt(now);
boolean success = merchantCompaniesAdminService.save(companiesEntity); boolean success = merchantCompaniesAdminService.save(companiesEntity);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 公司 vo
MerchantCompaniesVo companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
// 场地 entity mysql // 场地 entity mysql
LambdaQueryWrapper<MerchantFields> fieldsLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantFields.class); LambdaQueryWrapper<MerchantFields> fieldsLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantFields.class);
fieldsLambdaQueryWrapper.eq(MerchantFields::getFieldId, fieldAppliesVo.getFieldId()); fieldsLambdaQueryWrapper.eq(MerchantFields::getFieldId, fieldAppliesEntity.getFieldId());
MerchantFields fieldsEntity = merchantFieldsAdminService.getOne(fieldsLambdaQueryWrapper); MerchantFields fieldsEntity = merchantFieldsAdminService.getOne(fieldsLambdaQueryWrapper);
if (null == fieldsEntity) { if (null == fieldsEntity) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
if (2 != fieldsEntity.getClaimStatus() || !fieldsEntity.getUid().equals(uid)) { if (2 != fieldsEntity.getClaimStatus() || !fieldsEntity.getUid().equals(fieldAppliesEntity.getUid())) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
fieldsEntity.setIsOnline(1); fieldsEntity.setIsOnline(1);
fieldsEntity.setClaimStatus(1); fieldsEntity.setClaimStatus(1);
fieldsEntity.setUid(uid); fieldsEntity.setUid(fieldAppliesEntity.getUid());
fieldsEntity.setIsCheck(0); fieldsEntity.setIsCheck(0);
fieldsEntity.setName(fieldAppliesVo.getName()); fieldsEntity.setName(fieldAppliesEntity.getName());
fieldsEntity.setLogo(fieldAppliesVo.getLogo()); fieldsEntity.setLogo(fieldAppliesEntity.getLogo());
fieldsEntity.setBackground(fieldAppliesVo.getBackground()); fieldsEntity.setBackground(fieldAppliesEntity.getBackground());
fieldsEntity.setDescription(fieldAppliesVo.getDescription()); fieldsEntity.setDescription(fieldAppliesEntity.getDescription());
fieldsEntity.setBuiltDate(LocalDate.parse(fieldAppliesVo.getBuiltDate())); fieldsEntity.setBuiltDate(fieldAppliesEntity.getBuiltDate());
fieldsEntity.setProvinceId(fieldAppliesVo.getProvinceId()); fieldsEntity.setProvinceId(fieldAppliesEntity.getProvinceId());
fieldsEntity.setProvinceName(fieldAppliesVo.getProvinceName()); fieldsEntity.setProvinceName(fieldAppliesEntity.getProvinceName());
fieldsEntity.setCityId(fieldAppliesVo.getCityId()); fieldsEntity.setCityId(fieldAppliesEntity.getCityId());
fieldsEntity.setCityName(fieldAppliesVo.getCityName()); fieldsEntity.setCityName(fieldAppliesEntity.getCityName());
fieldsEntity.setDistrictId(fieldAppliesVo.getDistrictId()); fieldsEntity.setDistrictId(fieldAppliesEntity.getDistrictId());
fieldsEntity.setDistrictName(fieldAppliesVo.getDistrictName()); fieldsEntity.setDistrictName(fieldAppliesEntity.getDistrictName());
fieldsEntity.setAddress(fieldAppliesVo.getAddress()); fieldsEntity.setAddress(fieldAppliesEntity.getAddress());
fieldsEntity.setLongitude(fieldAppliesVo.getLongitude()); fieldsEntity.setLongitude(fieldAppliesEntity.getLongitude());
fieldsEntity.setLatitude(fieldAppliesVo.getLatitude()); fieldsEntity.setLatitude(fieldAppliesEntity.getLatitude());
fieldsEntity.setContactName(fieldAppliesVo.getContactName()); fieldsEntity.setContactName(fieldAppliesEntity.getContactName());
fieldsEntity.setContactEmail(fieldAppliesVo.getContactEmail()); fieldsEntity.setContactEmail(fieldAppliesEntity.getContactEmail());
fieldsEntity.setCompanyId(companiesVo.getCompanyId()); fieldsEntity.setCompanyId(companiesEntity.getCompanyId());
fieldsEntity.setUpdatedAt(now); fieldsEntity.setUpdatedAt(now);
LambdaUpdateWrapper<MerchantFields> fieldsLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFields.class); LambdaUpdateWrapper<MerchantFields> fieldsLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFields.class);
fieldsLambdaUpdateWrapper.eq(MerchantFields::getFieldId, fieldsEntity.getFieldId()); fieldsLambdaUpdateWrapper.eq(MerchantFields::getFieldId, fieldsEntity.getFieldId());
...@@ -142,253 +126,305 @@ public class MerchantFieldAppliesAdminServiceImpl extends ServiceImpl<MerchantFi ...@@ -142,253 +126,305 @@ public class MerchantFieldAppliesAdminServiceImpl extends ServiceImpl<MerchantFi
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 场地 vo
MerchantFieldsVo fieldsVo = MerchantFieldsVo.getNew();
fieldsVo.copy(fieldsEntity);
fieldsVo.setCompaniesVo(companiesVo);
// 场地申请 vo // 场地申请 entity mysql
fieldAppliesVo.setApplyStatus(1); fieldAppliesEntity.setApplyStatus(1);
fieldAppliesVo.setReject(""); fieldAppliesEntity.setReject("");
fieldAppliesVo.setAuditUid(auditUid); fieldAppliesEntity.setAuditUid(auditUid);
fieldAppliesVo.setAuditName(auditName); fieldAppliesEntity.setAuditName(auditName);
fieldAppliesVo.setAuditedAt(now); fieldAppliesEntity.setAuditedAt(now);
fieldAppliesVo.setUpdatedAt(now); fieldAppliesEntity.setUpdatedAt(now);
// 场地申请 mysql
LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class); LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class);
fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesVo.getFieldApplyId()); fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesEntity.getFieldApplyId());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesVo.getApplyStatus()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesEntity.getApplyStatus());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesVo.getReject()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesEntity.getReject());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesVo.getAuditUid()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesEntity.getAuditUid());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesVo.getAuditName()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesEntity.getAuditName());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesVo.getAuditedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesEntity.getAuditedAt());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesVo.getUpdatedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesEntity.getUpdatedAt());
success = update(fieldAppliesLambdaUpdateWrapper); success = update(fieldAppliesLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 公司 vo
MerchantCompaniesVo companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
// 场地 vo
MerchantFieldsVo fieldsVo = MerchantFieldsVo.getNew();
fieldsVo.copy(fieldsEntity);
fieldsVo.setCompaniesVo(companiesVo);
// 场地申请 vo
MerchantFieldAppliesVo fieldAppliesVo = MerchantFieldAppliesVo.getNew();
fieldAppliesVo.copy(fieldAppliesEntity);
// 场地 sync mongo // 场地 sync mongo
merchantMongoUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo); merchantMongoUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
// 场地 sync redis // 场地 sync redis
merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo); merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
// 场地申请 redis // 场地申请 sync mongo
merchantRedisUtil.setFieldAppliesVosByUid(uid, fieldAppliesVos); Query query = Query.query(Criteria.where("fieldApplyId").is(fieldAppliesVo.getFieldApplyId()));
Update update = Update.update("applyStatus", fieldAppliesVo.getApplyStatus());
update.set("reject", fieldAppliesVo.getReject());
update.set("auditUid", fieldAppliesVo.getAuditUid());
update.set("auditName", fieldAppliesVo.getAuditName());
update.set("auditedAt", fieldAppliesVo.getAuditedAt());
update.set("updatedAt", fieldAppliesVo.getUpdatedAt());
mongoTemplate.updateFirst(query, update, MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
// 场地申请 sync redis
List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(fieldAppliesVo.getUid());
merchantRedisUtil.setFieldAppliesVoByUid(fieldAppliesVo.getUid(), fieldAppliesVos, fieldAppliesVo);
} else { } else {
// 创建逻辑 // 创建逻辑
// 公司 entity mysql // 公司 entity mysql
MerchantCompanies companiesEntity = new MerchantCompanies(); MerchantCompanies companiesEntity = new MerchantCompanies();
companiesEntity.setCompanyId(IDGenerator.nextSnowId()); companiesEntity.setCompanyId(IDGenerator.nextSnowId());
companiesEntity.setName(fieldAppliesVo.getCompanyName()); companiesEntity.setName(fieldAppliesEntity.getCompanyName());
companiesEntity.setLicenseCode(fieldAppliesVo.getLicenseCode()); companiesEntity.setLicenseCode(fieldAppliesEntity.getLicenseCode());
companiesEntity.setLicenseImg(fieldAppliesVo.getLicenseImg()); companiesEntity.setLicenseImg(fieldAppliesEntity.getLicenseImg());
companiesEntity.setLegalName(fieldAppliesVo.getLegalName()); companiesEntity.setLegalName(fieldAppliesEntity.getLegalName());
companiesEntity.setLegalIdentity(fieldAppliesVo.getLegalIdentity()); companiesEntity.setLegalIdentity(fieldAppliesEntity.getLegalIdentity());
companiesEntity.setLegalIdentityObverse(fieldAppliesVo.getLegalIdentityObverse()); companiesEntity.setLegalIdentityObverse(fieldAppliesEntity.getLegalIdentityObverse());
companiesEntity.setLegalIdentityReverse(fieldAppliesVo.getLegalIdentityReverse()); companiesEntity.setLegalIdentityReverse(fieldAppliesEntity.getLegalIdentityReverse());
companiesEntity.setCreatedAt(now); companiesEntity.setCreatedAt(now);
boolean success = merchantCompaniesAdminService.save(companiesEntity); boolean success = merchantCompaniesAdminService.save(companiesEntity);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 公司 vo
MerchantCompaniesVo companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
// 场地 entity mysql // 场地 entity mysql
MerchantFields fieldsEntity = new MerchantFields(); MerchantFields fieldsEntity = new MerchantFields();
fieldsEntity.setFieldId(IDGenerator.nextSnowId()); fieldsEntity.setFieldId(IDGenerator.nextSnowId());
fieldsEntity.setIsOnline(1); fieldsEntity.setIsOnline(1);
fieldsEntity.setClaimStatus(1); fieldsEntity.setClaimStatus(1);
fieldsEntity.setUid(uid); fieldsEntity.setUid(fieldAppliesEntity.getUid());
fieldsEntity.setIsCheck(0); fieldsEntity.setIsCheck(0);
fieldsEntity.setName(fieldAppliesVo.getName()); fieldsEntity.setName(fieldAppliesEntity.getName());
fieldsEntity.setLogo(fieldAppliesVo.getLogo()); fieldsEntity.setLogo(fieldAppliesEntity.getLogo());
fieldsEntity.setBackground(fieldAppliesVo.getBackground()); fieldsEntity.setBackground(fieldAppliesEntity.getBackground());
fieldsEntity.setDescription(fieldAppliesVo.getDescription()); fieldsEntity.setDescription(fieldAppliesEntity.getDescription());
fieldsEntity.setBuiltDate(LocalDate.parse(fieldAppliesVo.getBuiltDate())); fieldsEntity.setBuiltDate(fieldAppliesEntity.getBuiltDate());
fieldsEntity.setProvinceId(fieldAppliesVo.getProvinceId()); fieldsEntity.setProvinceId(fieldAppliesEntity.getProvinceId());
fieldsEntity.setProvinceName(fieldAppliesVo.getProvinceName()); fieldsEntity.setProvinceName(fieldAppliesEntity.getProvinceName());
fieldsEntity.setCityId(fieldAppliesVo.getCityId()); fieldsEntity.setCityId(fieldAppliesEntity.getCityId());
fieldsEntity.setCityName(fieldAppliesVo.getCityName()); fieldsEntity.setCityName(fieldAppliesEntity.getCityName());
fieldsEntity.setDistrictId(fieldAppliesVo.getDistrictId()); fieldsEntity.setDistrictId(fieldAppliesEntity.getDistrictId());
fieldsEntity.setDistrictName(fieldAppliesVo.getDistrictName()); fieldsEntity.setDistrictName(fieldAppliesEntity.getDistrictName());
fieldsEntity.setAddress(fieldAppliesVo.getAddress()); fieldsEntity.setAddress(fieldAppliesEntity.getAddress());
fieldsEntity.setLongitude(fieldAppliesVo.getLongitude()); fieldsEntity.setLongitude(fieldAppliesEntity.getLongitude());
fieldsEntity.setLatitude(fieldAppliesVo.getLatitude()); fieldsEntity.setLatitude(fieldAppliesEntity.getLatitude());
fieldsEntity.setContactName(fieldAppliesVo.getContactName()); fieldsEntity.setContactName(fieldAppliesEntity.getContactName());
fieldsEntity.setContactEmail(fieldAppliesVo.getContactEmail()); fieldsEntity.setContactEmail(fieldAppliesEntity.getContactEmail());
fieldsEntity.setCompanyId(companiesVo.getCompanyId()); fieldsEntity.setCompanyId(companiesEntity.getCompanyId());
fieldsEntity.setCreatedAt(now); fieldsEntity.setCreatedAt(now);
success = merchantFieldsAdminService.save(fieldsEntity); success = merchantFieldsAdminService.save(fieldsEntity);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 场地 vo
MerchantFieldsVo fieldsVo = MerchantFieldsVo.getNew();
fieldsVo.copy(fieldsEntity);
fieldsVo.setCompaniesVo(companiesVo);
// 场地申请 vo // 场地申请 entity mysql
fieldAppliesVo.setApplyStatus(1); fieldAppliesEntity.setApplyStatus(1);
fieldAppliesVo.setReject(""); fieldAppliesEntity.setReject("");
fieldAppliesVo.setAuditUid(auditUid); fieldAppliesEntity.setAuditUid(auditUid);
fieldAppliesVo.setAuditName(auditName); fieldAppliesEntity.setAuditName(auditName);
fieldAppliesVo.setAuditedAt(now); fieldAppliesEntity.setAuditedAt(now);
fieldAppliesVo.setUpdatedAt(now); fieldAppliesEntity.setUpdatedAt(now);
fieldAppliesVo.setFieldId(fieldsVo.getFieldId()); fieldAppliesEntity.setFieldId(fieldsEntity.getFieldId());
// 场地申请 mysql
LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class); LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class);
fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesVo.getFieldApplyId()); fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesEntity.getFieldApplyId());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesVo.getApplyStatus()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesEntity.getApplyStatus());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesVo.getReject()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesEntity.getReject());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesVo.getAuditUid()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesEntity.getAuditUid());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesVo.getAuditName()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesEntity.getAuditName());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesVo.getAuditedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesEntity.getAuditedAt());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesVo.getUpdatedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesEntity.getUpdatedAt());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getFieldId, fieldAppliesVo.getFieldId()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getFieldId, fieldAppliesEntity.getFieldId());
success = update(fieldAppliesLambdaUpdateWrapper); success = update(fieldAppliesLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 公司 vo
MerchantCompaniesVo companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
// 场地 vo
MerchantFieldsVo fieldsVo = MerchantFieldsVo.getNew();
fieldsVo.copy(fieldsEntity);
fieldsVo.setCompaniesVo(companiesVo);
// 场地申请 vo
MerchantFieldAppliesVo fieldAppliesVo = MerchantFieldAppliesVo.getNew();
fieldAppliesVo.copy(fieldAppliesEntity);
// 场地 sync mongo // 场地 sync mongo
merchantMongoUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo); merchantMongoUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
// 场地 sync redis // 场地 sync redis
merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo); merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
// 场地申请 sync mongo
Query query = Query.query(Criteria.where("fieldApplyId").is(fieldAppliesVo.getFieldApplyId()));
Update update = Update.update("applyStatus", fieldAppliesVo.getApplyStatus());
update.set("reject", fieldAppliesVo.getReject());
update.set("auditUid", fieldAppliesVo.getAuditUid());
update.set("auditName", fieldAppliesVo.getAuditName());
update.set("auditedAt", fieldAppliesVo.getAuditedAt());
update.set("updatedAt", fieldAppliesVo.getUpdatedAt());
update.set("fieldId", fieldAppliesVo.getFieldId());
mongoTemplate.updateFirst(query, update, MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
// 场地申请 sync redis // 场地申请 sync redis
merchantRedisUtil.setFieldAppliesVosByUid(uid, fieldAppliesVos); List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(fieldAppliesVo.getUid());
merchantRedisUtil.setFieldAppliesVoByUid(fieldAppliesVo.getUid(), fieldAppliesVos, fieldAppliesVo);
} }
return true; return true;
} }
@Override @Override
public boolean applyReject(String uid, String fieldApplyId, String auditUid, String auditName, String reject) { public boolean applyReject(String fieldApplyId, String auditUid, String auditName, String reject) {
List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(uid); LocalDateTime now = LocalDateTime.now();
if (CollectionUtils.isEmpty(fieldAppliesVos)) {
// todo error // 场地申请 entity
throw new LiquidnetServiceException(); LambdaQueryWrapper<MerchantFieldApplies> fieldAppliesLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantFieldApplies.class);
} fieldAppliesLambdaQueryWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldApplyId);
int idx = IntStream.range(0, fieldAppliesVos.size()) MerchantFieldApplies fieldAppliesEntity = getOne(fieldAppliesLambdaQueryWrapper);
.filter(i -> fieldAppliesVos.get(i).getFieldApplyId().equals(fieldApplyId)) if (0 != fieldAppliesEntity.getApplyStatus()) {
.findFirst()
.orElse(-1);
if (idx < 0) {
// todo error
throw new LiquidnetServiceException();
}
MerchantFieldAppliesVo fieldAppliesVo = fieldAppliesVos.get(idx);
if (0 != fieldAppliesVo.getApplyStatus()) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
LocalDateTime now = LocalDateTime.now(); if (fieldAppliesEntity.getApplyType().equals("claim")) {
if (fieldAppliesVo.getApplyType().equals("claim")) {
// 驳回认领逻辑 // 驳回认领逻辑
// 场地 vo // 场地 entity mysql
MerchantFieldsVo fieldsVo = merchantRedisUtil.getFieldsVoByFieldId(fieldAppliesVo.getFieldId()); LambdaQueryWrapper<MerchantFields> fieldsLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantFields.class);
if (null == fieldsVo) { fieldsLambdaQueryWrapper.eq(MerchantFields::getFieldId, fieldAppliesEntity.getFieldId());
MerchantFields fieldsEntity = merchantFieldsAdminService.getOne(fieldsLambdaQueryWrapper);
if (null == fieldsEntity) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
if (2 != fieldsVo.getClaimStatus() || !fieldsVo.getUid().equals(uid)) { if (2 != fieldsEntity.getClaimStatus() || !fieldsEntity.getUid().equals(fieldAppliesEntity.getUid())) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
fieldsVo.setClaimStatus(0); fieldsEntity.setClaimStatus(0);
fieldsVo.setUid(""); fieldsEntity.setUid("");
fieldsVo.setUpdatedAt(now); fieldsEntity.setUpdatedAt(now);
// 场地 mysql
LambdaUpdateWrapper<MerchantFields> fieldsLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFields.class); LambdaUpdateWrapper<MerchantFields> fieldsLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFields.class);
fieldsLambdaUpdateWrapper.eq(MerchantFields::getFieldId, fieldsVo.getFieldId()); fieldsLambdaUpdateWrapper.eq(MerchantFields::getFieldId, fieldsEntity.getFieldId());
fieldsLambdaUpdateWrapper.set(MerchantFields::getClaimStatus, fieldsVo.getClaimStatus()); fieldsLambdaUpdateWrapper.set(MerchantFields::getClaimStatus, fieldsEntity.getClaimStatus());
fieldsLambdaUpdateWrapper.set(MerchantFields::getUid, fieldsVo.getUid()); fieldsLambdaUpdateWrapper.set(MerchantFields::getUid, fieldsEntity.getUid());
fieldsLambdaUpdateWrapper.set(MerchantFields::getUpdatedAt, fieldsVo.getUpdatedAt()); fieldsLambdaUpdateWrapper.set(MerchantFields::getUpdatedAt, fieldsEntity.getUpdatedAt());
boolean success = merchantFieldsAdminService.update(fieldsLambdaUpdateWrapper); boolean success = merchantFieldsAdminService.update(fieldsLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 场地申请 vo // 场地申请 entity mysql
fieldAppliesVo.setApplyStatus(2); fieldAppliesEntity.setApplyStatus(2);
fieldAppliesVo.setReject(reject); fieldAppliesEntity.setReject(reject);
fieldAppliesVo.setAuditUid(auditUid); fieldAppliesEntity.setAuditUid(auditUid);
fieldAppliesVo.setAuditName(auditName); fieldAppliesEntity.setAuditName(auditName);
fieldAppliesVo.setAuditedAt(now); fieldAppliesEntity.setAuditedAt(now);
fieldAppliesVo.setUpdatedAt(now); fieldAppliesEntity.setUpdatedAt(now);
// 场地申请 mysql
LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class); LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class);
fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesVo.getFieldApplyId()); fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesEntity.getFieldApplyId());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesVo.getApplyStatus()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesEntity.getApplyStatus());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesVo.getReject()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesEntity.getReject());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesVo.getAuditUid()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesEntity.getAuditUid());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesVo.getAuditName()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesEntity.getAuditName());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesVo.getAuditedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesEntity.getAuditedAt());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesVo.getUpdatedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesEntity.getUpdatedAt());
success = update(fieldAppliesLambdaUpdateWrapper); success = update(fieldAppliesLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 场地 vo
MerchantFieldsVo fieldsVo = merchantRedisUtil.getFieldsVoByFieldId(fieldsEntity.getFieldId());
fieldsVo.setClaimStatus(0);
fieldsVo.setUid("");
fieldsVo.setUpdatedAt(now);
// 场地申请 vo
MerchantFieldAppliesVo fieldAppliesVo = MerchantFieldAppliesVo.getNew();
fieldAppliesVo.copy(fieldAppliesEntity);
// 场地 sync mongo // 场地 sync mongo
Query query = Query.query(Criteria.where("fieldId").is(fieldsVo.getFieldId())); merchantMongoUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
Update update = Update.update("claimStatus", fieldsVo.getClaimStatus()).set("uid", fieldsVo.getUid()).set("updatedAt", fieldsVo.getUpdatedAt());
mongoTemplate.updateFirst(query, update, MerchantFieldsVo.class, MerchantFieldsVo.class.getSimpleName());
// 场地 sync redis // 场地 sync redis
merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo); merchantRedisUtil.setFieldsVoByFieldId(fieldsVo.getFieldId(), fieldsVo);
// 场地申请 sync redis // 场地申请 sync mongo
merchantRedisUtil.setFieldAppliesVosByUid(uid, fieldAppliesVos); Query query = Query.query(Criteria.where("fieldApplyId").is(fieldAppliesVo.getFieldApplyId()));
Update update = Update.update("applyStatus", fieldAppliesVo.getApplyStatus());
update.set("reject", fieldAppliesVo.getReject());
update.set("auditUid", fieldAppliesVo.getAuditUid());
update.set("auditName", fieldAppliesVo.getAuditName());
update.set("auditedAt", fieldAppliesVo.getAuditedAt());
update.set("updatedAt", fieldAppliesVo.getUpdatedAt());
mongoTemplate.updateFirst(query, update, MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
// 场地申请 sync redis
List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(fieldAppliesVo.getUid());
merchantRedisUtil.setFieldAppliesVoByUid(fieldAppliesVo.getUid(), fieldAppliesVos, fieldAppliesVo);
} else { } else {
// 驳回创建逻辑 // 驳回创建逻辑
// 场地申请 vo // 场地申请 entity mysql
fieldAppliesVo.setApplyStatus(2); fieldAppliesEntity.setApplyStatus(2);
fieldAppliesVo.setReject(reject); fieldAppliesEntity.setReject(reject);
fieldAppliesVo.setAuditUid(auditUid); fieldAppliesEntity.setAuditUid(auditUid);
fieldAppliesVo.setAuditName(auditName); fieldAppliesEntity.setAuditName(auditName);
fieldAppliesVo.setAuditedAt(now); fieldAppliesEntity.setAuditedAt(now);
fieldAppliesVo.setUpdatedAt(now); fieldAppliesEntity.setUpdatedAt(now);
// 场地申请 mysql
LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class); LambdaUpdateWrapper<MerchantFieldApplies> fieldAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantFieldApplies.class);
fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesVo.getFieldApplyId()); fieldAppliesLambdaUpdateWrapper.eq(MerchantFieldApplies::getFieldApplyId, fieldAppliesEntity.getFieldApplyId());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesVo.getApplyStatus()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getApplyStatus, fieldAppliesEntity.getApplyStatus());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesVo.getReject()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getReject, fieldAppliesEntity.getReject());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesVo.getAuditUid()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditUid, fieldAppliesEntity.getAuditUid());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesVo.getAuditName()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditName, fieldAppliesEntity.getAuditName());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesVo.getAuditedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getAuditedAt, fieldAppliesEntity.getAuditedAt());
fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesVo.getUpdatedAt()); fieldAppliesLambdaUpdateWrapper.set(MerchantFieldApplies::getUpdatedAt, fieldAppliesEntity.getUpdatedAt());
boolean success = update(fieldAppliesLambdaUpdateWrapper); boolean success = update(fieldAppliesLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 场地申请 vo
MerchantFieldAppliesVo fieldAppliesVo = MerchantFieldAppliesVo.getNew();
fieldAppliesVo.copy(fieldAppliesEntity);
// 场地申请 sync mongo
Query query = Query.query(Criteria.where("fieldApplyId").is(fieldAppliesVo.getFieldApplyId()));
Update update = Update.update("applyStatus", fieldAppliesVo.getApplyStatus());
update.set("reject", fieldAppliesVo.getReject());
update.set("auditUid", fieldAppliesVo.getAuditUid());
update.set("auditName", fieldAppliesVo.getAuditName());
update.set("auditedAt", fieldAppliesVo.getAuditedAt());
update.set("updatedAt", fieldAppliesVo.getUpdatedAt());
mongoTemplate.updateFirst(query, update, MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
// 场地申请 sync redis // 场地申请 sync redis
merchantRedisUtil.setFieldAppliesVosByUid(uid, fieldAppliesVos); List<MerchantFieldAppliesVo> fieldAppliesVos = merchantRedisUtil.getFieldAppliesVosByUid(fieldAppliesVo.getUid());
merchantRedisUtil.setFieldAppliesVoByUid(fieldAppliesVo.getUid(), fieldAppliesVos, fieldAppliesVo);
} }
return true; return true;
......
package com.liquidnet.client.admin.zhengzai.merchant.service.impl; package com.liquidnet.client.admin.zhengzai.merchant.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
...@@ -19,12 +20,14 @@ import com.liquidnet.service.merchant.entity.MerchantSponsors; ...@@ -19,12 +20,14 @@ import com.liquidnet.service.merchant.entity.MerchantSponsors;
import com.liquidnet.service.merchant.mapper.MerchantSponsorAppliesMapper; import com.liquidnet.service.merchant.mapper.MerchantSponsorAppliesMapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.stream.IntStream;
@Slf4j @Slf4j
@Service @Service
...@@ -36,6 +39,9 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant ...@@ -36,6 +39,9 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant
@Autowired @Autowired
MerchantMongoUtil merchantMongoUtil; MerchantMongoUtil merchantMongoUtil;
@Autowired
MongoTemplate mongoTemplate;
@Autowired @Autowired
IMerchantSponsorsAdminService merchantSponsorsAdminService; IMerchantSponsorsAdminService merchantSponsorsAdminService;
...@@ -43,68 +49,58 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant ...@@ -43,68 +49,58 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant
IMerchantCompaniesAdminService merchantCompaniesAdminService; IMerchantCompaniesAdminService merchantCompaniesAdminService;
@Override @Override
public boolean applyApprove(String uid, String sponsorApplyId, String auditUid, String auditName) { public boolean applyApprove(String sponsorApplyId, String auditUid, String auditName) {
List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRedisUtil.getSponsorAppliesVosByUid(uid); LocalDateTime now = LocalDateTime.now();
if (CollectionUtils.isEmpty(sponsorAppliesVos)) {
// todo error // 主办申请 entity
throw new LiquidnetServiceException(); LambdaQueryWrapper<MerchantSponsorApplies> sponsorAppliesLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantSponsorApplies.class);
} sponsorAppliesLambdaQueryWrapper.eq(MerchantSponsorApplies::getSponsorApplyId, sponsorApplyId);
int idx = IntStream.range(0, sponsorAppliesVos.size()) MerchantSponsorApplies sponsorAppliesEntity = getOne(sponsorAppliesLambdaQueryWrapper);
.filter(i -> sponsorAppliesVos.get(i).getSponsorApplyId().equals(sponsorApplyId)) if (0 != sponsorAppliesEntity.getApplyStatus()) {
.findFirst()
.orElse(-1);
if (idx < 0) {
// todo error
throw new LiquidnetServiceException();
}
MerchantSponsorAppliesVo sponsorAppliesVo = sponsorAppliesVos.get(idx);
if (0 != sponsorAppliesVo.getApplyStatus()) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
LocalDateTime now = LocalDateTime.now();
// 创建逻辑 // 创建逻辑
MerchantCompaniesVo companiesVo = null;
if (!sponsorAppliesVo.getCompanyName().isEmpty()) { // 公司 entity mysql
// 公司 entity mysql MerchantCompanies companiesEntity = null;
MerchantCompanies companiesEntity = new MerchantCompanies(); if (!sponsorAppliesEntity.getCompanyName().isEmpty()) {
companiesEntity = new MerchantCompanies();
companiesEntity.setCompanyId(IDGenerator.nextSnowId()); companiesEntity.setCompanyId(IDGenerator.nextSnowId());
companiesEntity.setName(sponsorAppliesVo.getCompanyName()); companiesEntity.setName(sponsorAppliesEntity.getCompanyName());
companiesEntity.setLicenseCode(sponsorAppliesVo.getLicenseCode()); companiesEntity.setLicenseCode(sponsorAppliesEntity.getLicenseCode());
companiesEntity.setLicenseImg(sponsorAppliesVo.getLicenseImg()); companiesEntity.setLicenseImg(sponsorAppliesEntity.getLicenseImg());
companiesEntity.setLegalName(sponsorAppliesVo.getLegalName()); companiesEntity.setLegalName(sponsorAppliesEntity.getLegalName());
companiesEntity.setLegalIdentity(sponsorAppliesVo.getLegalIdentity()); companiesEntity.setLegalIdentity(sponsorAppliesEntity.getLegalIdentity());
companiesEntity.setLegalIdentityObverse(sponsorAppliesVo.getLegalIdentityObverse()); companiesEntity.setLegalIdentityObverse(sponsorAppliesEntity.getLegalIdentityObverse());
companiesEntity.setLegalIdentityReverse(sponsorAppliesVo.getLegalIdentityReverse()); companiesEntity.setLegalIdentityReverse(sponsorAppliesEntity.getLegalIdentityReverse());
companiesEntity.setCreatedAt(now); companiesEntity.setCreatedAt(now);
boolean success = merchantCompaniesAdminService.save(companiesEntity); boolean success = merchantCompaniesAdminService.save(companiesEntity);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 公司 vo
companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
} }
// 主办 entity mysql // 主办 entity mysql
MerchantSponsors sponsorsEntity = new MerchantSponsors(); MerchantSponsors sponsorsEntity = new MerchantSponsors();
sponsorsEntity.setSponsorId(IDGenerator.nextSnowId()); sponsorsEntity.setSponsorId(IDGenerator.nextSnowId());
sponsorsEntity.setIsOnline(1); sponsorsEntity.setIsOnline(1);
sponsorsEntity.setUid(uid); sponsorsEntity.setUid(sponsorAppliesEntity.getUid());
sponsorsEntity.setName(sponsorAppliesVo.getName()); sponsorsEntity.setName(sponsorAppliesEntity.getName());
sponsorsEntity.setLogo(sponsorAppliesVo.getLogo()); sponsorsEntity.setLogo(sponsorAppliesEntity.getLogo());
sponsorsEntity.setBackground(sponsorAppliesVo.getBackground()); sponsorsEntity.setBackground(sponsorAppliesEntity.getBackground());
sponsorsEntity.setDescription(sponsorAppliesVo.getDescription()); sponsorsEntity.setDescription(sponsorAppliesEntity.getDescription());
sponsorsEntity.setContactName(sponsorAppliesVo.getContactName()); sponsorsEntity.setContactName(sponsorAppliesEntity.getContactName());
sponsorsEntity.setContactIdentity(sponsorAppliesVo.getContactIdentity()); sponsorsEntity.setContactIdentity(sponsorAppliesEntity.getContactIdentity());
sponsorsEntity.setContactIdentityObverse(sponsorAppliesVo.getContactIdentityObverse()); sponsorsEntity.setContactIdentityObverse(sponsorAppliesEntity.getContactIdentityObverse());
sponsorsEntity.setContactIdentityReverse(sponsorAppliesVo.getContactIdentityReverse()); sponsorsEntity.setContactIdentityReverse(sponsorAppliesEntity.getContactIdentityReverse());
sponsorsEntity.setContactEmail(sponsorAppliesVo.getContactEmail()); sponsorsEntity.setContactEmail(sponsorAppliesEntity.getContactEmail());
if (null != companiesVo) { if (null != companiesEntity) {
sponsorsEntity.setCompanyId(companiesVo.getCompanyId()); sponsorsEntity.setCompanyId(companiesEntity.getCompanyId());
} else {
sponsorsEntity.setCompanyId("");
} }
sponsorsEntity.setCreatedAt(now); sponsorsEntity.setCreatedAt(now);
boolean success = merchantSponsorsAdminService.save(sponsorsEntity); boolean success = merchantSponsorsAdminService.save(sponsorsEntity);
...@@ -112,52 +108,123 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant ...@@ -112,52 +108,123 @@ public class MerchantSponsorAppliesAdminServiceImpl extends ServiceImpl<Merchant
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 主办 vo
MerchantSponsorsVo sponsorsVo = MerchantSponsorsVo.getNew();
sponsorsVo.copy(sponsorsEntity);
if (null != companiesVo) {
sponsorsVo.setCompaniesVo(companiesVo);
}
// 主办申请 vo // 主办申请 entity mysql
sponsorAppliesVo.setApplyStatus(1); sponsorAppliesEntity.setApplyStatus(1);
sponsorAppliesVo.setReject(""); sponsorAppliesEntity.setReject("");
sponsorAppliesVo.setAuditUid(auditUid); sponsorAppliesEntity.setAuditUid(auditUid);
sponsorAppliesVo.setAuditName(auditName); sponsorAppliesEntity.setAuditName(auditName);
sponsorAppliesVo.setAuditedAt(now); sponsorAppliesEntity.setAuditedAt(now);
sponsorAppliesVo.setUpdatedAt(now); sponsorAppliesEntity.setUpdatedAt(now);
sponsorAppliesVo.setSponsorId(sponsorsVo.getSponsorId()); sponsorAppliesEntity.setSponsorId(sponsorsEntity.getSponsorId());
// 主办申请 mysql
LambdaUpdateWrapper<MerchantSponsorApplies> sponsorAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantSponsorApplies.class); LambdaUpdateWrapper<MerchantSponsorApplies> sponsorAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantSponsorApplies.class);
sponsorAppliesLambdaUpdateWrapper.eq(MerchantSponsorApplies::getSponsorApplyId, sponsorAppliesVo.getSponsorApplyId()); sponsorAppliesLambdaUpdateWrapper.eq(MerchantSponsorApplies::getSponsorApplyId, sponsorAppliesEntity.getSponsorApplyId());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getApplyStatus, sponsorAppliesVo.getApplyStatus()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getApplyStatus, sponsorAppliesEntity.getApplyStatus());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getReject, sponsorAppliesVo.getReject()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getReject, sponsorAppliesEntity.getReject());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditUid, sponsorAppliesVo.getAuditUid()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditUid, sponsorAppliesEntity.getAuditUid());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditName, sponsorAppliesVo.getAuditName()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditName, sponsorAppliesEntity.getAuditName());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditedAt, sponsorAppliesVo.getAuditedAt()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditedAt, sponsorAppliesEntity.getAuditedAt());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getUpdatedAt, sponsorAppliesVo.getUpdatedAt()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getUpdatedAt, sponsorAppliesEntity.getUpdatedAt());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getSponsorId, sponsorAppliesVo.getSponsorId()); sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getSponsorId, sponsorAppliesEntity.getSponsorId());
success = update(sponsorAppliesLambdaUpdateWrapper); success = update(sponsorAppliesLambdaUpdateWrapper);
if (!success) { if (!success) {
// todo error // todo error
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
// 主办 vo
MerchantSponsorsVo sponsorsVo = MerchantSponsorsVo.getNew();
sponsorsVo.copy(sponsorsEntity);
if (null != companiesEntity) {
// 公司 vo
MerchantCompaniesVo companiesVo = MerchantCompaniesVo.getNew();
companiesVo.copy(companiesEntity);
sponsorsVo.setCompaniesVo(companiesVo);
}
// 主办申请 vo
MerchantSponsorAppliesVo sponsorAppliesVo = MerchantSponsorAppliesVo.getNew();
sponsorAppliesVo.copy(sponsorAppliesEntity);
// 主办 sync mongo // 主办 sync mongo
merchantMongoUtil.setSponsorsVoBySponsorId(sponsorsVo.getSponsorId(), sponsorsVo); merchantMongoUtil.setSponsorsVoBySponsorId(sponsorsVo.getSponsorId(), sponsorsVo);
// 主办 sync redis // 主办 sync redis
merchantRedisUtil.setSponsorsVoBySponsorId(sponsorsVo.getSponsorId(), sponsorsVo); merchantRedisUtil.setSponsorsVoBySponsorId(sponsorsVo.getSponsorId(), sponsorsVo);
// 主办申请 sync mongo
Query query = Query.query(Criteria.where("sponsorApplyId").is(sponsorAppliesVo.getSponsorApplyId()));
Update update = Update.update("applyStatus", sponsorAppliesVo.getApplyStatus());
update.set("reject", sponsorAppliesVo.getReject());
update.set("auditUid", sponsorAppliesVo.getAuditUid());
update.set("auditName", sponsorAppliesVo.getAuditName());
update.set("auditedAt", sponsorAppliesVo.getAuditedAt());
update.set("updatedAt", sponsorAppliesVo.getUpdatedAt());
update.set("sponsorId", sponsorAppliesVo.getSponsorId());
mongoTemplate.updateFirst(query, update, MerchantSponsorAppliesVo.class, MerchantSponsorAppliesVo.class.getSimpleName());
// 主办申请 sync redis // 主办申请 sync redis
merchantRedisUtil.setSponsorAppliesVosByUid(uid, sponsorAppliesVos); List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRedisUtil.getSponsorAppliesVosByUid(sponsorAppliesVo.getUid());
merchantRedisUtil.setSponsorAppliesVoByUid(sponsorAppliesVo.getUid(), sponsorAppliesVos, sponsorAppliesVo);
return true; return true;
} }
@Override @Override
public boolean applyReject(String uid, String sponsorApplyId, String auditUid, String auditName, String reject) { public boolean applyReject(String sponsorApplyId, String auditUid, String auditName, String reject) {
LocalDateTime now = LocalDateTime.now();
// 主办申请 entity
LambdaQueryWrapper<MerchantSponsorApplies> sponsorAppliesLambdaQueryWrapper = Wrappers.lambdaQuery(MerchantSponsorApplies.class);
sponsorAppliesLambdaQueryWrapper.eq(MerchantSponsorApplies::getSponsorApplyId, sponsorApplyId);
MerchantSponsorApplies sponsorAppliesEntity = getOne(sponsorAppliesLambdaQueryWrapper);
if (0 != sponsorAppliesEntity.getApplyStatus()) {
// todo error
throw new LiquidnetServiceException();
}
// 驳回逻辑
// 主办申请 entity mysql
sponsorAppliesEntity.setApplyStatus(2);
sponsorAppliesEntity.setReject(reject);
sponsorAppliesEntity.setAuditUid(auditUid);
sponsorAppliesEntity.setAuditName(auditName);
sponsorAppliesEntity.setAuditedAt(now);
sponsorAppliesEntity.setUpdatedAt(now);
LambdaUpdateWrapper<MerchantSponsorApplies> sponsorAppliesLambdaUpdateWrapper = Wrappers.lambdaUpdate(MerchantSponsorApplies.class);
sponsorAppliesLambdaUpdateWrapper.eq(MerchantSponsorApplies::getSponsorApplyId, sponsorAppliesEntity.getSponsorApplyId());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getApplyStatus, sponsorAppliesEntity.getApplyStatus());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getReject, sponsorAppliesEntity.getReject());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditUid, sponsorAppliesEntity.getAuditUid());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditName, sponsorAppliesEntity.getAuditName());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getAuditedAt, sponsorAppliesEntity.getAuditedAt());
sponsorAppliesLambdaUpdateWrapper.set(MerchantSponsorApplies::getUpdatedAt, sponsorAppliesEntity.getUpdatedAt());
boolean success = update(sponsorAppliesLambdaUpdateWrapper);
if (!success) {
// todo error
throw new LiquidnetServiceException();
}
// 主办申请 vo
MerchantSponsorAppliesVo sponsorAppliesVo = MerchantSponsorAppliesVo.getNew();
sponsorAppliesVo.copy(sponsorAppliesEntity);
// 主办申请 sync mongo
Query query = Query.query(Criteria.where("sponsorApplyId").is(sponsorAppliesVo.getSponsorApplyId()));
Update update = Update.update("applyStatus", sponsorAppliesVo.getApplyStatus());
update.set("reject", sponsorAppliesVo.getReject());
update.set("auditUid", sponsorAppliesVo.getAuditUid());
update.set("auditName", sponsorAppliesVo.getAuditName());
update.set("auditedAt", sponsorAppliesVo.getAuditedAt());
update.set("updatedAt", sponsorAppliesVo.getUpdatedAt());
update.set("sponsorId", sponsorAppliesVo.getSponsorId());
mongoTemplate.updateFirst(query, update, MerchantSponsorAppliesVo.class, MerchantSponsorAppliesVo.class.getSimpleName());
// 主办申请 sync redis
List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRedisUtil.getSponsorAppliesVosByUid(sponsorAppliesVo.getUid());
merchantRedisUtil.setSponsorAppliesVoByUid(sponsorAppliesVo.getUid(), sponsorAppliesVos, sponsorAppliesVo);
return true; return true;
} }
......
package com.liquidnet.client.admin.zhengzai.merchant.utils; package com.liquidnet.client.admin.zhengzai.merchant.utils;
import com.liquidnet.service.merchant.dto.vo.MerchantFieldsVo; import com.liquidnet.service.merchant.dto.vo.*;
import com.liquidnet.service.merchant.dto.vo.MerchantSponsorsVo;
import org.bson.Document; import org.bson.Document;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
...@@ -11,6 +10,8 @@ import org.springframework.data.mongodb.core.query.Query; ...@@ -11,6 +10,8 @@ import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update; import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
@Component @Component
public class MerchantMongoUtil { public class MerchantMongoUtil {
@Autowired @Autowired
...@@ -41,4 +42,16 @@ public class MerchantMongoUtil { ...@@ -41,4 +42,16 @@ public class MerchantMongoUtil {
Update update = Update.fromDocument(document); Update update = Update.fromDocument(document);
mongoTemplate.upsert(query, update, MerchantSponsorsVo.class, MerchantSponsorsVo.class.getSimpleName()); mongoTemplate.upsert(query, update, MerchantSponsorsVo.class, MerchantSponsorsVo.class.getSimpleName());
} }
public List<MerchantFieldAppliesVo> getFieldAppliesVosByUid(String uid) {
return mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("deletedAt").is(null)), MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
}
public List<MerchantSponsorAppliesVo> getSponsorAppliesVosByUid(String uid) {
return mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("deletedAt").is(null)), MerchantSponsorAppliesVo.class, MerchantSponsorAppliesVo.class.getSimpleName());
}
public List<MerchantAuthorizationRecordsVo> getCheckersAuthorizationRecordsVosByCuid(String cuid, String performanceId) {
return mongoTemplate.find(Query.query(Criteria.where("uidRole").is("checker").and("cuid").is(cuid).and("performanceId").is(performanceId).and("deletedAt").is(null)), MerchantAuthorizationRecordsVo.class, MerchantAuthorizationRecordsVo.class.getSimpleName());
}
} }
...@@ -29,7 +29,7 @@ public class MerchantRedisUtil { ...@@ -29,7 +29,7 @@ public class MerchantRedisUtil {
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vo) { if (null == vo) {
vo = mongoUtil.getFieldsVoByFieldId(fieldId); vo = mongoUtil.getFieldsVoByFieldId(fieldId);
this.setFieldsVoByFieldId(fieldId, vo); redisUtil.set(key, vo);
} }
return vo; return vo;
} }
...@@ -46,6 +46,10 @@ public class MerchantRedisUtil { ...@@ -46,6 +46,10 @@ public class MerchantRedisUtil {
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
List<MerchantFieldAppliesVo> vos = (List<MerchantFieldAppliesVo>) redisUtil.get(key); List<MerchantFieldAppliesVo> vos = (List<MerchantFieldAppliesVo>) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vos) {
vos = mongoUtil.getFieldAppliesVosByUid(uid);
redisUtil.set(key, vos);
}
return vos; return vos;
} }
...@@ -123,7 +127,7 @@ public class MerchantRedisUtil { ...@@ -123,7 +127,7 @@ public class MerchantRedisUtil {
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vo) { if (null == vo) {
vo = mongoUtil.getSponsorsVoBySponsorId(sponsorId); vo = mongoUtil.getSponsorsVoBySponsorId(sponsorId);
this.setSponsorsVoBySponsorId(sponsorId, vo); redisUtil.set(key, vo);
} }
return vo; return vo;
} }
...@@ -139,6 +143,10 @@ public class MerchantRedisUtil { ...@@ -139,6 +143,10 @@ public class MerchantRedisUtil {
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
List<MerchantSponsorAppliesVo> vos = (List<MerchantSponsorAppliesVo>) redisUtil.get(key); List<MerchantSponsorAppliesVo> vos = (List<MerchantSponsorAppliesVo>) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vos) {
vos = mongoUtil.getSponsorAppliesVosByUid(uid);
redisUtil.set(key, vos);
}
return vos; return vos;
} }
......
...@@ -2,7 +2,10 @@ ...@@ -2,7 +2,10 @@
# 创建集合 # 创建集合
db.createCollection("MerchantFieldsVo"); db.createCollection("MerchantFieldsVo");
db.createCollection("MerchantFieldAppliesVo");
db.createCollection("MerchantSponsorsVo"); db.createCollection("MerchantSponsorsVo");
db.createCollection("MerchantSponsorAppliesVo");
db.createCollection("MerchantAuthorizationRecordsVo");
# 创建索引 # 创建索引
...@@ -10,7 +13,19 @@ db.MerchantFieldsVo.createIndex({fieldId:"hashed"}); ...@@ -10,7 +13,19 @@ db.MerchantFieldsVo.createIndex({fieldId:"hashed"});
db.MerchantFieldsVo.createIndex({isOnline:"hashed"}); db.MerchantFieldsVo.createIndex({isOnline:"hashed"});
db.MerchantFieldsVo.createIndex({uid:"hashed"}); db.MerchantFieldsVo.createIndex({uid:"hashed"});
db.MerchantFieldsVo.createIndex({companyId:"hashed"}); db.MerchantFieldsVo.createIndex({companyId:"hashed"});
db.MerchantSponsorsVo.createIndex({fieldId:"hashed"}); db.MerchantFieldAppliesVo.createIndex({fieldApplyId:"hashed"});
db.MerchantFieldAppliesVo.createIndex({uid:"hashed"});
db.MerchantSponsorsVo.createIndex({sponsorId:"hashed"});
db.MerchantSponsorsVo.createIndex({isOnline:"hashed"}); db.MerchantSponsorsVo.createIndex({isOnline:"hashed"});
db.MerchantSponsorsVo.createIndex({uid:"hashed"}); db.MerchantSponsorsVo.createIndex({uid:"hashed"});
db.MerchantSponsorsVo.createIndex({companyId:"hashed"}); db.MerchantSponsorsVo.createIndex({companyId:"hashed"});
db.MerchantSponsorAppliesVo.createIndex({sponsorApplyId:"hashed"});
db.MerchantSponsorAppliesVo.createIndex({uid:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({authorizationRecordId:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({performanceId:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({uidRole:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({uid:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({cuidRole:"hashed"});
db.MerchantAuthorizationRecordsVo.createIndex({cuid:"hashed"});
package com.liquidnet.service.merchant.service; package com.liquidnet.service.merchant.service;
import com.liquidnet.service.merchant.dto.vo.MerchantFieldsVo; import com.liquidnet.service.merchant.dto.vo.*;
import com.liquidnet.service.merchant.dto.vo.MerchantSponsorsVo;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.List;
@Component @Component
public class MerchantMongoService { public class MerchantMongoService {
@Autowired @Autowired
private MongoTemplate mongoTemplate; private MongoTemplate mongoTemplate;
public MerchantFieldsVo getMerchantFieldsVoByFieldId(String fieldId) { public MerchantFieldsVo getFieldsVoByFieldId(String fieldId) {
return mongoTemplate.findOne(Query.query(Criteria.where("fieldId").is(fieldId)), MerchantFieldsVo.class, MerchantFieldsVo.class.getSimpleName()); return mongoTemplate.findOne(Query.query(Criteria.where("fieldId").is(fieldId)), MerchantFieldsVo.class, MerchantFieldsVo.class.getSimpleName());
} }
public MerchantSponsorsVo getMerchantSponsorsVoBySponsorId(String sponsorId) { public List<MerchantFieldAppliesVo> getFieldAppliesVosByUid(String uid) {
return mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("deletedAt").is(null)), MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
}
public MerchantSponsorsVo getSponsorsVoBySponsorId(String sponsorId) {
return mongoTemplate.findOne(Query.query(Criteria.where("sponsorId").is(sponsorId)), MerchantSponsorsVo.class, MerchantSponsorsVo.class.getSimpleName()); return mongoTemplate.findOne(Query.query(Criteria.where("sponsorId").is(sponsorId)), MerchantSponsorsVo.class, MerchantSponsorsVo.class.getSimpleName());
} }
public List<MerchantSponsorAppliesVo> getSponsorAppliesVosByUid(String uid) {
return mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("deletedAt").is(null)), MerchantSponsorAppliesVo.class, MerchantSponsorAppliesVo.class.getSimpleName());
}
public List<MerchantAuthorizationRecordsVo> getCheckersAuthorizationRecordsVosByCuid(String cuid, String performanceId) {
return mongoTemplate.find(Query.query(Criteria.where("uidRole").is("checker").and("cuid").is(cuid).and("performanceId").is(performanceId).and("deletedAt").is(null)), MerchantAuthorizationRecordsVo.class, MerchantAuthorizationRecordsVo.class.getSimpleName());
}
} }
...@@ -28,8 +28,8 @@ public class MerchantRdmService { ...@@ -28,8 +28,8 @@ public class MerchantRdmService {
MerchantFieldsVo vo = (MerchantFieldsVo) redisUtil.get(key); MerchantFieldsVo vo = (MerchantFieldsVo) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vo) { if (null == vo) {
vo = merchantMongoService.getMerchantFieldsVoByFieldId(fieldId); vo = merchantMongoService.getFieldsVoByFieldId(fieldId);
this.setFieldsVoByFieldId(fieldId, vo); redisUtil.set(key, vo);
} }
return vo; return vo;
} }
...@@ -46,6 +46,10 @@ public class MerchantRdmService { ...@@ -46,6 +46,10 @@ public class MerchantRdmService {
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
List<MerchantFieldAppliesVo> vos = (List<MerchantFieldAppliesVo>) redisUtil.get(key); List<MerchantFieldAppliesVo> vos = (List<MerchantFieldAppliesVo>) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vos) {
vos = merchantMongoService.getFieldAppliesVosByUid(uid);
redisUtil.set(key, vos);
}
return vos; return vos;
} }
...@@ -102,8 +106,8 @@ public class MerchantRdmService { ...@@ -102,8 +106,8 @@ public class MerchantRdmService {
MerchantSponsorsVo vo = (MerchantSponsorsVo) redisUtil.get(key); MerchantSponsorsVo vo = (MerchantSponsorsVo) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vo) { if (null == vo) {
vo = merchantMongoService.getMerchantSponsorsVoBySponsorId(sponsorId); vo = merchantMongoService.getSponsorsVoBySponsorId(sponsorId);
this.setSponsorsVoBySponsorId(sponsorId, vo); redisUtil.set(key, vo);
} }
return vo; return vo;
} }
...@@ -119,6 +123,10 @@ public class MerchantRdmService { ...@@ -119,6 +123,10 @@ public class MerchantRdmService {
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
List<MerchantSponsorAppliesVo> vos = (List<MerchantSponsorAppliesVo>) redisUtil.get(key); List<MerchantSponsorAppliesVo> vos = (List<MerchantSponsorAppliesVo>) redisUtil.get(key);
log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDM耗时:{}ms", System.currentTimeMillis() - s);
if (null == vos) {
vos = merchantMongoService.getSponsorAppliesVosByUid(uid);
redisUtil.set(key, vos);
}
return vos; return vos;
} }
......
package com.liquidnet.service.merchant.service.impl; package com.liquidnet.service.merchant.service.impl;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.merchant.constant.MerchantPermissionConst;
import com.liquidnet.service.merchant.dto.vo.MerchantAuthorizationPermissionsVo;
import com.liquidnet.service.merchant.dto.vo.MerchantAuthorizationRecordsVo;
import com.liquidnet.service.merchant.service.IMerchantAuthorizationRecordsService; import com.liquidnet.service.merchant.service.IMerchantAuthorizationRecordsService;
import com.liquidnet.service.merchant.service.MerchantMongoService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@Slf4j
@Service
public class MerchantAuthorizationRecordsServiceImpl implements IMerchantAuthorizationRecordsService { public class MerchantAuthorizationRecordsServiceImpl implements IMerchantAuthorizationRecordsService {
@Autowired
MerchantMongoService merchantMongoService;
@Override @Override
public void performanceCheckerAdd(String cuid, String performanceId, String uid, boolean statistics) { public void performanceCheckerAdd(String cuid, String performanceId, String uid, String mobile, String name, boolean statistics) {
LocalDateTime now = LocalDateTime.now();
MerchantAuthorizationRecordsVo checkerAuthorizationRecordsVo = MerchantAuthorizationRecordsVo.getNew();
checkerAuthorizationRecordsVo.setAuthorizationRecordId(IDGenerator.nextSnowId());
checkerAuthorizationRecordsVo.setPerformanceId(performanceId);
checkerAuthorizationRecordsVo.setUidRole("checker");
checkerAuthorizationRecordsVo.setUid(uid);
checkerAuthorizationRecordsVo.setMobile(mobile);
checkerAuthorizationRecordsVo.setName(name);
checkerAuthorizationRecordsVo.setCuid("cuid");
// checkerAuthorizationRecordsVo.setCuidRole("fielder");
checkerAuthorizationRecordsVo.setCreatedAt(now);
// 验票员 授权权限
String[] checkerPermissionIds = {
MerchantPermissionConst.PerformancePermission.CHECK.getId()
};
// 验票员 授权权限 entity vo
ArrayList<MerchantAuthorizationPermissionsVo> checkerAuthorizationPermissionsVos = new ArrayList<>();
for (String permissionId : checkerPermissionIds) {
MerchantAuthorizationPermissionsVo checkerAuthorizationPermissionsVo = MerchantAuthorizationPermissionsVo.getNew();
checkerAuthorizationPermissionsVo.setAuthorizationPermissionId(IDGenerator.nextSnowId());
checkerAuthorizationPermissionsVo.setAuthorizationRecordId(checkerAuthorizationRecordsVo.getAuthorizationRecordId());
checkerAuthorizationPermissionsVo.setPermissionId(permissionId);
checkerAuthorizationPermissionsVo.setStartTime(now);
checkerAuthorizationPermissionsVo.setEndTime(now.plusYears(99));
checkerAuthorizationPermissionsVo.setCreatedAt(now);
checkerAuthorizationPermissionsVos.add(checkerAuthorizationPermissionsVo);
}
checkerAuthorizationRecordsVo.setPermissionsVos(checkerAuthorizationPermissionsVos);
} }
@Override @Override
...@@ -14,7 +62,8 @@ public class MerchantAuthorizationRecordsServiceImpl implements IMerchantAuthori ...@@ -14,7 +62,8 @@ public class MerchantAuthorizationRecordsServiceImpl implements IMerchantAuthori
} }
@Override @Override
public void performanceCheckers(String cuid, String performanceId) { public List<MerchantAuthorizationRecordsVo> performanceCheckers(String cuid, String performanceId) {
List<MerchantAuthorizationRecordsVo> authorizationRecordsVos = merchantMongoService.getCheckersAuthorizationRecordsVosByCuid(cuid, performanceId);
return authorizationRecordsVos;
} }
} }
...@@ -155,6 +155,11 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService { ...@@ -155,6 +155,11 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService {
merchantRdmService.addFieldAppliesVoByUid(uid, fieldAppliesVos, fieldAppliesVo); merchantRdmService.addFieldAppliesVoByUid(uid, fieldAppliesVos, fieldAppliesVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
// 申请场地 mongo
s = System.currentTimeMillis();
mongoTemplate.insert(fieldAppliesVo, MerchantFieldAppliesVo.class.getSimpleName());
log.debug("#MONGO耗时:{}ms", System.currentTimeMillis() - s);
if (null != fieldsVo) { if (null != fieldsVo) {
// 场地 sql // 场地 sql
toMqSqls.add(SqlMapping.get("merchant_fields.update_claim_status_and_uid")); toMqSqls.add(SqlMapping.get("merchant_fields.update_claim_status_and_uid"));
...@@ -217,12 +222,19 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService { ...@@ -217,12 +222,19 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService {
fieldAppliesVo.setUpdatedAt(now); fieldAppliesVo.setUpdatedAt(now);
fieldAppliesVo.setDeletedAt(now); fieldAppliesVo.setDeletedAt(now);
// 场地默认验票员 redis // 申请场地 redis
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
merchantRdmService.delFieldAppliesVoByUid(uid, fieldAppliesVos, fieldAppliesVo); merchantRdmService.delFieldAppliesVoByUid(uid, fieldAppliesVos, fieldAppliesVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
// 场地默认验票员 sql // 申请场地 mongo
s = System.currentTimeMillis();
Query query = Query.query(Criteria.where("fieldApplyId").is(fieldAppliesVo.getFieldApplyId()));
Update update = Update.update("updatedAt", fieldAppliesVo.getUpdatedAt()).set("deletedAt", fieldAppliesVo.getDeletedAt());
mongoTemplate.updateFirst(query, update, MerchantFieldAppliesVo.class, MerchantFieldAppliesVo.class.getSimpleName());
log.debug("#MONGO耗时:{}ms", System.currentTimeMillis() - s);
// 申请场地 sql
LinkedList<String> toMqSqls = CollectionUtil.linkedListString(); LinkedList<String> toMqSqls = CollectionUtil.linkedListString();
LinkedList<Object[]> fieldAppliesUpdateObjs = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> fieldAppliesUpdateObjs = CollectionUtil.linkedListObjectArr();
toMqSqls.add(SqlMapping.get("merchant_field_applies.update")); toMqSqls.add(SqlMapping.get("merchant_field_applies.update"));
...@@ -256,6 +268,12 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService { ...@@ -256,6 +268,12 @@ public class MerchantFieldsServiceImpl implements IMerchantFieldsService {
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage()); throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
} }
MerchantFieldAppliesVo fieldAppliesVo = fieldAppliesVos.get(idx);
if (null != fieldAppliesVo.getFieldId() && !fieldAppliesVo.getFieldId().isEmpty()) {
MerchantFieldsVo fieldsVo = merchantRdmService.getFieldsVoByFieldId(fieldAppliesVo.getFieldId());
fieldAppliesVo.setFieldVo(fieldsVo);
}
return fieldAppliesVos.get(idx); return fieldAppliesVos.get(idx);
} }
......
...@@ -26,6 +26,7 @@ import org.springframework.data.domain.Sort; ...@@ -26,6 +26,7 @@ import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -144,6 +145,11 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService { ...@@ -144,6 +145,11 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService {
merchantRdmService.addSponsorAppliesVoByUid(uid, sponsorAppliesVos, sponsorAppliesVo); merchantRdmService.addSponsorAppliesVoByUid(uid, sponsorAppliesVos, sponsorAppliesVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
// 申请主办 mongo
s = System.currentTimeMillis();
mongoTemplate.insert(sponsorAppliesVo, MerchantSponsorAppliesVo.class.getSimpleName());
log.debug("#MONGO耗时:{}ms", System.currentTimeMillis() - s);
// 申请主办 sql // 申请主办 sql
toMqSqls.add(SqlMapping.get("merchant_sponsor_applies.insert")); toMqSqls.add(SqlMapping.get("merchant_sponsor_applies.insert"));
sponsorApplyInsertObjs.add(new Object[]{ sponsorApplyInsertObjs.add(new Object[]{
...@@ -167,7 +173,7 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService { ...@@ -167,7 +173,7 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService {
@Override @Override
public void applyDel(String uid, String sponsorApplyId) { public void applyDel(String uid, String sponsorApplyId) {
// 查找场地申请,是否存在且已经驳回 // 查找主办申请,是否存在且已经驳回
List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRdmService.getSponsorAppliesVosByUid(uid); List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRdmService.getSponsorAppliesVosByUid(uid);
if (CollectionUtils.isEmpty(sponsorAppliesVos)) { if (CollectionUtils.isEmpty(sponsorAppliesVos)) {
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("13203"); ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("13203");
...@@ -191,12 +197,19 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService { ...@@ -191,12 +197,19 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService {
sponsorAppliesVo.setUpdatedAt(now); sponsorAppliesVo.setUpdatedAt(now);
sponsorAppliesVo.setDeletedAt(now); sponsorAppliesVo.setDeletedAt(now);
// 场地默认验票员 redis // 主办申请 redis
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
merchantRdmService.delSponsorAppliesVoByUid(uid, sponsorAppliesVos, sponsorAppliesVo); merchantRdmService.delSponsorAppliesVoByUid(uid, sponsorAppliesVos, sponsorAppliesVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
// 场地默认验票员 sql // 主办申请 mongo
s = System.currentTimeMillis();
Query query = Query.query(Criteria.where("sponsorApplyId").is(sponsorAppliesVo.getSponsorApplyId()));
Update update = Update.update("updatedAt", sponsorAppliesVo.getUpdatedAt()).set("deletedAt", sponsorAppliesVo.getDeletedAt());
mongoTemplate.updateFirst(query, update, MerchantSponsorAppliesVo.class, MerchantSponsorAppliesVo.class.getSimpleName());
log.debug("#MONGO耗时:{}ms", System.currentTimeMillis() - s);
// 主办申请 sql
LinkedList<String> toMqSqls = CollectionUtil.linkedListString(); LinkedList<String> toMqSqls = CollectionUtil.linkedListString();
LinkedList<Object[]> sponsorAppliesUpdateObjs = CollectionUtil.linkedListObjectArr(); LinkedList<Object[]> sponsorAppliesUpdateObjs = CollectionUtil.linkedListObjectArr();
toMqSqls.add(SqlMapping.get("merchant_sponsor_applies.update")); toMqSqls.add(SqlMapping.get("merchant_sponsor_applies.update"));
...@@ -215,7 +228,7 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService { ...@@ -215,7 +228,7 @@ public class MerchantSponsorsServiceImpl implements IMerchantSponsorsService {
@Override @Override
public MerchantSponsorAppliesVo applyInfo(String uid, String sponsorApplyId) { public MerchantSponsorAppliesVo applyInfo(String uid, String sponsorApplyId) {
// 查找场地申请,是否存在 // 查找主办申请,是否存在
List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRdmService.getSponsorAppliesVosByUid(uid); List<MerchantSponsorAppliesVo> sponsorAppliesVos = merchantRdmService.getSponsorAppliesVosByUid(uid);
if (CollectionUtils.isEmpty(sponsorAppliesVos)) { if (CollectionUtils.isEmpty(sponsorAppliesVos)) {
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("13203"); ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("13203");
......
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