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

Commit e9ba8880 authored by 胡佳晨's avatar 胡佳晨

Merge branch 'dev_merchant' into pre

parents ea24c524 f3c5843a
...@@ -21,7 +21,6 @@ db.SlimeFieldAppliesVo.createIndex({uid:"hashed"}); ...@@ -21,7 +21,6 @@ db.SlimeFieldAppliesVo.createIndex({uid:"hashed"});
db.SlimeFieldCheckersVo.createIndex({fieldCheckerId:"hashed"}); db.SlimeFieldCheckersVo.createIndex({fieldCheckerId:"hashed"});
db.SlimeFieldCheckersVo.createIndex({fieldId:"hashed"}); db.SlimeFieldCheckersVo.createIndex({fieldId:"hashed"});
db.SlimeFieldCheckersVo.createIndex({uid:"hashed"}); db.SlimeFieldCheckersVo.createIndex({uid:"hashed"});
db.SlimeSponsorsVo.createIndex({sponsorId:"hashed"}); db.SlimeSponsorsVo.createIndex({sponsorId:"hashed"});
db.SlimeSponsorsVo.createIndex({isOnline:"hashed"}); db.SlimeSponsorsVo.createIndex({isOnline:"hashed"});
db.SlimeSponsorsVo.createIndex({uid:"hashed"}); db.SlimeSponsorsVo.createIndex({uid:"hashed"});
...@@ -29,13 +28,27 @@ db.SlimeSponsorsVo.createIndex({companyId:"hashed"}); ...@@ -29,13 +28,27 @@ db.SlimeSponsorsVo.createIndex({companyId:"hashed"});
db.SlimeSponsorAppliesVo.createIndex({sponsorApplyId:"hashed"}); db.SlimeSponsorAppliesVo.createIndex({sponsorApplyId:"hashed"});
db.SlimeSponsorAppliesVo.createIndex({sponsorId:"hashed"}); db.SlimeSponsorAppliesVo.createIndex({sponsorId:"hashed"});
db.SlimeSponsorAppliesVo.createIndex({uid:"hashed"}); db.SlimeSponsorAppliesVo.createIndex({uid:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({authorizationRecordId:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({authorizationRecordId:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({performanceId:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({performanceId:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({uidRole:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({uidRole:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({uid:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({uid:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({cuidRole:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({cuidRole:"hashed"});
db.SlimeAuthorizationRecordsVo.createIndex({cuid:"hashed"}); db.SlimeAuthorizationRecordsVo.createIndex({cuid:"hashed"});
db.SlimeAuthorizationPerformanceVo.createIndex({performanceId:"hashed"}); db.SlimeAuthorizationPerformanceVo.createIndex({performanceId:"hashed"});
db.SlimeAuthorizationPerformanceVo.createIndex({uid:"hashed"}); db.SlimeAuthorizationPerformanceVo.createIndex({uid:"hashed"});
db.KylinPerformanceVo.createIndex({merchantId:"hashed"});
db.KylinOrderTicketVo.createIndex({status:"hashed"});
db.KylinOrderTicketVo.createIndex({transferStatus:"hashed"});
#创建分片
sh.enableSharding("prod_ln_scene");
sh.shardCollection("prod_ln_scene.SlimeFieldsVo",{"fieldId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeFieldAppliesVo",{"fieldApplyId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeFieldCheckersVo",{"fieldCheckId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeSponsorsVo",{"sponsorId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeSponsorAppliesVo",{"sponsorApplyId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeAuthorizationRecordsVo",{"authorizationRecordId":"hashed"});
sh.shardCollection("prod_ln_scene.SlimeAuthorizationPerformanceVo",{"performanceId":"hashed"});
...@@ -19,6 +19,7 @@ import com.liquidnet.service.slime.service.SlimeRdmService; ...@@ -19,6 +19,7 @@ import com.liquidnet.service.slime.service.SlimeRdmService;
import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObject;
import com.mongodb.client.model.FindOneAndUpdateOptions; import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument; import com.mongodb.client.model.ReturnDocument;
import lombok.extern.slf4j.Slf4j;
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.domain.Sort; import org.springframework.data.domain.Sort;
...@@ -37,6 +38,7 @@ import java.util.List; ...@@ -37,6 +38,7 @@ import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Component @Component
@Slf4j
public class MongoSlimeUtils { public class MongoSlimeUtils {
@Autowired @Autowired
private MongoTemplate mongoTemplate; private MongoTemplate mongoTemplate;
...@@ -263,7 +265,7 @@ public class MongoSlimeUtils { ...@@ -263,7 +265,7 @@ public class MongoSlimeUtils {
if (performancePartnerListParam.getOrderSc().equals("asc")) { if (performancePartnerListParam.getOrderSc().equals("asc")) {
orderBy = Sort.Direction.ASC; orderBy = Sort.Direction.ASC;
} }
long currentTime = System.currentTimeMillis();
List<String> performanceIdList = null; List<String> performanceIdList = null;
List<SlimeAuthorizationPerformanceVo> permissionVoList = ObjectUtil.getPermissionVoList(); List<SlimeAuthorizationPerformanceVo> permissionVoList = ObjectUtil.getPermissionVoList();
if (!redisSlimeUtils.superAccount(performancePartnerListParam.getMerchantId())) { if (!redisSlimeUtils.superAccount(performancePartnerListParam.getMerchantId())) {
...@@ -280,6 +282,8 @@ public class MongoSlimeUtils { ...@@ -280,6 +282,8 @@ public class MongoSlimeUtils {
SlimeAuthorizationPerformanceVo.class, SlimeAuthorizationPerformanceVo.class.getSimpleName()); SlimeAuthorizationPerformanceVo.class, SlimeAuthorizationPerformanceVo.class.getSimpleName());
performanceIdList = permissionVoList.stream().map(SlimeAuthorizationPerformanceVo::getPerformanceId).collect(Collectors.toList()); performanceIdList = permissionVoList.stream().map(SlimeAuthorizationPerformanceVo::getPerformanceId).collect(Collectors.toList());
} }
log.debug("TIME 1= "+ (System.currentTimeMillis()-currentTime));
currentTime = System.currentTimeMillis();
//查询演出 //查询演出
Criteria criteriaPerformanceId = performanceIdList == null ? Criteria.where("performancesId").ne(null) : Criteria.where("performancesId").in(performanceIdList); Criteria criteriaPerformanceId = performanceIdList == null ? Criteria.where("performancesId").ne(null) : Criteria.where("performancesId").in(performanceIdList);
Criteria criteria = Criteria.where("performancesId").ne(null); Criteria criteria = Criteria.where("performancesId").ne(null);
...@@ -304,11 +308,14 @@ public class MongoSlimeUtils { ...@@ -304,11 +308,14 @@ public class MongoSlimeUtils {
.skip(((performancePartnerListParam.getPage() - 1) * performancePartnerListParam.getSize())) .skip(((performancePartnerListParam.getPage() - 1) * performancePartnerListParam.getSize()))
.limit(performancePartnerListParam.getSize()), .limit(performancePartnerListParam.getSize()),
KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName()); KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
log.debug("TIME 2= "+ (System.currentTimeMillis()-currentTime));
currentTime = System.currentTimeMillis();
long total = mongoTemplate.count( long total = mongoTemplate.count(
Query.query(new Criteria().andOperator(criteria).orOperator(criteriaPerformanceId, Criteria.where("merchantId").is(performancePartnerListParam.getMerchantId()))) Query.query(new Criteria().andOperator(criteria).orOperator(criteriaPerformanceId, Criteria.where("merchantId").is(performancePartnerListParam.getMerchantId())))
.with(Sort.by(orderBy, performancePartnerListParam.getOrderItem())), .with(Sort.by(orderBy, performancePartnerListParam.getOrderItem())),
KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName()); KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
log.debug("TIME 3= "+ (System.currentTimeMillis()-currentTime));
currentTime = System.currentTimeMillis();
//查询销量 //查询销量
Aggregation aggregation = Aggregation.newAggregation( Aggregation aggregation = Aggregation.newAggregation(
Aggregation.match(Criteria.where("status").in(0, 1, 3, 6).and("couponType").is("no").and("transferStatus").in(0, 1, 2, 5).and("performanceId").in(performanceIdList)), Aggregation.match(Criteria.where("status").in(0, 1, 3, 6).and("couponType").is("no").and("transferStatus").in(0, 1, 2, 5).and("performanceId").in(performanceIdList)),
...@@ -321,8 +328,12 @@ public class MongoSlimeUtils { ...@@ -321,8 +328,12 @@ public class MongoSlimeUtils {
); );
AggregationResults<PerformancePartnerListDao> outputType = mongoTemplate.aggregate(aggregation, KylinOrderTicketVo.class.getSimpleName(), PerformancePartnerListDao.class); AggregationResults<PerformancePartnerListDao> outputType = mongoTemplate.aggregate(aggregation, KylinOrderTicketVo.class.getSimpleName(), PerformancePartnerListDao.class);
log.debug("TIME 4= "+ (System.currentTimeMillis()-currentTime));
currentTime = System.currentTimeMillis();
List<PerformancePartnerListDao> dataList = new ArrayList(outputType.getMappedResults()); List<PerformancePartnerListDao> dataList = new ArrayList(outputType.getMappedResults());
List<PerformancePartnerListDao> list = ObjectUtil.getPerformancePartnerListDaoArrayList(); List<PerformancePartnerListDao> list = ObjectUtil.getPerformancePartnerListDaoArrayList();
boolean isSuperAccount = redisSlimeUtils.superAccount(performancePartnerListParam.getMerchantId());
for (KylinPerformanceVo item : performanceVos) { for (KylinPerformanceVo item : performanceVos) {
boolean findData = false; boolean findData = false;
PerformancePartnerListDao dao = PerformancePartnerListDao.getNew(); PerformancePartnerListDao dao = PerformancePartnerListDao.getNew();
...@@ -359,7 +370,7 @@ public class MongoSlimeUtils { ...@@ -359,7 +370,7 @@ public class MongoSlimeUtils {
dao.setTimeSell(timeSell); dao.setTimeSell(timeSell);
dao.setTimeStop(timeStop); dao.setTimeStop(timeStop);
if (item.getMerchantId().equals(performancePartnerListParam.getMerchantId()) || redisSlimeUtils.superAccount(performancePartnerListParam.getMerchantId())) { if (item.getMerchantId().equals(performancePartnerListParam.getMerchantId()) || isSuperAccount) {
dao.setPermissionId(new ArrayList<String>() {{ dao.setPermissionId(new ArrayList<String>() {{
add(SlimeAuthorizationConst.PerformancePermission.READ.getId()); add(SlimeAuthorizationConst.PerformancePermission.READ.getId());
add(SlimeAuthorizationConst.PerformancePermission.EDIT.getId()); add(SlimeAuthorizationConst.PerformancePermission.EDIT.getId());
...@@ -371,7 +382,7 @@ public class MongoSlimeUtils { ...@@ -371,7 +382,7 @@ public class MongoSlimeUtils {
} }
for (SlimeAuthorizationPerformanceVo permission : permissionVoList) { for (SlimeAuthorizationPerformanceVo permission : permissionVoList) {
if (item.getMerchantId().equals(performancePartnerListParam.getMerchantId()) || redisSlimeUtils.superAccount(performancePartnerListParam.getMerchantId())) { if (item.getMerchantId().equals(performancePartnerListParam.getMerchantId()) || isSuperAccount) {
dao.setPermissionId(new ArrayList<String>() {{ dao.setPermissionId(new ArrayList<String>() {{
add(SlimeAuthorizationConst.PerformancePermission.READ.getId()); add(SlimeAuthorizationConst.PerformancePermission.READ.getId());
add(SlimeAuthorizationConst.PerformancePermission.EDIT.getId()); add(SlimeAuthorizationConst.PerformancePermission.EDIT.getId());
...@@ -410,6 +421,7 @@ public class MongoSlimeUtils { ...@@ -410,6 +421,7 @@ public class MongoSlimeUtils {
} }
list.add(dao); list.add(dao);
} }
log.debug("TIME 5= "+ (System.currentTimeMillis()-currentTime));
HashMap<String ,Object> map = CollectionUtil.mapStringObject(); HashMap<String ,Object> map = CollectionUtil.mapStringObject();
map.put("data",list); map.put("data",list);
map.put("total",total); map.put("total",total);
......
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