|
@@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import com.cloudcross.ssp.model.Account;
|
|
|
import com.cloudcross.ssp.model.AdvBalance;
|
|
|
import com.cloudcross.ssp.model.Finance;
|
|
|
+import com.cloudcross.ssp.service.IAdvAgentService;
|
|
|
import com.cloudcross.ssp.service.IAdvBalanceService;
|
|
|
import com.cloudcross.ssp.base.utils.freemarker.FreemarkerTemplateProcessor;
|
|
|
import com.cloudcross.ssp.base.web.SimpleController;
|
|
@@ -33,62 +34,65 @@ public class AdvBalanceController extends SimpleController {
|
|
|
protected IAdvBalanceService advBalanceService;
|
|
|
@Autowired
|
|
|
private FreemarkerTemplateProcessor templateProcessor;
|
|
|
+ @Autowired
|
|
|
+ private IAdvAgentService advAgentService;
|
|
|
|
|
|
@RequestMapping
|
|
|
public String index(){
|
|
|
return redirect(page("list"));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 财务管理列表页
|
|
|
+ * 前端需要传递三个参数,一个为广告主id(变量名为selectedAdvertiserId)如果传的是空值或者是-1或者空字符串则为全部
|
|
|
+ * 一个为类型,变量名为type,最后一个为周期,变量名为dateRangePicker
|
|
|
+ * 注:当如果是代理商账号登录的时候只能查询到分配记录和充值记录不能查询到消费记录
|
|
|
+ * 如果是广告主账号登录只能看到分配记录和消费记录没有充值记录
|
|
|
+ * @param model
|
|
|
+ * @param paramMap
|
|
|
+ * @param page
|
|
|
+ * @return
|
|
|
+ * @throws ParseException
|
|
|
+ */
|
|
|
@RequestMapping("/list")
|
|
|
public String list(Model model,
|
|
|
@RequestParam HashMap<String, Object> paramMap,
|
|
|
@RequestParam(defaultValue="1") int page
|
|
|
) throws ParseException{
|
|
|
+ Long advertiserId = null;
|
|
|
+ Long agentId = null;
|
|
|
+ String advertiserName = "全部广告主";
|
|
|
|
|
|
- //帐号权限
|
|
|
//获取当前登录的帐号
|
|
|
Account account = getLoginUser();
|
|
|
- model.addAttribute("loginAccountName",account.getAccountName());
|
|
|
+ model.addAttribute("loginAccountName", account.getAccountName());
|
|
|
+
|
|
|
/**
|
|
|
- * 判断登录用户是广告主还是广告主代理商,广告主则advertiserId和agentId都不为0
|
|
|
- * 广告主代理商则是agentId不为0,advertiserId等于0
|
|
|
+ * 对登录的账号进行判断,如果代理商id和广告主id都不为0的话表示的是广告主账号
|
|
|
+ * 如果代理商账号不为0,广告主账号为0的话表示的是代理商账号
|
|
|
*/
|
|
|
//下面判断是广告主
|
|
|
if (0 != account.getAdvertiserId() && 0 != account.getAgentId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
- paramMap.put("adverId", account.getAdvertiserId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("adverId", account.getAdvertiserId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
+ advertiserId = account.getAdvertiserId();
|
|
|
}
|
|
|
+
|
|
|
//下面判断是代理商
|
|
|
if(0 != account.getAgentId() && 0 == account.getAdvertiserId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ agentId = account.getAgentId();
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
- * 下面对下拉框中传进来的值进行判断,若是未操作,则为空值,前端设置时默认为全部(-1)
|
|
|
- * 下拉框传值Id需要同步
|
|
|
- * 只有代理商有该选项
|
|
|
+ * 下面对传递进来的参数进行处理
|
|
|
*/
|
|
|
- //广告主选择与否
|
|
|
- Long advertiserId = null;
|
|
|
- String advertiserName = "全部广告主";
|
|
|
if (null == paramMap.get("selectedAdvertiserId")
|
|
|
|| "".equals(paramMap.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
// 如果要查询的是所有广告主则让广告主id为空
|
|
|
if (-1 == Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
advertiserId = Long.parseLong((String) paramMap
|
|
@@ -97,37 +101,20 @@ public class AdvBalanceController extends SimpleController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- paramMap.put("advertiserId", advertiserId);
|
|
|
- paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- //日期,这里规定了前端传过来的值为dateRangePicker
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
String startDate = null;
|
|
|
String endDate = null;
|
|
|
//判断日期是否为默认值昨天,日期格式为2015-09-09 to 2015-10-10,用 to 分割
|
|
|
- System.out.println("haoshuairrrrrrrrrrrr" + paramMap);
|
|
|
- System.out.println("haoshuai33333333333" + paramMap.get("dateRangePicker"));
|
|
|
-
|
|
|
if (null == paramMap.get("dateRangePicker")
|
|
|
|| "".equals(paramMap.get("dateRangePicker"))) {
|
|
|
- startDate = sdf.format(new Date((new Date())
|
|
|
+ startDate = endDate = sdf.format(new Date((new Date())
|
|
|
.getTime() - 24 * 60 * 60 * 1000));
|
|
|
- endDate = sdf.format(new Date((new Date()).getTime()));
|
|
|
} else {
|
|
|
String[] choosedDate = ((String) paramMap
|
|
|
.get("dateRangePicker")).split("to");
|
|
|
startDate = choosedDate[0].trim();
|
|
|
endDate = choosedDate[1].trim();
|
|
|
}
|
|
|
- paramMap.put("startDate", startDate);
|
|
|
- paramMap.put("endDate",endDate);
|
|
|
-
|
|
|
- model.addAttribute("startDate", startDate);
|
|
|
- model.addAttribute("endDate", endDate);
|
|
|
-
|
|
|
- System.out.println("pppppppppppp" + startDate + endDate);
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -151,17 +138,24 @@ public class AdvBalanceController extends SimpleController {
|
|
|
type = "charge";
|
|
|
typeName = "充值";
|
|
|
}
|
|
|
+
|
|
|
+ paramMap.put("startDate", startDate);
|
|
|
+ paramMap.put("endDate",endDate);
|
|
|
+ paramMap.put("agentId", agentId);
|
|
|
+ paramMap.put("advertiserId", advertiserId);
|
|
|
+ paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
paramMap.put("type", type);
|
|
|
paramMap.put("typeName", typeName);
|
|
|
|
|
|
int totalRow = advBalanceService.countByParams(paramMap);
|
|
|
- System.out.println("feichang" + totalRow);
|
|
|
Pager pager = new Pager();
|
|
|
pager.setPage(page);
|
|
|
pager.setTotalRow(totalRow);
|
|
|
List<AdvBalance> advBalanceList = advBalanceService.findByParams(paramMap, pager);
|
|
|
|
|
|
- System.out.println("8888888888888888" + advBalanceList);
|
|
|
+ if(null != agentId) {
|
|
|
+ model.addAttribute("agentName", advAgentService.findById(agentId).getName());
|
|
|
+ }
|
|
|
model.addAllAttributes(paramMap);
|
|
|
model.addAttribute("pager", pager);
|
|
|
model.addAttribute("advBalanceList", advBalanceList);
|
|
@@ -169,17 +163,26 @@ public class AdvBalanceController extends SimpleController {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
+ /**
|
|
|
+ * 广告主分配记录页面
|
|
|
+ * 前端需要传递两个参数,一个为广告主id(变量名为selectedAdvertiserId)如果传的是空值或者是-1或者空字符串则为全部
|
|
|
+ * 另一个为周期,变量名为dateRangePicker
|
|
|
+ * 注:如果选择的广告主表示全部广告主的话,则显示的是代理商的分配记录,否则是广告主的分配记录
|
|
|
+ * @param model
|
|
|
+ * @param paramMap
|
|
|
+ * @param page
|
|
|
+ * @return
|
|
|
+ * @throws ParseException
|
|
|
+ */
|
|
|
@RequestMapping("/distribution")
|
|
|
public String distribution(Model model,
|
|
|
@RequestParam HashMap<String, Object> paramMap,
|
|
|
@RequestParam(defaultValue="1") int page
|
|
|
)throws ParseException{
|
|
|
-
|
|
|
- //帐号权限
|
|
|
+ Long agentId = null;
|
|
|
+ Long advertiserId = null;
|
|
|
//获取当前登录的帐号
|
|
|
Account account = getLoginUser();
|
|
|
- System.out.println("account" + account + "haoshuai01010101010101");
|
|
|
model.addAttribute("loginAccountName",account.getAccountName());
|
|
|
/**
|
|
|
* 判断登录用户是广告主还是广告主代理商,广告主则advertiserId和agentId都不为0
|
|
@@ -188,39 +191,27 @@ public class AdvBalanceController extends SimpleController {
|
|
|
//下面判断是广告主
|
|
|
if (0 != account.getAdvertiserId() && 0 != account.getAgentId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
- paramMap.put("adverId", account.getAdvertiserId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("adverId", account.getAdvertiserId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
+ advertiserId = account.getAdvertiserId();
|
|
|
}
|
|
|
+
|
|
|
//下面判断是代理商
|
|
|
if(0 != account.getAgentId() && 0 == account.getAdvertiserId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
+ agentId = account.getAgentId();
|
|
|
+ }
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * 下面对下拉框中传进来的值进行判断,若是未操作,则为空值,前端设置时默认为全部(-1)
|
|
|
- * 下拉框传值Id需要同步
|
|
|
- * 只有代理商有该选项
|
|
|
+ * 下面对传进来的值进行处理
|
|
|
*/
|
|
|
- //广告主选择与否
|
|
|
- Long advertiserId = null;
|
|
|
String advertiserName = "全部广告主";
|
|
|
if (null == paramMap.get("selectedAdvertiserId")
|
|
|
|| "".equals(paramMap.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
// 如果要查询的是所有广告主则让广告主id为空
|
|
|
if (-1 == Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
advertiserId = Long.parseLong((String) paramMap
|
|
@@ -228,12 +219,7 @@ public class AdvBalanceController extends SimpleController {
|
|
|
advertiserName = (String) paramMap.get("selectedAdvertiserName");
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- paramMap.put("advertiserId", advertiserId);
|
|
|
- paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
+
|
|
|
//日期
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
String startDate = null;
|
|
@@ -241,31 +227,30 @@ public class AdvBalanceController extends SimpleController {
|
|
|
//判断日期是否为默认值昨天,日期格式为2015-09-09 to 2015-10-10,用 to 分割
|
|
|
if (null == paramMap.get("dateRangePicker")
|
|
|
|| "".equals(paramMap.get("dateRangePicker"))) {
|
|
|
- startDate = sdf.format(new Date((new Date())
|
|
|
+ startDate = endDate = sdf.format(new Date((new Date())
|
|
|
.getTime() - 24 * 60 * 60 * 1000));
|
|
|
- endDate = sdf.format(new Date((new Date()).getTime()));
|
|
|
- System.out.println("11111111111" + startDate + endDate);
|
|
|
} else {
|
|
|
String[] choosedDate = ((String) paramMap
|
|
|
.get("dateRangePicker")).split("to");
|
|
|
startDate = choosedDate[0].trim();
|
|
|
endDate = choosedDate[1].trim();
|
|
|
}
|
|
|
+
|
|
|
+ paramMap.put("agentId", agentId);
|
|
|
+ paramMap.put("advertiserId", advertiserId);
|
|
|
+ paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
paramMap.put("startDate", startDate);
|
|
|
paramMap.put("endDate",endDate);
|
|
|
-
|
|
|
- model.addAttribute("startDate", startDate);
|
|
|
- model.addAttribute("endDate", endDate);
|
|
|
-
|
|
|
- System.out.println("rrrrrrrrrrrrrrrrr" + startDate + endDate);
|
|
|
|
|
|
int totalRow = advBalanceService.countByParams2(paramMap);
|
|
|
- System.out.println("haoshuai" + totalRow);
|
|
|
Pager pager = new Pager();
|
|
|
pager.setPage(page);
|
|
|
pager.setTotalRow(totalRow);
|
|
|
List<AdvBalance> advBalanceList = advBalanceService.findByParams2(paramMap, pager);
|
|
|
- System.out.println("haoshuaiqq" + advBalanceList);
|
|
|
+
|
|
|
+ if(null != agentId) {
|
|
|
+ model.addAttribute("agentName", advAgentService.findById(agentId).getName());
|
|
|
+ }
|
|
|
model.addAllAttributes(paramMap);
|
|
|
model.addAttribute("pager", pager);
|
|
|
model.addAttribute("advBalanceList", advBalanceList);
|
|
@@ -273,137 +258,114 @@ public class AdvBalanceController extends SimpleController {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //导出财务管理首页消费记录页面Excel用
|
|
|
-
|
|
|
+ /**
|
|
|
+ * 财务管理列表页导出excel
|
|
|
+ * 前端需要传递三个参数,一个为广告主id(变量名为selectedAdvertiserId)如果传的是空值或者是-1或者空字符串则为全部
|
|
|
+ * 一个为类型,变量名为type,最后一个为周期,变量名为dateRangePicker
|
|
|
+ * 注:当如果是代理商账号登录的时候只能查询到分配记录和充值记录不能查询到消费记录
|
|
|
+ * 如果是广告主账号登录只能看到分配记录和消费记录没有充值记录
|
|
|
+ * @param model
|
|
|
+ * @param request
|
|
|
+ * @param response
|
|
|
+ * @param paramMap
|
|
|
+ */
|
|
|
@RequestMapping("/exportDataReportExcel")
|
|
|
public void exportDataReportExcel(Model model,HttpServletRequest request,
|
|
|
HttpServletResponse response,
|
|
|
- @RequestParam(defaultValue="1") int page,
|
|
|
- @RequestParam(required=false) String type,
|
|
|
@RequestParam Map<String, Object> paramMap) {
|
|
|
-
|
|
|
- /**
|
|
|
- * 参数和list里要一样
|
|
|
- */
|
|
|
- System.out.println("qqai");
|
|
|
+
|
|
|
+ Long advertiserId = null;
|
|
|
+ Long agentId = null;
|
|
|
+ String advertiserName = "全部广告主";
|
|
|
|
|
|
- //帐号权限
|
|
|
//获取当前登录的帐号
|
|
|
Account account = getLoginUser();
|
|
|
- System.out.println("account" + account + "haoshuai000000000");
|
|
|
- model.addAttribute("loginAccountName",account.getAccountName());
|
|
|
+ model.addAttribute("loginAccountName", account.getAccountName());
|
|
|
+
|
|
|
/**
|
|
|
- * 判断登录用户是广告主还是广告主代理商,广告主则advertiserId和agentId都不为0
|
|
|
- * 广告主代理商则是agentId不为0,advertiserId等于0
|
|
|
+ * 对登录的账号进行判断,如果代理商id和广告主id都不为0的话表示的是广告主账号
|
|
|
+ * 如果代理商账号不为0,广告主账号为0的话表示的是代理商账号
|
|
|
*/
|
|
|
//下面判断是广告主
|
|
|
if (0 != account.getAdvertiserId() && 0 != account.getAgentId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
- paramMap.put("adverId", account.getAdvertiserId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("adverId", account.getAdvertiserId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
+ advertiserId = account.getAdvertiserId();
|
|
|
}
|
|
|
+
|
|
|
//下面判断是代理商
|
|
|
if(0 != account.getAgentId() && 0 == account.getAdvertiserId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
-
|
|
|
- System.out.println("accountId" + account.getId() + "111111111111");
|
|
|
- System.out.println("agentId" + account.getAgentId() + "22222222222");
|
|
|
-
|
|
|
+ agentId = account.getAgentId();
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
- * 下面对下拉框中传进来的值进行判断,若是未操作,则为空值,前端设置时默认为全部(-1)
|
|
|
- * 下拉框传值Id需要同步
|
|
|
- * 只有代理商有该选项
|
|
|
+ * 下面对传递进来的参数进行处理
|
|
|
*/
|
|
|
- //广告主选择与否
|
|
|
- Long advertiserId = null;
|
|
|
if (null == paramMap.get("selectedAdvertiserId")
|
|
|
|| "".equals(paramMap.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
+ advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
// 如果要查询的是所有广告主则让广告主id为空
|
|
|
if (-1 == Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
+ advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
advertiserId = Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"));
|
|
|
+ advertiserName = (String) paramMap.get("selectedAdvertiserName");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- paramMap.put("advertiserId", advertiserId);
|
|
|
- model.addAttribute("advertiserId", advertiserId);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- //日期,这里规定了前端传过来的值为dateRangePicker
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
String startDate = null;
|
|
|
String endDate = null;
|
|
|
//判断日期是否为默认值昨天,日期格式为2015-09-09 to 2015-10-10,用 to 分割
|
|
|
- System.out.println("haoshuairrrrrrrrrrrr" + paramMap);
|
|
|
- System.out.println("haoshuai33333333333" + paramMap.get("dateRangePicker"));
|
|
|
-
|
|
|
if (null == paramMap.get("dateRangePicker")
|
|
|
|| "".equals(paramMap.get("dateRangePicker"))) {
|
|
|
- startDate = sdf.format(new Date((new Date())
|
|
|
+ startDate = endDate = sdf.format(new Date((new Date())
|
|
|
.getTime() - 24 * 60 * 60 * 1000));
|
|
|
- endDate = sdf.format(new Date((new Date()).getTime()));
|
|
|
} else {
|
|
|
String[] choosedDate = ((String) paramMap
|
|
|
.get("dateRangePicker")).split("to");
|
|
|
startDate = choosedDate[0].trim();
|
|
|
endDate = choosedDate[1].trim();
|
|
|
}
|
|
|
- paramMap.put("startDate", startDate);
|
|
|
- paramMap.put("endDate",endDate);
|
|
|
-
|
|
|
- model.addAttribute("startDate", startDate);
|
|
|
- model.addAttribute("endDate", endDate);
|
|
|
-
|
|
|
- System.out.println("pppppppppppp" + startDate + endDate);
|
|
|
|
|
|
|
|
|
/**
|
|
|
* @author Hao
|
|
|
* 选择操作类型,需要从前端传过来一个键值对“type”,默认为null
|
|
|
- * 其值与allocate,consume,charge比较确定是选择了哪一类
|
|
|
+ * 其值与allocate,consume,chage比较确定是选择了哪一类
|
|
|
*/
|
|
|
+ String type = null;
|
|
|
+ String typeName = "请选择操作类型";
|
|
|
if(null==paramMap.get("type")
|
|
|
|| "".equals(paramMap.get("type")) || "0".equals(paramMap.get("type"))){
|
|
|
type = "0";
|
|
|
+ typeName = "请选择操作类型";
|
|
|
}else if("allocate".equals(paramMap.get("type"))){
|
|
|
type = "allocate";
|
|
|
+ typeName = "分配";
|
|
|
}else if("consume".equals(paramMap.get("type"))){
|
|
|
type = "consume";
|
|
|
+ typeName = "消费";
|
|
|
}else{
|
|
|
type = "charge";
|
|
|
+ typeName = "充值";
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
+ paramMap.put("startDate", startDate);
|
|
|
+ paramMap.put("endDate",endDate);
|
|
|
+ paramMap.put("agentId", agentId);
|
|
|
+ paramMap.put("advertiserId", advertiserId);
|
|
|
+ paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
paramMap.put("type", type);
|
|
|
- System.out.println("type:" + "252525252525hao" + type);
|
|
|
- model.addAttribute("type", type);
|
|
|
-
|
|
|
- int totalRow = advBalanceService.countByParams(paramMap);
|
|
|
- System.out.println("feichang" + totalRow);
|
|
|
- Pager pager = new Pager();
|
|
|
- pager.setPage(page);
|
|
|
- pager.setTotalRow(totalRow);
|
|
|
- List<AdvBalance> advBalanceList = advBalanceService.findByParams(paramMap, pager);
|
|
|
+ paramMap.put("typeName", typeName);
|
|
|
+ if(null != agentId) {
|
|
|
+ paramMap.put("agentName", advAgentService.findById(agentId).getName());
|
|
|
+ }
|
|
|
+ List<AdvBalance> advBalanceList = advBalanceService.findByParamsAdvertiser(paramMap);
|
|
|
|
|
|
- System.out.println("8888888888888888" + advBalanceList);
|
|
|
- model.addAllAttributes(paramMap);
|
|
|
- model.addAttribute("pager", pager);
|
|
|
paramMap.put("dataList", advBalanceList);
|
|
|
response.reset();
|
|
|
// Content-Type:application/vnd.ms-excel;charset=utf8或者text/xml;charset=utf8
|
|
@@ -413,13 +375,10 @@ public class AdvBalanceController extends SimpleController {
|
|
|
String fileName = "consumeReport" + df2.format(new Date());
|
|
|
response.setHeader("Content-Disposition", "attachment;filename="
|
|
|
+ fileName + ".xls");
|
|
|
- // 需要对excel的列和行的总数进行指定
|
|
|
- int column = 9;
|
|
|
+ // 需要对excel的列的总数进行指定
|
|
|
+ int column = 6;
|
|
|
paramMap.put("dataSize", advBalanceList.size());
|
|
|
paramMap.put("column", column);
|
|
|
- paramMap.put("advertiserName", "广告主消费记录表");
|
|
|
- paramMap.put("startDate", startDate);
|
|
|
- paramMap.put("endDate", endDate);
|
|
|
String excelOrder = templateProcessor.processTemplate(
|
|
|
"excel/consumeReport.ftl", paramMap);
|
|
|
try {
|
|
@@ -435,24 +394,21 @@ public class AdvBalanceController extends SimpleController {
|
|
|
|
|
|
|
|
|
|
|
|
- //导出资金管理分配记录(第三个)页面Excel用,注意这里的地址和前面的不一样,exportAllocateReportExcel
|
|
|
- //这个在ftl文件中需要的是这个值
|
|
|
-
|
|
|
+ /**
|
|
|
+ * 广告主分配记录导出excel
|
|
|
+ * @param model
|
|
|
+ * @param request
|
|
|
+ * @param response
|
|
|
+ * @param paramMap
|
|
|
+ */
|
|
|
@RequestMapping("/exportAllocateReportExcel")
|
|
|
- public void exportDataReportExcel(Model model,HttpServletRequest request,
|
|
|
+ public void exportAllocateReportExcel(Model model,HttpServletRequest request,
|
|
|
HttpServletResponse response,
|
|
|
- @RequestParam(defaultValue="1") int page,
|
|
|
@RequestParam Map<String, Object> paramMap) {
|
|
|
-
|
|
|
- /**
|
|
|
- * 参数和list里要一样
|
|
|
- */
|
|
|
- System.out.println("yuyuyu");
|
|
|
-
|
|
|
- //帐号权限
|
|
|
+ Long agentId = null;
|
|
|
+ Long advertiserId = null;
|
|
|
//获取当前登录的帐号
|
|
|
Account account = getLoginUser();
|
|
|
- System.out.println("account" + account + "haoshuai01010101010101");
|
|
|
model.addAttribute("loginAccountName",account.getAccountName());
|
|
|
/**
|
|
|
* 判断登录用户是广告主还是广告主代理商,广告主则advertiserId和agentId都不为0
|
|
@@ -461,49 +417,34 @@ public class AdvBalanceController extends SimpleController {
|
|
|
//下面判断是广告主
|
|
|
if (0 != account.getAdvertiserId() && 0 != account.getAgentId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
- paramMap.put("adverId", account.getAdvertiserId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("adverId", account.getAdvertiserId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
+ advertiserId = account.getAdvertiserId();
|
|
|
}
|
|
|
+
|
|
|
//下面判断是代理商
|
|
|
if(0 != account.getAgentId() && 0 == account.getAdvertiserId()) {
|
|
|
paramMap.put("accountId",account.getId());
|
|
|
- paramMap.put("agentId", account.getAgentId());
|
|
|
-
|
|
|
- model.addAttribute("accountId",account.getId());
|
|
|
- model.addAttribute("agentId", account.getAgentId());
|
|
|
-
|
|
|
+ agentId = account.getAgentId();
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
- * 下面对下拉框中传进来的值进行判断,若是未操作,则为空值,前端设置时默认为全部(-1)
|
|
|
- * 下拉框传值Id需要同步
|
|
|
- * 只有代理商有该选项
|
|
|
+ * 下面对传进来的值进行处理
|
|
|
*/
|
|
|
- //广告主选择与否
|
|
|
- Long advertiserId = null;
|
|
|
+ String advertiserName = "全部广告主";
|
|
|
if (null == paramMap.get("selectedAdvertiserId")
|
|
|
|| "".equals(paramMap.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
+ advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
// 如果要查询的是所有广告主则让广告主id为空
|
|
|
if (-1 == Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"))) {
|
|
|
- advertiserId = null;
|
|
|
+ advertiserName = "全部广告主";
|
|
|
} else {
|
|
|
advertiserId = Long.parseLong((String) paramMap
|
|
|
.get("selectedAdvertiserId"));
|
|
|
+ advertiserName = (String) paramMap.get("selectedAdvertiserName");
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- paramMap.put("advertiserId", advertiserId);
|
|
|
- model.addAttribute("advertiserId", advertiserId);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
//日期
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
String startDate = null;
|
|
@@ -511,33 +452,22 @@ public class AdvBalanceController extends SimpleController {
|
|
|
//判断日期是否为默认值昨天,日期格式为2015-09-09 to 2015-10-10,用 to 分割
|
|
|
if (null == paramMap.get("dateRangePicker")
|
|
|
|| "".equals(paramMap.get("dateRangePicker"))) {
|
|
|
- startDate = sdf.format(new Date((new Date())
|
|
|
+ startDate = endDate = sdf.format(new Date((new Date())
|
|
|
.getTime() - 24 * 60 * 60 * 1000));
|
|
|
- endDate = sdf.format(new Date((new Date()).getTime()));
|
|
|
- System.out.println("11111111111" + startDate + endDate);
|
|
|
} else {
|
|
|
String[] choosedDate = ((String) paramMap
|
|
|
.get("dateRangePicker")).split("to");
|
|
|
startDate = choosedDate[0].trim();
|
|
|
endDate = choosedDate[1].trim();
|
|
|
}
|
|
|
+
|
|
|
+ paramMap.put("agentId", agentId);
|
|
|
+ paramMap.put("advertiserId", advertiserId);
|
|
|
+ paramMap.put("selectedAdvertiserName", advertiserName);
|
|
|
paramMap.put("startDate", startDate);
|
|
|
paramMap.put("endDate",endDate);
|
|
|
-
|
|
|
- model.addAttribute("startDate", startDate);
|
|
|
- model.addAttribute("endDate", endDate);
|
|
|
-
|
|
|
- System.out.println("rrrrrrrrrrrrrrrrr" + startDate + endDate);
|
|
|
-
|
|
|
- int totalRow = advBalanceService.countByParams2(paramMap);
|
|
|
- System.out.println("haoshuai" + totalRow);
|
|
|
- Pager pager = new Pager();
|
|
|
- pager.setPage(page);
|
|
|
- pager.setTotalRow(totalRow);
|
|
|
- List<AdvBalance> advBalanceList2 = advBalanceService.findByParams2(paramMap, pager);
|
|
|
- System.out.println("haoshuaiqq" + advBalanceList2);
|
|
|
- model.addAllAttributes(paramMap);
|
|
|
- model.addAttribute("pager", pager);
|
|
|
+
|
|
|
+ List<AdvBalance> advBalanceList2 = advBalanceService.findByParams2(paramMap);
|
|
|
paramMap.put("dataList", advBalanceList2);
|
|
|
response.reset();
|
|
|
// Content-Type:application/vnd.ms-excel;charset=utf8或者text/xml;charset=utf8
|
|
@@ -548,12 +478,9 @@ public class AdvBalanceController extends SimpleController {
|
|
|
response.setHeader("Content-Disposition", "attachment;filename="
|
|
|
+ fileName + ".xls");
|
|
|
// 需要对excel的列和行的总数进行指定
|
|
|
- int column = 9;
|
|
|
+ int column = 5;
|
|
|
paramMap.put("dataSize", advBalanceList2.size());
|
|
|
paramMap.put("column", column);
|
|
|
- paramMap.put("advertiserName", "资金分配记录表");
|
|
|
- paramMap.put("startDate", startDate);
|
|
|
- paramMap.put("endDate", endDate);
|
|
|
String excelOrder = templateProcessor.processTemplate(
|
|
|
"excel/allocateReport.ftl", paramMap);
|
|
|
try {
|