Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
3865202931
  1. 84
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java
  2. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java
  3. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java
  4. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java
  5. 54
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java
  6. 6
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java
  7. 20
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml
  8. 8
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java
  9. 91
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  10. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java
  11. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  12. 6
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  13. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.java
  14. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.xml
  15. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountService.java
  16. 24
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingBillListVo.java
  17. 26
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingFeign.java
  18. 25
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingFeignFallback.java
  19. 7
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingQuery.java
  20. 202
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java
  21. 12
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingMapper.java
  22. 72
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingMapper.xml
  23. 31
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingRest.java
  24. 182
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingService.java
  25. 22
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowProcessMapQuery.java
  26. 5
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java
  27. 5
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java
  28. 12
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  29. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/PrivilegeQuery.java
  30. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.java
  31. 19
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.xml
  32. 8
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java
  33. 29
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java
  34. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java
  35. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml
  36. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java

84
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java

@ -17,6 +17,8 @@ import com.yxt.anrui.base.biz.basedistributorstaff.BaseDistributorStaffService;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempListQuery; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempListQuery;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempListVo; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempListVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingBillListVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
@ -54,8 +56,6 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
@Autowired @Autowired
BaseDistributorMapper baseDistributorMapper; BaseDistributorMapper baseDistributorMapper;
@Autowired @Autowired
private HttpServletRequest request;
@Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@Autowired @Autowired
BaseDistributorStaffService baseDistributorStaffService; BaseDistributorStaffService baseDistributorStaffService;
@ -69,6 +69,8 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@Autowired @Autowired
private CrmCustomerTempFeign crmCustomerTempFeign; private CrmCustomerTempFeign crmCustomerTempFeign;
@Autowired
private FinCompanyInvoicingFeign finCompanyInvoicingFeign;
/** /**
* 经销商分页列表 * 经销商分页列表
@ -326,7 +328,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
baseDistributor.setDisLevelValue("次级"); baseDistributor.setDisLevelValue("次级");
} }
BaseDistributorsListVo baseDistributorsListVo = baseMapper.selByNameAndOrgSid(baseDistributor.getDisName(), baseDistributor.getCreateOrg()); BaseDistributorsListVo baseDistributorsListVo = baseMapper.selByNameAndOrgSid(baseDistributor.getDisName(), baseDistributor.getCreateOrg());
if (baseDistributorsListVo != null){ if (baseDistributorsListVo != null) {
return rb.setMsg("该经销商名称已存在"); return rb.setMsg("该经销商名称已存在");
} }
boolean isSave = save(baseDistributor); boolean isSave = save(baseDistributor);
@ -418,7 +420,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
public ResultBean updateAll(BaseDistributorDto dto, String sid) { public ResultBean updateAll(BaseDistributorDto dto, String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
BaseDistributorsListVo baseDistributorsListVo = baseMapper.selByNameAndOrgSidAndSid(dto.getDisName(), dto.getCreateOrg(), sid); BaseDistributorsListVo baseDistributorsListVo = baseMapper.selByNameAndOrgSidAndSid(dto.getDisName(), dto.getCreateOrg(), sid);
if (baseDistributorsListVo != null){ if (baseDistributorsListVo != null) {
return rb.setMsg("该经销商名称已存在"); return rb.setMsg("该经销商名称已存在");
} }
List<BaseDistributorAppendixDto> yyzzList = dto.getYyzzList(); List<BaseDistributorAppendixDto> yyzzList = dto.getYyzzList();
@ -546,19 +548,19 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
List<BaseDistributorsListVo> baseDistributorListVos = pagging.getRecords(); List<BaseDistributorsListVo> baseDistributorListVos = pagging.getRecords();
for (BaseDistributorsListVo baseDistributorListVo : baseDistributorListVos) { for (BaseDistributorsListVo baseDistributorListVo : baseDistributorListVos) {
String openTickRemarks = ""; String openTickRemarks = "";
if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())){ if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())){ if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())) {
openTickRemarks = baseDistributorListVo.getRegistDetailAddress() + ";"; openTickRemarks = baseDistributorListVo.getRegistDetailAddress() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())) {
openTickRemarks = baseDistributorListVo.getInvoPhone() + ";"; openTickRemarks = baseDistributorListVo.getInvoPhone() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())) {
openTickRemarks = baseDistributorListVo.getInvoBank() + ";"; openTickRemarks = baseDistributorListVo.getInvoBank() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())) {
openTickRemarks = baseDistributorListVo.getInvoBankNum() + ";"; openTickRemarks = baseDistributorListVo.getInvoBankNum() + ";";
} }
baseDistributorListVo.setBillInfo(openTickRemarks); baseDistributorListVo.setBillInfo(openTickRemarks);
@ -572,7 +574,7 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
QueryWrapper<BaseMiddleman> qw = new QueryWrapper<>(); QueryWrapper<BaseMiddleman> qw = new QueryWrapper<>();
if (pagerQuery != null) { if (pagerQuery != null) {
if (StringUtils.isNotBlank(pagerQuery.getOrgPath())) { if (StringUtils.isNotBlank(pagerQuery.getOrgPath())) {
String path = sysStaffOrgFeign.getOrgSidByPath(pagerQuery.getOrgPath()).getData(); String path = sysStaffOrgFeign.getOrgSidByPath(pagerQuery.getOrgPath()).getData();
qw.eq("useOrg", path); qw.eq("useOrg", path);
} else { } else {
if (StringUtils.isNotBlank(pagerQuery.getUserSid())) { if (StringUtils.isNotBlank(pagerQuery.getUserSid())) {
@ -744,8 +746,8 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
orgPath = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); orgPath = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
} }
//验证该分公司的经销商名称是否重复 //验证该分公司的经销商名称是否重复
BaseDistributor baseDistributor1 = baseMapper.selectNameByOne(orgPath,baseDistributor.getDisName()); BaseDistributor baseDistributor1 = baseMapper.selectNameByOne(orgPath, baseDistributor.getDisName());
if(baseDistributor1 != null){ if (baseDistributor1 != null) {
return rb.setMsg("该分公司下已存在该名称的经销商"); return rb.setMsg("该分公司下已存在该名称的经销商");
} }
//查询机构信息 //查询机构信息
@ -767,8 +769,8 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
} }
BeanUtil.copyProperties(dto, baseDistributor); BeanUtil.copyProperties(dto, baseDistributor);
//查询 //查询
BaseDistributor baseDistributor1 = baseMapper.selectOneBy(baseDistributor.getUseOrg(),baseDistributor.getDisName(),sid); BaseDistributor baseDistributor1 = baseMapper.selectOneBy(baseDistributor.getUseOrg(), baseDistributor.getDisName(), sid);
if(baseDistributor1 != null){ if (baseDistributor1 != null) {
return rb.setMsg("该分公司下已存在该名称的经销商"); return rb.setMsg("该分公司下已存在该名称的经销商");
} }
baseMapper.updateById(baseDistributor); baseMapper.updateById(baseDistributor);
@ -866,25 +868,29 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
public ResultBean<List<BaseDistributorListVo>> selectAllDisList(String orgSid, String staffSid) { public ResultBean<List<BaseDistributorListVo>> selectAllDisList(String orgSid, String staffSid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
List<BaseDistributorListVo> baseDistributorListVos = baseMapper.selectAllDisList(orgSid); List<FinCompanyInvoicingBillListVo> finCompanyInvoicingBillListVos = finCompanyInvoicingFeign.qySelByUseOrgSid(orgSid);
for (BaseDistributorListVo baseDistributorListVo : baseDistributorListVos) { List<BaseDistributorListVo> baseDistributorListVos = new ArrayList<>();
for (FinCompanyInvoicingBillListVo finCompanyInvoicingBillListVo : finCompanyInvoicingBillListVos) {
BaseDistributorListVo baseDistributorListVo = new BaseDistributorListVo();
BeanUtil.copyProperties(finCompanyInvoicingBillListVo, baseDistributorListVo);
String openTickRemarks = ""; String openTickRemarks = "";
if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())){ if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())){ if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistDetailAddress() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistDetailAddress() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoPhone() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoPhone() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBank() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBank() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())){ if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBankNum() + ";"; openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBankNum() + ";";
} }
baseDistributorListVo.setOpenTickRemarks(openTickRemarks); baseDistributorListVo.setOpenTickRemarks(openTickRemarks);
baseDistributorListVos.add(baseDistributorListVo);
} }
CrmCustomerTempListQuery crmCustomerTempListQuery = new CrmCustomerTempListQuery(); CrmCustomerTempListQuery crmCustomerTempListQuery = new CrmCustomerTempListQuery();
crmCustomerTempListQuery.setStaffSid(staffSid); crmCustomerTempListQuery.setStaffSid(staffSid);
@ -911,34 +917,34 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
public ResultBean<List<AppDisAndCustm>> invoiceName(String userSid, String orgPath, String search) { public ResultBean<List<AppDisAndCustm>> invoiceName(String userSid, String orgPath, String search) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
List<BaseDistributorListVo> baseDistributorListVos = new ArrayList<>(); List<FinCompanyInvoicingBillListVo> finCompanyInvoicingBillListVos = new ArrayList<>();
if (StringUtils.isBlank(search)){ if (StringUtils.isBlank(search)) {
baseDistributorListVos = baseMapper.selectAllDisList(useOrgSid); finCompanyInvoicingBillListVos = finCompanyInvoicingFeign.qySelByUseOrgSid(useOrgSid);
}else { } else {
baseDistributorListVos = baseMapper.selectAppAllDisList(useOrgSid,search); finCompanyInvoicingBillListVos = finCompanyInvoicingFeign.qyAppSelByUseOrgSid(useOrgSid, search);
} }
List<AppDisAndCustm> appDisAndCustms = new ArrayList<>(); List<AppDisAndCustm> appDisAndCustms = new ArrayList<>();
for (BaseDistributorListVo baseDistributorListVo : baseDistributorListVos) { for (FinCompanyInvoicingBillListVo finCompanyInvoicingBillListVo : finCompanyInvoicingBillListVos) {
AppDisAndCustm appDisAndCustm = new AppDisAndCustm(); AppDisAndCustm appDisAndCustm = new AppDisAndCustm();
Extra extra = new Extra(); Extra extra = new Extra();
String openTickRemarks = ""; String openTickRemarks = "";
if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())){ if (StringUtils.isNotBlank(openTickRemarks + finCompanyInvoicingBillListVo.getRegistNum())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";"; openTickRemarks = openTickRemarks + finCompanyInvoicingBillListVo.getRegistNum() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())){ if (StringUtils.isNotBlank(finCompanyInvoicingBillListVo.getRegistDetailAddress())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistDetailAddress() + ";"; openTickRemarks = openTickRemarks + finCompanyInvoicingBillListVo.getRegistDetailAddress() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())){ if (StringUtils.isNotBlank(finCompanyInvoicingBillListVo.getInvoPhone())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoPhone() + ";"; openTickRemarks = openTickRemarks + finCompanyInvoicingBillListVo.getInvoPhone() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())){ if (StringUtils.isNotBlank(finCompanyInvoicingBillListVo.getInvoBank())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBank() + ";"; openTickRemarks = openTickRemarks + finCompanyInvoicingBillListVo.getInvoBank() + ";";
} }
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())){ if (StringUtils.isNotBlank(finCompanyInvoicingBillListVo.getInvoBankNum())) {
openTickRemarks = openTickRemarks + baseDistributorListVo.getInvoBankNum() + ";"; openTickRemarks = openTickRemarks + finCompanyInvoicingBillListVo.getInvoBankNum() + ";";
} }
appDisAndCustm.setId(baseDistributorListVo.getSid()); appDisAndCustm.setId(finCompanyInvoicingBillListVo.getSid());
appDisAndCustm.setDictValue(baseDistributorListVo.getName()); appDisAndCustm.setDictValue(finCompanyInvoicingBillListVo.getName());
extra.setSid(appDisAndCustm.getId()); extra.setSid(appDisAndCustm.getId());
extra.setName(appDisAndCustm.getDictValue()); extra.setName(appDisAndCustm.getDictValue());
extra.setInfo(openTickRemarks); extra.setInfo(openTickRemarks);

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java

@ -130,7 +130,7 @@ public interface BusDeliveredApplyFeign {
@ResponseBody @ResponseBody
public ResultBean<BusDeliveredApplyDetailVo> fetchDetailsBySid(@RequestBody BusDeliveredApplyDetailQuery query); public ResultBean<BusDeliveredApplyDetailVo> fetchDetailsBySid(@RequestBody BusDeliveredApplyDetailQuery query);
@ApiOperation("验证是否可出库") /* @ApiOperation("验证是否可出库")
@PostMapping("/checkingApply") @PostMapping("/checkingApply")
// @ResponseBody // @ResponseBody
@ApiIgnore @ApiIgnore
@ -140,17 +140,17 @@ public interface BusDeliveredApplyFeign {
// @ResponseBody // @ResponseBody
@PostMapping(value = "examine") @PostMapping(value = "examine")
@ApiIgnore @ApiIgnore
ResultBean examine(@RequestBody BusDeExamineQuery busDeExamineQuery); ResultBean examine(@RequestBody BusDeExamineQuery busDeExamineQuery);*/
@ApiOperation("出库审核分页列表") @ApiOperation("出库审核分页列表")
@PostMapping("/listExaminePage") @PostMapping("/listExaminePage")
@ResponseBody @ResponseBody
public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(@RequestBody PagerQuery<BusDeliveredExamineQuery> pq); public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(@RequestBody PagerQuery<BusDeliveredExamineQuery> pq);
@ApiOperation("提交出库审批流程") /* @ApiOperation("提交出库审批流程")
@PostMapping("/submitDeliveredApply") @PostMapping("/submitDeliveredApply")
@ResponseBody @ResponseBody
public ResultBean submitDeliveredApply(@Valid @RequestBody SubmitDeliveredApplyDto dto); public ResultBean submitDeliveredApply(@Valid @RequestBody SubmitDeliveredApplyDto dto);*/
@ApiOperation(value = "办理(同意)") @ApiOperation(value = "办理(同意)")

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeignFallback.java

