Explorar o código

运营保障审核接口开发

anderx hai 1 ano
pai
achega
c0b790c36d

+ 3 - 0
src/main/java/com/goafanti/common/enums/OrderLogProcess.java

@@ -37,6 +37,9 @@ public enum OrderLogProcess {
 	HYTPBH(22,"会员特批驳回"),
 	HYXMWC(23,"会员项目完成"),
 	DDZJ(24,"订单转交"),
+
+	YYBZSHTG(25,"运营保障审核通过"),
+	YYBZSHBH(25,"运营保障审核驳回"),
 	NOT(99,"未知"),
 	;
 

+ 25 - 0
src/main/java/com/goafanti/order/controller/AdminNewOrderApiController.java

@@ -394,6 +394,31 @@ public class AdminNewOrderApiController extends CertifyApiController {
 
 
 	/**
+	 * 运营保障审核
+	 * @param orderNo 订单编号
+	 * @param type 0拒绝 1通过
+	 * @param reason 说明
+	 */
+	@RequestMapping(value="/operationGuaranteeAudit", method = RequestMethod.POST)
+	public Result operationGuaranteeAudit(String orderNo,Integer type,String reason){
+		Result res=new Result();
+		if(StringUtils.isBlank(orderNo)){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "订单编号","订单编号"));
+			return res;
+		}
+		if (type==null||(type!=0&&type!=1)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"审核状态", "审核状态"));
+			return res;
+		}
+		if (StringUtils.isBlank(reason)) {
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"驳回原因", "驳回原因"));
+			return res;
+		}
+		return res.data(orderNewService.operationGuaranteeAudit(orderNo,type,reason));
+	}
+
+
+	/**
 	 * 催款统计列表
 	 * @param newStatus 0旧催款 1新催款
 	 * @param specially 0查看自己 1查看别人

+ 2 - 0
src/main/java/com/goafanti/order/service/OrderNewService.java

@@ -233,4 +233,6 @@ public interface OrderNewService {
 	void pushOrderPublicReleaseCount(String orderNo);
 
 	List<TOrderNew> selectGetAll();
+
+    Object operationGuaranteeAudit(String orderNo, Integer type, String reason);
 }

+ 52 - 14
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -694,6 +694,42 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 		return tOrderNewMapper.selectgetAll();
 	}
 
+	@Override
+	public Object operationGuaranteeAudit(String orderNo, Integer type, String reason) {
+		TOrderNew t= new TOrderNew();
+		TOrderNew t2= checkDeleteSign(orderNo);
+		List<String> aids = new ArrayList<>();
+		StringBuffer str =new StringBuffer();
+		t.setOrderNo(orderNo);
+		TOrderLog tl=new TOrderLog();
+		tl.setAid(TokenManager.getAdminId());
+		tl.setOrderNo(orderNo);
+		tl.setProcess(OrderLogProcess.YXJLTT.getCode());
+		TOrderNewBo order = tOrderNewMapper.getSaleIdByOno(t2.getOrderNo());
+		if (type==0){
+			t.setProcessStatus(ProcessStatus.YPYXY.getCode());
+			t.setOrderStatus(OrderNewState.YBH.getCode());
+			tl.setProcess(OrderLogProcess.YYBZSHBH.getCode());
+			aids.add(t.getSalesmanId());
+		} else if (type==1) {
+			t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
+			tl.setProcess(OrderLogProcess.YYBZSHTG.getCode());
+			if (t.getApproval().equals(ApprovalNewState.TPDSH.getCode())){
+				str.append(order.getOperationGuaranteeName()).append(",");
+			}else if (t.getApproval().equals(ApprovalNewState.DSZDSH.getCode())){
+				List<Admin> admins = adminMapper.selectAdminByRoleType(AFTConstants.APPROVAL_DECISION);
+				admins.forEach(e->{
+					aids.add(e.getId());
+					str.append(e.getName()).append(",");
+				});
+			}
+			t.setExamineName(str.substring(0,str.length()-1));
+		}
+		addOrderLog(tl,reason);
+		pushGeneralSendNoticeAndEmail(aids, type,order, TokenManager.getAdminId(),t2.getApproval());
+		return tOrderNewMapper.updateByPrimaryKeySelective(t);
+	}
+
 	private void pushMaxDuration(TOrderNewBo t,TOrderPublicReleaseCount out ) {
 		BigDecimal res=BigDecimal.ZERO;
 		//新增如果有会员年份,计算金额改为总金额除以年份
@@ -1995,19 +2031,21 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 		}
 		//只有到技术总监是派单,其他都是审核
 		if (order.getProcessStatus()==null||(!order.getProcessStatus().equals(ProcessStatus.YPZXSGLY.getCode()))){
-			str=str.append("[审核]");
-		}else if (order.getProcessStatus().equals(ProcessStatus.YPZXSGLY.getCode())){
-			str=str.append("[派单]");
+			str.append("[审核]");
+		}else {
+			str.append("[派单]");
+		}
+		str.append(approvalType).append(noticeTypeName).append(":");
+		if (tid != null) {
+			str.append("项目编号[").append(tid).append("],");
 		}
-		str=str.append(approvalType).append(noticeTypeName).append(":");
-		if (tid != null) {str=str.append("项目编号[").append(tid).append("],");}
-		str=str.append("客户名称[") .append(order.getUserName()).append("],");
+		str.append("客户名称[") .append(order.getUserName()).append("],");
 		if(StringUtils.isNotBlank(order.getContractNo())) {
-			str=str.append("合同编号[").append(order.getContractNo()).append("],");
+			str.append("合同编号[").append(order.getContractNo()).append("],");
 		}
-		str=str.append("订单编号[").append(order.getOrderNo()).append("],").append("操作人:")
+		str.append("订单编号[").append(order.getOrderNo()).append("],").append("操作人:")
 				.append(a.getDepartmentName()).append("-").append(a.getName()).append("。");
-		String adminIds="";
+		StringBuilder adminIds= new StringBuilder();
 		List<Notice> nlist=new  ArrayList<>();
 		for (String string : alist) {
 			Notice n =new Notice();
@@ -2021,17 +2059,17 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 			Admin admin = adminMapper.selectAllByid(string);
 			//去除邮件重复的
 			if(admin!=null&&admin.getEmail()!=null&&SendEmailUtil.isEmail(admin.getEmail().trim())){
-				if (!adminIds.contains(admin.getEmail())){
-					adminIds+=admin.getEmail()+",";
+				if (!adminIds.toString().contains(admin.getEmail())){
+					adminIds.append(admin.getEmail()).append(",");
 				}
 			}
 		}
 		if(!nlist.isEmpty()) {
 			asyncUtils.addNoticeBatch(nlist);
 		}
-		if (!nlist.isEmpty()&&StringUtils.isNotBlank(adminIds)) {
-			adminIds=adminIds.substring(0, adminIds.length()-1);
-			EmailBo bo=new EmailBo(noticeTypeName,adminIds,str.toString());
+		if (!nlist.isEmpty()&&StringUtils.isNotBlank(adminIds.toString())) {
+			adminIds = new StringBuilder(adminIds.substring(0, adminIds.length() - 1));
+			EmailBo bo=new EmailBo(noticeTypeName, adminIds.toString(),str.toString());
 			asyncUtils.send(bo);
 		}
 	}