|
|
@@ -7,6 +7,8 @@ import com.ydtech.core.page.HttpResult;
|
|
|
import com.ydtech.modules.admin.model.SysUser;
|
|
|
import com.ydtech.modules.admin.service.SysUserService;
|
|
|
import com.ydtech.modules.base.controller.BaseController;
|
|
|
+import com.ydtech.modules.esm.model.po.InsOrderSetUserHis;
|
|
|
+import com.ydtech.modules.esm.service.InsOrderSetUserHisService;
|
|
|
import com.ydtech.modules.ins.model.InsTaskHistory;
|
|
|
import com.ydtech.modules.ins.service.InsTaskHistoryService;
|
|
|
import com.ydtech.modules.order.entity.BasePageResult;
|
|
|
@@ -40,11 +42,14 @@ public class OrderTaskPoolsServiceImpl extends BaseController implements OrderTa
|
|
|
private InsTaskHistoryService insTaskHistoryService;
|
|
|
@Autowired
|
|
|
private InsAreaCompanyService insAreaCompanyService;
|
|
|
+ @Autowired
|
|
|
+ private InsOrderSetUserHisService insOrderSetUserHisService;
|
|
|
|
|
|
@Override
|
|
|
public HttpResult query(OrderTaskPoolsVo orderTaskPoolsVo) {
|
|
|
//后线可以查所有,非后线只能查自己代客的
|
|
|
String userId = getUserId();
|
|
|
+ userId="9914D17002";
|
|
|
//查询当前工号是否为后线人员
|
|
|
boolean isBachUser = false;
|
|
|
List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId,"22");
|
|
|
@@ -127,4 +132,95 @@ public class OrderTaskPoolsServiceImpl extends BaseController implements OrderTa
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ /**
|
|
|
+ * @version
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/16 15:36
|
|
|
+ * @Description: 查询子订单信息 改为连表查询
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public HttpResult querySubOrders(OrderTaskPoolsVo orderTaskPoolsVo) {
|
|
|
+ //后线可以查所有,非后线只能查自己代客的
|
|
|
+ String userId = getUserId();
|
|
|
+ //查询当前工号是否为后线人员
|
|
|
+ boolean isBachUser = false;
|
|
|
+ List<SysUser> userList = sysUserService.findAllAgentRoleUser(userId,"22");
|
|
|
+ if(userList!=null && userList.size()>0){
|
|
|
+ isBachUser = true;
|
|
|
+ }
|
|
|
+ BaseMapper<InsOrders> baseMapper = insOrdersService.getBaseMapper();
|
|
|
+ LambdaQueryWrapper<InsOrders> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(!StringUtils.isEmpty(orderTaskPoolsVo.getOrderNo()), InsOrders::getOrderno, orderTaskPoolsVo.getOrderNo())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getQuoteNo()), InsOrders::getQuoteno, orderTaskPoolsVo.getQuoteNo())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getOrderStatus()), InsOrders::getOrderstatus, orderTaskPoolsVo.getOrderStatus())
|
|
|
+ .like(!StringUtils.isEmpty(orderTaskPoolsVo.getLicenseNo()), InsOrders::getLicenseno, orderTaskPoolsVo.getLicenseNo())
|
|
|
+ .like(!StringUtils.isEmpty(orderTaskPoolsVo.getFrameNo()), InsOrders::getFrameno, orderTaskPoolsVo.getFrameNo())
|
|
|
+ .like(!StringUtils.isEmpty(orderTaskPoolsVo.getEngineNo()), InsOrders::getCarinfo, orderTaskPoolsVo.getEngineNo())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getRiskCode()), InsOrders::getProduct, orderTaskPoolsVo.getRiskCode())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getUserid()), InsOrders::getUserid, orderTaskPoolsVo.getUserid())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getUsername()), InsOrders::getUsername, orderTaskPoolsVo.getUsername())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getInsureName()), InsOrders::getInsuredname, orderTaskPoolsVo.getInsureName())
|
|
|
+ .eq(!StringUtils.isEmpty(orderTaskPoolsVo.getAuditId()), InsOrders::getAgreeid, orderTaskPoolsVo.getAuditId())
|
|
|
+ //.eq(!StringUtils.isEmpty(userId), InsOrders::getOperatorid, userId)
|
|
|
+ .likeRight(!StringUtils.isEmpty(orderTaskPoolsVo.getDeptId()), InsOrders::getDeptid, orderTaskPoolsVo.getDeptId())
|
|
|
+ .between(!StringUtils.isEmpty(orderTaskPoolsVo.getStartDate()) && !StringUtils.isEmpty(orderTaskPoolsVo.getEndDate()), InsOrders::getCreatetime, orderTaskPoolsVo.getStartDate(), orderTaskPoolsVo.getEndDate())
|
|
|
+ .between(!StringUtils.isEmpty(orderTaskPoolsVo.getPolicyStartDate()) && !StringUtils.isEmpty(orderTaskPoolsVo.getPolicyEndDate()), InsOrders::getJqstartdate, orderTaskPoolsVo.getPolicyStartDate(), orderTaskPoolsVo.getPolicyEndDate())
|
|
|
+ .between(!StringUtils.isEmpty(orderTaskPoolsVo.getPolicyStartDate()) && !StringUtils.isEmpty(orderTaskPoolsVo.getPolicyEndDate()), InsOrders::getSystartdate, orderTaskPoolsVo.getPolicyStartDate(), orderTaskPoolsVo.getPolicyEndDate());
|
|
|
+ if(!isBachUser){//若非后线角色,只能查自己代客录单的单子
|
|
|
+ wrapper.eq(!StringUtils.isEmpty(userId), InsOrders::getOperatorid, userId);
|
|
|
+ }
|
|
|
+ //保司条件不为空时,拼接保司条件
|
|
|
+ if (org.apache.commons.lang3.StringUtils.isNotEmpty(orderTaskPoolsVo.getInsCompany())) {
|
|
|
+ List<InsAreaCompany> list = insAreaCompanyService.query()
|
|
|
+ .select("DISTINCT orderno")
|
|
|
+ .eq("company_id", orderTaskPoolsVo.getInsCompany())
|
|
|
+ .list();
|
|
|
+ List<String> collect =
|
|
|
+ list.stream().map(InsAreaCompany::getOrderno).distinct().collect(Collectors.toList());
|
|
|
+ wrapper.in(InsOrders::getOrderno, collect);
|
|
|
+ }
|
|
|
+ Page<InsOrders> page = baseMapper.selectPage(new Page<>(orderTaskPoolsVo.getPageNum(), orderTaskPoolsVo.getPageSize()), wrapper);
|
|
|
+ BasePageResult<InsOrders> insOrders = new BasePageResult<>(orderTaskPoolsVo.getPageNum(), page.getSize(), page.getTotal(), page.getPages(), page.getRecords());
|
|
|
+ return HttpResult.ok(insOrders);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * @version
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/16 18:51
|
|
|
+ * @Description: 转发
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public HttpResult forwardingSubOrders(TaskForwardingVo taskForwardingVo,SysUser sysUser) {
|
|
|
+ SysUser sysUserNew = sysUserService.getById(taskForwardingVo.getAuditId());
|
|
|
+ InsOrders insOrders = insOrdersService.existOrder(taskForwardingVo.getOrderNo());
|
|
|
+ //插入轨迹表
|
|
|
+ InsOrderSetUserHis his=new InsOrderSetUserHis(insOrders.getOrderno(), insOrders.getQuoteno(), insOrders.getOperatorid(), taskForwardingVo.getAuditId(), new Date(), sysUser.getId(),"1");
|
|
|
+ insOrderSetUserHisService.addOrUpdate(his);
|
|
|
+ insOrders.setOperatorid(sysUserNew.getId());
|
|
|
+ insOrdersService.updateById(insOrders);
|
|
|
+ return HttpResult.ok("保存成功");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * @version
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/16 18:51
|
|
|
+ * @Description: 收回
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public HttpResult recover(TaskForwardingVo taskForwardingVo) {
|
|
|
+ InsOrders insOrders = insOrdersService.existOrder(taskForwardingVo.getOrderNo());
|
|
|
+
|
|
|
+ LambdaQueryWrapper<InsOrderSetUserHis> wrapper = new LambdaQueryWrapper<>();
|
|
|
+ wrapper.eq(InsOrderSetUserHis::getOrderno,insOrders.getOrderno());
|
|
|
+ wrapper.eq(InsOrderSetUserHis::getStatus,"1");
|
|
|
+ InsOrderSetUserHis one = insOrderSetUserHisService.getOne(wrapper);
|
|
|
+ //设置为已回退
|
|
|
+ one.setStatus("2");
|
|
|
+ insOrderSetUserHisService.addOrUpdate(one);
|
|
|
+ insOrders.setOperatorid(one.getOldOperatorId());
|
|
|
+ insOrdersService.updateById(insOrders);
|
|
|
+ return HttpResult.ok("保存成功");
|
|
|
+ }
|
|
|
}
|