@Overridepublic List<CommodityRefPath> selectCommodityRefByUdidWithStatus(String commodityCode, String udid,CommodityRefViewPathStatusEnum includeStatus,CommodityRefViewPathStatusEnum excludeStatus) {Criteria criteria =Criteria.where("udid").is(udid).and("commodity_code").is(commodityCode).and("os").is("H5");if(includeStatus!=null){criteria.and("status").is(includeStatus);}else if(excludeStatus!=null){criteria.and("status").ne(excludeStatus);}return mongoTemplate.find(new Query(criteria), CommodityRefPath.class);//return getMongoOperations().find(new Query(criteria), getEntityInformation().getJavaType());}
public class MongoTemplate implements MongoOperations, ApplicationContextAware {
提供各种API操作
delete(_id);
this.mongoOperations.insert(entity, this.entityInformation.getCollectionName());
this.mongoOperations.save(entity, this.entityInformation.getCollectionName());
return mongoTemplate.find(new Query(criteria), CommodityRefPath.class)_;
优购网H5端,用来存储【商品浏览路径等信息】
package com.yougou.mobilemall.ref.model;import java.io.Serializable;import java.util.Date;import javax.persistence.Id;import org.springframework.data.mongodb.core.index.CompoundIndex;import org.springframework.data.mongodb.core.index.CompoundIndexes;import org.springframework.data.mongodb.core.index.Indexed;import org.springframework.data.mongodb.core.mapping.Document;import org.springframework.data.mongodb.core.mapping.Field;import com.yougou.mobilemall.framework.constant.CommodityRefViewPathStatusEnum;/*** 商品浏览路径实体对象** @author lei.p**/@Document(collection = "commodity_ref_path")@CompoundIndexes({ @CompoundIndex(name = "udid_commodity_status_idx", def = "{'udid': 1, 'commodity_code': 1, 'status': 1}") })public class CommodityRefPath implements Serializable {private static final long serialVersionUID = -8369140056337999861L;@Idprivate String id;/** 商品编号 */@Field(value = "commodity_code")@Indexedprivate String commodityCode;/** 专题ID */@Field(value = "topic_id")private String topicId;/** 首页模块类型 */@Field(value = "model_type")private String modelType;/** 活动名 */@Field("topic_name")private String topicName;/** 商品浏览完整路径 */@Field(value = "view_path")private String viewPath;/** 系统(H5) */private String os = "H5";/** 版本 */@Field("app_ver")private String appVer;/** 设备唯一号 */private String udid;/** 渠道ID */@Field("source_id")private String sourceId;/** 用户ID */@Field("user_id")@Indexedprivate String userId;/** 最后操作时间 */@Field("operation_time")private Date operationTime = new Date();/** 加入购物车时间 */@Field("addcar_time")private String addCarTime;/** 状态 */private CommodityRefViewPathStatusEnum status = CommodityRefViewPathStatusEnum.ORDER_UNSUBMITED;}
