📄 busiopportaction.java
字号:
public ActionForward newCreateOption(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws ApplicationException {
String optionName = request.getParameter("busiOpportOptionName");
User user = SessionMgr.getCustSession(request);
// 初始化用户自定义选项,类型3为业务机会
UserDefined userDefined = busiOpportMgr.initUserDefined(user,
optionName, Constants.ALLBUSIOPPORT_INT, new Date());
busiOpportMgr.addUserDefined(userDefined);// 保存自定义选项
// 遍历所有过滤条件
UserFilter uf = null;
for (int i = 1; i <= 20; i++) {
uf = new UserFilter();
String fieldId = request.getParameter("field" + i);// 字段
String operatorPre = request.getParameter("operator" + i);// SW运算符
String valuePre = request.getParameter("value" + i);// 值
// 判断输入条件是否为空
if (!StringTool.isNotBlank(fieldId)
|| !StringTool.isNotBlank(operatorPre)
|| !StringTool.isNotBlank(valuePre)) {// 若字段为空
break;
}
String field = busiOpportMgr.getStringByField(fieldId);// 字段转换
String operator = StringTool.transformStr(operatorPre);// 转换运算符
String filerValue = "";
if (operatorPre.equals(Constants.STARTCHAR)) {// 若运算符是起始字符
filerValue = "'" + valuePre + "%'";
} else if (operator.equals("like") || operator.equals("!like")) {// 若是模糊查询
filerValue = "'%" + valuePre + "%'";
} else {// 其余为数值或字符
filerValue = StringTool.transformString(fieldId, valuePre);
}
// 初始化用户过滤条件
UserFilter userFilter = busiOpportMgr.initUserFilter(userDefined,
field, operator, filerValue, operatorPre, valuePre);
busiOpportMgr.addUserFilter(userFilter);// 保存过滤条件
}
String optionFields = request.getParameter("preOptions"); // 分离预选项
UserField userField = busiOpportMgr.initUserFiled(userDefined,
optionFields);
busiOpportMgr.addUserFiled(userField);// 保存显示字段
System.out.println("显示字段" + userField.getFieldName());
request.setAttribute("isSuccess", Constants.SAVESUCCESS);
return mapping.findForward("newBusiOppotOption");
}
/**
* 编辑业务机会选项
*
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward editOption(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
String optionId = request.getParameter("optionId");
UserDefined busiOpportDefined = null;
if (StringTool.isNotBlank(optionId)) {// 若选项id不空
// 根据选项id搜索客户选项
busiOpportDefined = busiOpportMgr.getUserDefinedById(Integer
.parseInt(optionId));
}
// 将选项封装成vo
BusiOpportDefinedVo busiOpportDefinedVo = busiOpportMgr
.transaformBusiOpportDefinedPoToVo(busiOpportDefined);
System.out.println("可选字段" + busiOpportDefinedVo.getNoUserFields());
request.setAttribute("busiOpportDefinedVo", busiOpportDefinedVo);
return mapping.findForward("editOption");
}
/**
* 创建客户新选项
*
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward modifyOption(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
String optionId = request.getParameter("optionId");
//String optionId=request.getParameter("optionId");
System.out.println("选项" + optionId);
UserDefined ud = null;
if (StringTool.isNotBlank(optionId)) {// 若选项不为空
ud = busiOpportMgr.getUserDefinedById(Integer.parseInt(optionId));
}
if (ud != null) {
String optionName = request.getParameter("optionName");
ud.setDefinedName(optionName);
ud.setType(Constants.ALLBUSIOPPORT_INT);// 设置选项类型
busiOpportMgr.updateOption(ud);
UserFilter uf = null;
for (int i = 1; i <= 20; i++) {// 遍历所有的过滤条件
String filterId = request.getParameter("filterId" + i);// 过滤条件id
String fieldId = request.getParameter("field" + i);// 字段
String operatorPre = request.getParameter("operator" + i);// 预运算符
String valuePre = request.getParameter("value" + i);// 值
if (StringTool.isNotBlank(filterId)) {// 若过滤条件不为空,则从数据库中搜索该过滤条件
uf = busiOpportMgr.getUserFilterById(filterId);
if (fieldId.equals("")
|| operatorPre.equals(Constants.NONE)
|| valuePre.equals("")) {// 若字段为空
System.out.println("删除");
busiOpportMgr.deleteFilter(uf);
continue;
}
} else {
uf = new UserFilter();
System.out.println("有到这里吗1..." + uf);
}
System.out.println("第几个过滤条件" + filterId);
System.out.println("fieldId:" + fieldId);
System.out.println("operatorPre:" + operatorPre);
System.out.println("value:" + valuePre);
String filerValue = "";
if (!StringTool.isNotBlank(fieldId)
|| !StringTool.isNotBlank(operatorPre)
|| !StringTool.isNotBlank(valuePre)) {// 若字段为空
System.out.println("跳出");
break;// 跳出
}
uf.setOperatorName(operatorPre);// 保存操作名
uf.setFilter(valuePre);// 保存值
String field = busiOpportMgr.getStringByField(fieldId);
String operator = StringTool.transformStr(operatorPre);// 转换运算符
if (operatorPre.equals(Constants.STARTCHAR)) {// 若运算符是起始字符
filerValue = "'" + valuePre + "%'";
} else if (operator.equals("like") || operator.equals("!like")) {// 若是模糊查询
filerValue = "'%" + valuePre + "%'";
} else {// 其余为数值或字符
filerValue = "'" + valuePre + "'";
}
uf.setFilterName(field);
uf.setOperator(operator);
uf.setFilterValue(filerValue);
uf.setUserDefined(ud);
System.out.println("有到这里吗2..." + filterId);
if (StringTool.isNotBlank(filterId)) {// 若过滤条件不为空,则修改该过滤条件
busiOpportMgr.updateUserFilter(uf);// 修改过滤条件
} else {
busiOpportMgr.addUserFilter(uf);// 保存过滤条件
System.out.println("保存..." + uf);
}
}
String optionFields = request.getParameter("preOptions"); // 分离预选项
UserField userField = busiOpportMgr.getUserFieldByOption(ud);
userField.setFieldName(optionFields);
userField.setUserDefined(ud);
busiOpportMgr.updateUserField(userField);// 修改显示字段
System.out.println(userField.getFieldName());
request.setAttribute("isSuccess", Constants.SAVESUCCESS);
} else {
request.setAttribute("isSuccess", Constants.SAVEFIALURE);
}
return mapping.findForward("editOptionAgain");
}
/**
* 编辑业务机会
*
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward editBusiOpport(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws ApplicationException {
//获取BusinessOpportunity的id
String busiOpportId = request.getParameter("id");
BusinessOpportunity busiOpport = null;
if (StringTool.isNotBlank(busiOpportId)) {// 根据id查找联系人
busiOpport = busiOpportMgr.getBusiOpportById(Integer
.parseInt(busiOpportId));
}
if (busiOpport != null) {// 根据联系人查找用户---联系人
BusinessOpportunityVo busiOpprtVo = new BusinessOpportunityVo();
try {
BeanUtils.copyProperties(busiOpprtVo, busiOpport);
} catch (Exception e) {
}
request.setAttribute("busiOpprtVo", busiOpprtVo);
}
return mapping.findForward("editBusiOpport");
}
/**
* 修改业务机会
*
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws ApplicationException
*/
public ActionForward modifyBusiOpport(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws ApplicationException {
String busiOpportId = request.getParameter("id");
BusiOpportForm busiOpportForm = (BusiOpportForm) form;
BusinessOpportunity busiOpport = null;
if (StringTool.isNotBlank(busiOpportId)) {
// 根据id查找联系人
busiOpport = busiOpportMgr.getBusiOpportById(Integer
.parseInt(busiOpportId));
}
if (busiOpport != null) {
busiOpport.setBusiOpportName(busiOpportForm.getBusiOpportName()); // 业务机会名称
busiOpport
.setBusinessDescribe(busiOpportForm.getBusinessDescribe()); // 业务机会描述
busiOpport.setInvolveProduct(busiOpportForm.getInvolveProduct()); // 涉及产品
busiOpport.setCreatDate(busiOpportForm.getCreatDate()); // 创建日期
busiOpport.setPreTransactionDate(busiOpportForm
.getPreTransactionDate()); // 预计成交日期
busiOpport.setCompleteTime(busiOpportForm.getCompleteTime()); // 完成日期
busiOpport.setStageOf(busiOpportForm.getStageOf()); // 所属阶段
busiOpport.setProbability(busiOpportForm.getProbability()); // 可能性
busiOpport.setPredictAmount(busiOpportForm.getPredictAmount()); // 成交金额
busiOpport.setDecisionMan(busiOpportForm.getDecisionMan()); // 决策人
busiOpport.setCompeteDescribe(busiOpportForm.getCompeteDescribe()); // 竞争情况描述
// 更新业务机会表
try {
// 根据客户ID查找客户
Customer customer = busiOpportMgr
.getCustomerById(busiOpportForm.getCustomerId());
busiOpport.setCustomer(customer);
busiOpportMgr.updateBusiOpport(busiOpport);
} catch (Exception e) {
e.printStackTrace();
request.setAttribute(Constants.ERRMSG,
Constants.ENABLEUPDATEDATA);
throw new ApplicationException(Constants.ENABLEUPDATEDATA);
}
// 把修改的记录添加到阶段历史里 by 张明强
BusinessOpportunityStageHistory bosh = new BusinessOpportunityStageHistory();
bosh.setStageName(busiOpportForm.getStageOf()); // 阶段名词
bosh.setPredictAmount(busiOpportForm.getPredictAmount()); // 金额
bosh.setProbability(busiOpportForm.getProbability()); // 可能性
bosh.setPretransactionDate(busiOpportForm.getPreTransactionDate()); // 结束日期
bosh.setLastModifyTime(DateTimeTool.dateToStrFormat(
"yyyy-MM-dd HH:mm:ss", new Date())); // 修改时间
// 获取会话
User user = SessionMgr.getCustSession(request);
logger.debug("这个值正确吗~~~~???" + user.getId());
bosh.setModifyManId(user.getId()); // 修改人的ID
bosh.setBusinessOpportunityId(busiOpport.getId());
try {
boshMgr.addBoStageHistory(bosh);
} catch (Exception e) {
e.printStackTrace();
request.setAttribute(Constants.ERRMSG, Constants.ERRORSYSTEM);
throw new ApplicationException("添加阶段历史失败异常!");
}
// 把修改的记录添加到阶段历史里 结束
// 显示历史阶段 by 张明强
try {
List<BusinessOpportunityStageHistory> boshList = new ArrayList<BusinessOpportunityStageHistory>();
logger.debug("ddddd:" + busiOpport.getId());
boshList = boshMgr.getByBusiOpportID(busiOpport.getId());
request.setAttribute("boshList", boshList);
} catch (Exception e) {
e.printStackTrace();
request.setAttribute(Constants.ERRMSG, Constants.ERRORSYSTEM);
throw new ApplicationException("the data copy exception");
}
// 显示历史阶段 结束
}
String param = request.getParameter("param");
String forward = "busiOpportCorrelation";
logger.debug("参数为空吗" + param);
if (param != null && param.equals("newAgain")) {// 若是保存并新建
forward = "newBusiOpport";
} else {
// 显示业务机会信息
try {
BusinessOpportunityVo busiOpportVo = new BusinessOpportunityVo();
BeanUtils.copyProperties(busiOpportVo, busiOpport);
request.setAttribute("busiOpportVo", busiOpportVo);
} catch (Exception e) {
e.printStackTrace();
request.setAttribute(Constants.ERRMSG, Constants.ERRORSYSTEM);
throw new ApplicationException("the data copy exception");
}
}
return mapping.findForward(forward);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -