Browse Source

Merge branch 'saas' of http://git.dayaedu.com/yonge/mec into saas

yonge 2 years ago
parent
commit
72cdeac6b1

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/GoodsDao.java

@@ -8,6 +8,7 @@ import com.ym.mec.biz.dal.page.GoodsQuery;
 import com.ym.mec.common.dal.BaseDAO;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
 
@@ -197,4 +198,5 @@ public interface GoodsDao extends BaseDAO<Integer, Goods> {
      */
     Integer getReplacementInstrumentCount(Map<String, Object> params);
 
+    BigDecimal getOrganCostPrice(@Param("complementGoodsIdList") String complementGoodsIdList);
 }

+ 8 - 355
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Goods.java

@@ -3,10 +3,9 @@ package com.ym.mec.biz.dal.entity;
 import com.ym.mec.biz.dal.enums.GoodsType;
 import com.ym.mec.biz.dal.enums.StockType;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
-import com.ym.mec.common.entity.BaseEntity;
-
+import com.ym.mec.common.tenant.TenantContextHolder;
 import io.swagger.annotations.ApiModelProperty;
-
+import lombok.Data;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
 import java.math.BigDecimal;
@@ -15,7 +14,8 @@ import java.util.List;
 /**
  * 对应数据库表(goods):
  */