@ -86,7 +86,7 @@ public class BusDeliveredApplyFeignFallback implements BusDeliveredApplyFeign {
return rb.setMsg("接口anrui-buscenter/busdeliveredapply/fetchDetailsBySid无法访问"); return rb.setMsg("接口anrui-buscenter/busdeliveredapply/fetchDetailsBySid无法访问");
} }
@Override /* @Override
public ResultBean checkingApply(CheckingApplyQuery query) { public ResultBean checkingApply(CheckingApplyQuery query) {
return null; return null;
} }
@ -94,17 +94,17 @@ public class BusDeliveredApplyFeignFallback implements BusDeliveredApplyFeign {
@Override @Override
public ResultBean examine(BusDeExamineQuery busDeExamineQuery) { public ResultBean examine(BusDeExamineQuery busDeExamineQuery) {
return null; return null;
} }*/
@Override @Override
public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(PagerQuery<BusDeliveredExamineQuery> pq) { public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(PagerQuery<BusDeliveredExamineQuery> pq) {
return null; return null;
} }
@Override /* @Override
public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) { public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) {
return null; return null;
} }*/
@Override @Override
public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) { public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) {

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/GetNodeQuery.java

@ -17,5 +17,7 @@ public class GetNodeQuery implements Query {
@ApiModelProperty(value = "分支字段及业务字段") @ApiModelProperty(value = "分支字段及业务字段")
private Map<String, Object> formVariables; private Map<String, Object> formVariables;
@ApiModelProperty("业务sid")
private String businessSid;
} }

54
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java

@ -47,6 +47,7 @@ import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationFeign; import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationFeign;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo; import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign; import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
@ -1667,7 +1668,6 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getUserSid()); bv.setUserSid(dto.getUserSid());
bv.setFormVariables(variables);
//若app移动端有此功能,则传递appMap参数 //若app移动端有此功能,则传递appMap参数
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
@ -1680,6 +1680,12 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
} }
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.ARREARSCARRYVEHICLE.getProDefId()); bv.setModelId(ProcDefEnum.ARREARSCARRYVEHICLE.getProDefId());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
@ -1791,7 +1797,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
} else { } else {
variables.put("jinrong", false); variables.put("jinrong", false);
} }
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables); bv.setFormVariables(variables);
//===============================================
bv.setOrgSidPath(busArrearsCarryVehicleApply.getOrgSidPath()); bv.setOrgSidPath(busArrearsCarryVehicleApply.getOrgSidPath());
bv.setModelId(busArrearsCarryVehicleApply.getProcDefId()); bv.setModelId(busArrearsCarryVehicleApply.getProcDefId());
if ("Activity_1dsv0io".equals(bv.getTaskDefKey()) && StringUtils.isNotBlank(busArrearsCarryVehicleApply.getIsFinance())) { if ("Activity_1dsv0io".equals(bv.getTaskDefKey()) && StringUtils.isNotBlank(busArrearsCarryVehicleApply.getIsFinance())) {
@ -1805,6 +1818,7 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
} }
if (bv.getTaskId().equals(busArrearsCarryVehicleApply.getTaskId())) { if (bv.getTaskId().equals(busArrearsCarryVehicleApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -1891,7 +1905,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", bv.getBusinessSid()); appMap.put("sid", bv.getBusinessSid());
variables.put("app", appMap); variables.put("app", appMap);
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables); bv.setFormVariables(variables);
//===============================================
bv.setOrgSidPath(busArrearsCarryVehicleApply.getOrgSidPath()); bv.setOrgSidPath(busArrearsCarryVehicleApply.getOrgSidPath());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
@ -1975,7 +1996,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
} }
appMap.put("sid", bv.getBusinessSid()); appMap.put("sid", bv.getBusinessSid());
map.put("app", appMap); map.put("app", appMap);
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(map);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
map = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(map); bv.setFormVariables(map);
//===============================================
bv.setModelId(busArrearsCarryVehicleApply.getProcDefId()); bv.setModelId(busArrearsCarryVehicleApply.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
@ -1996,6 +2024,14 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
} }
appMap.put("sid", bv.getBusinessSid()); appMap.put("sid", bv.getBusinessSid());
map.put("app", appMap); map.put("app", appMap);
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(map);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
map = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(map);
//===============================================
bv.setFormVariables(map); bv.setFormVariables(map);
bv.setModelId(busArrearsCarryVehicleApply.getProcDefId()); bv.setModelId(busArrearsCarryVehicleApply.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
@ -2026,6 +2062,13 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", query.getBusinessSid()); appMap.put("sid", query.getBusinessSid());
variables.put("app", appMap); variables.put("app", appMap);
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//===============================================
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -2048,7 +2091,6 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId); ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
String nextName = listResultBean.getData().get(0).getName_(); String nextName = listResultBean.getData().get(0).getName_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
if ("发起申请".equals(nextName)) { if ("发起申请".equals(nextName)) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
baseVehicleTempstateFeign.delByBusSid(busArrearsCarryVehicleApply.getSid()); baseVehicleTempstateFeign.delByBusSid(busArrearsCarryVehicleApply.getSid());
@ -2083,13 +2125,19 @@ public class BusArrearsCarryVehicleApplyService extends MybatisBaseService<BusAr
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", query.getBusinessSid()); appMap.put("sid", query.getBusinessSid());
variables.put("app", appMap); variables.put("app", appMap);
//=================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busArrearsCarryVehicleApply.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busArrearsCarryVehicleApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//===============================================
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg("操作失败!"); return rb.setMsg("操作失败!");
} }
String nextNodeUserSids = resultBean.getData().getNextNodeUserSids(); String nextNodeUserSids = resultBean.getData().getNextNodeUserSids();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
busArrearsCarryVehicleApply = fetchBySid(query.getBusinessSid()); busArrearsCarryVehicleApply = fetchBySid(query.getBusinessSid());
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(busArrearsCarryVehicleApply.getProcInstId()); ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(busArrearsCarryVehicleApply.getProcInstId());
String nextName = listResultBean.getData().get(0).getName_(); String nextName = listResultBean.getData().get(0).getName_();

