Procházet zdrojové kódy

Merge branch 'release_toaliyun_real' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real

release_toaliyun_real
winter před 1 rokem
rodič
revize
0d4bed5c6b
11 změnil soubory, kde provedl 95 přidání a 16 odebrání
  1. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityMerchantConfig.java
  2. +12
    -9
      mallinkService/src/main/java/com/iformall/domain/vo/LegionActivityMerchantStatistics.java
  3. +2
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxLegionActivityUserMapper.java
  4. +2
    -0
      mallinkService/src/main/java/com/iformall/service/WxLegionActivityMerchantConfigService.java
  5. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxLegionActivityOrderService.java
  6. +10
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityMerchantConfigServiceImpl.java
  7. +32
    -5
      mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityOrderServiceImpl.java
  8. +1
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java
  9. +7
    -0
      mallinkService/src/main/resources/mapper/WxLegionActivityMerchantConfigMapper.xml
  10. +21
    -0
      mallinkService/src/main/resources/mapper/WxLegionActivityOrderMapper.xml
  11. +4
    -0
      mallinkService/src/main/resources/mapper/WxLegionActivityUserMapper.xml

+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityMerchantConfig.java Zobrazit soubor

@@ -52,6 +52,9 @@ public class WxLegionActivityMerchantConfig extends TenantEntity {
@TableField(value = "merchant_id")
private Long merchantId;

@TableField(exist = false)
private List<Long> merchantIdList;

@TableField(exist = false)
private String merchantName;
@TableField(exist = false)


+ 12
- 9
mallinkService/src/main/java/com/iformall/domain/vo/LegionActivityMerchantStatistics.java Zobrazit soubor

@@ -14,22 +14,25 @@ public class LegionActivityMerchantStatistics implements Serializable {
private Long merchantId;
@Excel(name="商铺名称",width = 20,orderNum = "1")
private String merchantName;
@Excel(name="商铺号",width = 20,orderNum = "2")
private Long legionId;
@Excel(name="所属军团",width = 20,orderNum = "2")
private String legionName;
@Excel(name="商铺号",width = 20,orderNum = "3")
private String shopNumber;
@Excel(name="售卡数量",width = 20,orderNum = "3")
@Excel(name="售卡数量",width = 20,orderNum = "4")
private Integer userCount;
@Excel(name="签单数量",width = 20,orderNum = "4")
@Excel(name="签单数量",width = 20,orderNum = "5")
private Integer orderCount;
// @Excel(name="带单数量",width = 20,orderNum = "5")
// @Excel(name="带单数量",width = 20,orderNum = "6")
private Integer sellOrderCount;
@Excel(name="外部军团带单",width = 20,orderNum = "6")
@Excel(name="外部军团带单",width = 20,orderNum = "7")
private Integer difLegion;
@Excel(name="内部军团不同联盟带单",width = 20,orderNum = "7")
@Excel(name="内部军团不同联盟带单",width = 20,orderNum = "8")
private Integer difUnion;
@Excel(name="内部军团相同联盟带单",width = 20,orderNum = "8")
@Excel(name="内部军团相同联盟带单",width = 20,orderNum = "9")
private Integer eqUnion;
@Excel(name="内部军团无联盟带单",width = 20,orderNum = "9")
@Excel(name="内部军团无联盟带单",width = 20,orderNum = "10")
private Integer notUnion;
@Excel(name="得分",width = 20,orderNum = "10")
@Excel(name="得分",width = 20,orderNum = "11")
private Double totalScore;
}

+ 2
- 0
mallinkService/src/main/java/com/iformall/mapper/WxLegionActivityUserMapper.java Zobrazit soubor

@@ -30,6 +30,8 @@ public interface WxLegionActivityUserMapper extends CommonMapper<WxLegionActivit
Integer selectOnlyCount(WxLegionActivityUser wxLegionActivityUser);

WxLegionActivityUser selectLimitOne(WxLegionActivityUser wxLegionActivityUser);

Integer selectCount(WxLegionActivityUser wxLegionActivityUser);
}




+ 2
- 0
mallinkService/src/main/java/com/iformall/service/WxLegionActivityMerchantConfigService.java Zobrazit soubor

@@ -13,4 +13,6 @@ import java.util.Map;
public interface WxLegionActivityMerchantConfigService {

Map<Long, Integer> findMerchantCount(WxLegionActivityMerchantConfig merchantConfigQ);

Map<Long, Long> findMerchantLegionMap(WxLegionActivityMerchantConfig merchantConfigQ);
}

+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxLegionActivityOrderService.java Zobrazit soubor

