|
|
@@ -256,63 +256,86 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
if (status==2) {
|
|
|
//变更类型 0退单退款 1项目及金额变更 2仅项目变更 3仅金额变更 4重报 5赠送 6退单不退款 7仅变更合同
|
|
|
if(nb.getType() !=null){
|
|
|
- //仅合同变更只需要 营销管理员与财务专员审核
|
|
|
if(nb.getType()==OrderChangeType.JBGGT.getCode()){
|
|
|
- if(nb.getProcessState()==1){
|
|
|
- nb.setProcessState(5);
|
|
|
- }else if(nb.getProcessState()==5){
|
|
|
+ //仅合同图片修改:营销-营销总经理
|
|
|
+ if(nb.getProcessState()==OrderChangeProcess.YXGLY.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.YXGLY.getCode());
|
|
|
+ }else if(nb.getProcessState()==OrderChangeProcess.YXGLY.getCode()){
|
|
|
nb.setStatus(4);
|
|
|
pushCompleteOrderChange(nb);
|
|
|
return 1;
|
|
|
}
|
|
|
- }else {
|
|
|
- if(nb.getProcessState()==8) {//董事长项目变更通过
|
|
|
- nb.setStatus(2);
|
|
|
- }
|
|
|
- if (nb.getChangeAmount().compareTo(new BigDecimal("0.2"))<0) {//小于则总裁通过,大于则董事长
|
|
|
- if(nb.getProcessState()==7) {//总裁项目变更通过
|
|
|
- nb.setStatus(2);
|
|
|
+ } else {
|
|
|
+/* 赠送:营销-经理-总经理审核-财务(已收款情况)-总裁
|
|
|
+ 重报:营销-经理-总经理审核-技术员-财务-财务总监-总裁
|
|
|
+ 仅项目:营销-经理-总经理审核-技术员-技术总监-财务-财务总监-总裁
|
|
|
+ 项目&金额:营销-经理-总经理审核-技术员-经理经理-技术总监-财务-财务总监-总裁
|
|
|
+ 退单退款:营销-经理-总经理审核-技术员-经理经理-技术总监-财务-财务总监-总裁-董事长(大于2K,需董事长审核)-财务退票
|
|
|
+ 退单不退款:营销-经理-总经理审核-技术员-经理经理-技术总监-财务-财务总监-总裁-财务退票
|
|
|
+ 仅金额:营销-经理-总经理审核-技术总监-财务-财务总监-总裁
|
|
|
+ */
|
|
|
+ if (nb.getProcessState()==OrderChangeProcess.YXJL.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.YXGLY.getCode());
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.YXGLY.getCode()){
|
|
|
+ if (nb.getType()==OrderChangeType.CB.getCode()||nb.getType()==OrderChangeType.JXMBG.getCode()||
|
|
|
+ nb.getType()==OrderChangeType.XMJJEBG.getCode()||nb.getType()==OrderChangeType.TDTK.getCode()||
|
|
|
+ nb.getType()==OrderChangeType.TDBTK.getCode()){
|
|
|
+ if (orderExamineMapper.checkCountStatus(orderNo, null, null) < 1) {
|
|
|
+ insertOrderExamine(orderNo);
|
|
|
+ } else {
|
|
|
+ orderExamineMapper.updateByOrderNo(orderNo, null);
|
|
|
+ }
|
|
|
+ nb.setProcessState(OrderChangeProcess.JSY.getCode());
|
|
|
+ }else if (nb.getType()==OrderChangeType.JJEBG.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
|
|
|
+ }else if (nb.getType()==OrderChangeType.JJEBG.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.CWZY.getCode());
|
|
|
}
|
|
|
- }else {
|
|
|
- if(nb.getProcessState()==7) {
|
|
|
- nb.setProcessState(nb.getProcessState()+1);
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.JSY.getCode()){
|
|
|
+ if (nb.getType()==OrderChangeType.CB.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.CWZY.getCode());
|
|
|
+ }else if (nb.getType()==OrderChangeType.JXMBG.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
|
|
|
+ }else if (nb.getType()==OrderChangeType.XMJJEBG.getCode()||nb.getType()==OrderChangeType.TDTK.getCode()||
|
|
|
+ nb.getType()==OrderChangeType.TDBTK.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.JSJL.getCode());
|
|
|
}
|
|
|
- }
|
|
|
- //营销管理通过则设置技术管理员通过表
|
|
|
- if(nb.getProcessState()==1){
|
|
|
- if (orderExamineMapper.checkCountStatus(orderNo,null,null)<1) {
|
|
|
- insertOrderExamine(orderNo);
|
|
|
- } else {
|
|
|
- orderExamineMapper.updateByOrderNo(orderNo,null);
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.JSJL.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.JSZJ.getCode());
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.JSZJ.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.CWZY.getCode());
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.CWZY.getCode()){
|
|
|
+ if (nb.getType()==OrderChangeType.ZS.getCode()){
|
|
|
+ nb.setProcessState(OrderChangeProcess.ZC.getCode());
|
|
|
+ }else {
|
|
|
+ nb.setProcessState(OrderChangeProcess.CWZJ.getCode());
|
|
|
}
|
|
|
- nb.setProcessState(nb.getProcessState()+1);
|
|
|
- }
|
|
|
- //必须放置在咨询师与咨询师经理前,否则会直接通过不走咨询师管理员
|
|
|
- if(nb.getProcessState()==4||nb.getProcessState()==5) {
|
|
|
- nb.setProcessState(nb.getProcessState()+1);
|
|
|
- }else if (nb.getProcessState()==6){
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.CWZJ.getCode()){
|
|
|
+ //财务总监审核,曹津不走总裁走董事长
|
|
|
TOrderNew tOrderNew = tOrderNewMapper.selectByPrimaryKey(nb.getOrderNo());
|
|
|
- if (tOrderNew.getSalesmanId().equals(AFTConstants.CAOJIN_AID)){
|
|
|
- nb.setProcessState(8);
|
|
|
- } else{
|
|
|
- nb.setProcessState(7);
|
|
|
+ if (tOrderNew.getSalesmanId().equals(AFTConstants.CAOJIN_AID)) {
|
|
|
+ nb.setProcessState(OrderChangeProcess.DSZ.getCode());
|
|
|
+ }else {
|
|
|
+ nb.setProcessState(OrderChangeProcess.ZC.getCode());
|
|
|
}
|
|
|
- }
|
|
|
- if(nb.getProcessState()==2){//咨询师
|
|
|
- //找出当时人的审核改为通过
|
|
|
- orderExamineMapper.updateByOrderNoAndAid(orderNo,TokenManager.getAdminId(),0);
|
|
|
- //全部通过了则跳下个流程
|
|
|
- if (orderExamineMapper.checkCountStatus(orderNo,0,0)<1) {
|
|
|
- nb.setProcessState(nb.getProcessState()+1);
|
|
|
- }
|
|
|
- }
|
|
|
- if(nb.getProcessState()==3){//咨询师经理
|
|
|
- //找出当时人的审核改为通过
|
|
|
- orderExamineMapper.updateByOrderNoAndAid(orderNo,TokenManager.getAdminId(),1);
|
|
|
- //全部通过了则跳下个流程
|
|
|
- if (orderExamineMapper.checkCountStatus(orderNo,1,0)<1) {
|
|
|
- nb.setProcessState(nb.getProcessState()+1);
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.ZC.getCode()){
|
|
|
+ if (nb.getType()==OrderChangeType.TDTK.getCode()) {
|
|
|
+ if (nb.getChangeAmount().compareTo(new BigDecimal("0.2")) < 0) {
|
|
|
+ //小于则总裁通过,大于则董事长
|
|
|
+ nb.setStatus(2);
|
|
|
+ }else {
|
|
|
+ nb.setProcessState(OrderChangeProcess.DSZ.getCode());
|
|
|
+ }
|
|
|
+ }else if (nb.getType()==OrderChangeType.TDBTK.getCode()){
|
|
|
+ nb.setStatus(2);
|
|
|
+ }else {
|
|
|
+ nb.setStatus(4);
|
|
|
+ pushCompleteOrderChange(nb);
|
|
|
+ return 1;
|
|
|
}
|
|
|
+
|
|
|
+ }else if (nb.getProcessState()==OrderChangeProcess.DSZ.getCode()){
|
|
|
+ nb.setStatus(2);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -369,7 +392,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
//获取客户信息
|
|
|
TOrderNewBo o=tOrderNewMapper.getSaleIdByOno(nb.getOrderNo());
|
|
|
//获取接收者
|
|
|
- //流程状态 0营销员 1营销管理员 2技术员 3技术经理 4技术总监 5财务专员(退单) 6财务总监 7总裁 8董事长
|
|
|
+ //流程状态 0=营销员,1=营销经理,2=营销管理员,3=技术员,4=技术经理,5=技术总监,6=财务专员,7=财务总监,8=总裁,9=董事长
|
|
|
List<String> alist = new ArrayList<>();
|
|
|
//获取部门负责财务人员
|
|
|
switch (nb.getProcessState()) {
|
|
|
@@ -377,41 +400,45 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
alist.add(o.getSalesmanId());
|
|
|
break;
|
|
|
case 1:
|
|
|
- alist.addAll(adminMapper.listNameByDepAndName(a.getDepartmentId(), AFTConstants.SALESMAN_ADMIN));
|
|
|
+ Admin saleaman = adminMapper.selectByPrimaryKey(o.getSalesmanId());
|
|
|
+ alist.add(saleaman.getManagerId());
|
|
|
break;
|
|
|
case 2:
|
|
|
- alist.addAll(tOrderTaskMapper.listNameByDepAndName(o.getOrderNo(),0));
|
|
|
+ alist.addAll(adminMapper.listNameByDepAndName(a.getDepartmentId(), AFTConstants.SALESMAN_ADMIN));
|
|
|
break;
|
|
|
case 3:
|
|
|
- alist.addAll(tOrderTaskMapper.listNameByDepAndName(o.getOrderNo(),1));
|
|
|
+ alist.addAll(tOrderTaskMapper.listNameByDepAndName(o.getOrderNo(),0));
|
|
|
break;
|
|
|
case 4:
|
|
|
+ alist.addAll(tOrderTaskMapper.listNameByDepAndName(o.getOrderNo(),1));
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
for (Admin admin : adminMapper.getAdminRoleTypeList(AFTConstants.TECH_ADMIN)) {
|
|
|
alist.add(admin.getId());
|
|
|
}
|
|
|
break;
|
|
|
- case 5:
|
|
|
+ case 6:
|
|
|
alist.add(o.getFinanceId());
|
|
|
break;
|
|
|
- case 6:
|
|
|
+ case 7:
|
|
|
for (Admin admin : adminMapper.getAdminRoleTypeList(AFTConstants.FINANCE_ADMIN)) {
|
|
|
alist.add(admin.getId());
|
|
|
}
|
|
|
break;
|
|
|
- case 7:
|
|
|
+ case 8:
|
|
|
if(nb.getStatus()==2) {
|
|
|
alist.add(o.getFinanceId());
|
|
|
}else {
|
|
|
- for (Admin admin : adminMapper.getAdminRoleTypeList(AFTConstants.CED)) {
|
|
|
+ for (Admin admin : adminMapper.selectAdminByRoleType(AFTConstants.CED)) {
|
|
|
alist.add(admin.getId());
|
|
|
}
|
|
|
}
|
|
|
break;
|
|
|
- case 8:
|
|
|
+ case 9:
|
|
|
if(nb.getStatus()==2) {
|
|
|
alist.add(o.getFinanceId());
|
|
|
}else {
|
|
|
- for (Admin admin : adminMapper.getAdminRoleTypeList(AFTConstants.APPROVAL_DECISION)) {
|
|
|
+ for (Admin admin : adminMapper.selectAdminByRoleType(AFTConstants.APPROVAL_DECISION)) {
|
|
|
alist.add(admin.getId());
|
|
|
}
|
|
|
}
|
|
|
@@ -567,7 +594,7 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
noc.setChangeAmount(t.getChangeAmount());
|
|
|
noc.setApplicant(t.getApplicant());
|
|
|
noc.setStatus(1);//订单置为正常
|
|
|
- noc.setProcessState(1);//流程置为营销管理员
|
|
|
+ noc.setProcessState(OrderChangeProcess.YXJL.getCode());
|
|
|
noc.setDepName(t.getDepName());
|
|
|
OrderChangeLog ocl=new OrderChangeLog();
|
|
|
ocl.setAuditor(TokenManager.getAdminId());
|
|
|
@@ -595,6 +622,11 @@ public class OrderChangeServiceImpl extends BaseMybatisDao<NewOrderChangeMapper>
|
|
|
if (noc.getProcessState()== OrderChangeProcess.YXY.getCode()){
|
|
|
TOrderNewBo ton = tOrderNewMapper.getSaleIdByOno(noc.getOrderNo());
|
|
|
noc.setExamineName(ton.getSalesmanName());
|
|
|
+ }else if (noc.getProcessState()== OrderChangeProcess.YXJL.getCode()){
|
|
|
+ TOrderNewBo ton = tOrderNewMapper.getSaleIdByOno(noc.getOrderNo());
|
|
|
+ Admin saleman = adminMapper.selectByPrimaryKey(ton.getSalesmanId());
|
|
|
+ Admin manager = adminMapper.selectByPrimaryKey(saleman.getManagerId());
|
|
|
+ noc.setExamineName(manager.getName());
|
|
|
}else if (noc.getProcessState()== OrderChangeProcess.YXGLY.getCode()){
|
|
|
TOrderNewBo ton = tOrderNewMapper.getSaleIdByOno(noc.getOrderNo());
|
|
|
StringBuffer str=new StringBuffer();
|