6
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.java

@ -104,4 +104,10 @@ public interface BusDeliveredApplyMapper extends BaseMapper<BusDeliveredApply> {
List<String> selectVinNo(@Param("contractId") String contractId, @Param("list") List<String> vinSid); List<String> selectVinNo(@Param("contractId") String contractId, @Param("list") List<String> vinSid);
String selectNum(String billNo); String selectNum(String billNo);
List<String> selectByContractNoToVin(String contractId);
List<String> selectByContractNoToVinSid(@Param("contractNo") String contractId, @Param("list") List<String> vinSid);
int selectNumByContractNo(String contractId);
} }

20
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml

@ -113,4 +113,24 @@
order by billNo desc order by billNo desc
limit 1 limit 1
</select> </select>
<select id="selectByContractNoToVin" resultType="java.lang.String">
select busVinSid from bus_delivered where contractNo = #{contractId} and state = 0;
</select>
<select id="selectByContractNoToVinSid" resultType="java.lang.String">
select bv.sid
from bus_delivered bd
left join bus_sales_order_vehicle bv on bv.sid = bd.busVinSid
where bd.contractNo = #{contractNo}
and bv.linkSid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</select>
<select id="selectNumByContractNo" resultType="int">
select sum(bddd.giveNum) from bus_delivered_details_discount bddd left join bus_delivered bd on bd.sid = bddd.applySid
where contractNo = #{contractId} and (bd.state =2 or bd.state = 3)
</select>
</mapper> </mapper>

8
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyRest.java