@@ -35,7 +35,7 @@ public interface WxLegionActivityOrderService {

Map<String, Object> getActivityData(WxLegionActivityOrder wxLegionActivityOrder);

Map<String, Object> handleActivityData(WxLegionActivity wxLegionActivity, Long legionId);
Map<String, Object> handleActivityData(WxLegionActivity wxLegionActivity, WxLegionActivityOrder wxLegionActivityOrder);

List<LegionActivityMerchantStatistics> getActivityMerchantData(WxLegionActivityOrder wxLegionActivityOrder);



+ 10
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityMerchantConfigServiceImpl.java Zobrazit soubor

@@ -5,6 +5,7 @@ import com.iformall.domain.po.WxLegionActivityMerchantConfig;
import com.iformall.domain.vo.LegionActivityCount;
import com.iformall.service.WxLegionActivityMerchantConfigService;
import com.iformall.mapper.WxLegionActivityMerchantConfigMapper;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@@ -32,6 +33,15 @@ public class WxLegionActivityMerchantConfigServiceImpl implements WxLegionActivi
}
return activityCountList.stream().collect(Collectors.toMap(LegionActivityCount::getActivityId, LegionActivityCount::getCount));
}

@Override
public Map<Long, Long> findMerchantLegionMap(WxLegionActivityMerchantConfig merchantConfigQ) {
List<WxLegionActivityMerchantConfig> list = wxLegionActivityMerchantConfigMapper.findList(merchantConfigQ);
if (list == null || list.isEmpty()){
return Collections.emptyMap();
}
return list.stream().collect(Collectors.toMap(WxLegionActivityMerchantConfig::getMerchantId, WxLegionActivityMerchantConfig::getLegionId));
}
}




+ 32
- 5
mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityOrderServiceImpl.java Zobrazit soubor

@@ -54,6 +54,9 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
@Autowired
private WxLegionActivityMerchantConfigMapper wxLegionActivityMerchantConfigMapper;

@Autowired
private WxLegionActivityMerchantConfigService wxLegionActivityMerchantConfigService;

@Autowired
private WxLegionActivityOfflineConfigService wxLegionActivityOfflineConfigService;

@@ -386,27 +389,31 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
if(activity == null){
throw new MallinkException(Result.ERROR,"未查询到活动");
}
return handleActivityData(activity,wxLegionActivityOrder.getLegionId());
return handleActivityData(activity,wxLegionActivityOrder);

}