-public class Goods extends BaseEntity {
+@Data
+public class Goods {
 
 	/** 商品编号 */
 	@ApiModelProperty(value = "商品编号",required = false)
@@ -79,6 +79,9 @@ public class Goods extends BaseEntity {
 	@ApiModelProperty(value = "协议成本价",required = false)
 	private BigDecimal agreeCostPrice;
 
+	@ApiModelProperty(value = "分部成本价",required = false)
+	private BigDecimal organCostPrice;
+
 	/** 页面简介 */
 	@ApiModelProperty(value = "页面简介",required = false)
 	private String brief;
@@ -172,357 +175,7 @@ public class Goods extends BaseEntity {
 	@ApiModelProperty(value = "库存预警")
 	private YesOrNoEnum stockWarning;
 
-	public String getStudentShowOrganId() {
-		return studentShowOrganId;
-	}
-
-	public void setStudentShowOrganId(String studentShowOrganId) {
-		this.studentShowOrganId = studentShowOrganId;
-	}
-
-	public String getEducationShowOrganId() {
-		return educationShowOrganId;
-	}
-
-	public void setEducationShowOrganId(String educationShowOrganId) {
-		this.educationShowOrganId = educationShowOrganId;
-	}
-
-	public String getCourseFeeShowOrganId() {
-		return courseFeeShowOrganId;
-	}
-
-	public void setCourseFeeShowOrganId(String courseFeeShowOrganId) {
-		this.courseFeeShowOrganId = courseFeeShowOrganId;
-	}
-
-	public String getMemberFeeShowOrganId() {
-		return memberFeeShowOrganId;
-	}
-
-	public void setMemberFeeShowOrganId(String memberFeeShowOrganId) {
-		this.memberFeeShowOrganId = memberFeeShowOrganId;
-	}
-
-	public String getReplacementShowOrganId() {
-		return replacementShowOrganId;
-	}
-
-	public void setReplacementShowOrganId(String replacementShowOrganId) {
-		this.replacementShowOrganId = replacementShowOrganId;
-	}
-
-	public String getStudentShowOrganName() {
-		return studentShowOrganName;
-	}
-
-	public void setStudentShowOrganName(String studentShowOrganName) {
-		this.studentShowOrganName = studentShowOrganName;
-	}
-
-	public String getEducationShowOrganName() {
-		return educationShowOrganName;
-	}
-
-	public void setEducationShowOrganName(String educationShowOrganName) {
-		this.educationShowOrganName = educationShowOrganName;
-	}
-
-	public String getCourseFeeShowOrganName() {
-		return courseFeeShowOrganName;
-	}
-
-	public void setCourseFeeShowOrganName(String courseFeeShowOrganName) {
-		this.courseFeeShowOrganName = courseFeeShowOrganName;
-	}
-
-	public String getMemberFeeShowOrganName() {
-		return memberFeeShowOrganName;
-	}
-
-	public void setMemberFeeShowOrganName(String memberFeeShowOrganName) {
-		this.memberFeeShowOrganName = memberFeeShowOrganName;
-	}
-
-	public String getReplacementShowOrganName() {
-		return replacementShowOrganName;
-	}
-
-	public void setReplacementShowOrganName(String replacementShowOrganName) {
-		this.replacementShowOrganName = replacementShowOrganName;
-	}
-
-	public YesOrNoEnum getStockWarning() {
-		return stockWarning;
-	}
-
-	public void setStockWarning(YesOrNoEnum stockWarning) {
-		this.stockWarning = stockWarning;
-	}
-
-	public StockType getStockType() {
-		return stockType;
-	}
-
-	public void setStockType(StockType stockType) {
-		this.stockType = stockType;
-	}
-
-	public BigDecimal getAgreeCostPrice() {
-		return agreeCostPrice;
-	}
-
-	public void setAgreeCostPrice(BigDecimal agreeCostPrice) {
-		this.agreeCostPrice = agreeCostPrice;
-	}
-
-	public String getSubjectIds() {
-        return subjectIds;
-    }
-
-    public void setSubjectIds(String subjectIds) {
-        this.subjectIds = subjectIds;
-    }
-
-	public BigDecimal getCostPrice() {
-		return costPrice;
-	}
-
-	public void setCostPrice(BigDecimal costPrice) {
-		this.costPrice = costPrice;
-	}
-
-	public String getGoodsCategoryName() {
-		return goodsCategoryName;
-	}
-
-	public void setGoodsCategoryName(String goodsCategoryName) {
-		this.goodsCategoryName = goodsCategoryName;
-	}
-
-	public GoodsType getType() {
-		return type;
-	}
-
-	public void setType(GoodsType type) {
-		this.type = type;
-	}
-
-	public String getComplementGoodsIdList() {
-		return complementGoodsIdList;
-	}
-
-	public void setComplementGoodsIdList(String complementGoodsIdList) {
-		this.complementGoodsIdList = complementGoodsIdList;
-	}
-
-	public void setId(Integer id){
-		this.id = id;
-	}
-
-	public Integer getId(){
-		return this.id;
-	}
-
-	public void setGoodsCategoryId(Integer goodsCategoryId){
-		this.goodsCategoryId = goodsCategoryId;
-	}
-
-	public Integer getGoodsCategoryId(){
-		return this.goodsCategoryId;
-	}
-
-	public void setSn(String sn){
-		this.sn = sn;
-	}
-
-	public String getSn(){
-		return this.sn;
-	}
-
-	public void setName(String name){
-		this.name = name;
-	}
-
-	public String getName(){
-		return this.name;
-	}
-
-	public void setBrand(String brand){
-		this.brand = brand;
-	}
-
-	public String getBrand(){
-		return this.brand;
-	}
-
-	public void setSpecification(String specification){
-		this.specification = specification;
-	}
-
-	public String getSpecification(){
-		return this.specification;
-	}
-
-	public void setImage(String image){
-		this.image = image;
-	}
-
-	public String getImage(){
-		return this.image;
-	}
-
-	public void setStockCount(Integer stockCount){
-		this.stockCount = stockCount;
-	}
-
-	public Integer getStockCount(){
-		return this.stockCount;
-	}
-
-	public void setSellCount(Integer sellCount){
-		this.sellCount = sellCount;
-	}
-
-	public Integer getSellCount(){
-		return this.sellCount;
-	}
-
-	public BigDecimal getMarketPrice() {
-		return marketPrice;
-	}
-
-	public void setMarketPrice(BigDecimal marketPrice) {
-		this.marketPrice = marketPrice;
-	}
-
-	public BigDecimal getDiscountPrice() {
-		return discountPrice;
-	}
-
-	public void setDiscountPrice(BigDecimal discountPrice) {
-		this.discountPrice = discountPrice;
-	}
-
-	public BigDecimal getGroupPurchasePrice() {
-		return groupPurchasePrice;
-	}
-
-	public void setGroupPurchasePrice(BigDecimal groupPurchasePrice) {
-		this.groupPurchasePrice = groupPurchasePrice;
-	}
-
-	public void setBrief(String brief){
-		this.brief = brief;
-	}
-
-	public String getBrief(){
-		return this.brief;
-	}
-
-	public void setDesc(String desc){
-		this.desc = desc;
-	}
-
-	public String getDesc(){
-		return this.desc;
-	}
-
-	public YesOrNoEnum getIsNew() {
-		return isNew;
-	}
-
-	public void setIsNew(YesOrNoEnum isNew) {
-		this.isNew = isNew;
-	}
-
-	public YesOrNoEnum getIsTop() {
-		return isTop;
-	}
-
-	public void setIsTop(YesOrNoEnum isTop) {
-		this.isTop = isTop;
-	}
-
-	public YesOrNoEnum getStatus() {
-		return status;
-	}
-
-	public void setStatus(YesOrNoEnum status) {
-		this.status = status;
-	}
-
-	public void setMemo(String memo){
-		this.memo = memo;
-	}
-
-	public String getMemo(){
-		return this.memo;
-	}
-
-	public void setPublishTime(java.util.Date publishTime){
-		this.publishTime = publishTime;
-	}
-
-	public java.util.Date getPublishTime(){
-		return this.publishTime;
-	}
-
-	public void setCreateTime(java.util.Date createTime){
-		this.createTime = createTime;
-	}
-
-	public java.util.Date getCreateTime(){
-		return this.createTime;
-	}
-
-	public void setUpdateTime(java.util.Date updateTime){
-		this.updateTime = updateTime;
-	}
-
-	public java.util.Date getUpdateTime(){
-		return this.updateTime;
-	}
-
-	public List<Goods> getGoodsList() {
-		return goodsList;
-	}
-
-	public void setGoodsList(List<Goods> goodsList) {
-		this.goodsList = goodsList;
-	}
-
-	public Integer getTaxStockCount() {
-		return taxStockCount;
-	}
-
-	public void setTaxStockCount(Integer taxStockCount) {
-		this.taxStockCount = taxStockCount;
-	}
-
-	public String getSupplyChannel() {
-		return supplyChannel;
-	}
-
-	public void setSupplyChannel(String supplyChannel) {
-		this.supplyChannel = supplyChannel;
-	}
-
-	public String getFreeFeeShowOrganId() {
-		return freeFeeShowOrganId;
-	}
-
-	public void setFreeFeeShowOrganId(String freeFeeShowOrganId) {
-		this.freeFeeShowOrganId = freeFeeShowOrganId;
-	}
-
-	public String getFreeFeeShowOrganName() {
-		return freeFeeShowOrganName;
-	}
-
-	public void setFreeFeeShowOrganName(String freeFeeShowOrganName) {
-		this.freeFeeShowOrganName = freeFeeShowOrganName;
-	}
+	private Integer tenantId = TenantContextHolder.getTenantId();
 
 	@Override
 	public String toString() {

+ 9 - 407
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SellOrder.java

@@ -6,127 +6,78 @@ import com.ym.mec.biz.dal.enums.SellTypeEnum;
 import com.ym.mec.biz.dal.enums.StockType;
 import com.ym.mec.common.entity.BaseEntity;
 
+import com.ym.mec.common.tenant.TenantContextHolder;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 
 import java.math.BigDecimal;
 import java.util.Date;
 
 @ApiModel(value="com-ym-SellOrder")
-public class SellOrder extends BaseEntity {
-    @ApiModelProperty(value="")
+@Data
+public class SellOrder{
     private Integer id;
 
-    /**
-     * 教务id
-     */
     @ApiModelProperty(value="教务id")
     private Integer eduTeacherId;
 
     @ApiModelProperty(value="教务老师")
     private String eduTeacher;
 
-    /**
-    * 分部id
-    */
     @ApiModelProperty(value="分部id")
     private Integer organId;
 
-    /**
-     * 学校id
-     */
     @ApiModelProperty(value="学校id")
     private Integer cooperationOrganId;
 
-    /**
-     * 学校名称
-     */
     @ApiModelProperty(value="学校名称")
     private String schoolName;
 
-    /**
-    * 交易流水号
-    */
     @ApiModelProperty(value="交易流水号")
     private String transNo;
 
-    /**
-     * 交易流水号
-     */
     @ApiModelProperty(value="订单id")
     private Long orderId;
 
     private String organName;
 
-    /**
-    * 订单号
-    */
     @ApiModelProperty(value="订单号")
     private String orderNo;
 
-    /**
-    * 应付金额
-    */
     @ApiModelProperty(value="应付金额")
     private BigDecimal expectAmount = BigDecimal.ZERO;
 
-    /**
-    * 现金支付金额
-    */
     @ApiModelProperty(value="现金支付金额")
     private BigDecimal actualAmount = BigDecimal.ZERO;
 
-    /**
-    * 余额支付金额
-    */
     @ApiModelProperty(value="余额支付金额")
     private BigDecimal balanceAmount = BigDecimal.ZERO;
 
-    /**
-    * 销售成本
-    */
-    @ApiModelProperty(value="销售成本")
+    @ApiModelProperty(value="总部销售成本")
     private BigDecimal sellCost;
 
-    /**
-     * 销售成本2
-     */
+    @ApiModelProperty(value="分部销售成本")
+    private BigDecimal organSellCost;
+
     @ApiModelProperty(value="销售成本2")
     private String sellCost2;
 
-    /**
-    * 销售类型
-    */
     @ApiModelProperty(value="销售类型")
     private SellTypeEnum type;
 
-    /**
-     * 组合商品id
-     */
     @ApiModelProperty(value="组合商品id")
     private Integer parentGoodsId;
 
-    /**
-    * 商品id
-    */
     @ApiModelProperty(value="商品id")
     private Integer goodsId;
 
-    /**
-     * 商品名称
-     */
     @ApiModelProperty(value="商品名称")
     private String goodsName;
 
-    /**
-    * 数量
-    */
     @ApiModelProperty(value="数量")
     private Integer num;
 
-    /**
-    * 用户id
-    */
     @ApiModelProperty(value="用户id")
     private Integer userId;
 
@@ -134,68 +85,37 @@ public class SellOrder extends BaseEntity {
 
     private String phone;
 
-    /**
-    * 交易方式
-    */
     @ApiModelProperty(value="交易方式")
     private String paymentChannel;
 
     private String paymentChannelStr;
 
-    /**
-    * 收款账户
-    */
     @ApiModelProperty(value="收款账户")
     private String merNo;
 
-    /**
-     * 批次号
-     */
     @ApiModelProperty(value="批次号")
     private String batchNo;
 
-    /**
-    * 库存类型
-    */
     @ApiModelProperty(value="库存类型")
     private StockType stockType;
 
-    /**
-     * 账户类型
-     */
     @ApiModelProperty(value = "账户类型")
     private AccountType accountType;
 
     private String accountTypeStr;
 
-    /**
-     * 状态
-     */
     @ApiModelProperty(value = "状态")
     private SellStatus status;
 
-
-    /**
-     * 退货时间
-     */
     @ApiModelProperty(value="退货时间")
     private Date refundTime;
 
-    /**
-    * 交易时间
-    */
     @ApiModelProperty(value="交易时间")
     private Date sellTime;
 
-    /**
-    * 创建时间
-    */
     @ApiModelProperty(value="创建时间")
     private Date createIme;
 
-    /**
-    * 更新时间
-    */
     @ApiModelProperty(value="更新时间")
     private Date updateTime;
 
@@ -212,323 +132,5 @@ public class SellOrder extends BaseEntity {
     @ApiModelProperty(value="订单金额")
     private BigDecimal orderAmount = BigDecimal.ZERO;
 
-    public BigDecimal getOrderAmount() {
-        return orderAmount;
-    }
-
-    public void setOrderAmount(BigDecimal orderAmount) {
-        this.orderAmount = orderAmount;
-    }
-
-    public BigDecimal getCouponRemitAmount() {
-        return couponRemitAmount;
-    }
-
-    public void setCouponRemitAmount(BigDecimal couponRemitAmount) {
-        this.couponRemitAmount = couponRemitAmount;
-    }
-
-    public String getReceiveStatus() {
-        return receiveStatus;
-    }
-
-    public void setReceiveStatus(String receiveStatus) {
-        this.receiveStatus = receiveStatus;
-    }
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public Integer getOrganId() {
-        return organId;
-    }
-
-    public void setOrganId(Integer organId) {
-        this.organId = organId;
-    }
-
-    public Integer getCooperationOrganId() {
-        return cooperationOrganId;
-    }
-
-    public void setCooperationOrganId(Integer cooperationOrganId) {
-        this.cooperationOrganId = cooperationOrganId;
-    }
-
-    public String getTransNo() {
-        return transNo;
-    }
-
-    public void setTransNo(String transNo) {
-        this.transNo = transNo;
-    }
-
-    public String getOrderNo() {
-        return orderNo;
-    }
-
-    public void setOrderNo(String orderNo) {
-        this.orderNo = orderNo;
-    }
-
-    public BigDecimal getExpectAmount() {
-        return expectAmount;
-    }
-
-    public void setExpectAmount(BigDecimal expectAmount) {
-        this.expectAmount = expectAmount;
-    }
-
-    public BigDecimal getActualAmount() {
-        return actualAmount;
-    }
-
-    public void setActualAmount(BigDecimal actualAmount) {
-        this.actualAmount = actualAmount;
-    }
-
-    public BigDecimal getBalanceAmount() {
-        return balanceAmount;
-    }
-
-    public void setBalanceAmount(BigDecimal balanceAmount) {
-        this.balanceAmount = balanceAmount;
-    }
-
-    public BigDecimal getSellCost() {
-        return sellCost;
-    }
-
-    public void setSellCost(BigDecimal sellCost) {
-        this.sellCost = sellCost;
-    }
-
-    public SellTypeEnum getType() {
-        return type;
-    }
-
-    public void setType(SellTypeEnum type) {
-        this.type = type;
-    }
-
-    public Integer getGoodsId() {
-        return goodsId;
-    }
-
-    public void setGoodsId(Integer goodsId) {
-        this.goodsId = goodsId;
-    }
-
-    public Integer getNum() {
-        return num;
-    }
-
-    public void setNum(Integer num) {
-        this.num = num;
-    }
-
-    public Integer getUserId() {
-        return userId;
-    }
-
-    public void setUserId(Integer userId) {
-        this.userId = userId;
-    }
-
-    public String getPaymentChannel() {
-        return paymentChannel;
-    }
-
-    public void setPaymentChannel(String paymentChannel) {
-        this.paymentChannel = paymentChannel;
-    }
-
-    public String getMerNo() {
-        return merNo;
-    }
-
-    public void setMerNo(String merNo) {
-        this.merNo = merNo;
-    }
-
-    public Date getSellTime() {
-        return sellTime;
-    }
-
-    public void setSellTime(Date sellTime) {
-        this.sellTime = sellTime;
-    }
-
-    public Date getCreateIme() {
-        return createIme;
-    }
-
-    public void setCreateIme(Date createIme) {
-        this.createIme = createIme;
-    }
-
-    public Date getUpdateTime() {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Date updateTime) {
-        this.updateTime = updateTime;
-    }
-
-    public String getGoodsName() {
-        return goodsName;
-    }
-
-    public void setGoodsName(String goodsName) {
-        this.goodsName = goodsName;
-    }
-
-    public String getSellCost2() {
-        return sellCost2;
-    }
-
-    public void setSellCost2(String sellCost2) {
-        this.sellCost2 = sellCost2;
-    }
-
-    public Long getOrderId() {
-        return orderId;
-    }
-
-    public void setOrderId(Long orderId) {
-        this.orderId = orderId;
-    }
-
-    public String getUserName() {
-        return userName;
-    }
-
-    public void setUserName(String userName) {
-        this.userName = userName;
-    }
-
-    public String getPhone() {
-        return phone;
-    }
-
-    public void setPhone(String phone) {
-        this.phone = phone;
-    }
-
-    public String getOrganName() {
-        return organName;
-    }
-
-    public void setOrganName(String organName) {
-        this.organName = organName;
-    }
-
-    public String getSchoolName() {
-        return schoolName;
-    }
-
-    public void setSchoolName(String schoolName) {
-        this.schoolName = schoolName;
-    }
-
-    public Integer getEduTeacherId() {
-        return eduTeacherId;
-    }
-
-    public void setEduTeacherId(Integer eduTeacherId) {
-        this.eduTeacherId = eduTeacherId;
-    }
-
-    public String getEduTeacher() {
-        return eduTeacher;
-    }
-
-    public void setEduTeacher(String eduTeacher) {
-        this.eduTeacher = eduTeacher;
-    }
-
-    public StockType getStockType() {
-        return stockType;
-    }
-
-    public void setStockType(StockType stockType) {
-        this.stockType = stockType;
-    }
-
-    public AccountType getAccountType() {
-        return accountType;
-    }
-
-    public void setAccountType(AccountType accountType) {
-        this.accountType = accountType;
-    }
-
-    public String getBatchNo() {
-        return batchNo;
-    }
-
-    public void setBatchNo(String batchNo) {
-        this.batchNo = batchNo;
-    }
-
-    public SellStatus getStatus() {
-        return status;
-    }
-
-    public void setStatus(SellStatus status) {
-        this.status = status;
-    }
-
-    public Integer getParentGoodsId() {
-        return parentGoodsId;
-    }
-
-    public void setParentGoodsId(Integer parentGoodsId) {
-        this.parentGoodsId = parentGoodsId;
-    }
-
-    public Date getRefundTime() {
-        return refundTime;
-    }
-
-    public void setRefundTime(Date refundTime) {
-        this.refundTime = refundTime;
-    }
-
-    public Boolean getHasRoute() {
-        return hasRoute;
-    }
-
-    public void setHasRoute(Boolean hasRoute) {
-        this.hasRoute = hasRoute;
-    }
-
-    public String getPaymentChannelStr() {
-        return paymentChannelStr;
-    }
-
-    public void setPaymentChannelStr(String paymentChannelStr) {
-        this.paymentChannelStr = paymentChannelStr;
-    }
-
-    public String getAccountTypeStr() {
-        return accountTypeStr;
-    }
-
-    public void setAccountTypeStr(String accountTypeStr) {
-        this.accountTypeStr = accountTypeStr;
-    }
-
-    public String getReceiveStatusStr() {
-        return receiveStatusStr;
-    }
-
-    public void setReceiveStatusStr(String receiveStatusStr) {
-        this.receiveStatusStr = receiveStatusStr;
-    }
+    private Integer tenantId = TenantContextHolder.getTenantId();
 }

+ 11 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/GoodsServiceImpl.java

@@ -434,7 +434,7 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 					goodsProcurement.setTaxStockSoldNum(new AtomicInteger(goodsProcurement.getTaxStockSoldNum()).incrementAndGet());
 				}
 			}
-
+			//如果有采购清单,初始化总部成本价
 			if(Objects.nonNull(goodsProcurement)){
 				goodsProcurementDao.update(goodsProcurement);
 				noneBatchNoSellOrder.setBatchNo(goodsProcurement.getBatchNo());
@@ -522,6 +522,11 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 					}else if(StockType.EXTERNAL.equals(goods.getStockType())||(StockType.ALL.equals(goods.getStockType())&&AccountType.EXTERNAL.equals(accountType))){
 						sellOrder.setStockType(StockType.EXTERNAL);
 					}
+					if(StringUtils.isNotEmpty(goods.getComplementGoodsIdList())){
+						sellOrder.setOrganSellCost(goodsDao.getOrganCostPrice(goods.getComplementGoodsIdList()));
+					}else {
+						sellOrder.setOrganSellCost(goods.getOrganCostPrice());
+					}
 					sellOrder.setGoodsName(goods.getName());
 					sellOrder.setAccountType(accountType);
 					sellOrder.setBatchNo(batchNoGoodsIdMapEntry.getKey());
@@ -555,6 +560,11 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 				sellOrder.setGoodsName(goods.getName());
 				sellOrder.setAccountType(accountType);
 				sellOrder.setBatchNo(goodsProcurement.getBatchNo());
+				if(StringUtils.isNotEmpty(goods.getComplementGoodsIdList())){
+					sellOrder.setOrganSellCost(goodsDao.getOrganCostPrice(goods.getComplementGoodsIdList()));
+				}else {
+					sellOrder.setOrganSellCost(goods.getOrganCostPrice());
+				}
 				if(Objects.nonNull(goodsProcurement.getBatchNo())){
 					sellOrder.setSellCost(goodsProcurement.getDiscountPrice());
 					Map<String, BigDecimal> CostMap = new HashMap<>();

+ 8 - 26
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -85,7 +85,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     @Autowired
     private SendSeoMessageSource sendSeoMessageSource;
     @Autowired
-    private SysUserFeignService sysUserFeignService;
+    private SysUserService sysUserService;
     @Autowired
     private ImUserFriendService imUserFriendService;
     @Autowired
@@ -128,8 +128,6 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     private ImGroupMemberService imGroupMemberService;
     @Autowired
     private MemberFeeSettingService memberFeeSettingService;
-    @Autowired
-    private StudentMusicCourseFeeService studentMusicCourseFeeService;
 
     @Override
     public BaseDAO<Long, MusicGroupPaymentCalender> getDAO() {
@@ -152,10 +150,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
         if (musicGroup == null) {
             throw new BizException("乐团查询失败,请检查参数");
         }
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            throw new BizException("请登录");
-        }
+        SysUser sysUser = sysUserService.getUser();
         // 所有缴费项目已完成排课才能创建下一个缴费项目
         /*String organBatchNo = musicGroupPaymentStudentCourseDetailDao.getUnUseBatchNoWithStudentAndCourseTypeAndCourseMinutes(musicGroupId, null, null, musicGroupPaymentCalenderDto.getIgnoreBatchNoList());
         if (StringUtils.isNoneBlank(organBatchNo)) {
@@ -242,10 +237,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
             throw new BizException("乐团查询失败,请检查参数");
         });
 
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        checkObjectNull(sysUser, o -> {
-            throw new BizException("请登录");
-        });
+        SysUser sysUser = sysUserService.getUser();
 
         // 不是进行中,只能创建一次缴费
         if (musicGroup.getStatus() != MusicGroupStatusEnum.PROGRESS) {
@@ -601,10 +593,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
         if (musicGroup == null) {
             throw new BizException("乐团查询失败,请检查参数");
         }
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            throw new BizException("请登录");
-        }
+        SysUser sysUser = sysUserService.getUser();
 
         List<Long> calenderIds = musicGroupPaymentCalenderList.stream().map(MusicGroupPaymentCalender::getId).collect(Collectors.toList());
         //删除原来数据
@@ -887,7 +876,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
             try {
                 String studentIds = groupPaymentCalenders.get(0).getStudentIds();
                 if (StringUtils.isNotEmpty(studentIds)) {
-                    SysUser sysUser = sysUserFeignService.queryUserById(Integer.parseInt(studentIds));
+                    SysUser sysUser = sysUserService.queryUserById(Integer.parseInt(studentIds));
                     calenderAuditDetailDto.setPhone(sysUser.getPhone());
                     calenderAuditDetailDto.setUsername(sysUser.getUsername());
                 }
@@ -973,12 +962,8 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
                     musicGroup.setStatus(MusicGroupStatusEnum.PRE_APPLY);
                     musicGroup.setUpdateTime(date);
                     musicGroupDao.update(musicGroup);
-                    SysUser sysUser = sysUserFeignService.queryUserInfo();
-                    if (sysUser == null || sysUser.getId() == null) {
-                        throw new BizException("请重新登录");
-                    }
                     //记录操作日志
-                    musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroup.getId(), "报名缴费项目通过(费用审核中 -> 预报名)", sysUser.getId(), ""));
+                    musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroup.getId(), "报名缴费项目通过(费用审核中 -> 预报名)",sysUserService.getUserId(), ""));
                     this.createPreImGroup(musicGroup);
                 }
             } else if (calender.getPaymentType() == ADD_STUDENT) {
@@ -1053,10 +1038,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void auditRefuse(String batchNs, String auditMemo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null || sysUser.getId() == null) {
-            throw new BizException("请重新登录");
-        }
+        SysUser sysUser = sysUserService.getUser();
         String[] split = batchNs.split(",");
         Date date = new Date();
         
@@ -1130,7 +1112,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
         if (calenders.size() == 0) {
             throw new BizException("缴费批次不存在");
         }
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        SysUser sysUser = sysUserService.getUser();
         Date date = new Date();
         calenders.forEach(e -> {
             if (e.getPaymentType() == ADD_STUDENT) {

+ 18 - 4
mec-biz/src/main/resources/config/mybatis/GoodsMapper.xml

@@ -22,6 +22,7 @@
         <result column="discount_price_" property="discountPrice"/>
         <result column="group_purchase_price_" property="groupPurchasePrice"/>
         <result column="agree_cost_price_" property="agreeCostPrice"/>
+        <result column="organ_cost_price_" property="organCostPrice"/>
         <result column="brief_" property="brief"/>
         <result column="desc_" property="desc"/>
         <result column="is_new_" property="isNew" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
@@ -73,20 +74,23 @@
         (goods_category_id_,sn_,name_,brand_,specification_,image_,stock_count_,tax_stock_count_,sell_count_,market_price_,
         discount_price_,group_purchase_price_,brief_,desc_,is_new_,is_top_,status_,memo_,publish_time_,
         complement_goods_id_list_,update_time_,create_time_,type_,agree_cost_price_,stock_warning_,stock_type_
-            ,student_show_organ_id_,education_show_organ_id_,replacement_show_organ_id_,course_fee_show_organ_id_,member_fee_show_organ_id_,free_fee_show_organ_id_,tenant_id_)
+            ,student_show_organ_id_,education_show_organ_id_,replacement_show_organ_id_,course_fee_show_organ_id_,
+         member_fee_show_organ_id_,free_fee_show_organ_id_,tenant_id_,organ_cost_price_)
         VALUES(#{goodsCategoryId},#{sn},#{name},#{brand},#{specification},#{image},#{stockCount},#{taxStockCount},#{sellCount},#{marketPrice},
         #{discountPrice},#{groupPurchasePrice},#{brief},#{desc},
         #{isNew,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{isTop,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
         #{memo},#{publishTime},#{complementGoodsIdList},now(),now(),#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{agreeCostPrice},
         #{stockWarning,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}, #{stockType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-        #{studentShowOrganId},#{educationShowOrganId},#{replacementShowOrganId},#{courseFeeShowOrganId},#{memberFeeShowOrganId},#{freeFeeShowOrganId},#{tenantId})
+        #{studentShowOrganId},#{educationShowOrganId},#{replacementShowOrganId},#{courseFeeShowOrganId},
+               #{memberFeeShowOrganId},#{freeFeeShowOrganId},#{tenantId},#{organCostPrice})
     </insert>
     <insert id="batchInsert" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
         INSERT INTO goods
         (goods_category_id_,name_,brand_,specification_,image_,market_price_,
         discount_price_,group_purchase_price_,brief_,desc_,update_time_,create_time_,type_,agree_cost_price_,sn_,
         stock_count_,tax_stock_count_,stock_warning_,stock_type_
-        ,student_show_organ_id_,education_show_organ_id_,replacement_show_organ_id_,course_fee_show_organ_id_,member_fee_show_organ_id_,free_fee_show_organ_id_,tenant_id_)
+        ,student_show_organ_id_,education_show_organ_id_,replacement_show_organ_id_,course_fee_show_organ_id_,
+         member_fee_show_organ_id_,free_fee_show_organ_id_,tenant_id_,organ_cost_price_)
         VALUES
         <foreach collection="list" separator="," item="goods">
             (#{goods.goodsCategoryId},#{goods.name},#{goods.brand},#{goods.specification},#{goods.image},#{goods.marketPrice},
@@ -95,7 +99,8 @@
             #{goods.stockCount},#{goods.taxStockCount},
             #{goods.stockWarning,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             #{goods.stockType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-            #{goods.studentShowOrganId},#{goods.educationShowOrganId},#{goods.replacementShowOrganId},#{goods.courseFeeShowOrganId},#{goods.memberFeeShowOrganId},,#{goods.freeFeeShowOrganId},#{goods.tenantId}
+            #{goods.studentShowOrganId},#{goods.educationShowOrganId},#{goods.replacementShowOrganId},
+             #{goods.courseFeeShowOrganId},#{goods.memberFeeShowOrganId},#{goods.freeFeeShowOrganId},#{goods.tenantId},#{goods.organCostPrice}
             )
         </foreach>
     </insert>
@@ -112,6 +117,9 @@
             <if test="agreeCostPrice != null">
                 agree_cost_price_ = #{agreeCostPrice},
             </if>
+            <if test="organCostPrice != null">
+                organ_cost_price_ = #{organCostPrice},
+            </if>
             <if test="specification != null">
                 specification_ = #{specification},
             </if>
@@ -211,6 +219,9 @@
                 <if test="goods.agreeCostPrice != null">
                     agree_cost_price_ = #{goods.agreeCostPrice},
                 </if>
+                <if test="goods.organCostPrice != null">
+                    organ_cost_price_ = #{goods.organCostPrice},
+                </if>
                 <if test="goods.specification != null">
                     specification_ = #{goods.specification},
                 </if>
@@ -537,6 +548,9 @@
         <include refid="replacementQuerySql"/>
         <include refid="global.limit"/>
     </select>
+    <select id="getOrganCostPrice" resultType="java.math.BigDecimal">
+        select SUM(organ_cost_price_) from goods where FIND_IN_SET(id_,#{complementGoodsIdList});
+    </select>
 
     <sql id="replacementQuerySql">
         <where>

+ 13 - 5
mec-biz/src/main/resources/config/mybatis/SellOrderMapper.xml

@@ -23,6 +23,7 @@
         <result column="goods_id_" property="goodsId"/>
         <result column="goods_name_" property="goodsName"/>
         <result column="sell_cost_" property="sellCost"/>
+        <result column="organ_sell_cost_" property="organSellCost"/>
         <result column="sell_cost2_" property="sellCost2"/>
         <result column="num_" property="num"/>
         <result column="user_id_" property="userId"/>
@@ -49,7 +50,7 @@
         actual_amount_,balance_amount_, sell_cost_, sell_cost2_, type_,parent_goods_id_, goods_id_,goods_name_, num_,
         user_id_,
         payment_channel_,mer_no_,batch_no_,stock_type_,account_type_,status_, refund_time_,sell_time_, create_ime_,
-        update_time_,coupon_remit_amount_
+        update_time_,coupon_remit_amount_,organ_sell_cost_
     </sql>
     <select id="get" parameterType="java.lang.Integer" resultMap="SellOrder">
         <!--@mbg.generated-->
@@ -69,13 +70,14 @@
         insert into sell_order (edu_teacher_id_,organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_,
         expect_amount_,actual_amount_,balance_amount_, type_,parent_goods_id_, goods_id_,goods_name_, sell_cost_,
         sell_cost2_, num_, user_id_, payment_channel_,
-        mer_no_,batch_no_,stock_type_,account_type_, refund_time_,sell_time_, create_ime_, update_time_,coupon_remit_amount_,tenant_id_)
+        mer_no_,batch_no_,stock_type_,account_type_, refund_time_,sell_time_,
+        create_ime_, update_time_,coupon_remit_amount_,tenant_id_,organ_sell_cost_)
         values (#{eduTeacherId},#{organId}, #{cooperationOrganId}, #{transNo}, #{orderNo},#{orderId}, #{expectAmount},
         #{actualAmount}, #{balanceAmount}, #{type},#{parentGoodsId}, #{goodsId}, #{goodsName}, #{sellCost},
         #{sellCost2}, #{num}, #{userId},
         #{paymentChannel}, #{merNo},#{batchNo},
         #{stockType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{accountType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-        #{refundTime},#{sellTime}, #{createIme}, #{updateTime}, #{couponRemitAmount},#{tenantId})
+        #{refundTime},#{sellTime}, #{createIme}, #{updateTime}, #{couponRemitAmount},#{tenantId},#{organSellCost})
     </insert>
     <update id="update" parameterType="com.ym.mec.biz.dal.entity.SellOrder">
         <!--@mbg.generated-->
@@ -126,6 +128,9 @@
             <if test="sellCost != null">
                 sell_cost_ = #{sellCost},
             </if>
+            <if test="organSellCost != null">
+                organ_sell_cost_ = #{organSellCost},
+            </if>
             <if test="sellCost2 != null">
                 sell_cost2_ = #{sellCost2},
             </if>
@@ -215,6 +220,9 @@
                 <if test="sellOrder.sellCost != null">
                     sell_cost_ = #{sellOrder.sellCost},
                 </if>
+                <if test="sellOrder.organSellCost != null">
+                    organ_sell_cost_ = #{sellOrder.organSellCost},
+                </if>
                 <if test="sellOrder.sellCost2 != null">
                     sell_cost2_ = #{sellOrder.sellCost2},
                 </if>
@@ -261,7 +269,7 @@
         insert into sell_order (organ_id_, cooperation_organ_id_, trans_no_,order_id_, order_no_, expect_amount_,
         actual_amount_,balance_amount_, type_, parent_goods_id_, goods_id_,goods_name_, sell_cost_, sell_cost2_, num_,
         user_id_, payment_channel_,
-        mer_no_,batch_no_,stock_type_,account_type_, sell_time_,edu_teacher_id_, create_ime_, update_time_,coupon_remit_amount_,tenant_id_)
+        mer_no_,batch_no_,stock_type_,account_type_, sell_time_,edu_teacher_id_, create_ime_, update_time_,coupon_remit_amount_,tenant_id_,organ_sell_cost_)
         VALUE
         <foreach collection="sellOrders" separator="," item="sellOrder">
             (#{sellOrder.organId},#{sellOrder.cooperationOrganId},#{sellOrder.transNo},#{sellOrder.orderId},#{sellOrder.orderNo},
@@ -269,7 +277,7 @@
             #{sellOrder.goodsName},#{sellOrder.sellCost},#{sellOrder.sellCost2},#{sellOrder.num},#{sellOrder.userId},
             #{sellOrder.paymentChannel},#{sellOrder.merNo},#{sellOrder.batchNo},
             #{sellOrder.stockType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{sellOrder.accountType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-            #{sellOrder.sellTime},#{sellOrder.eduTeacherId},NOW(),NOW(),#{sellOrder.couponRemitAmount},#{sellOrder.tenantId})
+            #{sellOrder.sellTime},#{sellOrder.eduTeacherId},NOW(),NOW(),#{sellOrder.couponRemitAmount},#{sellOrder.tenantId},#{sellOrder.organSellCost})
         </foreach>
     </insert>
 

+ 5 - 0
mec-mall/mall-admin/pom.xml

@@ -44,6 +44,11 @@
             <version>20.0</version>
             <scope>compile</scope>
         </dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>easyexcel</artifactId>
+            <version>3.2.1</version>
+        </dependency>
 
 
     </dependencies>

+ 38 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/controller/ExportController.java

@@ -0,0 +1,38 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.alibaba.excel.EasyExcel;
+import com.yonge.cooleshow.admin.dto.OmsOrderQueryParam;
+import com.yonge.cooleshow.admin.dto.OrderDetailVo;
+import com.yonge.cooleshow.admin.service.OmsOrderService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.List;
+
+@RestController
+@Api(tags = "数据导出服务")
+@RequestMapping("/export")
+public class ExportController {
+    @Autowired
+    private OmsOrderService orderService;
+
+    @ApiOperation("订单详情")
+    @RequestMapping(value = "/orderDetail", method = RequestMethod.POST)
+    public void orderDetail(@RequestBody OmsOrderQueryParam queryParam, HttpServletResponse response) throws IOException {
+        List<OrderDetailVo> orderList = orderService.queryOrderDetail(queryParam);
+        // 设置文本内省
+        response.setContentType("application/vnd.ms-excel");
+        // 设置字符编码
+        response.setCharacterEncoding("utf-8");
+        // 设置响应头
+        response.setHeader("Content-disposition", "attachment;filename=订单详情.xlsx");
+        EasyExcel.write(response.getOutputStream(), OrderDetailVo.class).sheet("订单详情").doWrite(orderList);
+    }
+}

+ 2 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/dao/OmsOrderDao.java

@@ -46,4 +46,6 @@ public interface OmsOrderDao {
      */
     List<OrderStatistical> selectOrderCountAndAmount(@Param("startTime") Date startTime, @Param("endTime") Date endTime,
                                                      @Param("dateFormat") String dateFormat);
+
+    List<OrderDetailVo> queryOrderDetail(@Param("queryParam") OmsOrderQueryParam queryParam);
 }

+ 4 - 48
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/dto/OmsOrderQueryParam.java

@@ -1,6 +1,7 @@
 package com.yonge.cooleshow.admin.dto;
 
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 
 
 /**
@@ -8,6 +9,7 @@ import io.swagger.annotations.ApiModelProperty;
  * Created by macro on 2018/10/11.
  */
 
+@Data
 public class OmsOrderQueryParam {
     @ApiModelProperty(value = "订单编号")
     private String orderSn;
@@ -21,52 +23,6 @@ public class OmsOrderQueryParam {
     private Integer sourceType;
     @ApiModelProperty(value = "订单提交时间")
     private String createTime;
-
-    public String getOrderSn() {
-        return orderSn;
-    }
-
-    public void setOrderSn(String orderSn) {
-        this.orderSn = orderSn;
-    }
-
-    public String getReceiverKeyword() {
-        return receiverKeyword;
-    }
-
-    public void setReceiverKeyword(String receiverKeyword) {
-        this.receiverKeyword = receiverKeyword;
-    }
-
-    public Integer getStatus() {
-        return status;
-    }
-
-    public void setStatus(Integer status) {
-        this.status = status;
-    }
-
-    public Integer getOrderType() {
-        return orderType;
-    }
-
-    public void setOrderType(Integer orderType) {
-        this.orderType = orderType;
-    }
-
-    public Integer getSourceType() {
-        return sourceType;
-    }
-
-    public void setSourceType(Integer sourceType) {
-        this.sourceType = sourceType;
-    }
-
-    public String getCreateTime() {
-        return createTime;
-    }
-
-    public void setCreateTime(String createTime) {
-        this.createTime = createTime;
-    }
+    @ApiModelProperty(value = "订单提交时间")
+    private String endTime;
 }

+ 113 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/dto/OrderDetailVo.java

@@ -0,0 +1,113 @@
+package com.yonge.cooleshow.admin.dto;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.yonge.cooleshow.admin.enums.OpenTypeEnum;
+import lombok.Data;
+import org.apache.commons.lang3.StringUtils;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class OrderDetailVo{
+
+    @ExcelProperty("分部")
+    private String organName;
+
+    @ExcelProperty("用户编号")
+    private Integer memberId;
+
+    @ExcelProperty("用户姓名")
+    private String memberUsername;
+
+    @ExcelProperty("交易流水号")
+    private String transNo;
+
+    @ExcelProperty("订单号")
+    private String orderSn;
+
+    @ExcelIgnore
+    private OpenTypeEnum openTypeEnum;
+
+    @ExcelProperty(value = "收款渠道")
+    private String openType;
+
+    @ExcelProperty("收款账户")
+    private String merNos;
+
+    @ExcelProperty("订单金额")
+    private BigDecimal expectAmount;
+
+    @ExcelProperty("到账时间")
+    private Date paymentTime;
+
+    @ExcelProperty("商品货号")
+    private String productSn;
+
+    @ExcelProperty("购买商品")
+    private String productName;
+
+    @ExcelProperty("商品规格")
+    private String productSpecification;
+
+    @ExcelIgnore
+    private String productAttr;
+
+    @ExcelProperty("商品属性")
+    private String productAttrDesc;
+
+    @ExcelProperty("数量")
+    private Integer productQuantity;
+
+    @ExcelProperty("收件人")
+    private String receiverName;
+
+    @ExcelProperty("电话")
+    private String receiverPhone;
+
+    @ExcelProperty("地址")
+    private String receiverDetailAddress;
+
+    @ExcelProperty("物流")
+    private String deliveryCompany;
+
+    @ExcelProperty("单号")
+    private String deliverySn;
+
+    @ExcelProperty("备注")
+    private String note;
+
+    public String getProductAttr() {
+        return productAttr;
+    }
+
+    public void setProductAttr(String productAttr) {
+        this.productAttr = productAttr;
+        if(StringUtils.isNotEmpty(productAttr)){
+            try {
+                List<JSONObject> list = JSON.parseArray(productAttr,JSONObject.class);
+                StringBuffer sb = new StringBuffer();
+                for (JSONObject jsonObject : list) {
+                    sb.append(jsonObject.get("key")).append(":").append(jsonObject.get("value")).append(";");
+                }
+                this.productAttrDesc = sb.toString();
+            }catch (Exception e){
+
+            }
+        }
+    }
+
+    public OpenTypeEnum getOpenTypeEnum() {
+        return openTypeEnum;
+    }
+
+    public void setOpenTypeEnum(OpenTypeEnum openTypeEnum) {
+        this.openTypeEnum = openTypeEnum;
+        this.openType = openTypeEnum.getMsg();
+    }
+}

+ 20 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/enums/OpenTypeEnum.java

@@ -0,0 +1,20 @@
+package com.yonge.cooleshow.admin.enums;
+
+public enum OpenTypeEnum {
+    ORIGINAL("微信支付宝"),
+    ADAPAY("汇付"),
+    ;
+    private String msg;
+
+    OpenTypeEnum(String msg) {
+        this.msg = msg;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+}

+ 2 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/service/OmsOrderService.java

@@ -90,4 +90,6 @@ public interface OmsOrderService {
      * @return
      */
     HomeOrderStatistical orderStatistical(OrderStatisticalSearch search);
+
+    List<OrderDetailVo> queryOrderDetail(OmsOrderQueryParam queryParam);
 }

+ 5 - 0
mec-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/service/impl/OmsOrderServiceImpl.java

@@ -345,6 +345,11 @@ public class OmsOrderServiceImpl implements OmsOrderService {
 
     }
 
+    @Override
+    public List<OrderDetailVo> queryOrderDetail(OmsOrderQueryParam queryParam) {
+        return orderDao.queryOrderDetail(queryParam);
+    }
+
     private Integer getProportion(BigDecimal now, BigDecimal last) {
         if (now.compareTo(BigDecimal.ZERO) == 0) {
             if(last.compareTo(BigDecimal.ZERO) == 0) {

+ 39 - 1
mec-mall/mall-admin/src/main/resources/config/mybatis/OmsOrderDao.xml

@@ -37,7 +37,7 @@
             AND o.order_type = #{queryParam.orderType}
         </if>
         <if test="queryParam.createTime!=null and queryParam.createTime!=''">
-            AND o.create_time LIKE concat(#{queryParam.createTime},"%")
+            AND DATE_FORMAT(o.create_time, '%Y-%m-%d') BETWEEN #{queryParam.createTime} AND #{queryParam.endTime}
         </if>
         <if test="queryParam.receiverKeyword!=null and queryParam.receiverKeyword!=''">
             AND (
@@ -181,4 +181,42 @@
             </when>
         </choose>
     </select>
+    <select id="queryOrderDetail" resultType="com.yonge.cooleshow.admin.dto.OrderDetailVo">
+        select o.name_ organName,oo.member_id memberId,oo.member_username memberUsername,spo.trans_no_ transNo,oo.order_sn orderSn,
+               uop.open_type_ openTypeEnum,spo.mer_nos_ merNos,spo.expect_amount_ expectAmount,oo.payment_time paymentTime,
+               pp.product_sn productSn,ooi.product_name productName,ooi.product_quantity productQuantity,oo.receiver_name receiverName,oo.receiver_phone receiverPhone,
+               CONCAT(oo.receiver_province,oo.receiver_city,oo.receiver_region,oo.receiver_detail_address) receiverDetailAddress,
+               oo.delivery_company deliveryCompany,oo.delivery_sn deliverySn,oo.note,ooi.product_attr productAttr
+        from oms_order oo
+                 left join mec_pro.student_payment_order spo ON spo.order_no_ = oo.order_sn
+                 left join mec_pro.organization o ON o.id_ = spo.organ_id_
+                 left join user_order_payment uop ON uop.order_no_ = oo.order_sn AND uop.status_ = 'succeeded'
+                 left join oms_order_item ooi ON ooi.order_id = oo.id
+                 left join pms_product pp ON pp.id = ooi.product_sku_id
+        <where>
+            oo.delete_status = 0
+            <if test="queryParam.orderSn!=null and queryParam.orderSn!=''">
+                AND oo.order_sn = #{queryParam.orderSn}
+            </if>
+            <if test="queryParam.status!=null">
+                AND oo.`status` = #{queryParam.status}
+            </if>
+            <if test="queryParam.sourceType!=null">
+                AND oo.source_type = #{queryParam.sourceType}
+            </if>
+            <if test="queryParam.orderType!=null">
+                AND oo.order_type = #{queryParam.orderType}
+            </if>
+            <if test="queryParam.createTime!=null and queryParam.createTime!=''">
+                AND oo.create_time LIKE concat(#{queryParam.createTime},"%")
+            </if>
+            <if test="queryParam.receiverKeyword!=null and queryParam.receiverKeyword!=''">
+                AND (
+                oo.receiver_name LIKE concat("%",#{queryParam.receiverKeyword},"%")
+                OR o.receiver_phone LIKE concat("%",#{queryParam.receiverKeyword},"%")
+                )
+            </if>
+        </where>
+        order by oo.id desc
+    </select>
 </mapper>