@ -147,7 +147,7 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign {
return vo; return vo;
} }
@Override /* @Override
public ResultBean checkingApply(CheckingApplyQuery query) { public ResultBean checkingApply(CheckingApplyQuery query) {
return busDeliveredApplyService.checkingApply(query); return busDeliveredApplyService.checkingApply(query);
} }
@ -155,7 +155,7 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign {
@Override @Override
public ResultBean examine(BusDeExamineQuery busDeExamineQuery) { public ResultBean examine(BusDeExamineQuery busDeExamineQuery) {
return busDeliveredApplyService.examine(busDeExamineQuery); return busDeliveredApplyService.examine(busDeExamineQuery);
} }*/
@Override @Override
public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(PagerQuery<BusDeliveredExamineQuery> pq) { public ResultBean<PagerVo<BusDeliveredApplyVo>> listExaminePage(PagerQuery<BusDeliveredExamineQuery> pq) {
@ -164,10 +164,10 @@ public class BusDeliveredApplyRest implements BusDeliveredApplyFeign {
return rb.success().setData(pv); return rb.success().setData(pv);
} }
@Override /* @Override
public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) { public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) {
return busDeliveredApplyService.submitDeliveredApply(dto); return busDeliveredApplyService.submitDeliveredApply(dto);
} }*/
@Override @Override
public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) { public ResultBean submitAppDeliveredApply(AppSubmitDeliveredApplyDto dto) {

91
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java

@ -86,6 +86,7 @@ import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedRec
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo; import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo; import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.InvoiceVo; import com.yxt.anrui.fin.api.finvehicleinvoice.InvoiceVo;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
@ -472,7 +473,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
* @param busDeExamineQuery 条件 * @param busDeExamineQuery 条件
* @return * @return
*/ */
public ResultBean examine(BusDeExamineQuery busDeExamineQuery) { /* public ResultBean examine(BusDeExamineQuery busDeExamineQuery) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
int state = busDeExamineQuery.getState(); int state = busDeExamineQuery.getState();
if (state == 4) { if (state == 4) {
@ -498,9 +499,9 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
baseMapper.updateState(busDeExamineQuery.getSid(), state); baseMapper.updateState(busDeExamineQuery.getSid(), state);
} }
return rb.success().setMsg("审核操作成功"); return rb.success().setMsg("审核操作成功");
} }*/
public ResultBean checkingApply(CheckingApplyQuery query) { /* public ResultBean checkingApply(CheckingApplyQuery query) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
//待出库车辆点击出库申请 //待出库车辆点击出库申请
BusDeliveredApplyDetailVo busDeliveredApplyDetailVo = query.getDetailVo(); BusDeliveredApplyDetailVo busDeliveredApplyDetailVo = query.getDetailVo();
@ -516,7 +517,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
return rb.setMsg("选择的必须为同一合同编号的车辆"); return rb.setMsg("选择的必须为同一合同编号的车辆");
} }
return rb.success(); return rb.success();
} }*/
/** /**
* 提交审批流程 * 提交审批流程
@ -524,7 +525,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
* @param dto * @param dto
* @return * @return
*/ */
public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) { /* public ResultBean submitDeliveredApply(SubmitDeliveredApplyDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
String orgSidPath = dto.getOrgPath(); String orgSidPath = dto.getOrgPath();
BusDeliveredApply busDeliveredApply = fetchBySid(dto.getSid()); BusDeliveredApply busDeliveredApply = fetchBySid(dto.getSid());
@ -541,6 +542,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());
} }
String sid = resultBean.getData(); String sid = resultBean.getData();
busDeliveredApply = fetchBySid(sid);
String businessSid = resultBean.getData(); String businessSid = resultBean.getData();
//创建BusinessVariables实体对象 //创建BusinessVariables实体对象
BusinessVariables bv = new BusinessVariables(); BusinessVariables bv = new BusinessVariables();
@ -554,9 +556,14 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getUserSid()); bv.setUserSid(dto.getUserSid());
bv.setFormVariables(variables);
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busDeliveredApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
@ -587,7 +594,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
return complete(bv); return complete(bv);
} }
return rb; return rb;
} }*/
/** /**
* 更新流程相关的状态 * 更新流程相关的状态
@ -637,6 +644,21 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
BusDeliveredApply busDeliveredApply = fetchBySid(bv.getBusinessSid()); BusDeliveredApply busDeliveredApply = fetchBySid(bv.getBusinessSid());
bv.setOrgSidPath(busDeliveredApply.getOrgSidPath()); bv.setOrgSidPath(busDeliveredApply.getOrgSidPath());
Map<String,Object> variables = new HashMap<>();
//若app移动端有此功能,则传递appMap参数
Map<String, Object> appMap = new HashMap<>();
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
appMap.put("outboundSid", bv.getBusinessSid());
appMap.put("contractId", busDeliveredApply.getContractNo());
appMap.put("contract_id", busDeliveredApply.getContractNo());
variables.put("app", appMap);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busDeliveredApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
bv.setModelId(busDeliveredApply.getProcDefId());
if (bv.getTaskId().equals(busDeliveredApply.getTaskId())) { if (bv.getTaskId().equals(busDeliveredApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -1036,7 +1058,12 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
ResultBean<List<GetNodeVo>> rb = new ResultBean<>(); ResultBean<List<GetNodeVo>> rb = new ResultBean<>();
BusinessVariables bv = new BusinessVariables(); BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); if(StringUtils.isNotBlank(query.getBusinessSid())){
BusDeliveredApply busDeliveredApply = fetchBySid(query.getBusinessSid());
bv.setModelId(busDeliveredApply.getProcDefId());
}else{
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId());
}
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
@ -1053,7 +1080,12 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail(); ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail();
BusinessVariables bv = new BusinessVariables(); BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); if(StringUtils.isNotBlank(query.getBusinessSid())){
BusDeliveredApply busDeliveredApply = fetchBySid(query.getBusinessSid());
bv.setModelId(busDeliveredApply.getProcDefId());
}else{
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId());
}
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
@ -1085,6 +1117,11 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
appMap.put("contractId", busDeliveredApply.getContractNo()); appMap.put("contractId", busDeliveredApply.getContractNo());
appMap.put("contract_id", busDeliveredApply.getContractNo()); appMap.put("contract_id", busDeliveredApply.getContractNo());
variables.put("app", appMap); variables.put("app", appMap);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(busDeliveredApply.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busDeliveredApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -1093,7 +1130,6 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
baseMapper.updateStateBySid(1, query.getBusinessSid()); baseMapper.updateStateBySid(1, query.getBusinessSid());
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
//更新业务中的流程相关的参数 //更新业务中的流程相关的参数
updateFlowFiled(map); updateFlowFiled(map);
busDeliveredApply = fetchBySid(query.getBusinessSid()); busDeliveredApply = fetchBySid(query.getBusinessSid());
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(busDeliveredApply.getProcInstId()); ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(busDeliveredApply.getProcInstId());
@ -1698,6 +1734,30 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
} }
} }
} }
boolean isTrue = false;
//若为本销售订单中最后一批车辆出库,则需要判断是否还有未赠送的套餐,如果存在则不允许提交
//查询该合同的销售订单的车辆sid集合
List<String> busSidList = busSalesOrderService.selectByContractNoToVin(dto.getContractId());
//查询已出库或出库审批中的车辆sid集合
List<String> applyBusSidList = baseMapper.selectByContractNoToVin(dto.getContractId());
//所有车辆与已出库或审批中的车辆集合查询出差集
busSidList.removeAll(applyBusSidList);
//根据合同编号以及车辆sid查询busVinSid
List<String> busVinSidList = baseMapper.selectByContractNoToVinSid(dto.getContractId(),vinSid);
busSidList.removeAll(busVinSidList);
busVinSidList.removeAll(Collections.singleton(null));
if(busVinSidList.isEmpty()){
isTrue = true;
}
//是否是最后一批出库车辆
if(isTrue){
//是否存在未赠送的套餐,如果存在则不允许提交
int num = baseMapper.selectNumByContractNo(dto.getContractId());
int orderNum = busSalesOrderDiscountService.selectByContractNo(dto.getContractId());
if(orderNum>num){
return rb.setMsg("本次出库为该订单最后一批出库,还存在未赠送的套餐,不允许提交");
}
}
} else { } else {
return rb.setMsg("请选择要出库的车辆"); return rb.setMsg("请选择要出库的车辆");
} }
@ -1732,7 +1792,8 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getUserSid()); bv.setUserSid(dto.getUserSid());
bv.setFormVariables(variables); //流程定义id
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId());
//若app移动端有此功能,则传递appMap参数 //若app移动端有此功能,则传递appMap参数
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
@ -1740,8 +1801,12 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
appMap.put("contractId", busDeliveredApply.getContractNo()); appMap.put("contractId", busDeliveredApply.getContractNo());
appMap.put("contract_id", busDeliveredApply.getContractNo()); appMap.put("contract_id", busDeliveredApply.getContractNo());
variables.put("app", appMap); variables.put("app", appMap);
//流程定义id FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId()); flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(busDeliveredApply.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java

@ -207,4 +207,6 @@ public interface BusSalesOrderMapper extends BaseMapper<BusSalesOrder> {
List<String> selectBusinessSid(@Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid,@Param(Constants.WRAPPER) QueryWrapper<BaseVehicle> qw); List<String> selectBusinessSid(@Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid,@Param(Constants.WRAPPER) QueryWrapper<BaseVehicle> qw);
List<String> selectQKBusinessSid(@Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid); List<String> selectQKBusinessSid(@Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid);
List<String> selectByContractNoToVin(String contractId);
} }

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml

@ -413,4 +413,9 @@
select sid select sid
from bus_sales_order where createBySid = #{userSid} and useOrgSid = #{useOrgSid} and nodeState = '已办结' and financePlan = '2' from bus_sales_order where createBySid = #{userSid} and useOrgSid = #{useOrgSid} and nodeState = '已办结' and financePlan = '2'
</select> </select>
<select id="selectByContractNoToVin" resultType="java.lang.String">
select bv.sid from bus_sales_order_vehicle bv left join bus_sales_order bo on bo.sid = bv.salesOrderSid
where bo.contractNo = #{contractId}
</select>
</mapper> </mapper>

6
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -4549,8 +4549,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//用户sid //用户sid
bv.setUserSid(busSalesOrder.get().getCreateBySid()); bv.setUserSid(busSalesOrder.get().getCreateBySid());
bv.setFormVariables(variables); bv.setFormVariables(variables);
//流程定义id
bv.setModelId(ProcDefEnum.SALESORDER.getProDefId());
String nextNodeUserSids_ = sysOrganization.getManagerSid(); String nextNodeUserSids_ = sysOrganization.getManagerSid();
bv.setNextNodeUserSids(nextNodeUserSids_); bv.setNextNodeUserSids(nextNodeUserSids_);
//流程定义id //流程定义id
@ -6488,4 +6486,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
} }
return rb.success().setData(busSids); return rb.success().setData(busSids);
} }
public List<String> selectByContractNoToVin(String contractId) {
return baseMapper.selectByContractNoToVin(contractId);
}
} }

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.java

@ -117,4 +117,6 @@ public interface BusSalesOrderDiscountMapper extends BaseMapper<BusSalesOrderDis
List<BusSalesOrderDiscount> selectListByContractNo(String contractNo); List<BusSalesOrderDiscount> selectListByContractNo(String contractNo);
List<BusSalesOrderDiscount> selectBySaleOrderSid(@Param("saleOrderSid") String saleOrderSid); List<BusSalesOrderDiscount> selectBySaleOrderSid(@Param("saleOrderSid") String saleOrderSid);
int selectByContractNo(String contractId);
} }

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.xml

@ -70,4 +70,9 @@
resultType="com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscount"> resultType="com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscount">
select * from bus_sales_order_discount where salesOrderSid = #{saleOrderSid} select * from bus_sales_order_discount where salesOrderSid = #{saleOrderSid}
</select> </select>
<select id="selectByContractNo" resultType="int">
select sum(bddd.num) from bus_sales_order_discount bddd left join bus_sales_order bo on bo.sid = bddd.salesOrderSid
where bo.contractNo = #{contractId}
</select>
</mapper> </mapper>

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountService.java

@ -216,4 +216,8 @@ public class BusSalesOrderDiscountService extends MybatisBaseService<BusSalesOrd
public List<BusSalesOrderDiscount> selectBySaleOrderSid(String saleOrderSid) { public List<BusSalesOrderDiscount> selectBySaleOrderSid(String saleOrderSid) {
return baseMapper.selectBySaleOrderSid(saleOrderSid); return baseMapper.selectBySaleOrderSid(saleOrderSid);
} }
public int selectByContractNo(String contractId) {
return baseMapper.selectByContractNo(contractId);
}
} }

24
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingBillListVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.fin.api.fincompanyinvoicing;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/9/26 14:56
* @Description
*/
@Data
public class FinCompanyInvoicingBillListVo implements Vo {
private String name;
private String sid;
private String registNum;//税号
private String registDetailAddress;//地址
private String invoPhone;//开票联系电话
private String invoBank;//开票开户行
private String invoBankNum;//开票银行账号
private String openTickRemarks;
}

26
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingFeign.java

@ -25,6 +25,8 @@
*********************************************************/ *********************************************************/
package com.yxt.anrui.fin.api.fincompanyinvoicing; package com.yxt.anrui.fin.api.fincompanyinvoicing;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceQuery;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -91,5 +93,29 @@ public interface FinCompanyInvoicingFeign {
@ResponseBody @ResponseBody
ResultBean<List<InvoicingVo>> selectInvoingList(@RequestParam("busSid")String busSid); ResultBean<List<InvoicingVo>> selectInvoingList(@RequestParam("busSid")String busSid);
/*************************************************企业开票信息管理***************************************************/
@ApiOperation("企业开票信息管理分页列表")
@PostMapping("/qyListPage")
public ResultBean<PagerVo<FinCompanyInvoicingVo>> qyListPage(@RequestBody PagerQuery<FinCompanyInvoicingQuery> pq);
@ApiOperation("企业开票信息管理根据名称模糊检索")
@PostMapping("/qyFetchListByName")
@ResponseBody
public ResultBean<List<FinCompanyInvoicingDetailsVo>> qyFetchListByName(@RequestParam("name") String name);
@ApiOperation("企业开票信息管理新增或保存")
@PostMapping("/qySaveOrUpdate")
@ResponseBody
public ResultBean qySaveOrUpdate(@RequestBody FinCompanyInvoicingDto dto);
@ApiOperation("企业开票信息管理根据分公司sid查询不带采购系统的开票信息")
@PostMapping("/qySelByUseOrgSid")
@ResponseBody
List<FinCompanyInvoicingBillListVo> qySelByUseOrgSid(@RequestParam("orgSid") String orgSid);
@ApiOperation("企业开票信息管理移动端根据分公司sid查询不带采购系统的开票信息")
@PostMapping("/qyAppSelByUseOrgSid")
@ResponseBody
List<FinCompanyInvoicingBillListVo> qyAppSelByUseOrgSid(@RequestParam("useOrgSid") String useOrgSid,@RequestParam("search") String search);
} }

25
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingFeignFallback.java

@ -84,4 +84,29 @@ public class FinCompanyInvoicingFeignFallback implements FinCompanyInvoicingFeig
public ResultBean<List<InvoicingVo>> selectInvoingList(String busSid) { public ResultBean<List<InvoicingVo>> selectInvoingList(String busSid) {
return null; return null;
} }
@Override
public ResultBean<PagerVo<FinCompanyInvoicingVo>> qyListPage(PagerQuery<FinCompanyInvoicingQuery> pq) {
return null;
}
@Override
public ResultBean<List<FinCompanyInvoicingDetailsVo>> qyFetchListByName(String name) {
return null;
}
@Override
public ResultBean qySaveOrUpdate(FinCompanyInvoicingDto dto) {
return null;
}
@Override
public List<FinCompanyInvoicingBillListVo> qySelByUseOrgSid(String orgSid) {
return null;
}
@Override
public List<FinCompanyInvoicingBillListVo> qyAppSelByUseOrgSid(String useOrgSid, String search) {
return null;
}
} }

7
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingQuery.java

@ -55,4 +55,11 @@ public class FinCompanyInvoicingQuery implements Query {
private String orgSidPath; // 组织全路径 private String orgSidPath; // 组织全路径
@ApiModelProperty("采购系统sid") @ApiModelProperty("采购系统sid")
private String purchaseSystemSid; // 采购系统sid private String purchaseSystemSid; // 采购系统sid
@ApiModelProperty("菜单sid")
private String menuSid;
@ApiModelProperty("菜单url")
private String menuUrl;
@ApiModelProperty("用户sid")
private String userSid;
} }