@Override
public Map<String, Object> handleActivityData(WxLegionActivity activity, Long legionId) {
public Map<String, Object> handleActivityData(WxLegionActivity activity, WxLegionActivityOrder wxLegionActivityOrder) {
Map<String, Object> result = new HashMap<>();

WxLegionActivityUser userQ = new WxLegionActivityUser();
userQ.updateTenantInfo(activity);
userQ.setActivityId(activity.getId());
userQ.setLegionId(legionId);
userQ.setLegionId(wxLegionActivityOrder.getLegionId());
userQ.setStatus(EnumLegionActivityUserStatus.VALID.getCode());
Integer userCount = wxLegionActivityUserMapper.selectCount(new QueryWrapper<>(userQ));
userQ.setCreateDateBegin(wxLegionActivityOrder.getCreateDateBegin());
userQ.setCreateDateEnd(wxLegionActivityOrder.getCreateDateEnd());
Integer userCount = wxLegionActivityUserMapper.selectCount(userQ);
result.put("userCount",userCount);

WxLegionActivityOrder orderQ = new WxLegionActivityOrder();
orderQ.updateTenantInfo(activity);
orderQ.setActivityId(activity.getId());
orderQ.setCusLegionId(legionId);
orderQ.setCusLegionId(wxLegionActivityOrder.getLegionId());
orderQ.setAuditStatus(EnumLegionActivityOrderStatus.AUDI_SUCCESS.getCode());
orderQ.setCreateDateBegin(wxLegionActivityOrder.getCreateDateBegin());
orderQ.setCreateDateEnd(wxLegionActivityOrder.getCreateDateEnd());
List<LegionActivityOrderTypeStatistics> orderTypeStatistics = wxLegionActivityOrderMapper.orderTypeStatistics(orderQ);
Integer sign_order = 0,dif_legion = 0,dif_union = 0,eq_union = 0,not_union = 0;
for(LegionActivityOrderTypeStatistics statistics : orderTypeStatistics){
@@ -453,6 +460,8 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
userQ.updateTenantInfo(activity);
userQ.setActivityId(activity.getId());
userQ.setStatus(EnumLegionActivityUserStatus.VALID.getCode());
userQ.setCreateDateBegin(wxLegionActivityOrder.getCreateDateBegin());
userQ.setCreateDateEnd(wxLegionActivityOrder.getCreateDateEnd());
List<LegionActivityUserStatistics> merchantCountStatistics = wxLegionActivityUserMapper.merchantCountStatistics(userQ);
Map<Long, Integer> merchantCountStatisticsMap = new HashMap<>();
if(merchantCountStatistics != null && !merchantCountStatistics.isEmpty()){
@@ -465,6 +474,8 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
orderQ.updateTenantInfo(activity);
orderQ.setActivityId(activity.getId());
orderQ.setAuditStatus(EnumLegionActivityOrderStatus.AUDI_SUCCESS.getCode());
orderQ.setCreateDateBegin(wxLegionActivityOrder.getCreateDateBegin());
orderQ.setCreateDateEnd(wxLegionActivityOrder.getCreateDateEnd());
List<LegionActivityOrderTypeStatistics> merchantStatistics = wxLegionActivityOrderMapper.merchantStatistics(orderQ);
Map<Long, List<LegionActivityOrderTypeStatistics>> merchantStatisticsMap = new HashMap<>();
if(merchantStatistics != null && !merchantStatistics.isEmpty()){
@@ -483,12 +494,28 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
Map<Long, String> idAndNamesMap = wxMerchantService.getIdAndNamesMap(merchantQ);
Map<Long, String> merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(activity, merchantIds, EnumYesOrNo.NO.getCode());

WxLegionActivityMerchantConfig merchantConfigQ = new WxLegionActivityMerchantConfig();
merchantConfigQ.updateTenantInfo(activity);
merchantConfigQ.setActivityId(activity.getId());
merchantConfigQ.setMerchantIdList(merchantIds);
Map<Long, Long> merchantLegionMap = wxLegionActivityMerchantConfigService.findMerchantLegionMap(merchantConfigQ);

WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig();
legionConfigQ.updateTenantInfo(wxLegionActivityOrder);
legionConfigQ.setActivityId(wxLegionActivityOrder.getActivityId());
Map<Long, String> legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ);

List<LegionActivityMerchantStatistics> merchantStatisticsList = new ArrayList<>();
for (Long merchantId : idAndNamesMap.keySet()) {
LegionActivityMerchantStatistics merchantS = new LegionActivityMerchantStatistics();
merchantS.setMerchantId(merchantId);
merchantS.setMerchantName(idAndNamesMap.get(merchantId));
merchantS.setShopNumber(merchantShopNumberMap.get(merchantId));
merchantS.setLegionId(merchantLegionMap.get(merchantId)==null?0L:merchantLegionMap.get(merchantId));
merchantS.setLegionName(legionConfigMap.get(merchantS.getLegionId()));
if(StringUtils.isBlank(merchantS.getLegionName())){
merchantS.setLegionName("无联盟");
}
Integer userCount = merchantCountStatisticsMap.get(merchantId)==null?0:merchantCountStatisticsMap.get(merchantId);
merchantS.setUserCount(userCount);
Integer sign_order = 0,dif_legion = 0,dif_union = 0,eq_union = 0,not_union = 0;


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java Zobrazit soubor

@@ -128,7 +128,7 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{
activity.setMerchantCount(merchantCountMap.get(activity.getId())==null?0:merchantCountMap.get(activity.getId()));
//处理数量
if(record.isNeedCount()){
activity.setActivityData(wxLegionActivityOrderService.handleActivityData(activity,null));
activity.setActivityData(wxLegionActivityOrderService.handleActivityData(activity,new WxLegionActivityOrder()));
}
//处理商户所属
if(record.getMerchantId() != null){


+ 7
- 0
mallinkService/src/main/resources/mapper/WxLegionActivityMerchantConfigMapper.xml Zobrazit soubor

@@ -49,6 +49,13 @@
and `union_id` = #{unionId}
</if>

<if test=" null != merchantIdList ">
and merchant_id in
<foreach collection="merchantIdList" index="index" item="midItem" open="(" separator="," close=")">
#{midItem}
</foreach>
</if>

<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">


+ 21
- 0
mallinkService/src/main/resources/mapper/WxLegionActivityOrderMapper.xml Zobrazit soubor

@@ -243,6 +243,13 @@
<if test=" null != cusMerchantId ">
and `cus_merchant_id` = #{cusMerchantId}
</if>
<if test=" null != createDateBegin">
and `create_date` &gt;= #{createDateBegin}
</if>

<if test=" null != createDateEnd">
and `create_date` &lt;= #{createDateEnd}
</if>
<if test=" null != auditStatus ">
and `audit_status` = #{auditStatus}
</if>
@@ -271,6 +278,13 @@
<if test=" null != cusMerchantId ">
and `cus_merchant_id` = #{cusMerchantId}
</if>
<if test=" null != createDateBegin">
and `create_date` &gt;= #{createDateBegin}
</if>

<if test=" null != createDateEnd">
and `create_date` &lt;= #{createDateEnd}
</if>
<if test=" null != auditStatus ">
and `audit_status` = #{auditStatus}
</if>
@@ -305,6 +319,13 @@
<if test=" null != activityId ">
and o.`activity_id` = #{activityId}
</if>
<if test=" null != createDateBegin">
and o.`create_date` &gt;= #{createDateBegin}
</if>

<if test=" null != createDateEnd">
and o.`create_date` &lt;= #{createDateEnd}
</if>
<if test=" null != auditStatus ">
and o.`audit_status` = #{auditStatus}
</if>


+ 4
- 0
mallinkService/src/main/resources/mapper/WxLegionActivityUserMapper.xml Zobrazit soubor

@@ -196,5 +196,9 @@
<include refid="dynamicWhereConditions" />
limit 1
</select>
<select id="selectCount" parameterType="com.iformall.domain.po.WxLegionActivityUser" resultType="Integer">
select count(1) from wx_legion_activity_user
<include refid="dynamicWhereConditions" />
</select>

</mapper>

Načítá se…
Zrušit
Uložit