demand: TMS系统 - 运单管理 - 运单签收图片上传 - 界面调整 TMS系统 - 运单管理 - 运单批量录入 - 缅甸虚拟单 逻辑优化 TMS/APP系统 - 接单/运单录入/运单修改 / 网点费用申请/批量录入 - 支付方式:到付/现金/其他 判断回款联系人/销售联系人/销售支持 逻辑调整

This commit is contained in:
aike 2026-04-10 13:00:15 +08:00
parent 601b81b140
commit ea77d405ce

View File

@ -1269,55 +1269,41 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
String payee = wb.getPayee(); String payee = wb.getPayee();
if (StringUtils.isNotBlank(payee)) { if (StringUtils.isNotBlank(payee)) {
String payeeName = payee.trim(); String payeeName = payee.trim();
SysUser payeeUser = getEmisStaffByEmpName(payeeName); SysUser payeeCond = new SysUser();
if (payeeUser == null) { payeeCond.setEmpName(payeeName);
throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "回款联系人" + payeeName + "不存在"); payeeCond.setBlPayeeRemark("1");
} payeeCond.setBlOpen("1");
if (!"1".equals(payeeUser.getBlPayeeRemark())) { List<SysUser> payeeUsers = sysUserMapper.selectUserList(payeeCond);
throw new EmisBizError(EmisBizErrorType.FAIL, "回款联系人" + payeeName + "无回款权限"); if (CollectionUtil.isEmpty(payeeUsers)) {
} throw new EmisBizError(EmisBizErrorType.FAIL, "当前回款联系人" + payeeName + "已失效,请更换客户对应的回款联系人");
if (!"1".equals(payeeUser.getBlOpen())) {
throw new EmisBizError(EmisBizErrorType.FAIL, "回款联系人" + payeeName + "未启用");
} }
} }
String salesmen = wb.getSalesmen(); String salesmen = wb.getSalesmen();
if (StringUtils.isNotBlank(salesmen)) { if (StringUtils.isNotBlank(salesmen)) {
String salesmenName = salesmen.trim(); String salesmenName = salesmen.trim();
SysUser salesUser = getEmisStaffByEmpName(salesmenName); SysUser salesCond = new SysUser();
if (salesUser == null) { salesCond.setEmpName(salesmenName);
throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "销售联系人" + salesmenName + "不存在"); salesCond.setBlPayeeRemark("1");
} salesCond.setBlOpen("1");
if (!"1".equals(salesUser.getBlPayeeRemark())) { List<SysUser> salesUsers = sysUserMapper.selectUserList(salesCond);
throw new EmisBizError(EmisBizErrorType.FAIL, "销售联系人" + salesmenName + "无回款权限"); if (CollectionUtil.isEmpty(salesUsers)) {
} throw new EmisBizError(EmisBizErrorType.FAIL, "当前销售联系人" + salesmenName + "已失效,请更换客户对应的销售联系人");
if (!"1".equals(salesUser.getBlOpen())) {
throw new EmisBizError(EmisBizErrorType.FAIL, "销售联系人" + salesmenName + "未启用");
} }
} }
String salesSupportRaw = null; if(wb.getWaybillOther()==null){
if (wb.getWaybillOther() != null) { return;
salesSupportRaw = wb.getWaybillOther().getSalesSupport();
} }
if (StringUtils.isBlank(salesSupportRaw)) { String support = wb.getWaybillOther().getSalesSupport().trim();
salesSupportRaw = wb.getSalesSupport(); if (StringUtils.isNotBlank(support)) {
} SysUser supportCond = new SysUser();
String salesSupportToCheck = StringUtils.trimToEmpty(salesSupportRaw); supportCond.setEmpName(support);
if (StringUtils.isNotBlank(salesSupportToCheck)) { supportCond.setBlOpen("1");
String[] supports = salesSupportToCheck.split("[,,]"); List<SysUser> supportUsers = sysUserMapper.selectUserList(supportCond);
for (String support : supports) { if (CollectionUtil.isEmpty(supportUsers)) {
if (StringUtils.isBlank(support)) { throw new EmisBizError(EmisBizErrorType.FAIL, "当前销售支持" + support + "已失效,请更换客户对应的销售支持");
continue;
}
String supportName = support.trim();
SysUser supportUser = getEmisStaffByEmpName(supportName);
if (supportUser == null) {
throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "销售支持" + supportName + "不存在");
}
if (!"1".equals(supportUser.getBlOpen())) {
throw new EmisBizError(EmisBizErrorType.FAIL, "销售支持" + supportName + "未启用");
}
} }
} }
} }