202
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java

@ -32,29 +32,25 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basedistributor.BaseDistributorFeign; import com.yxt.anrui.base.api.basedistributor.BaseDistributorFeign;
import com.yxt.anrui.base.api.basedistributor.BaseDistributorListVo; import com.yxt.anrui.base.api.basedistributor.BaseDistributorListVo;
import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase;
import com.yxt.anrui.base.api.baseinternalpurchase.flow.GetNodeVo; import com.yxt.anrui.base.api.baseinternalpurchase.flow.GetNodeVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo; import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign; import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
import com.yxt.anrui.base.api.basetrailer.TrailerVo; import com.yxt.anrui.base.api.basetrailer.TrailerVo;
import com.yxt.anrui.base.api.basetrailer.TraliveredVo; import com.yxt.anrui.base.api.basetrailer.TraliveredVo;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicleappendix.BaseVehicleAppendixFeign; import com.yxt.anrui.base.api.basevehicleappendix.BaseVehicleAppendixFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo;
import com.yxt.anrui.base.api.commonappendix.*; import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.base.api.commoncontract.CommonContract; import com.yxt.anrui.base.api.commoncontract.CommonContract;
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign; import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.base.api.commoncontract.CommonContractVo;
import com.yxt.anrui.base.common.enums.BillTypeEnum; import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule; import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo; import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderIsDTKPJVo;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPrice; import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPrice;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
@ -70,16 +66,14 @@ import com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicle; import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicle;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto; import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo; import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailed;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDto; import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDto;
import com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicService;
import com.yxt.anrui.fin.biz.finbillfile.FinBillFileService; import com.yxt.anrui.fin.biz.finbillfile.FinBillFileService;
import com.yxt.anrui.fin.biz.finbilltrailer.FinBillTrailerService; import com.yxt.anrui.fin.biz.finbilltrailer.FinBillTrailerService;
import com.yxt.anrui.fin.biz.finbillvehicle.FinBillVehicleService; import com.yxt.anrui.fin.biz.finbillvehicle.FinBillVehicleService;
import com.yxt.anrui.fin.biz.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedService; import com.yxt.anrui.fin.biz.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedService;
import com.yxt.anrui.fin.biz.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedService; import com.yxt.anrui.fin.biz.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedService;
import com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceService; import com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceService;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign; import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
@ -104,7 +98,6 @@ import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo; import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery; import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.kafka.common.metrics.stats.Sum;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -571,6 +564,14 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
//判断是否是高低开,若是,则isTrue网关参数为true=============添加 //判断是否是高低开,若是,则isTrue网关参数为true=============添加
@ -693,7 +694,6 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。 //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>(); Map<String, Object> variables = new HashMap<>();
bv.setFormVariables(variables);
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
if ("003".equals(finBillApplication.getBillStateKey())) { if ("003".equals(finBillApplication.getBillStateKey())) {
@ -707,6 +707,15 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
if (data != null) { if (data != null) {
variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney())); variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney()));
} }
//========================================
finBillApplication = fetchBySid(query.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -719,7 +728,6 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。 //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>(); Map<String, Object> variables = new HashMap<>();
bv.setFormVariables(variables);
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
if ("003".equals(finBillApplication.getBillStateKey())) { if ("003".equals(finBillApplication.getBillStateKey())) {
@ -733,6 +741,15 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
if (data != null) { if (data != null) {
variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney())); variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney()));
} }
//========================================
finBillApplication = fetchBySid(query.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -767,6 +784,14 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
if (data != null) { if (data != null) {
variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney())); variables.put("isAdj", !data.getSingleFinalPrice().equals(finBillApplication.getOneBillMoney()));
} }
//========================================
finBillApplication = fetchBySid(query.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -1248,7 +1273,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getUserSid()); bv.setUserSid(dto.getUserSid());
bv.setFormVariables(variables);
//判断是否是高低开,若是,则isTrue网关参数为true=============添加 //判断是否是高低开,若是,则isTrue网关参数为true=============添加
String contractNo = dto.getContractNo(); String contractNo = dto.getContractNo();
BusSalesOrderPrice data = busSalesOrderFeign.selectByContractNo(contractNo).getData(); BusSalesOrderPrice data = busSalesOrderFeign.selectByContractNo(contractNo).getData();
@ -1262,6 +1287,15 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
variables.put("app", appMap); variables.put("app", appMap);
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.FINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.FINBILLAPPLICATION.getProDefId());
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables);
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData(); UpdateFlowFieldVo ufVo = voResultBean.getData();
@ -1757,9 +1791,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getCreateBySid()); bv.setUserSid(dto.getCreateBySid());
bv.setFormVariables(variables);
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId());
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(bv.getModelId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
@ -1802,10 +1844,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
if (bv.getTaskId().equals(finBillApplication.getTaskId())) { if (bv.getTaskId().equals(finBillApplication.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -1931,10 +1981,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
if ("Activity_1aja6s0".equals(bv.getTaskDefKey())) {//分公司销售内勤的节点id if ("Activity_1aja6s0".equals(bv.getTaskDefKey())) {//分公司销售内勤的节点id
//分公司销售内勤审批->销售部经理审批 //分公司销售内勤审批->销售部经理审批
List<String> orgPathList = Arrays.asList(finBillApplication.getOrgSidPath().split("/")); List<String> orgPathList = Arrays.asList(finBillApplication.getOrgSidPath().split("/"));
@ -2026,12 +2084,20 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。 //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>(); Map<String, Object> variables = new HashMap<>();
bv.setFormVariables(variables);
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId());
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
finBillApplication = fetchBySid(bv.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -2044,12 +2110,20 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。 //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>(); Map<String, Object> variables = new HashMap<>();
bv.setFormVariables(variables);
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId());
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
finBillApplication = fetchBySid(bv.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -2080,6 +2154,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
variables.put("app", appMap); variables.put("app", appMap);
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -2307,6 +2388,16 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
//判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加
bv.getFormVariables().put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); bv.getFormVariables().put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是"));
//========================================
Map<String,Object> variables = bv.getFormVariables();
finBillApplication = fetchBySid(bv.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
@ -2327,10 +2418,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
String substring = nextNodeUserSids.substring(0, nextNodeUserSids.lastIndexOf(",")); String substring = nextNodeUserSids.substring(0, nextNodeUserSids.lastIndexOf(","));
bv.setNextNodeUserSids(substring); bv.setNextNodeUserSids(substring);
if (bv.getTaskId().equals(finBillApplication.getTaskId())) { if (bv.getTaskId().equals(finBillApplication.getTaskId())) {
Map<String, Object> variables = new HashMap<>(); variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", bv.getBusinessSid()); appMap.put("sid", bv.getBusinessSid());
variables.put("app", appMap); variables.put("app", appMap);
//========================================
finBillApplication = fetchBySid(bv.getBusinessSid());
flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv);
if (!resultBean1.getSuccess()) { if (!resultBean1.getSuccess()) {
@ -2451,9 +2550,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
bv.setBusinessSid(businessSid); bv.setBusinessSid(businessSid);
//用户sid //用户sid
bv.setUserSid(dto.getCreateBySid()); bv.setUserSid(dto.getCreateBySid());
bv.setFormVariables(variables);
//流程定义id //流程定义id
bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId());
//========================================
finBillApplication1 = fetchBySid(bv.getBusinessSid());
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication1.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication1.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
if (r == 1) { if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if (!voResultBean.getSuccess()) { if (!voResultBean.getSuccess()) {
@ -2495,6 +2602,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
if (bv.getTaskId().equals(finBillApplication.getTaskId())) { if (bv.getTaskId().equals(finBillApplication.getTaskId())) {
@ -2539,6 +2653,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
if ("Activity_1aja6s0".equals(bv.getTaskDefKey())) {//分公司销售内勤的节点id if ("Activity_1aja6s0".equals(bv.getTaskDefKey())) {//分公司销售内勤的节点id
@ -2618,6 +2739,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", bv.getBusinessSid()); appMap.put("sid", bv.getBusinessSid());
variables.put("app", appMap); variables.put("app", appMap);
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv); ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.handleProsess(bv);
if (!resultBean1.getSuccess()) { if (!resultBean1.getSuccess()) {
@ -2651,10 +2779,17 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
BeanUtil.copyProperties(query, bv); BeanUtil.copyProperties(query, bv);
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。 //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>(); Map<String, Object> variables = new HashMap<>();
bv.setFormVariables(variables);
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId());
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -2671,6 +2806,14 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
//查询业务信息 //查询业务信息
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid()); FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId()); bv.setModelId(ProcDefEnum.QKLPFINBILLAPPLICATION.getProDefId());
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
bv.setFormVariables(variables);
//=======================================
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList()); List<FinBillNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinBillNodeVo.class)).collect(Collectors.toList());
@ -2699,6 +2842,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
//========================================
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
flowTaskVo.setValues(variables); flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
@ -2806,6 +2956,14 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
Map<String, Object> appMap = new HashMap<>(); Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid); appMap.put("sid", businessSid);
variables.put("app", appMap); variables.put("app", appMap);
//========================================
finBillApplication = fetchBySid(businessSid);
FlowProcessMapQuery flowProcessMapQuery = new FlowProcessMapQuery();
flowProcessMapQuery.setProDefKey(finBillApplication.getProcDefId());
flowProcessMapQuery.setVariables(variables);
flowProcessMapQuery.setContractNo(finBillApplication.getContractNo());
variables = flowableFeign.getMap(flowProcessMapQuery).getData();
//=======================================
bv.setFormVariables(variables); bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath()); bv.setOrgSidPath(finBillApplication.getOrgSidPath());
//判断是否是高低开,若是,则isTrue网关参数为true=============添加 //判断是否是高低开,若是,则isTrue网关参数为true=============添加

12
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingMapper.java

@ -26,16 +26,14 @@
package com.yxt.anrui.fin.biz.fincompanyinvoicing; package com.yxt.anrui.fin.biz.fincompanyinvoicing;
import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo; import com.yxt.anrui.fin.api.fincompanyinvoicing.*;
import com.yxt.anrui.fin.api.fincompanyinvoicing.InvoicingVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicing;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo;
import java.util.List; import java.util.List;
@ -71,4 +69,10 @@ public interface FinCompanyInvoicingMapper extends BaseMapper<FinCompanyInvoicin
FinCompanyInvoicingDetailsVo getDetailsByUseOrgAndSystem(@Param("useOrgSid") String useOrgSid, @Param("systemSid") String systemSid); FinCompanyInvoicingDetailsVo getDetailsByUseOrgAndSystem(@Param("useOrgSid") String useOrgSid, @Param("systemSid") String systemSid);
List<InvoicingVo> selectInvoingList(String useOrgSid); List<InvoicingVo> selectInvoingList(String useOrgSid);
List<FinCompanyInvoicingDetailsVo> qyFetchListByName(@Param(Constants.WRAPPER) QueryWrapper qw);
FinCompanyInvoicingDetailsVo selByUseOrgSidAndNameOrTaxNo(@Param(Constants.WRAPPER) QueryWrapper qw);
List<FinCompanyInvoicingBillListVo> qySelByUseOrgSid(@Param(Constants.WRAPPER) QueryWrapper qw);
} }

72
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingMapper.xml

@ -1,24 +1,64 @@
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.fin.biz.fincompanyinvoicing.FinCompanyInvoicingMapper"> <mapper namespace="com.yxt.anrui.fin.biz.fincompanyinvoicing.FinCompanyInvoicingMapper">
<!-- <where> ${ew.sqlSegment} </where>--> <!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo"> <select id="selectPageVo" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo">
SELECT fci.* FROM fin_company_invoicing fci SELECT fci.* FROM fin_company_invoicing fci
LEFT JOIN anrui_portal.sys_organization so ON fci.useOrgSid = so.sid <where>
<where> ${ew.sqlSegment} </where> ${ew.sqlSegment}
</select> </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo">
SELECT * FROM fin_company_invoicing <where> ${ew.sqlSegment} </where> <select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo">
</select> SELECT * FROM fin_company_invoicing
<where>
${ew.sqlSegment}
</where>
</select>
<select id="getDetailsByUseOrgAndSystem" <select id="getDetailsByUseOrgAndSystem"
resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo"> resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo">
select * from fin_company_invoicing where useOrgSid = #{useOrgSid} and purchaseSystemSid = #{systemSid} limit 1 select *
from fin_company_invoicing
where useOrgSid = #{useOrgSid}
and purchaseSystemSid = #{systemSid} limit 1
</select> </select>
<select id="selectInvoingList" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.InvoicingVo"> <select id="selectInvoingList" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.InvoicingVo">
select name dictValue,sid,sid as dictKey from fin_company_invoicing where useOrgSid = #{useOrgSid} select name dictValue, sid, sid as dictKey
</select> from fin_company_invoicing
where useOrgSid = #{useOrgSid}
</select>
<select id="qyFetchListByName" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo">
SELECT * FROM fin_company_invoicing
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selByUseOrgSidAndNameOrTaxNo"
resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo">
SELECT * FROM fin_company_invoicing
<where>
${ew.sqlSegment}
</where>
</select>
<select id="qySelByUseOrgSid" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingBillListVo">
SELECT
sid,
name,
taxpayerNo AS registNum,
address AS registDetailAddress,
phone AS invoPhone,
bankName AS invoBank,
bankAccount AS invoBankNum
FROM
fin_company_invoicing
<where>
${ew.sqlSegment}
</where>
</select>
</mapper> </mapper>

31
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingRest.java

@ -26,6 +26,8 @@
package com.yxt.anrui.fin.biz.fincompanyinvoicing; package com.yxt.anrui.fin.biz.fincompanyinvoicing;
import com.yxt.anrui.fin.api.fincompanyinvoicing.*; import com.yxt.anrui.fin.api.fincompanyinvoicing.*;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceQuery;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -107,4 +109,33 @@ public class FinCompanyInvoicingRest implements FinCompanyInvoicingFeign {
public ResultBean<List<InvoicingVo>> selectInvoingList(String busSid) { public ResultBean<List<InvoicingVo>> selectInvoingList(String busSid) {
return finCompanyInvoicingService.selectInvoingList(busSid); return finCompanyInvoicingService.selectInvoingList(busSid);
} }
@Override
public ResultBean<PagerVo<FinCompanyInvoicingVo>> qyListPage(PagerQuery<FinCompanyInvoicingQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<FinCompanyInvoicingVo> pv = finCompanyInvoicingService.qyListPage(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<FinCompanyInvoicingDetailsVo>> qyFetchListByName(String name) {
ResultBean rb = ResultBean.fireFail();
List<FinCompanyInvoicingDetailsVo> finCompanyInvoicingDetailsVos = finCompanyInvoicingService.qyFetchListByName(name);
return rb.success().setData(finCompanyInvoicingDetailsVos);
}
@Override
public ResultBean qySaveOrUpdate(FinCompanyInvoicingDto dto) {
return finCompanyInvoicingService.qySaveOrUpdate(dto);
}
@Override
public List<FinCompanyInvoicingBillListVo> qySelByUseOrgSid(String orgSid) {
return finCompanyInvoicingService.qySelByUseOrgSid(orgSid);
}
@Override
public List<FinCompanyInvoicingBillListVo> qyAppSelByUseOrgSid(String useOrgSid, String search) {
return finCompanyInvoicingService.qyAppSelByUseOrgSid(useOrgSid,search);
}
} }

182
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingService.java

@ -31,8 +31,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo; import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.*; import com.yxt.anrui.fin.api.fincompanyinvoicing.*;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
@ -66,6 +69,8 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@Autowired @Autowired
private BusSalesOrderFeign busSalesOrderFeign; private BusSalesOrderFeign busSalesOrderFeign;
@Resource
private SysUserFeign sysUserFeign;
private QueryWrapper<FinCompanyInvoicing> createQueryWrapper(FinCompanyInvoicingQuery query) { private QueryWrapper<FinCompanyInvoicing> createQueryWrapper(FinCompanyInvoicingQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
@ -77,16 +82,47 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
public PagerVo<FinCompanyInvoicingVo> listPageVo(PagerQuery<FinCompanyInvoicingQuery> pq) { public PagerVo<FinCompanyInvoicingVo> listPageVo(PagerQuery<FinCompanyInvoicingQuery> pq) {
FinCompanyInvoicingQuery query = pq.getParams(); FinCompanyInvoicingQuery query = pq.getParams();
QueryWrapper<FinCompanyInvoicing> qw = new QueryWrapper<>(); QueryWrapper<FinCompanyInvoicing> qw = new QueryWrapper<>();
String orgSidPath = query.getOrgSidPath(); qw.isNotNull("fci.purchaseSystemSid");
SysOrganizationVo data = sysOrganizationFeign.selectByOrgSidPath(orgSidPath).getData(); //层级筛选
String orgLevelKey = data.getOrgLevelKey(); //=======================
if ("2".equals(orgLevelKey)) { PrivilegeQuery privilegeQuery = new PrivilegeQuery();
orgSidPath = orgSidPath.substring(0, 73); privilegeQuery.setOrgPath(query.getOrgSidPath());
qw.like("so.orgSidPath", orgSidPath); privilegeQuery.setMenuSid(query.getMenuSid());
} else if ("3".equals(orgLevelKey)) { privilegeQuery.setMenuUrl(query.getMenuUrl());
String orgSid = orgSidPath.substring(74, 110); privilegeQuery.setUserSid(query.getUserSid());
qw.eq("fci.useOrgSid", orgSid); ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgSidPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("fci.createBySid", query.getUserSid());
} else {
PagerVo<FinCompanyInvoicingVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<FinCompanyInvoicingVo> p = new PagerVo<>();
return p;
} }
//=======================
if (StringUtils.isNotBlank(query.getUseOrgSid())) { if (StringUtils.isNotBlank(query.getUseOrgSid())) {
qw.eq("fci.useOrgSid", query.getUseOrgSid()); qw.eq("fci.useOrgSid", query.getUseOrgSid());
} }
@ -104,8 +140,8 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
String dtoSid = dto.getSid(); String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) { if (StringUtils.isBlank(dtoSid)) {
String useOrgSid = dto.getUseOrgSid(); String useOrgSid = dto.getUseOrgSid();
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = baseMapper.getDetailsByUseOrgAndSystem(useOrgSid,dto.getPurchaseSystemSid()); FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = baseMapper.getDetailsByUseOrgAndSystem(useOrgSid, dto.getPurchaseSystemSid());
if (finCompanyInvoicingDetailsVo != null){ if (finCompanyInvoicingDetailsVo != null) {
return rb.setMsg("该公司已有开票信息,不可添加"); return rb.setMsg("该公司已有开票信息,不可添加");
} }
this.insertByDto(dto); this.insertByDto(dto);
@ -144,7 +180,7 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
public ResultBean<FinCompanyInvoicingDetailsVo> getDetailsByUseOrgAndSystem(String useOrgSid, String systemSid) { public ResultBean<FinCompanyInvoicingDetailsVo> getDetailsByUseOrgAndSystem(String useOrgSid, String systemSid) {
ResultBean<FinCompanyInvoicingDetailsVo> rb = ResultBean.fireFail(); ResultBean<FinCompanyInvoicingDetailsVo> rb = ResultBean.fireFail();
FinCompanyInvoicingDetailsVo vo = baseMapper.getDetailsByUseOrgAndSystem(useOrgSid,systemSid); FinCompanyInvoicingDetailsVo vo = baseMapper.getDetailsByUseOrgAndSystem(useOrgSid, systemSid);
return rb.success().setData(vo); return rb.success().setData(vo);
} }
@ -153,10 +189,130 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
List<InvoicingVo> list = new ArrayList<>(); List<InvoicingVo> list = new ArrayList<>();
//查询销售订单的信息 //查询销售订单的信息
ResultBean<AppOrderDetailsVo> resultBean = busSalesOrderFeign.getSaleOrderDetails(busSid); ResultBean<AppOrderDetailsVo> resultBean = busSalesOrderFeign.getSaleOrderDetails(busSid);
if(resultBean.getData() != null){ if (resultBean.getData() != null) {
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData(); AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
list = baseMapper.selectInvoingList(appOrderDetailsVo.getUseOrgSid()); list = baseMapper.selectInvoingList(appOrderDetailsVo.getUseOrgSid());
} }
return rb.success().setData(list); return rb.success().setData(list);
} }
public PagerVo<FinCompanyInvoicingVo> qyListPage(PagerQuery<FinCompanyInvoicingQuery> pq) {
FinCompanyInvoicingQuery query = pq.getParams();
QueryWrapper<FinCompanyInvoicing> qw = new QueryWrapper<>();
qw.isNull("fci.purchaseSystemSid");
//层级筛选
//=======================
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgSidPath());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgSidPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("fci.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("fci.createBySid", query.getUserSid());
} else {
PagerVo<FinCompanyInvoicingVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<FinCompanyInvoicingVo> p = new PagerVo<>();
return p;
}
//=======================
if (StringUtils.isNotBlank(query.getUseOrgSid())) {
qw.eq("fci.useOrgSid", query.getUseOrgSid());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemSid())) {
qw.eq("fci.purchaseSystemSid", query.getPurchaseSystemSid());
}
IPage<FinCompanyInvoicing> page = PagerUtil.queryToPage(pq);
IPage<FinCompanyInvoicingVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<FinCompanyInvoicingVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public ResultBean qySaveOrUpdate(FinCompanyInvoicingDto dto) {
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
String useOrgSid = dto.getUseOrgSid();
String name = dto.getName();
String taxpayerNo = dto.getTaxpayerNo();
if (StringUtils.isNotBlank(dtoSid)) {//新增
QueryWrapper qw1 = new QueryWrapper<>();
qw1.eq("useOrgSid", useOrgSid);
qw1.eq("name", name);
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo1 = baseMapper.selByUseOrgSidAndNameOrTaxNo(qw1);
QueryWrapper qw2 = new QueryWrapper<>();
qw2.eq("useOrgSid", useOrgSid);
qw2.eq("taxpayerNo", taxpayerNo);
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo2 = baseMapper.selByUseOrgSidAndNameOrTaxNo(qw2);
if (finCompanyInvoicingDetailsVo1 != null || finCompanyInvoicingDetailsVo2 != null) {
return rb.setMsg("该企业开票信息已存在");
}
this.insertByDto(dto);
return rb.success();
}
QueryWrapper qw1 = new QueryWrapper<>();
qw1.eq("useOrgSid", useOrgSid);
qw1.notIn("sid", dtoSid);
qw1.eq("name", name);
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo1 = baseMapper.selByUseOrgSidAndNameOrTaxNo(qw1);
QueryWrapper qw2 = new QueryWrapper<>();
qw2.eq("useOrgSid", useOrgSid);
qw1.notIn("sid", dtoSid);
qw2.eq("taxpayerNo", taxpayerNo);
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo2 = baseMapper.selByUseOrgSidAndNameOrTaxNo(qw2);
if (finCompanyInvoicingDetailsVo1 != null || finCompanyInvoicingDetailsVo2 != null) {
return rb.setMsg("该企业开票信息已存在");
}
this.updateByDto(dto);
return rb.success();
}
public List<FinCompanyInvoicingDetailsVo> qyFetchListByName(String name) {
QueryWrapper qw = new QueryWrapper<>();
qw.like("name", name);
List<FinCompanyInvoicingDetailsVo> finCompanyInvoicingDetailsVos = baseMapper.qyFetchListByName(qw);
return finCompanyInvoicingDetailsVos;
}
public List<FinCompanyInvoicingBillListVo> qySelByUseOrgSid(String orgSid) {
QueryWrapper qw = new QueryWrapper<>();
qw.eq("useOrgSid", orgSid);
qw.eq("isDelete", 0);
qw.isNull("purchaseSystemSid");
List<FinCompanyInvoicingBillListVo> finCompanyInvoicingBillListVos = baseMapper.qySelByUseOrgSid(qw);
return finCompanyInvoicingBillListVos;
}
public List<FinCompanyInvoicingBillListVo> qyAppSelByUseOrgSid(String useOrgSid, String search) {
QueryWrapper qw = new QueryWrapper<>();
qw.eq("useOrgSid", useOrgSid);
qw.eq("isDelete", 0);
qw.isNull("purchaseSystemSid");
qw.like("name",search);
List<FinCompanyInvoicingBillListVo> finCompanyInvoicingBillListVos = baseMapper.qySelByUseOrgSid(qw);
return finCompanyInvoicingBillListVos;
}
} }

22
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowProcessMapQuery.java

@ -0,0 +1,22 @@
package com.yxt.anrui.flowable.api.flow;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Map;
/**
* @description: 流程获取map
* @author: dimengzhe
* @date: 2023/5/26
**/
@Data
public class FlowProcessMapQuery {
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("变量")
private Map<String, Object> variables;
@ApiModelProperty("流程id")
private String proDefKey;
}

5
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFallback.java

@ -101,5 +101,10 @@ public class FlowableFallback implements FlowableFeign {
return null; return null;
} }
@Override
public ResultBean<Map<String, Object>> getMap(FlowProcessMapQuery query) {
return null;
}
} }

5
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java

@ -146,4 +146,9 @@ public interface FlowableFeign {
@GetMapping(value = "/selectFlows") @GetMapping(value = "/selectFlows")
@ResponseBody @ResponseBody
ResultBean<FlowSelectVo> selectFlows(@RequestParam("proDefId")String proDefId,@RequestParam("proInsId")String proInsId); ResultBean<FlowSelectVo> selectFlows(@RequestParam("proDefId")String proDefId,@RequestParam("proInsId")String proInsId);
@ApiOperation(value = "获取map")
@PostMapping(value = "/getMap")
@ResponseBody
ResultBean<Map<String,Object>> getMap(@RequestBody FlowProcessMapQuery query);
} }

