You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

237 lines
7.4 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<%@ page import="weaver.general.*" %>
<%@page import="weaver.conn.RecordSet"%>
<%@ page import="weaver.hrm.User" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="org.apache.commons.lang.StringUtils" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="java.util.*" %>
<%@ page import="java.math.BigDecimal" %>
<%@ page import="weaver.formmode.customjavacode.customsearch.contractSearchService.GetTotalService" %>
<%@ page import="weaver.formmode.customjavacode.customsearch.contractSearchService.TotalMoneyDTO" %>
<%@ page import="weaver.formmode.customjavacode.customsearch.contractSearchService.TotalRequestDTO" %>
<%@ page import="java.text.DecimalFormat" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%
BaseBean bb = new BaseBean();
String begindate = "" ;
String enddate = "" ;
int year = 0 ;
User user = null;
String type = Util.null2String(request.getParameter("type"));
if("0".equals(type)){
begindate = Util.null2String(request.getParameter("begindate"));
enddate = Util.null2String(request.getParameter("enddate"));
year = Util.getIntValue(request.getParameter("year"));
int userid = Util.getIntValue(request.getParameter("userid"));
user = new User(userid);
}else{
begindate = TimeUtil.getFirstDayOfTheYear();
enddate = TimeUtil.getCurrentDateString();
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
year = calendar.get(Calendar.YEAR);
user = HrmUserVarify.getUser(request , response) ;
}
String message = getSalesPerson(user,begindate,enddate,year);
JSONObject jsonObject = new JSONObject();
jsonObject.put("data",message);
%>
<%=jsonObject.toString() %>
<%!
/***
* 销售显示6个签约合同金额、年度指标、指标完成率、合同收款、客户数量、商机数量
*/
public String getSalesPerson(User user, String begindate, String enddate,int currentYear){
BaseBean bb = new BaseBean();
String message = "";
try {
String qyhtje = getContractPerformanc(user,currentYear,begindate,enddate);
message += "[qyhtje]:"+qyhtje;
}catch (Exception e){
}
try {
String htsk = getContractCollection(user,currentYear,begindate,enddate);
message += "[htsk]:"+htsk;
}catch (Exception e){
}
try{
String xlkhhtje= getSignContract(user,currentYear,begindate,enddate);
message += "[xlkhhtje]:"+xlkhhtje;
}catch (Exception e){
}
return message;
}
/////##########################销售人员##################################//
/***
* 签约合同金额
* @param user
* @param year
* @param startDate
* @param endDate
* @return
*/
public String getSignContract(User user,int year,String startDate,String endDate){
BaseBean bb = new BaseBean();
bb.writeLog("getSignContract:");
Map<String,Double> map = new HashMap<String,Double>();
GetTotalService totalService = new GetTotalService();
String contractTableName = "zxyjlxfb";
String searchFlag = "1";
String dateCondition = "5";
String zxyjFlag = "";
String message = "" ;
try {
TotalRequestDTO requestDTO = new TotalRequestDTO();
requestDTO.setDateValue(dateCondition);
requestDTO.setSearchFlag(searchFlag);
requestDTO.setContractTableName(contractTableName);
requestDTO.setUser(user);
requestDTO.setZxyjFlag(zxyjFlag);
TotalMoneyDTO totalMoneyDTO = totalService.getTotalInfo(requestDTO);
bb.writeLog("totalMoneyDTO:"+totalMoneyDTO.toString());
message = totalMoneyDTO.toString() ;
}catch (Exception e) {
bb.writeLog("getSignContract-e:"+e);
}
return message;
}
/***
* 合同收款金额
* @param user
* @param year
* @param startDate
* @param endDate
* @return
*/
public String getContractCollection(User user,int year,String startDate,String endDate){
BaseBean bb = new BaseBean();
bb.writeLog("getContractCollection:");
String message = "";
String contractTableName = "zxhtyj";
String searchFlag = "1";
String dateCondition = "5";
String zxyjFlag = "zxhtsknew";
GetTotalService totalService = new GetTotalService();
try {
TotalRequestDTO requestDTO = new TotalRequestDTO();
requestDTO.setDateValue(dateCondition);
requestDTO.setSearchFlag(searchFlag);
requestDTO.setContractTableName(contractTableName);
requestDTO.setUser(user);
requestDTO.setZxyjFlag(zxyjFlag);
TotalMoneyDTO totalMoneyDTO = totalService.getTotalInfo(requestDTO);
bb.writeLog("totalMoneyDTO:"+totalMoneyDTO.toString());
message = totalMoneyDTO.toString();
}catch (Exception e) {
bb.writeLog("getSignContract-e:"+e);
}
return message;
}
/***
*
* @param user
* @param year
* @param startDate
* @param endDate
* @return
*/
public String getContractPerformanc(User user,int year,String startDate,String endDate){
BaseBean bb = new BaseBean();
String message = "" ;
bb.writeLog("getContractCollection:");
Map<String,Double> map = new HashMap<String,Double>();
String contractTableName = "zxhtyj";
String searchFlag = "1";
String dateCondition = "5";
String zxyjFlag = "";
GetTotalService totalService = new GetTotalService();
try {
TotalRequestDTO requestDTO = new TotalRequestDTO();
requestDTO.setDateValue(dateCondition);
requestDTO.setSearchFlag(searchFlag);
requestDTO.setContractTableName(contractTableName);
requestDTO.setUser(user);
requestDTO.setZxyjFlag(zxyjFlag);
TotalMoneyDTO totalMoneyDTO = totalService.getTotalInfo(requestDTO);
bb.writeLog("totalMoneyDTO:"+totalMoneyDTO.toString());
message = totalMoneyDTO.toString();
}catch (Exception e) {
bb.writeLog("getContractPerformanc-e:"+e);
}
return message;
}
/////##########################销售人员##################################//
/***
*
* @param pkey
* @return
*/
public String getUfPropValue(String pkey){
if(StringUtils.isEmpty(pkey)){
return "";
}
String value = "" ;
RecordSet rs = new RecordSet();
BaseBean bb = new BaseBean();
String active = bb.getPropValue("developProp","active");
String sql = " select devvalue,prodvalue from uf_hr_prop where pkey = ?" ;
rs.executeQuery(sql,new Object[]{pkey});
if(rs.next()){
value = Util.null2String(rs.getString(active+"value"));
}
return value;
}
/***
*
* @param value
* @return
*/
public String formatBigDecimal(String value){
String formatValue = "" ;
try{
DecimalFormat decimalFormat = new DecimalFormat("0.00");
BigDecimal _decimal = new BigDecimal(value);
formatValue = decimalFormat.format(_decimal);
}catch (Exception e){
}
return formatValue;
}
%>