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

Commit 9a3e5698 authored by jiangxiulong's avatar jiangxiulong

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

parents 4284a343 6040b6fc
......@@ -39,6 +39,6 @@ public class AdamUserInfoParam implements java.io.Serializable {
@Size(max = 255)
private String signature;
@ApiModelProperty(position = 18, required = true, value = "标签[500]", example = "[{\"val\":\"MMS01\",\"desc\":\"民歌\",\"tagVos\":[{\"val\":\"MMS0101\",\"desc\":\"A\"},{\"val\":\"MMS0102\",\"desc\":\"B\"}]},{\"val\":\"MMS02\",\"desc\":\"house\",\"tagVos\":[{\"val\":\"MMS0201\",\"desc\":\"C\"}]}]")
@NotNull
// @NotNull
private List<AdamTagParentVo> tagMe;
}
......@@ -56,7 +56,7 @@ public class RestControllerAdviceHandler {
if (rex instanceof MethodArgumentNotValidException) {
MethodArgumentNotValidException ygex = (MethodArgumentNotValidException) rex;
FieldError fieldError = ygex.getBindingResult().getFieldErrors().get(0);
String message = fieldError.getField() + fieldError.getDefaultMessage();
String message = fieldError.getField() + " " + fieldError.getDefaultMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof LiquidnetFeignException) {
......
......@@ -381,8 +381,8 @@
SELECT
kotr.performance_id AS 'performance_id',
kotr.ticket_id,
sum(kot.number) AS 'total_sale_general' ,
sum(kot.price_actual) AS 'total_sale_price',
(sum(kot.number)- sum(kot.refund_number)) AS 'total_sale_general' ,
(sum(kot.price_actual) - sum(kot.price_refund)) AS 'total_sale_price',
sum(kot.refund_number) as 'total_refund_general',
sum(kot.price_refund) as 'total_refund_price',
sum(case when kotr.is_member = 1 then kot.number else 0 end) total_member_number,
......@@ -391,7 +391,9 @@
kylin_order_ticket_relations kotr
inner join kylin_order_tickets AS kot on kotr.order_id = kot.order_tickets_id
inner JOIN kylin_order_ticket_status AS kots ON kots.order_id = kot.order_tickets_id
WHERE kotr.performance_id = ${performancesId} and (kots.`status` = 0 OR kots.`status` = 1)
WHERE 1>0 and kotr.performance_id = ${performancesId}
and kots.`status` in(1,3,4) and kot.coupon_type ='no'
group by kotr.performance_id,kotr.ticket_id
) AS ot ON ot.performance_id = kp.performances_id
inner join kylin_tickets kt on kt.tickets_id = ot.ticket_id
inner join kylin_ticket_status kts on kts.ticket_id = kt.tickets_id
......
......@@ -11,6 +11,7 @@ import com.liquidnet.commons.lang.core.JwtValidator;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.vo.AdamLoginInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
......@@ -61,7 +62,6 @@ public class AdamLoginController {
IAdamUserService adamUserService;
private static final String PHP_API_SMS_CODE_SEND = "/smsCode";
private static final String PHP_API_SMS_CODE_VALID = "/smsValidation";
......@@ -88,6 +88,7 @@ public class AdamLoginController {
@GetMapping(value = {"send"})
public ResponseDto<Object> sendSms(@Pattern(regexp = "\\d{11}", message = "手机号格式有误") @RequestParam String mobile) {
log.debug("send to mobile:{}", mobile);
long s = System.currentTimeMillis();
LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
paramsMap.add("mobile", mobile);
......@@ -96,6 +97,7 @@ public class AdamLoginController {
try {
respStr = HttpUtil.postToPhpApi(env.getProperty("liquidnet.url-service.url") + PHP_API_SMS_CODE_SEND, paramsMap);
log.debug("###PHP.API[{}].RESP[{}]", PHP_API_SMS_CODE_SEND, respStr);
log.debug("#PHP.API耗时:{}ms", System.currentTimeMillis() - s);
Map respMap = JsonUtils.fromJson(respStr, Map.class);
......@@ -140,6 +142,7 @@ public class AdamLoginController {
loginInfoVo.setMemberVo(adamRdmService.getMemberSimpleVo());
loginInfoVo.setUserInfo(userInfoVo);
loginInfoVo.setToken(this.ssoProcess(userInfoVo));
loginInfoVo.getUserInfo().setMobile(SensitizeUtil.custom(userInfoVo.getMobile(), 3, 4));
return ResponseDto.success(loginInfoVo);
}
......@@ -169,6 +172,7 @@ public class AdamLoginController {
loginInfoVo.setMemberVo(adamRdmService.getMemberSimpleVo());
loginInfoVo.setUserInfo(userInfoVo);
loginInfoVo.setToken(this.ssoProcess(userInfoVo));
loginInfoVo.getUserInfo().setMobile(SensitizeUtil.custom(userInfoVo.getMobile(), 3, 4));
return ResponseDto.success(loginInfoVo);
}
......@@ -202,6 +206,7 @@ public class AdamLoginController {
loginInfoVo.setMemberVo(adamRdmService.getMemberSimpleVo());
}
loginInfoVo.setToken(this.ssoProcess(loginInfoVo.getUserInfo()));
loginInfoVo.getUserInfo().setMobile(SensitizeUtil.custom(loginInfoVo.getUserInfo().getMobile(), 3, 4));
return ResponseDto.success(loginInfoVo);
}
......
......@@ -61,49 +61,49 @@ public class AdamUserController {
// 已选中的性别标签不在系统性别标签库中
return ResponseDto.failure(ErrorMapping.get("10011"));
}
List<AdamTagParentVo> tagMeVos = parameter.getTagMe();
if (null == tagMeVos) {
return ResponseDto.failure(ErrorMapping.get("10012"));
}
List<String> chooseTagMeParentVals = tagMeVos.stream().map(AdamTagParentVo::getVal).collect(Collectors.toList());
List<AdamTagParentVo> existParentVos = this.getTagsForMusic().getData()
.stream().filter(r -> chooseTagMeParentVals.contains(r.getVal())).collect(Collectors.toList());
if (chooseTagMeParentVals.size() != existParentVos.size()) {
// 已选中的父级标签与系统筛选命中的父级标签数量不同
return ResponseDto.failure(ErrorMapping.get("10012"));
}
List<AdamTagParentVo> tagMeVoList = new ArrayList<>();
// tagMe子级标签校验处理
for (AdamTagParentVo parentVo : tagMeVos) {
// 系统对应的父级标签
AdamTagParentVo existParentVo = existParentVos.stream().filter(r -> r.getVal().equals(parentVo.getVal())).findAny().get();
List<AdamTagVo> tagVos = parentVo.getTagVos();
// TODO: 2021/6/13 第一版前端没有分级,暂不开启校验
if (CollectionUtils.isEmpty(tagVos)) {
existParentVo.setTagVos(null);
tagMeVoList.add(existParentVo);
continue;
}
List<AdamTagVo> allTagVos = existParentVo.getTagVos();
if (CollectionUtils.isEmpty(allTagVos) || tagVos.size() > allTagVos.size()) {
// 已选中的子级标签数量大于系统对应子级标签数量
return ResponseDto.failure(ErrorMapping.get("10012"));
}
// 已选中的子级标签key集合
List<String> chooseTagVoVals = tagVos.stream().map(AdamTagVo::getVal).collect(Collectors.toList());
List<AdamTagVo> existTagVos = allTagVos.stream().filter(r -> chooseTagVoVals.contains(r.getVal())).collect(Collectors.toList());
if (chooseTagVoVals.size() != existTagVos.size()) {
return ResponseDto.failure(ErrorMapping.get("10012"));
}
existParentVo.setTagVos(existTagVos);
tagMeVoList.add(existParentVo);
}
// List<AdamTagParentVo> tagMeVos = parameter.getTagMe();
// if (null == tagMeVos) {
// return ResponseDto.failure(ErrorMapping.get("10012"));
// }
// List<String> chooseTagMeParentVals = tagMeVos.stream().map(AdamTagParentVo::getVal).collect(Collectors.toList());
// List<AdamTagParentVo> existParentVos = this.getTagsForMusic().getData()
// .stream().filter(r -> chooseTagMeParentVals.contains(r.getVal())).collect(Collectors.toList());
// if (chooseTagMeParentVals.size() != existParentVos.size()) {
// // 已选中的父级标签与系统筛选命中的父级标签数量不同
// return ResponseDto.failure(ErrorMapping.get("10012"));
// }
// List<AdamTagParentVo> tagMeVoList = new ArrayList<>();
// // tagMe子级标签校验处理
// for (AdamTagParentVo parentVo : tagMeVos) {
// // 系统对应的父级标签
// AdamTagParentVo existParentVo = existParentVos.stream().filter(r -> r.getVal().equals(parentVo.getVal())).findAny().get();
//
// List<AdamTagVo> tagVos = parentVo.getTagVos();
//
// // TODO: 2021/6/13 第一版前端没有分级,暂不开启校验
// if (CollectionUtils.isEmpty(tagVos)) {
// existParentVo.setTagVos(null);
// tagMeVoList.add(existParentVo);
// continue;
// }
//
// List<AdamTagVo> allTagVos = existParentVo.getTagVos();
//
// if (CollectionUtils.isEmpty(allTagVos) || tagVos.size() > allTagVos.size()) {
// // 已选中的子级标签数量大于系统对应子级标签数量
// return ResponseDto.failure(ErrorMapping.get("10012"));
// }
//
// // 已选中的子级标签key集合
// List<String> chooseTagVoVals = tagVos.stream().map(AdamTagVo::getVal).collect(Collectors.toList());
//
// List<AdamTagVo> existTagVos = allTagVos.stream().filter(r -> chooseTagVoVals.contains(r.getVal())).collect(Collectors.toList());
// if (chooseTagVoVals.size() != existTagVos.size()) {
// return ResponseDto.failure(ErrorMapping.get("10012"));
// }
// existParentVo.setTagVos(existTagVos);
// tagMeVoList.add(existParentVo);
// }
AdamUserInfoVo editUserInfoVo = adamRdmService.getUserInfoVoByUid(CurrentUtil.getCurrentUid());
editUserInfoVo.setAvatar(parameter.getAvatar());
......@@ -113,7 +113,7 @@ public class AdamUserController {
editUserInfoVo.setBirthday(parameter.getBirthday());
editUserInfoVo.setArea(parameter.getArea());
editUserInfoVo.setSignature(parameter.getSignature());
editUserInfoVo.setTagMe(tagMeVoList);
// editUserInfoVo.setTagMe(tagMeVoList);
editUserInfoVo.setUpdatedAt(LocalDateTime.now());
editUserInfoVo.setIsComplete(1);
......
......@@ -11,6 +11,7 @@ import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.SqlMapping;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.BeanUtils;
......@@ -37,6 +38,7 @@ import java.util.stream.IntStream;
* @author liquidnet
* @since 2021-05-11
*/
@Slf4j
@Service
public class AdamAddressesServiceImpl implements IAdamAddressesService {
@Autowired
......@@ -64,15 +66,21 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
vo.setState(1);
vo.setCreatedAt(now);
long s = System.currentTimeMillis();
mongoTemplate.insert(vo, AdamAddressesVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.delAddressesVoByUid(currentUid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.add",
vo.getAddressesId(), vo.getUid(), vo.getName(), vo.getPhone(), vo.getProvince(), vo.getCity(), vo.getCounty(), vo.getAddress(), vo.getIsDefault(), vo.getState(), now
)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
return vo.getAddressesId();
}
......@@ -86,11 +94,13 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
// AdamAddressesVo unDeaultVo = AdamAddressesVo.getNew();
// unDeaultVo.setIsDefault(false);
// unDeaultVo.setUpdatedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamAddressesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid).and("state").is(1).and("isDefault").is(true)).getQueryObject(),
new Document("$set", new Document("isDefault", false).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
AdamAddressesVo unDefaultVoAfter = BsonUtil.toBean(doc, AdamAddressesVo.class);
......@@ -103,11 +113,13 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
// AdamAddressesVo defaultVo = AdamAddressesVo.getNew();
// defaultVo.setIsDefault(true);
// defaultVo.setUpdatedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamAddressesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid).and("addressesId").is(addressesId)).getQueryObject(),
new Document("$set", new Document("isDefault", true).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
AdamAddressesVo defaultVoAfter = BsonUtil.toBean(doc, AdamAddressesVo.class);
......@@ -117,9 +129,13 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
}
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
long s = System.currentTimeMillis();
adamRdmService.setAddressesVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.update.is_default", toMqObjs));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -130,23 +146,29 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
AdamAddressesVo updateVo = AdamAddressesVo.getNew();
BeanUtils.copyProperties(parameter, updateVo);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamAddressesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("addressesId").is(parameter.getAddressesId())).getQueryObject(),
new Document("$set", Document.parse(JsonUtils.toJson(updateVo)).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
updateVo = BsonUtil.toBean(doc, AdamAddressesVo.class);
String currentUid = CurrentUtil.getCurrentUid();
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(currentUid);
s = System.currentTimeMillis();
adamRdmService.setAddressesVoByUid(updateVo.getUid(), this.collectionProcess(vos, parameter.getAddressesId(), updateVo));
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.edit",
updateVo.getName(), updateVo.getPhone(), updateVo.getProvince(), updateVo.getCity(), updateVo.getCounty(), updateVo.getAddress(), now, updateVo.getAddressesId()
)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -161,19 +183,25 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
// removeVo.setUpdatedAt(now);
// removeVo.setDeletedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamAddressesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("addressesId").is(addressesId)).getQueryObject(),
new Document("$set", new Document("state", 2).append("isDefault", false).append("updatedAt", now).append("deletedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(uid);
vos.removeIf(r -> r.getAddressesId().equals(addressesId));
s = System.currentTimeMillis();
adamRdmService.setAddressesVoByUid(uid, vos);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.remove", now, now, addressesId)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -197,6 +225,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
/* --------------------------------------------------------------- */
private List<AdamAddressesVo> collectionProcess(List<AdamAddressesVo> vos, String replaceId, AdamAddressesVo updateVo) {
long s = System.currentTimeMillis();
int idx = IntStream.range(0, vos.size())
.filter(i -> vos.get(i).getAddressesId().equals(replaceId))
.findFirst().orElse(-1);
......@@ -215,6 +244,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
}
}
vos.set(idx, updateVo);
log.debug("#collect.process耗时:{}ms", System.currentTimeMillis() - s);
return vos;
}
}
......@@ -60,7 +60,7 @@ public class AdamCollectionServiceImpl implements IAdamCollectionService {
mongoTemplate.insert(vo, AdamCollectBaseVo.class.getSimpleName());
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_collection.add",
vo.getUid(), vo.getContentId(), vo.getType(), vo.getState(), now
)
......@@ -91,7 +91,7 @@ public class AdamCollectionServiceImpl implements IAdamCollectionService {
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_collection.del", toMqObjs));
}
}
......
......@@ -63,7 +63,7 @@ public class AdamDisposedServiceImpl implements IAdamDisposedService {
mongoTemplate.insert(vo, AdamDisposedBaseVo.class.getSimpleName());
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_disposed.add",
vo.getUid(), vo.getContentId(), vo.getType(), vo.getState(), now
)
......@@ -95,7 +95,7 @@ public class AdamDisposedServiceImpl implements IAdamDisposedService {
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_disposed.del", toMqObjs));
}
}
......
......@@ -71,7 +71,9 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
String respStr = null;
try {
long s = System.currentTimeMillis();
respStr = HttpUtil.postToPhpApi(env.getProperty("liquidnet.url-service.url") + PHP_API_REAL_NAME, paramsMap);
log.debug("#PHP.API耗时:{}ms", System.currentTimeMillis() - s);
log.debug("###PHP.API[{}].RESP:{}", PHP_API_REAL_NAME, respStr);
Map respMap = JsonUtils.fromJson(respStr, Map.class);
if (CollectionUtils.isEmpty(respMap) || !StringUtils.equalsIgnoreCase("OK", (String) respMap.get("message"))) {
......@@ -97,15 +99,25 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
vo.setState(1);
vo.setCreatedAt(now);
long s = System.currentTimeMillis();
mongoTemplate.insert(vo, AdamEntersVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.delEntersVoByUid(currentUid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.add",
vo.getEntersId(), vo.getUid(), vo.getType(), vo.getName(), vo.getMobile(), vo.getIdCard(), vo.getIsDefault(), vo.getState(), now
)
s = System.currentTimeMillis();
String msg = SqlMapping.get("adam_enters.add",
vo.getEntersId(), vo.getUid(), vo.getType(), vo.getName(), vo.getMobile(), vo.getIdCard(), vo.getIsDefault(), vo.getState(), now
);
log.debug("#SQL.GET耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
msg
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
return vo.getEntersId();
}
......@@ -120,11 +132,13 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
// AdamEntersVo unDeaultVo = AdamEntersVo.getNew();
// unDeaultVo.setIsDefault(false);
// unDeaultVo.setUpdatedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamEntersVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid).and("state").is(1).and("isDefault").is(true)).getQueryObject(),
new Document("$set", new Document("isDefault", false).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
AdamEntersVo unDeaultVoAfter = BsonUtil.toBean(doc, AdamEntersVo.class);
......@@ -137,11 +151,13 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
// AdamEntersVo defaultVo = AdamEntersVo.getNew();
// defaultVo.setIsDefault(true);
// defaultVo.setUpdatedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamEntersVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid).and("entersId").is(entersId)).getQueryObject(),
new Document("$set", new Document("isDefault", true).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
AdamEntersVo defaultVoAfter = BsonUtil.toBean(doc, AdamEntersVo.class);
......@@ -151,9 +167,13 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
}
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
long s = System.currentTimeMillis();
adamRdmService.setEntersVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.update.is_default", toMqObjs));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -164,23 +184,29 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
AdamEntersVo updateVo = AdamEntersVo.getNew();
BeanUtils.copyProperties(parameter, updateVo);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamEntersVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("entersId").is(parameter.getEntersId())).getQueryObject(),
new Document("$set", Document.parse(JsonUtils.toJson(updateVo)).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
updateVo = BsonUtil.toBean(doc, AdamEntersVo.class);
String currentUid = CurrentUtil.getCurrentUid();
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(currentUid);
s = System.currentTimeMillis();
adamRdmService.setEntersVoByUid(currentUid, this.collectionProcess(vos, parameter.getEntersId(), updateVo));
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.edit",
updateVo.getType(), updateVo.getName(), updateVo.getMobile(), updateVo.getIdCard(), updateVo.getIsDefault(), updateVo.getState(), now, updateVo.getEntersId()
)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -195,19 +221,25 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
// removeVo.setUpdatedAt(now);
// removeVo.setDeletedAt(now);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamEntersVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("entersId").is(entersId)).getQueryObject(),
new Document("$set", new Document("state", 2).append("isDefault", false).append("updatedAt", now).append("deletedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(uid);
vos.removeIf(r -> r.getEntersId().equals(entersId));
s = System.currentTimeMillis();
adamRdmService.setEntersVoByUid(uid, vos);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.remove", now, now, entersId)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -232,6 +264,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
/* --------------------------------------------------------------- */
private List<AdamEntersVo> collectionProcess(List<AdamEntersVo> vos, String replaceId, AdamEntersVo updateVo) {
long s = System.currentTimeMillis();
int idx = IntStream.range(0, vos.size())
.filter(i -> vos.get(i).getEntersId().equals(replaceId))
.findFirst().orElse(-1);
......@@ -250,6 +283,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
}
}
vos.set(idx, updateVo);
log.debug("#collect.process耗时:{}ms", System.currentTimeMillis() - s);
return vos;
}
}
......@@ -287,7 +287,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
adamRdmService.setShotMemberOrderVoByOrderNo(handleMemberOrderVo.getOrderNo(), handleMemberOrderVo);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs));
return ResponseDto.success();
}
......@@ -389,7 +389,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
adamRdmService.setUserMemberVoByUid(initMemberOrderVo.getUid(), initUserMemberVo);
adamRdmService.delMemberCodeVoByCode(memberCodeVo.getCode());
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
SqlMapping.gets(toMqSqls, updateMemberCodeObjs, initMemberOrderObjs, initUserMemberObjs));
AdamMemberOrderResult result = AdamMemberOrderResult.getNew();
......
......@@ -39,7 +39,9 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
if (StringUtils.isEmpty(val)) {
Query query = Query.query(Criteria.where("mobile").is(mobile).and("state").is(1));
query.fields().include("uid");
long s = System.currentTimeMillis();
AdamUserInfoVo vo = mongoTemplate.findOne(query, AdamUserInfoVo.class, AdamUserInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(key, vo.getUid());
}
return val;
......@@ -62,7 +64,9 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
if (StringUtils.isEmpty(val)) {
Query query = Query.query(Criteria.where("openId").is(openId).and("platform").is(platform).and("state").is(1));
query.fields().include("uid");
long s = System.currentTimeMillis();
AdamThirdPartInfoVo vo = mongoTemplate.findOne(query, AdamThirdPartInfoVo.class, AdamThirdPartInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(key, vo.getUid());
}
return val;
......@@ -83,14 +87,13 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_USER.concat(uid);
AdamUserInfoVo vo = (AdamUserInfoVo) redisUtil.get(rk);
if (null == vo) {
long s = System.currentTimeMillis();
vo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamUserInfoVo.class, AdamUserInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(rk, vo);
}
if (null != vo) {
vo.setMobile(SensitizeUtil.custom(vo.getMobile(), 3, 4));
}
return vo;
}
......@@ -109,8 +112,10 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_REAL_NAME.concat(uid);
AdamRealInfoVo vo = (AdamRealInfoVo) redisUtil.get(rk);
if (null == vo) {
long s = System.currentTimeMillis();
vo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamRealInfoVo.class, AdamRealInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(rk, vo);
}
......@@ -136,8 +141,10 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_THIRD_PARTY.concat(uid);
List<AdamThirdPartInfoVo> thirdPartInfoVos = (List<AdamThirdPartInfoVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(thirdPartInfoVos)) {
long s = System.currentTimeMillis();
thirdPartInfoVos = mongoTemplate.find(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamThirdPartInfoVo.class, AdamThirdPartInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (!CollectionUtils.isEmpty(thirdPartInfoVos)) redisUtil.set(rk, thirdPartInfoVos);
}
......@@ -168,10 +175,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_ENTERS.concat(uid);
List<AdamEntersVo> vos = (List<AdamEntersVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(vos)) {
long s = System.currentTimeMillis();
vos = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamEntersVo.class, AdamEntersVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
}
......@@ -204,10 +213,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_ADDRESSES.concat(uid);
List<AdamAddressesVo> vos = (List<AdamAddressesVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(vos)) {
long s = System.currentTimeMillis();
vos = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamAddressesVo.class, AdamAddressesVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
}
......@@ -234,7 +245,9 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String rk = AdamRedisConst.INFO_USER_MEMBER.concat(uid);
AdamUserMemberVo adamUserMemberVo = (AdamUserMemberVo) redisUtil.get(rk);
if (null == adamUserMemberVo) {
long s = System.currentTimeMillis();
adamUserMemberVo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid)), AdamUserMemberVo.class, AdamUserMemberVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != adamUserMemberVo) redisUtil.set(rk, adamUserMemberVo);
}
......@@ -250,10 +263,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
public AdamMemberSimpleVo getMemberSimpleVo() {
AdamMemberSimpleVo vo = (AdamMemberSimpleVo) redisUtil.get(AdamRedisConst.INFO_MEMBER_SIMPLE);
if (null == vo) {
long s = System.currentTimeMillis();
List<AdamMemberSimpleVo> vos = mongoTemplate.find(
Query.query(Criteria.where("state").is(1)).with(Sort.by(Sort.Direction.ASC, "memberId")),
AdamMemberSimpleVo.class, AdamMemberVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
vo = CollectionUtils.isEmpty(vos) ? null : vos.get(0);
......@@ -267,11 +282,13 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String key = AdamRedisConst.INFO_MEMBER_CATEGORY.concat(memberId);
AdamMemberVo vo = (AdamMemberVo) redisUtil.get(key);
if (null == vo) {
long s = System.currentTimeMillis();
vo = mongoTemplate.findOne(
Query.query(Criteria.where("memberId").is(memberId).and("state").is(1)),
AdamMemberVo.class, AdamMemberVo.class.getSimpleName()
);
if (null != vo) redisUtil.set(AdamRedisConst.INFO_MEMBER_CATEGORY, vo);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(key, vo);
}
return vo;
}
......@@ -286,10 +303,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String key = AdamRedisConst.INFO_MEMBER_PRICE.concat(memberId);
List<AdamMemberPriceVo> vos = (List<AdamMemberPriceVo>) redisUtil.get(key);
if (CollectionUtils.isEmpty(vos)) {
long s = System.currentTimeMillis();
vos = mongoTemplate.find(
Query.query(Criteria.where("memberId").is(memberId).and("state").is(1)),
AdamMemberPriceVo.class, AdamMemberPriceVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (!CollectionUtils.isEmpty(vos)) redisUtil.set(key, vos);
}
......@@ -354,10 +373,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String key = AdamRedisConst.SHOT_MEMBER_ORDER + orderNo;
AdamMemberOrderVo vo = (AdamMemberOrderVo) redisUtil.get(key);
if (null == vo) {
long s = System.currentTimeMillis();
vo = mongoTemplate.findOne(
Query.query(Criteria.where("orderNo").is(orderNo)),
AdamMemberOrderVo.class, AdamMemberOrderVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo) redisUtil.set(key, vo);
}
......@@ -395,10 +416,12 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
String key = AdamRedisConst.INFO_MEMBER_CODE.concat(memberCode);
AdamMemberCodeVo vo = (AdamMemberCodeVo) redisUtil.get(key);
if (null == vo) {
long s = System.currentTimeMillis();
vo = mongoTemplate.findOne(
Query.query(Criteria.where("code").is(memberCode)),
AdamMemberCodeVo.class, AdamMemberCodeVo.class.getSimpleName()
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != vo && vo.getState() == 0) redisUtil.set(AdamRedisConst.INFO_MEMBER_CODE.concat(memberCode), vo);
}
return vo;
......
......@@ -8,6 +8,7 @@ import com.liquidnet.service.adam.entity.AdamRealName;
import com.liquidnet.service.adam.mapper.AdamRealNameMapper;
import com.liquidnet.service.adam.service.IAdamRealNameService;
import com.liquidnet.service.base.SqlMapping;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
......@@ -26,6 +27,7 @@ import java.util.List;
* @author liquidnet
* @since 2021-05-10
*/
@Slf4j
@Service
public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, AdamRealName> implements IAdamRealNameService {
@Autowired
......@@ -38,7 +40,9 @@ public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, Ada
@Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void add(AdamRealName realName) {
long s = System.currentTimeMillis();
mongoTemplate.insert(realName, AdamRealInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
List<Object> paramList = Arrays.asList(
realName.getRealNameId(),
......@@ -49,7 +53,9 @@ public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, Ada
realName.getState(),
realName.getCreatedAt()
);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_real_name.add", paramList.toArray()));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -12,6 +12,7 @@ import com.liquidnet.service.adam.service.IAdamUserInfoService;
import com.liquidnet.service.base.SqlMapping;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -30,6 +31,7 @@ import java.time.LocalDateTime;
* @author liquidnet
* @since 2021-05-10
*/
@Slf4j
@Service
public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, AdamUserInfo> implements IAdamUserInfoService {
@Autowired
......@@ -42,17 +44,22 @@ public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, Ada
@Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void edit(AdamUserInfoVo userInfoVo) {
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamUserInfoVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(userInfoVo.getUid())).getQueryObject(),
new Document("$set", Document.parse(JsonUtils.toJson(userInfoVo))),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (null != doc) {
userInfoVo = BsonUtil.toBean(doc, AdamUserInfoVo.class);
s = System.currentTimeMillis();
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
userInfoVo.getIsComplete() == 0 ? "adam_user_info.add" : "adam_user_info.edit",
userInfoVo.getNickname(),
......@@ -68,6 +75,7 @@ public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, Ada
userInfoVo.getUid()
)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -78,20 +86,27 @@ public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, Ada
// AdamUserInfoVo updateInfoVo = AdamUserInfoVo.getNew();
// updateInfoVo.setUpdatedAt(now);
// updateInfoVo.setMobile(mobile);
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamUserInfoVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid)).getQueryObject(),
new Document("$set", new Document("mobile", mobile).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.BEFORE)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
log.debug("edit mobile - before doc:{}", JsonUtils.toJson(doc));
AdamUserInfoVo beforeUserInfoVo = BsonUtil.toBean(doc, AdamUserInfoVo.class);
s = System.currentTimeMillis();
adamRdmService.delUidByMobile(beforeUserInfoVo.getMobile());
adamRdmService.setUidByMobile(mobile, uid);
beforeUserInfoVo.setMobile(mobile);
beforeUserInfoVo.setUpdatedAt(now);
adamRdmService.setUserInfoVoByUid(uid, beforeUserInfoVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_user.edit.mobile", mobile, now, uid));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
}
......@@ -76,16 +76,21 @@ public class AdamUserServiceImpl implements IAdamUserService {
userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setCreateAt(now);
long s = System.currentTimeMillis();
mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
SqlMapping.get("adam_user.add", userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now)
s = System.currentTimeMillis();
String msg = SqlMapping.get("adam_user.add", userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now);
log.debug("#SQL.GET耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
msg
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
userInfoVo.setMobile(SensitizeUtil.custom(mobile, 3, 4));
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
return userInfoVo;
}
......@@ -94,7 +99,9 @@ public class AdamUserServiceImpl implements IAdamUserService {
public AdamUserInfoVo register(AdamThirdPartParam param) {
LocalDateTime now = LocalDateTime.now();
long s = System.currentTimeMillis();
String uid = adamRdmService.getUidByMobile(param.getMobile());
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
LinkedList<String> toMqSqls = new LinkedList<>();
LinkedList<Object[]> initUserObjs = new LinkedList<>(), initThirdPartObjs = new LinkedList<>();
AdamUserInfoVo userInfoVo;
......@@ -108,14 +115,18 @@ public class AdamUserServiceImpl implements IAdamUserService {
userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setCreateAt(now);
s = System.currentTimeMillis();
mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
userInfoVo.setMobile(SensitizeUtil.custom(param.getMobile(), 3, 4));
toMqSqls.add(SqlMapping.get("adam_user.add"));
initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now});
} else {
s = System.currentTimeMillis();
userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
}
AdamThirdPartInfoVo thirdPartInfoVo = AdamThirdPartInfoVo.getNew();
......@@ -124,16 +135,22 @@ public class AdamUserServiceImpl implements IAdamUserService {
thirdPartInfoVo.setUid(userInfoVo.getUid());
thirdPartInfoVo.setState(1);// 1-绑定
s = System.currentTimeMillis();
mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
toMqSqls.add(SqlMapping.get("adam_third_party.add"));
initThirdPartObjs.add(new Object[]{thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()});
s = System.currentTimeMillis();
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
SqlMapping.gets(toMqSqls, initUserObjs, initThirdPartObjs)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
return userInfoVo;
}
......@@ -148,18 +165,26 @@ public class AdamUserServiceImpl implements IAdamUserService {
thirdPartInfoVo.setUid(uid);
thirdPartInfoVo.setState(1);// 1-绑定
long s = System.currentTimeMillis();
mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
adamRdmService.delThirdPartVoListByUid(uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
@Override
......@@ -168,7 +193,6 @@ public class AdamUserServiceImpl implements IAdamUserService {
this.unBindTpaProcess(unBindUid, param.getPlatform());
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.format(now, DateUtil.Formatter.yyyyMMddHHmmss);
AdamThirdPartInfoVo thirdPartInfoVo = AdamThirdPartInfoVo.getNew();
BeanUtils.copyProperties(param, thirdPartInfoVo);
......@@ -182,7 +206,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
adamRdmService.delThirdPartVoListByUid(bindUid);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
......@@ -198,25 +222,30 @@ public class AdamUserServiceImpl implements IAdamUserService {
*/
private void unBindTpaProcess(String uid, String platform) {
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.format(now, DateUtil.Formatter.yyyyMMddHHmmss);
// AdamThirdPartInfoVo unBindThirdPartInfoVo = AdamThirdPartInfoVo.getNew();
// unBindThirdPartInfoVo.setUpdatedAt(now);
// unBindThirdPartInfoVo.setState(2);// 2-解绑
long s = System.currentTimeMillis();
Document doc = mongoTemplate.getCollection(AdamThirdPartInfoVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("uid").is(uid).and("platform").is(platform).and("state").is(1)).getQueryObject(),
new Document("$set", new Document("state", 2).append("updatedAt", now)),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
if (null != doc) {
adamRdmService.delUidByPlatformOpenId(platform, doc.getString("openId"));
}
adamRdmService.delThirdPartVoListByUid(uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_third_party.unbind", now, uid, platform));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
@Override
......@@ -234,6 +263,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
objsThirdPart = new LinkedList<>(),
objsAddresses = new LinkedList<>();
long s = System.currentTimeMillis();
AdamUserInfoVo userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
adamRdmService.delUidByMobile(userInfoVo.getMobile());
......@@ -248,6 +278,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
adamRdmService.delUserMemberVoByUid(uid);
adamRdmService.delAddressesVoByUid(uid);
adamRdmService.delEntersVoByUid(uid);
log.debug("##RDS耗时:{}ms", System.currentTimeMillis() - s);
DeleteResult deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamUserInfoVo.class.getSimpleName());
toMqSqls.add(SqlMapping.get("adam_user.close"));
......@@ -255,34 +286,44 @@ public class AdamUserServiceImpl implements IAdamUserService {
/* ---------------------- 三方账号信息 */
if (!CollectionUtils.isEmpty(thirdPartInfoVos)) {
s = System.currentTimeMillis();
mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamThirdPartInfoVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
toMqSqls.add(SqlMapping.get("adam_third_party.close"));
objsThirdPart.add(new Object[]{now, uid});
}
/* ---------------------- 用户会员信息 */
s = System.currentTimeMillis();
deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamUserMemberVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_user_member.close"));
objsThirdPart.add(new Object[]{now, uid});
}
/* ---------------------- 收货地址信息 */
s = System.currentTimeMillis();
deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid).and("state").is(1)), AdamAddressesVo.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_addresses.close"));
objsAddresses.add(new Object[]{now, now, uid});
}
/* ---------------------- 入场人信息 */
s = System.currentTimeMillis();
deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)).getQueryObject(), AdamEnters.class.getSimpleName());
log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_enters.close"));
objsAddresses.add(new Object[]{now, now, uid});
}
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
s = System.currentTimeMillis();
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.gets(toMqSqls, objsUser));
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
@Override
......@@ -296,7 +337,9 @@ public class AdamUserServiceImpl implements IAdamUserService {
String respStr = null;
try {
long s = System.currentTimeMillis();
respStr = HttpUtil.postToPhpApi(env.getProperty("liquidnet.url-service.url") + PHP_API_REAL_NAME, paramsMap);
log.debug("#PHP.API耗时:{}ms", System.currentTimeMillis() - s);
log.debug("###PHP.API[{}].RESP:{}", PHP_API_REAL_NAME, respStr);
Map respMap = JsonUtils.fromJson(respStr, Map.class);
if (CollectionUtils.isEmpty(respMap) || !StringUtils.equalsIgnoreCase("OK", (String) respMap.get("message"))) {
......@@ -325,7 +368,9 @@ public class AdamUserServiceImpl implements IAdamUserService {
realInfoVo.setIdCard(idCard);
realInfoVo.setState(1);
long s = System.currentTimeMillis();
adamRdmService.setRealInfoVoByUid(uid, realInfoVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
return realInfoVo;
}
......
......@@ -36,7 +36,7 @@ public class KylinLackRegistersServiceImpl extends ServiceImpl<KylinLackRegister
lackRegisters.setUserMobile(StringUtils.defaultString(((String) token.get("mobile")), ""));
lackRegisters.setIpAddress(CurrentUtil.getCliIpAddr());
lackRegisters.setCreatedAt(LocalDateTime.now());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_PERFORMANCE_LACK, MQConst.ROUTING_KEY_SQL_PERFORMANCE_LACK,
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_PERFORMANCE_LACK, MQConst.ROUTING_KEY_SQL_PERFORMANCE_LACK,
SqlMapping.get("kylin_lack_register.insert", lackRegisters.getInsertObj()));
return ResponseDto.success("登记成功");
}catch (Exception e){
......
......@@ -85,7 +85,7 @@ public class KylinOrderTicketEntitiesServiceImpl extends ServiceImpl<KylinOrderT
BulkWriteResult bulkWriteResult = mongoTemplate.getCollection(KylinOrderTicketEntitiesVo.class.getSimpleName()).bulkWrite(list);
log.info("bulkWriteResult:{}", JsonUtils.toJson(bulkWriteResult));
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_STATION, MQConst.RK_SQL_STATION,
rabbitTemplate.convertAndSend(MQConst.EX_LNS_SQL_STATION, MQConst.RK_SQL_STATION,
SqlMapping.get("kylin_order_ticket_entities.updateStatusByStation", paramsList));
}
}
......@@ -520,7 +520,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
// 执行sql
String sqlData = SqlMapping.gets(sqls, sqlsDataB, sqlsDataC, sqlsDataD, sqlsDataA);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CREADE, MQConst.ROUTING_KEY_SQL_ORDER_CREATE,
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CREADE, MQConst.ROUTING_KEY_SQL_ORDER_CREATE,
sqlData);
return ResponseDto.success(payResultVo);
}
......@@ -619,7 +619,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
sqlsDataC.add(new Object[]{orderTickets.getUpdatedAt(),orderTickets.getOrderTicketsId(),strTime, strTime});
String sqlData = SqlMapping.gets(sqls, sqlsDataA,sqlsDataB, sqlsDataC);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_AGAIN, MQConst.ROUTING_KEY_SQL_ORDER_AGAIN,sqlData);
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_AGAIN, MQConst.ROUTING_KEY_SQL_ORDER_AGAIN,sqlData);
return ResponseDto.success(payResultVo);
}
return ResponseDto.failure("未选择支付方式");
......@@ -726,7 +726,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
);
dataUtils.delOrderTicketRedis(orderTickets.getOrderTicketsId());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_PAY, MQConst.ROUTING_KEY_SQL_ORDER_PAY,
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_PAY, MQConst.ROUTING_KEY_SQL_ORDER_PAY,
SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC,sqlsDataD));
//生成vo redis
......@@ -959,7 +959,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
LinkedList<Object[]> sqlsDataC = new LinkedList<>();
sqlsDataC.add(new Object[]{orderTickets.getUpdatedAt(),orderTickets.getOrderTicketsId(),strTime, strTime});
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE, MQConst.ROUTING_KEY_SQL_ORDER_CLOSE, SqlMapping.gets(sqls, sqlsDataA, sqlsDataB,sqlsDataC));
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE, MQConst.ROUTING_KEY_SQL_ORDER_CLOSE, SqlMapping.gets(sqls, sqlsDataA, sqlsDataB,sqlsDataC));
} catch (Exception e) {
//redisLockUtil.unlock(lock);
......
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