12
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java

@ -720,4 +720,16 @@ public class FlowableRest implements FlowableFeign {
public ResultBean<FlowSelectVo> selectFlows(String proDefId, String proInsId) { public ResultBean<FlowSelectVo> selectFlows(String proDefId, String proInsId) {
return flowableService.selectFlows(proDefId,proInsId); return flowableService.selectFlows(proDefId,proInsId);
} }
@Override
public ResultBean<Map<String, Object>> getMap(FlowProcessMapQuery query) {
ResultBean<Map<String,Object>> rb = ResultBean.fireFail();
Map<String,Object> variables = query.getVariables();
String contractNo = query.getContractNo();
String proDefKey = query.getProDefKey();
Map<String, String> process = processService.getProcessDefByDefId(proDefKey);
String orderNames = contractNo+process.get("NAME_");
variables.put("orderNames",orderNames);
return rb.success().setData(variables);
}
} }

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/PrivilegeQuery.java

@ -17,6 +17,6 @@ public class PrivilegeQuery {
private String orgPath; private String orgPath;
@ApiModelProperty("菜单sid") @ApiModelProperty("菜单sid")
private String menuSid; private String menuSid;
@ApiModelProperty("销售订单sid") @ApiModelProperty("用户sid")
private String userSid; private String userSid;
} }

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.java

