|
|
@@ -0,0 +1,97 @@
|
|
|
+package com.uas.eis.serviceImpl;
|
|
|
+
|
|
|
+import com.uas.eis.core.config.SpObserver;
|
|
|
+import com.uas.eis.dao.BaseDao;
|
|
|
+import com.uas.eis.model.SqlRowList;
|
|
|
+import com.uas.eis.service.SendMailService;
|
|
|
+import com.uas.eis.service.SendSaleForecastmailService;
|
|
|
+import com.uas.eis.utils.DateUtil;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.Date;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Created by zdw
|
|
|
+ * 2019-04-29 16:42.
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class SendSaleForecastmailServiceImpl implements SendSaleForecastmailService {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ SendMailService sendMailService;
|
|
|
+ @Autowired
|
|
|
+ BaseDao baseDao;
|
|
|
+
|
|
|
+ public void sendsaleForecastbymaster_sz() {
|
|
|
+ //切换到目标账套
|
|
|
+ String defaultSob = SpObserver.getSp();
|
|
|
+ SpObserver.putSp("YHND_SZ");
|
|
|
+ String emsql="select distinct name,mail from( select CU_SELLERNAME name,MAIL1_SELLER mail from FINISHSALEFORECAST_VIEW) where mail is not null";
|
|
|
+ StringBuilder message = null;
|
|
|
+ StringBuilder ccman = null;
|
|
|
+ SqlRowList emrs = baseDao.queryForRowSet(emsql);
|
|
|
+ while (emrs.next()){
|
|
|
+ //获得固定抄送人员
|
|
|
+ ccman= new StringBuilder();
|
|
|
+ Object ccdata = getGdccMail(emrs.getString("name"),emrs.getString("mail"),"CCMANSALEFORECASTMAIL_VIEW");
|
|
|
+ if (ccdata!=null){
|
|
|
+ ccman.append(ccdata.toString());
|
|
|
+ }
|
|
|
+ message = new StringBuilder();
|
|
|
+ SqlRowList contrs = baseDao.queryForRowSet("select * from FINISHSALEFORECAST_VIEW where CU_SELLERNAME = '"+emrs.getString("name")+"' or CU_SERVICENAME = '"+emrs.getString("name")+"'");
|
|
|
+ message.append("<p><font color=\"red\"><b>"+emrs.getString("name")+":</b></font></p><p><font color=\"red\">您好!</font></p><p><font color=\"red\">您有如下客户的销售预测在上周结案,请及时跟进,谢谢!</font></p><table border=\"1\" cellspacing=\"0\" style=\"font-size:12px;width:100%\"><tr><th width=\"150px\">预测单号</th><th>行号</th><th width=\"500px\">客户名称</th><th width=\"100px\">物料编号</th><th>型号二</th><th>数量</th></tr>");
|
|
|
+ while (contrs.next()){
|
|
|
+ message.append("<tr><th>"+contrs.getString("sf_code")+"</th><th>"+contrs.getInt("sd_detno")+"</th><th>"+contrs.getString("sf_custname")+"</th><th>"+contrs.getString("sd_prodcode")+"</th><th align=\"right\">"+contrs.getString("pr_vendprodcode")+"</th><th>"+contrs.getString("sd_qty")+"</th></tr>");
|
|
|
+ }
|
|
|
+ message.append("</table><p><font color=\"red\">如有疑问请联系系统维护人员,谢谢!</font></p><p><font color=\"red\">日期:"+ DateUtil.format(new Date(),"yyyy-MM-dd")+"</font></p>");
|
|
|
+// sendMailService.sendSysMail("上周结案销售预测提醒("+emrs.getString("name")+")",message.toString(),emrs.getString("mail"),ccman.toString(),null);
|
|
|
+ sendMailService.sendSysMail("上周结案销售预测提醒("+emrs.getString("name")+")",message.toString(),"396996717@qq.com","geek94@qq.com;zdw941008@sina.com",null);
|
|
|
+// System.out.println(emrs.getString("mail"));
|
|
|
+// System.out.println(ccman.toString());
|
|
|
+// System.out.println(message);
|
|
|
+// System.out.println("------");
|
|
|
+ }
|
|
|
+ //切回原账套
|
|
|
+ SpObserver.putSp(defaultSob);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public void sendsaleForecastbymaster_hk() {
|
|
|
+ //切换到目标账套
|
|
|
+ String defaultSob = SpObserver.getSp();
|
|
|
+ SpObserver.putSp("YHND_HK");
|
|
|
+ String emsql="select distinct name,mail from( select CU_SELLERNAME name,MAIL1_SELLER mail from FINISHSALEFORECAST_VIEW) where mail is not null";
|
|
|
+ StringBuilder message = null;
|
|
|
+ StringBuilder ccman = null;
|
|
|
+ SqlRowList emrs = baseDao.queryForRowSet(emsql);
|
|
|
+ while (emrs.next()){
|
|
|
+ //获得固定抄送人员
|
|
|
+ ccman= new StringBuilder();
|
|
|
+ Object ccdata = getGdccMail(emrs.getString("name"),emrs.getString("mail"),"CCMANSALEFORECASTMAIL_VIEW");
|
|
|
+ if (ccdata!=null){
|
|
|
+ ccman.append(ccdata.toString());
|
|
|
+ }
|
|
|
+ message = new StringBuilder();
|
|
|
+ SqlRowList contrs = baseDao.queryForRowSet("select * from FINISHSALEFORECAST_VIEW where CU_SELLERNAME = '"+emrs.getString("name")+"' or CU_SERVICENAME = '"+emrs.getString("name")+"'");
|
|
|
+ message.append("<p><font color=\"red\"><b>"+emrs.getString("name")+":</b></font></p><p><font color=\"red\">您好!</font></p><p><font color=\"red\">您有如下客户的销售预测在上周结案,请及时跟进,谢谢!</font></p><table border=\"1\" cellspacing=\"0\" style=\"font-size:12px;width:100%\"><tr><th width=\"150px\">预测单号</th><th>行号</th><th width=\"500px\">客户名称</th><th width=\"100px\">物料编号</th><th>型号二</th><th>数量</th></tr>");
|
|
|
+ while (contrs.next()){
|
|
|
+ message.append("<tr><th>"+contrs.getString("sf_code")+"</th><th>"+contrs.getInt("sd_detno")+"</th><th>"+contrs.getString("sf_custname")+"</th><th>"+contrs.getString("sd_prodcode")+"</th><th align=\"right\">"+contrs.getString("pr_vendprodcode")+"</th><th>"+contrs.getString("sd_qty")+"</th></tr>");
|
|
|
+ }
|
|
|
+ message.append("</table><p><font color=\"red\">如有疑问请联系系统维护人员,谢谢!</font></p><p><font color=\"red\">日期:"+ DateUtil.format(new Date(),"yyyy-MM-dd")+"</font></p>");
|
|
|
+// sendMailService.sendSysMail("上周结案销售预测提醒("+emrs.getString("name")+")",message.toString(),emrs.getString("mail"),ccman.toString(),null);
|
|
|
+ sendMailService.sendSysMail("上周结案销售预测提醒("+emrs.getString("name")+")",message.toString(),"396996717@qq.com","geek94@qq.com;zdw941008@sina.com",null);
|
|
|
+// System.out.println(emrs.getString("mail"));
|
|
|
+// System.out.println(ccman.toString());
|
|
|
+// System.out.println(message);
|
|
|
+// System.out.println("------");
|
|
|
+ }
|
|
|
+ //切回原账套
|
|
|
+ SpObserver.putSp(defaultSob);
|
|
|
+ }
|
|
|
+
|
|
|
+ public Object getGdccMail(String seller,String mail,String view){
|
|
|
+ return baseDao.queryForObject("select replace(WMSYS.Wm_Concat(mail),',',';') from (select distinct mail from "+view+" where sellername in ('"+seller+"','固定抄送人') and mail<>'"+mail+"' )",String.class);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|