|
@@ -11,7 +11,10 @@ import com.thinkgem.jeesite.common.utils.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
@@ -31,94 +34,188 @@ public class ClubPortraitService {
|
|
|
* @return
|
|
|
*/
|
|
|
public CmPortrait dataList(CmPortrait cmPortrait) {
|
|
|
- if (cmPortrait.getType() == 0 || 4 == cmPortrait.getType()) {
|
|
|
+ if (ObjectUtils.isEmpty(cmPortrait.getStartTime()) && ObjectUtils.isEmpty(cmPortrait.getEndTime())) {
|
|
|
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ Date start = null;
|
|
|
+ String startTime = "";
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(new Date());
|
|
|
+ calendar.add(Calendar.DAY_OF_MONTH, -1);
|
|
|
+ Date time = calendar.getTime();
|
|
|
+ String endTime = dateFormat.format(time);
|
|
|
+ // 日期参数为 日
|
|
|
+ if (cmPortrait.getDateType() == 0) {
|
|
|
+ cmPortrait.setAccessDate(endTime);
|
|
|
+ }
|
|
|
+ if (cmPortrait.getDateType() == 1) {
|
|
|
+ cmPortrait.setEndTime(endTime);
|
|
|
+ calendar.setTime(time);
|
|
|
+ calendar.add(Calendar.MONTH, -1);
|
|
|
+ start = calendar.getTime();
|
|
|
+ startTime = dateFormat.format(start);
|
|
|
+ cmPortrait.setStartTime(startTime);
|
|
|
+ }
|
|
|
+ if (cmPortrait.getDateType() == 2) {
|
|
|
+ cmPortrait.setEndTime(endTime);
|
|
|
+ calendar.setTime(time);
|
|
|
+ calendar.add(Calendar.MONTH, -6);
|
|
|
+ start = calendar.getTime();
|
|
|
+ startTime = dateFormat.format(start);
|
|
|
+ cmPortrait.setStartTime(startTime);
|
|
|
+ }
|
|
|
+ if (cmPortrait.getDateType() == 3) {
|
|
|
+ cmPortrait.setEndTime(endTime);
|
|
|
+ calendar.setTime(time);
|
|
|
+ calendar.add(Calendar.DAY_OF_YEAR, -1);
|
|
|
+ start = calendar.getTime();
|
|
|
+ startTime = dateFormat.format(start);
|
|
|
+ cmPortrait.setStartTime(startTime);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 机构订单
|
|
|
+ if (0 == cmPortrait.getType() || 4 == cmPortrait.getType()) {
|
|
|
int ordinary = 0, secondHand = 0, rebate = 0, partialRefund = 0, fullRefund = 0, closed = 0;
|
|
|
- Double totalPurchase = 0.0;
|
|
|
+// Double totalPurchase = 0.0;
|
|
|
ArrayList<OrderPortrait> orderPortraits = new ArrayList<>();
|
|
|
OrderPortrait orderPortrait = new OrderPortrait();
|
|
|
List<NewOrder> orderList = cmPortraitDao.selOrderList(cmPortrait);
|
|
|
- for (NewOrder order : orderList) {
|
|
|
- totalPurchase += order.getProductTotalFee();
|
|
|
- // 普通订单
|
|
|
- if (("0".equals(order.getSecondHandOrderFlag()) || StringUtils.isEmpty(order.getSecondHandOrderFlag()))
|
|
|
- && ("0".equals(order.getRebateFlag()) || "".equals(order.getRebateFlag()) || StringUtils.isEmpty(order.getRebateFlag()))
|
|
|
- && ((!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType())) || "".equals(order.getRefundType()) || StringUtils.isEmpty(order.getRefundType()))
|
|
|
- && !"6".equals(order.getStatus())) {
|
|
|
- ordinary++;
|
|
|
- }
|
|
|
- // 二手订单
|
|
|
- if ("1".equals(order.getSecondHandOrderFlag()) && "0".equals(order.getRebateFlag())
|
|
|
- && (!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType())) && !"6".equals(order.getStatus())) {
|
|
|
- secondHand++;
|
|
|
- }
|
|
|
- // 返佣订单
|
|
|
- if (!"0".equals(order.getRebateFlag()) &&
|
|
|
- (!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType()) || StringUtils.isEmpty(order.getRefundType())) && !"6".equals(order.getStatus())) {
|
|
|
- rebate++;
|
|
|
- }
|
|
|
- // 部分退款
|
|
|
- if ("1".equals(order.getRefundType()) && !"6".equals(order.getStatus())) {
|
|
|
- partialRefund++;
|
|
|
- }
|
|
|
- // 全部退款
|
|
|
- if ("2".equals(order.getRefundType()) && !"6".equals(order.getStatus())) {
|
|
|
- fullRefund++;
|
|
|
+ if (orderList.size() != 0) {
|
|
|
+ for (NewOrder order : orderList) {
|
|
|
+// totalPurchase += order.getProductTotalFee();
|
|
|
+ // 普通订单
|
|
|
+ if (("0".equals(order.getSecondHandOrderFlag()) || StringUtils.isEmpty(order.getSecondHandOrderFlag()))
|
|
|
+ && ("0".equals(order.getRebateFlag()) || "".equals(order.getRebateFlag()) || StringUtils.isEmpty(order.getRebateFlag()))
|
|
|
+ && ((!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType())) || "".equals(order.getRefundType()) || StringUtils.isEmpty(order.getRefundType()))
|
|
|
+ && !"6".equals(order.getStatus())) {
|
|
|
+ ordinary++;
|
|
|
+ }
|
|
|
+ // 二手订单
|
|
|
+ if ("1".equals(order.getSecondHandOrderFlag()) && "0".equals(order.getRebateFlag())
|
|
|
+ && (!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType())) && !"6".equals(order.getStatus())) {
|
|
|
+ secondHand++;
|
|
|
+ }
|
|
|
+ // 返佣订单
|
|
|
+ if (!"0".equals(order.getRebateFlag()) &&
|
|
|
+ (!"1".equals(order.getRefundType()) && !"2".equals(order.getRefundType()) || StringUtils.isEmpty(order.getRefundType())) && !"6".equals(order.getStatus())) {
|
|
|
+ rebate++;
|
|
|
+ }
|
|
|
+ // 部分退款
|
|
|
+ if ("1".equals(order.getRefundType()) && !"6".equals(order.getStatus())) {
|
|
|
+ partialRefund++;
|
|
|
+ }
|
|
|
+ // 全部退款
|
|
|
+ if ("2".equals(order.getRefundType()) && !"6".equals(order.getStatus())) {
|
|
|
+ fullRefund++;
|
|
|
+ }
|
|
|
+ // 已关闭
|
|
|
+ if ("6".equals(order.getStatus()) && StringUtils.isEmpty(order.getStatus())) {
|
|
|
+ closed++;
|
|
|
+ }
|
|
|
}
|
|
|
- // 已关闭
|
|
|
- if ("6".equals(order.getStatus()) && StringUtils.isEmpty(order.getStatus())) {
|
|
|
- closed++;
|
|
|
+ cmPortrait.setOrderTotalAmount(orderList.get(0).getTotalMoney());
|
|
|
+ cmPortrait.setOrderTotal(orderList.get(0).getNumbers());
|
|
|
+ orderPortrait.setValue(ordinary);
|
|
|
+ if (ordinary != 0) {
|
|
|
+ orderPortrait.setName("普通订单 【" + ordinary / orderList.size() * 100 + "%】 【" + ordinary + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("普通订单 【 0 】 【" + ordinary + "个】");
|
|
|
}
|
|
|
- }
|
|
|
- cmPortrait.setOrderTotalAmount(totalPurchase);
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- orderPortrait.setValue(ordinary);
|
|
|
- orderPortrait.setName("普通订单 【" +ordinary/orderList.size()*100+ "%】 【"+ordinary+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
-
|
|
|
- orderPortrait.setValue(secondHand);
|
|
|
- orderPortrait.setName("二手订单 【" +secondHand/orderList.size()*100+ "%】 【"+secondHand+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
+ orderPortrait.setValue(secondHand);
|
|
|
+ if (secondHand != 0) {
|
|
|
+ orderPortrait.setName("二手订单 【" + secondHand / orderList.size() * 100 + "%】 【" + secondHand + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("二手订单 【 0 】 【" + secondHand + "个】");
|
|
|
+ }
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- orderPortrait.setValue(rebate);
|
|
|
- orderPortrait.setName("返佣订单 【" +rebate/orderList.size()*100+ "%】 【"+rebate+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
+ orderPortrait.setValue(rebate);
|
|
|
+ if (rebate != 0) {
|
|
|
+ orderPortrait.setName("返佣订单 【" + rebate / orderList.size() * 100 + "%】 【" + rebate + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("返佣订单 【 0 】 【" + rebate + "个】");
|
|
|
+ }
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- orderPortrait.setValue(partialRefund);
|
|
|
- orderPortrait.setName("部分退款订单 【" +partialRefund/orderList.size()*100+ "%】 【"+partialRefund+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
+ orderPortrait.setValue(partialRefund);
|
|
|
+ if (partialRefund != 0) {
|
|
|
+ orderPortrait.setName("部分退款订单 【" + partialRefund / orderList.size() * 100 + "%】 【" + partialRefund + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("部分退款订单 【 0 】 【" + partialRefund + "个】");
|
|
|
+ }
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- orderPortrait.setValue(fullRefund);
|
|
|
- orderPortrait.setName("全部退款订单 【" +fullRefund/orderList.size()*100+ "%】 【"+fullRefund+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
+ orderPortrait.setValue(fullRefund);
|
|
|
+ if (fullRefund != 0) {
|
|
|
+ orderPortrait.setName("全部退款订单 【" + fullRefund / orderList.size() * 100 + "%】 【" + fullRefund + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("全部退款订单 【 0 】 【" + fullRefund + "个】");
|
|
|
+ }
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- orderPortrait.setValue(closed);
|
|
|
- orderPortrait.setName("已关闭订单 【" +closed/orderList.size()*100+ "%】 【"+closed+"个】");
|
|
|
- orderPortraits.add(orderPortrait);
|
|
|
+ orderPortrait.setValue(closed);
|
|
|
+ if (closed != 0) {
|
|
|
+ orderPortrait.setName("已关闭订单 【" + closed / orderList.size() * 100 + "%】 【" + closed + "个】");
|
|
|
+ } else {
|
|
|
+ orderPortrait.setName("已关闭订单 【 0 】 【" + closed + "个】");
|
|
|
+ }
|
|
|
+ orderPortraits.add(orderPortrait);
|
|
|
|
|
|
- cmPortrait.setOrderPortrait(orderPortraits);
|
|
|
+ cmPortrait.setOrderPortrait(orderPortraits);
|
|
|
+ }
|
|
|
}
|
|
|
- if (cmPortrait.getType() == 1 || 4 == cmPortrait.getType()) {
|
|
|
+ // 搜索关键词
|
|
|
+ if (1 == cmPortrait.getType() || 4 == cmPortrait.getType()) {
|
|
|
List<CmBehaviorRecord> behaviorRecordList = cmPortraitDao.selBehaviorList(cmPortrait);
|
|
|
ArrayList<Integer> integers = new ArrayList<>();
|
|
|
ArrayList<String> strings = new ArrayList<>();
|
|
|
if (behaviorRecordList.size() != 0) {
|
|
|
for (CmBehaviorRecord record : behaviorRecordList) {
|
|
|
- integers.add(record.getNumbers());
|
|
|
+ integers.add(record.getNumber());
|
|
|
if (!ObjectUtils.isEmpty(record.getPageLabel())) {
|
|
|
strings.add(record.getPageLabel());
|
|
|
} else {
|
|
|
strings.add("未知");
|
|
|
}
|
|
|
+ cmPortrait.setTotalkeywords(behaviorRecordList.get(0).getNumbers());
|
|
|
cmPortrait.setBehaviorValue(integers);
|
|
|
cmPortrait.setBehaviorType(strings);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ // 咨询记录
|
|
|
if (2 == cmPortrait.getType() || 4 == cmPortrait.getType()) {
|
|
|
List<CmClubRemarks> remarksList = cmPortraitDao.selRemarksList(cmPortrait);
|
|
|
+ ArrayList<Integer> integers = new ArrayList<>();
|
|
|
+ ArrayList<String> strings = new ArrayList<>();
|
|
|
+ if (remarksList.size() != 0) {
|
|
|
+ for (CmClubRemarks remarks: remarksList) {
|
|
|
+ integers.add(remarks.getNumber());
|
|
|
+ if (!ObjectUtils.isEmpty(remarks.getRemarks())) {
|
|
|
+ strings.add(remarks.getRemarks());
|
|
|
+ } else {
|
|
|
+ strings.add("未知");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ cmPortrait.setRemarksTotal(remarksList.get(0).getNumbers());
|
|
|
+ cmPortrait.setRemarksValue(integers);
|
|
|
+ cmPortrait.setRemarksType(strings);
|
|
|
+ }
|
|
|
}
|
|
|
+ // 访问记录
|
|
|
if (3 == cmPortrait.getType() || 4 == cmPortrait.getType()) {
|
|
|
List<CmBehaviorRecord> pageTypeList = cmPortraitDao.selBehaviorPageTypeList(cmPortrait);
|
|
|
+ ArrayList<Integer> integers = new ArrayList<>();
|
|
|
+ ArrayList<String> strings = new ArrayList<>();
|
|
|
+ if (pageTypeList.size() != 0) {
|
|
|
+ for(CmBehaviorRecord record : pageTypeList) {
|
|
|
+ integers.add(record.getNumbers());
|
|
|
+ strings.add(record.getPageType());
|
|
|
+ }
|
|
|
+ cmPortrait.setPageTypeValue(integers);
|
|
|
+ cmPortrait.setPageType(strings);
|
|
|
+ }
|
|
|
}
|
|
|
return cmPortrait;
|
|
|
}
|