@ -65,7 +65,7 @@ public interface SysRoleMapper extends BaseMapper<SysRole> {
List<SysMenuRoleVoList> selectMobileRoleList(String menuSid); List<SysMenuRoleVoList> selectMobileRoleList(String menuSid);
List<String> selectByRole(@Param("orgLevelKey") String orgLevelKey, @Param("menuSid") String menuSid,@Param("userSid") String userSid); List<String> selectByRole(@Param("list") List<String> roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
List<String> selectByMobileRole(@Param("orgLevelKey") String orgLevelKey, @Param("menuSid") String menuSid,@Param("userSid") String userSid); List<String> selectByMobileRole(@Param("list") List<String> roleSidList, @Param("menuSid") String menuSid,@Param("userSid") String userSid);
} }

19
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleMapper.xml

@ -106,18 +106,29 @@
</select> </select>
<select id="selectByRole" resultType="java.lang.String"> <select id="selectByRole" resultType="java.lang.String">
select dataRuleId from sys_menu_role smr select smr.dataRuleId from sys_menu_role smr
left join sys_menu sm on sm.sid = smr.menuSid left join sys_menu sm on sm.sid = smr.menuSid
left join sys_role sr on sr.sid = smr.roleSid left join sys_role sr on sr.sid = smr.roleSid
left join sys_user_role sur on sur.roleSid = smr.roleSid left join sys_user_role sur on sur.roleSid = smr.roleSid
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.roleType = #{orgLevelKey} order by dataRuleId asc where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
and length(smr.dataRuleId)>0
order by dataRuleId asc
</select> </select>
<select id="selectByMobileRole" resultType="java.lang.String"> <select id="selectByMobileRole" resultType="java.lang.String">
select dataRuleId from sys_mobile_menu_role smr select smr.dataRuleId from sys_mobile_menu_role smr
left join sys_mobile_menu sm on sm.sid = smr.menuSid left join sys_mobile_menu sm on sm.sid = smr.menuSid
left join sys_role sr on sr.sid = smr.roleSid left join sys_role sr on sr.sid = smr.roleSid
left join sys_user_role sur on sur.roleSid = smr.roleSid left join sys_user_role sur on sur.roleSid = smr.roleSid
where smr.menuSid = #{menuSid} and sur.userSid = #{userSid} and sr.roleType = #{orgLevelKey} order by dataRuleId asc where smr.menuSid = #{menuSid} and sur.userSid = #{userSid}
and sr.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
and length(smr.dataRuleId)>0
order by dataRuleId asc
</select> </select>
</mapper> </mapper>

8
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysrole/SysRoleService.java

@ -178,11 +178,11 @@ public class SysRoleService extends MybatisBaseService<SysRoleMapper, SysRole> {
return baseMapper.selectMobileRoleList(menuSid); return baseMapper.selectMobileRoleList(menuSid);
} }
public List<String> selectByRole(String orgLevelKey, String menuSid,String userSid) { public List<String> selectByRole(List<String> roleSidList, String menuSid,String userSid) {
return baseMapper.selectByRole(orgLevelKey,menuSid,userSid); return baseMapper.selectByRole(roleSidList,menuSid,userSid);
} }
public List<String> selectByMobileRole(String orgLevelKey, String menuSid, String userSid) { public List<String> selectByMobileRole(List<String> roleSidList, String menuSid, String userSid) {
return baseMapper.selectByMobileRole(orgLevelKey,menuSid,userSid); return baseMapper.selectByMobileRole(roleSidList,menuSid,userSid);
} }
} }

29
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

@ -30,6 +30,7 @@ import com.yxt.anrui.portal.biz.sysstaffinfo.SysStaffinfoService;
import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService; import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService;
import com.yxt.anrui.portal.biz.sysstaffpost.SysStaffPostService; import com.yxt.anrui.portal.biz.sysstaffpost.SysStaffPostService;
import com.yxt.anrui.portal.biz.sysuserdefaultorg.SysUserDefaultOrgService; import com.yxt.anrui.portal.biz.sysuserdefaultorg.SysUserDefaultOrgService;
import com.yxt.anrui.portal.biz.sysuserrole.SysUserRoleService;
import com.yxt.anrui.portal.config.DictCommonType; import com.yxt.anrui.portal.config.DictCommonType;
import com.yxt.anrui.portal.utils.MsgWs; import com.yxt.anrui.portal.utils.MsgWs;
import com.yxt.common.base.config.RedisUtil; import com.yxt.common.base.config.RedisUtil;
@ -114,6 +115,8 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
private SysMenuService sysMenuService; private SysMenuService sysMenuService;
@Autowired @Autowired
private SysMobileMenuService sysMobileMenuService; private SysMobileMenuService sysMobileMenuService;
@Autowired
private SysUserRoleService sysUserRoleService;
public PagerVo<SysUser> listPage(PagerQuery<SysUserQuery> pq) { public PagerVo<SysUser> listPage(PagerQuery<SysUserQuery> pq) {
@ -1408,16 +1411,18 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
} else { } else {
String menuSid = sysMenuList.get(0).getSid(); String menuSid = sysMenuList.get(0).getSid();
//根据层级查找角色 //根据层级查找角色
List<String> stringList = Arrays.asList(query.getOrgPath().split("/")); // List<String> stringList = Arrays.asList(query.getOrgPath().split("/"));
//最后一级的sid所属层级 //最后一级的sid所属层级
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1)); // SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));
List<String> roleSidList = sysUserRoleService.selectRoleSid(query.getUserSid());
roleSidList.removeAll(Collections.singleton(null));
//查询层级对应的角色权限id //查询层级对应的角色权限id
List<String> roleSid = sysRoleService.selectByRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid()); List<String> roleIdList = sysRoleService.selectByRole(roleSidList, menuSid,query.getUserSid());
roleSid.removeAll(Collections.singleton(null)); roleIdList.removeAll(Collections.singleton(null));
if (!roleSid.isEmpty()) { if (!roleIdList.isEmpty()) {
for (int i = 0; i < roleSid.size(); i++) { for (int i = 0; i < roleIdList.size(); i++) {
if (StringUtils.isNotBlank(roleSid.get(i))) { if (StringUtils.isNotBlank(roleIdList.get(i))) {
defalutId = roleSid.get(i); defalutId = roleIdList.get(i);
break; break;
} else { } else {
continue; continue;
@ -1427,12 +1432,14 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
} }
} else { } else {
String menuSid = query.getMenuSid(); String menuSid = query.getMenuSid();
//根据层级查找角色 /* //根据层级查找角色
List<String> stringList = Arrays.asList(query.getOrgPath().split("/")); List<String> stringList = Arrays.asList(query.getOrgPath().split("/"));
//最后一级的sid所属层级 //最后一级的sid所属层级
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1)); SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1));*/
List<String> roleSidList = sysUserRoleService.selectRoleSid(query.getUserSid());
roleSidList.removeAll(Collections.singleton(null));
//查询层级对应的角色权限id //查询层级对应的角色权限id
List<String> roleSid = sysRoleService.selectByMobileRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid()); List<String> roleSid = sysRoleService.selectByMobileRole(roleSidList, menuSid,query.getUserSid());
roleSid.removeAll(Collections.singleton(null)); roleSid.removeAll(Collections.singleton(null));
if (!roleSid.isEmpty()) { if (!roleSid.isEmpty()) {
for (int i = 0; i < roleSid.size(); i++) { for (int i = 0; i < roleSid.size(); i++) {

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.java

@ -53,4 +53,6 @@ public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
List<String> getUserSidListByRoleSid(@Param("roleList") List<String> roleList); List<String> getUserSidListByRoleSid(@Param("roleList") List<String> roleList);
int deleteByRoleSid(String sids); int deleteByRoleSid(String sids);
List<String> selectRoleSid(String userSid);
} }

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleMapper.xml

@ -42,4 +42,8 @@
<delete id="deleteByRoleSid"> <delete id="deleteByRoleSid">
delete from sys_user_role where roleSid = #{sids} delete from sys_user_role where roleSid = #{sids}
</delete> </delete>
<select id="selectRoleSid" resultType="java.lang.String">
select distinct roleSid from sys_user_role where userSid = #{userSid}
</select>
</mapper> </mapper>

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuserrole/SysUserRoleService.java

@ -127,4 +127,8 @@ public class SysUserRoleService extends MybatisBaseService<SysUserRoleMapper, Sy
public int deleteByRoleSid(String sids) { public int deleteByRoleSid(String sids) {
return baseMapper.deleteByRoleSid(sids); return baseMapper.deleteByRoleSid(sids);
} }
public List<String> selectRoleSid(String userSid) {
return baseMapper.selectRoleSid(userSid);
}
} }
Loading…
Cancel
Save