Browse Source

车辆外采流程办理

master
yxt_djz 3 years ago
parent
commit
d3157bbe12
  1. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationFeign.java
  2. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationFeignFallback.java
  3. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/flow/FlowTaskVo.java
  4. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationRest.java
  5. 880
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java
  6. 2
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java
  7. 2
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  8. 2
      anrui-scm/anrui-scm-ui/src/api/baseoutsourcingapplication/baseoutsourcingapplication.js
  9. 25
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue
  10. 79
      anrui-system-ui/src/views/flow/doneList.vue

5
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationFeign.java

@ -135,9 +135,8 @@ public interface BaseOutsourcingApplicationFeign {
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo) ; @ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo) ;
@ApiOperation(value = "驳回任务") @ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject/{businessSid}") @PostMapping(value = "/reject")
public ResultBean taskReject(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid, public ResultBean taskReject( @ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "终止任务") @ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess/{businessSid}") @PostMapping(value = "/breakProcess/{businessSid}")

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationFeignFallback.java

@ -113,7 +113,7 @@ public class BaseOutsourcingApplicationFeignFallback implements BaseOutsourcingA
} }
@Override @Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) { public ResultBean taskReject( FlowTaskVo flowTaskVo) {
return null; return null;
} }

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/flow/FlowTaskVo.java

@ -21,7 +21,8 @@ public class FlowTaskVo {
@ApiModelProperty("任务Id") @ApiModelProperty("任务Id")
private String taskId; private String taskId;
@ApiModelProperty("businessSid ")
private String businessSid;
@ApiModelProperty("用户Id") @ApiModelProperty("用户Id")
private String userId; private String userId;
@ApiModelProperty("用户Sid") @ApiModelProperty("用户Sid")

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationRest.java

@ -149,8 +149,8 @@ public class BaseOutsourcingApplicationRest implements BaseOutsourcingApplicatio
} }
@Override @Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) { public ResultBean taskReject( FlowTaskVo flowTaskVo) {
return baseOutsourcingApplicationService.taskReject(businessSid, flowTaskVo); return baseOutsourcingApplicationService.taskReject( flowTaskVo);
} }
@Override @Override

880
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java

@ -88,420 +88,470 @@ import java.util.Map;
@Service @Service
public class BaseOutsourcingApplicationService extends MybatisBaseService<BaseOutsourcingApplicationMapper, BaseOutsourcingApplication> { public class BaseOutsourcingApplicationService extends MybatisBaseService<BaseOutsourcingApplicationMapper, BaseOutsourcingApplication> {
@Autowired @Autowired
private SysFormLinkFeign sysFormLinkFeign; private SysFormLinkFeign sysFormLinkFeign;
@Autowired @Autowired
private BaseOutsourcingApplicationVehicleService baseOutsourcingApplicationVehicleService; private BaseOutsourcingApplicationVehicleService baseOutsourcingApplicationVehicleService;
@Autowired @Autowired
private DictCommonFeign dictCommonFeign; private DictCommonFeign dictCommonFeign;
@Autowired @Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
@Autowired @Autowired
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@Autowired @Autowired
private SysStaffOrgFeign sysStaffOrgFeign; private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired @Autowired
private FlowTaskFeign flowTaskFeign; private FlowTaskFeign flowTaskFeign;
@Autowired @Autowired
private FlowableFeign flowableFeign; private FlowableFeign flowableFeign;
private QueryWrapper<BaseOutsourcingApplication> createQueryWrapper(BaseOutsourcingApplicationQuery query) { private QueryWrapper<BaseOutsourcingApplication> createQueryWrapper(BaseOutsourcingApplicationQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<BaseOutsourcingApplication> qw = new QueryWrapper<>(); QueryWrapper<BaseOutsourcingApplication> qw = new QueryWrapper<>();
String applicationStartDate = query.getApplicationStartDate(); String applicationStartDate = query.getApplicationStartDate();
String applicationEndDate = query.getApplicationEndDate(); String applicationEndDate = query.getApplicationEndDate();
qw.apply(StringUtils.isNotEmpty(applicationStartDate), "date_format (applicationDate,'%Y-%m-%d') >= date_format('" + applicationStartDate + "','%Y-%m-%d')"). qw.apply(StringUtils.isNotEmpty(applicationStartDate), "date_format (applicationDate,'%Y-%m-%d') >= date_format('" + applicationStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(applicationEndDate), "date_format (applicationDate,'%Y-%m-%d') <= date_format('" + applicationEndDate + "','%Y-%m-%d')" apply(StringUtils.isNotEmpty(applicationEndDate), "date_format (applicationDate,'%Y-%m-%d') <= date_format('" + applicationEndDate + "','%Y-%m-%d')"
); );
if (StringUtils.isNotBlank(query.getModelName())) { if (StringUtils.isNotBlank(query.getModelName())) {
qw.like("modelName", query.getModelName()); qw.like("modelName", query.getModelName());
} }
qw.eq("useOrgSid",query.getUseOrgSid()); qw.eq("useOrgSid", query.getUseOrgSid());
qw.eq("createBySid",query.getUserSid()); qw.eq("createBySid", query.getUserSid());
// qw.eq("createBySid",query.getUserSid()); // qw.eq("createBySid",query.getUserSid());
return qw; return qw;
} }
public PagerVo<BaseOutsourcingApplicationVo> listPageVo(PagerQuery<BaseOutsourcingApplicationQuery> pq) { public PagerVo<BaseOutsourcingApplicationVo> listPageVo(PagerQuery<BaseOutsourcingApplicationQuery> pq) {
BaseOutsourcingApplicationQuery query = pq.getParams(); BaseOutsourcingApplicationQuery query = pq.getParams();
String staffSid = query.getStaffSid(); String staffSid = query.getStaffSid();
ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid); ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData(); List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData();
String orgSidPath = ""; String orgSidPath = "";
for (SysStaffOrgVo datum : data) { for (SysStaffOrgVo datum : data) {
orgSidPath = datum.getOrgSidPath(); orgSidPath = datum.getOrgSidPath();
String[] split = orgSidPath.split("/"); String[] split = orgSidPath.split("/");
for (String s : split) { for (String s : split) {
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s); ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
SysOrganizationVo data1 = sysOrganizationVoResultBean.getData(); SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
Integer isDept = data1.getIsDept(); Integer isDept = data1.getIsDept();
String psid = data1.getPsid(); String psid = data1.getPsid();
if (isDept != null){ if (isDept != null) {
if (isDept == 0 && !psid.equals(0)) { if (isDept == 0 && !psid.equals(0)) {
orgSidPath = s; orgSidPath = s;
break; break;
} }
} }
} }
} }
query.setUseOrgSid(orgSidPath); query.setUseOrgSid(orgSidPath);
QueryWrapper<BaseOutsourcingApplication> qw = createQueryWrapper(query); QueryWrapper<BaseOutsourcingApplication> qw = createQueryWrapper(query);
IPage<BaseOutsourcingApplication> page = PagerUtil.queryToPage(pq); IPage<BaseOutsourcingApplication> page = PagerUtil.queryToPage(pq);
IPage<BaseOutsourcingApplicationVo> pagging = baseMapper.selectPageVo(page, qw); IPage<BaseOutsourcingApplicationVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<BaseOutsourcingApplicationVo> p = PagerUtil.pageToVo(pagging, null); PagerVo<BaseOutsourcingApplicationVo> p = PagerUtil.pageToVo(pagging, null);
return p; return p;
} }
public ResultBean saveOrUpdateDto(BaseOutsourcingApplicationDto dto){ public ResultBean saveOrUpdateDto(BaseOutsourcingApplicationDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
BaseOutsourcingApplication entity = new BaseOutsourcingApplication(); BaseOutsourcingApplication entity = new BaseOutsourcingApplication();
List<BaseOutsourcingApplicationVehicleDto> baseOutsourcingApplicationVehicleDtos = dto.getBaseOutsourcingApplicationVehicleDtos(); List<BaseOutsourcingApplicationVehicleDto> baseOutsourcingApplicationVehicleDtos = dto.getBaseOutsourcingApplicationVehicleDtos();
String sid1 = entity.getSid(); String sid1 = entity.getSid();
String sid = dto.getSid(); String sid = dto.getSid();
if (StringUtils.isBlank(sid)){//新增 if (StringUtils.isBlank(sid)) {//新增
BeanUtil.copyProperties(dto,entity); BeanUtil.copyProperties(dto, entity);
entity.setSid(sid1); entity.setSid(sid1);
entity.setApplicationDate(new SimpleDateFormat("yyyy-MM-dd").format(new Date())); entity.setApplicationDate(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
entity.setApplicationCode(generateBillNo(dto.getUserSid()).get("billNo_Num")); entity.setApplicationCode(generateBillNo(dto.getUserSid()).get("billNo_Num"));
String staffSid = dto.getStaffSid(); String staffSid = dto.getStaffSid();
ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid); ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData(); List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData();
String orgSidPath = ""; String orgSidPath = "";
for (SysStaffOrgVo datum : data) { for (SysStaffOrgVo datum : data) {
orgSidPath = datum.getOrgSidPath(); orgSidPath = datum.getOrgSidPath();
String[] split = orgSidPath.split("/"); String[] split = orgSidPath.split("/");
for (String s : split) { for (String s : split) {//TODO 封装到组织架构的feign中
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s); ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
SysOrganizationVo data1 = sysOrganizationVoResultBean.getData(); SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
Integer isDept = data1.getIsDept(); Integer isDept = data1.getIsDept();
String psid = data1.getPsid(); String psid = data1.getPsid();
if (isDept != null){ if (isDept != null) {
if (isDept == 0 && !psid.equals(0)) { if (isDept == 0 && !psid.equals(0)) {
orgSidPath = s; orgSidPath = s;
break; break;
} }
} }
} }
} }
entity.setUseOrgSid(orgSidPath); entity.setUseOrgSid(orgSidPath);
entity.setCreateBySid(dto.getUserSid()); entity.setCreateBySid(dto.getUserSid());
save(entity); save(entity);
for (BaseOutsourcingApplicationVehicleDto baseOutsourcingApplicationVehicleDto : baseOutsourcingApplicationVehicleDtos) { for (BaseOutsourcingApplicationVehicleDto baseOutsourcingApplicationVehicleDto : baseOutsourcingApplicationVehicleDtos) {
BaseOutsourcingApplicationVehicle baseOutsourcingApplicationVehicle = new BaseOutsourcingApplicationVehicle(); BaseOutsourcingApplicationVehicle baseOutsourcingApplicationVehicle = new BaseOutsourcingApplicationVehicle();
BeanUtil.copyProperties(baseOutsourcingApplicationVehicleDto,baseOutsourcingApplicationVehicle); BeanUtil.copyProperties(baseOutsourcingApplicationVehicleDto, baseOutsourcingApplicationVehicle);
baseOutsourcingApplicationVehicle.setOutAppSid(sid1); baseOutsourcingApplicationVehicle.setOutAppSid(sid1);
baseOutsourcingApplicationVehicleService.save(baseOutsourcingApplicationVehicle); baseOutsourcingApplicationVehicleService.save(baseOutsourcingApplicationVehicle);
} }
return rb.success().setMsg("添加成功").setData(entity.getSid()); return rb.success().setMsg("添加成功").setData(entity.getSid());
} }
updateBySid(dto,sid); updateBySid(dto, sid);
baseOutsourcingApplicationVehicleService.deleteByOutAppSid(sid); baseOutsourcingApplicationVehicleService.deleteByOutAppSid(sid);
for (BaseOutsourcingApplicationVehicleDto baseOutsourcingApplicationVehicleDto : baseOutsourcingApplicationVehicleDtos) { for (BaseOutsourcingApplicationVehicleDto baseOutsourcingApplicationVehicleDto : baseOutsourcingApplicationVehicleDtos) {
BaseOutsourcingApplicationVehicle baseOutsourcingApplicationVehicle = new BaseOutsourcingApplicationVehicle(); BaseOutsourcingApplicationVehicle baseOutsourcingApplicationVehicle = new BaseOutsourcingApplicationVehicle();
BeanUtil.copyProperties(baseOutsourcingApplicationVehicleDto,baseOutsourcingApplicationVehicle); BeanUtil.copyProperties(baseOutsourcingApplicationVehicleDto, baseOutsourcingApplicationVehicle);
baseOutsourcingApplicationVehicle.setOutAppSid(sid); baseOutsourcingApplicationVehicle.setOutAppSid(sid);
baseOutsourcingApplicationVehicleService.save(baseOutsourcingApplicationVehicle); baseOutsourcingApplicationVehicleService.save(baseOutsourcingApplicationVehicle);
} }
return rb.success().setMsg("修改成功").setData(sid); return rb.success().setMsg("修改成功").setData(sid);
} }
public ResultBean delAllBySids(String[] sids) { public ResultBean delAllBySids(String[] sids) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
delBySids(sids); delBySids(sids);
for (String sid : sids) { for (String sid : sids) {
baseOutsourcingApplicationVehicleService.deleteByOutAppSid(sid); baseOutsourcingApplicationVehicleService.deleteByOutAppSid(sid);
} }
return rb.success().setMsg("删除成功"); return rb.success().setMsg("删除成功");
} }
public ResultBean<BaseOutsourcingApplicationDetailsVo> fetchAllBySid(String sid) { public ResultBean<BaseOutsourcingApplicationDetailsVo> fetchAllBySid(String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
BaseOutsourcingApplicationDetailsVo baseOutsourcingApplicationDetailsVo = new BaseOutsourcingApplicationDetailsVo(); BaseOutsourcingApplicationDetailsVo baseOutsourcingApplicationDetailsVo = new BaseOutsourcingApplicationDetailsVo();
BaseOutsourcingApplication baseOutsourcingApplication = fetchBySid(sid); BaseOutsourcingApplication baseOutsourcingApplication = fetchBySid(sid);
BeanUtil.copyProperties(baseOutsourcingApplication,baseOutsourcingApplicationDetailsVo); BeanUtil.copyProperties(baseOutsourcingApplication, baseOutsourcingApplicationDetailsVo);
List<BaseOutsourcingApplicationVehicleVo> baseOutsourcingApplicationVehicleVos = baseOutsourcingApplicationVehicleService.fetchByOutAppSid(sid); List<BaseOutsourcingApplicationVehicleVo> baseOutsourcingApplicationVehicleVos = baseOutsourcingApplicationVehicleService.fetchByOutAppSid(sid);
baseOutsourcingApplicationDetailsVo.setBaseOutsourcingApplicationVehicleVos(baseOutsourcingApplicationVehicleVos); baseOutsourcingApplicationDetailsVo.setBaseOutsourcingApplicationVehicleVos(baseOutsourcingApplicationVehicleVos);
return rb.success().setData(baseOutsourcingApplicationDetailsVo); return rb.success().setData(baseOutsourcingApplicationDetailsVo);
} }
/** /**
* 生成单据编号制定编号规则:单据类型编号数据字典key+部门编码+yyyyMMDD+0000 * 生成单据编号制定编号规则:单据类型编号数据字典key+部门编码+yyyyMMDD+0000
* @param userSid *
* @return * @param userSid
*/ * @return
public Map<String, String> generateBillNo(String userSid){ */
List<DictCommonVo> commonVoList = dictCommonFeign.getTypeValues(DictCommonType.BILLSTYPE, "0").getData(); public Map<String, String> generateBillNo(String userSid) {
String billsType = ""; List<DictCommonVo> commonVoList = dictCommonFeign.getTypeValues(DictCommonType.BILLSTYPE, "0").getData();
if (commonVoList.size() > 0) { String billsType = "";
for (int i = 0; i < commonVoList.size(); i++) { if (commonVoList.size() > 0) {
if (commonVoList.get(i).getDictValue().contains("外采申请单")) { for (int i = 0; i < commonVoList.size(); i++) {
billsType = commonVoList.get(i).getDictKey(); if (commonVoList.get(i).getDictValue().contains("外采申请单")) {
} billsType = commonVoList.get(i).getDictKey();
} }
} }
SysUserVo user = sysUserFeign.fetchBySid(userSid).getData(); }
ResultBean<List<SysStaffOrgVo>> org = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(user.getStaffSid()); SysUserVo user = sysUserFeign.fetchBySid(userSid).getData();
SysStaffOrgVo sysStaffOrgVo = null; ResultBean<List<SysStaffOrgVo>> org = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(user.getStaffSid());
String orgCode = ""; SysStaffOrgVo sysStaffOrgVo = null;
String orgSid = ""; String orgCode = "";
String orgName = ""; String orgSid = "";
if (org.getSuccess() && org.getData() != null && org.getData().size() > 0) { String orgName = "";
List<SysStaffOrgVo> list = org.getData(); if (org.getSuccess() && org.getData() != null && org.getData().size() > 0) {
sysStaffOrgVo = list.get(0); List<SysStaffOrgVo> list = org.getData();
orgSid = sysStaffOrgVo.getOrgSid(); sysStaffOrgVo = list.get(0);
orgName = sysStaffOrgVo.getOrgName(); orgSid = sysStaffOrgVo.getOrgSid();
ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgSid); orgName = sysStaffOrgVo.getOrgName();
if (resultBean.getSuccess() && resultBean.getData() != null) { ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgSid);
SysOrganizationVo sysOrganizationVo = resultBean.getData(); if (resultBean.getSuccess() && resultBean.getData() != null) {
orgCode = sysOrganizationVo.getOrgCode(); SysOrganizationVo sysOrganizationVo = resultBean.getData();
} orgCode = sysOrganizationVo.getOrgCode();
} }
String date = DateUtils.dateConvertStr(new Date(), "yyyy-MM-dd"); }
// 流水号 String date = DateUtils.dateConvertStr(new Date(), "yyyy-MM-dd");
int i = selectCountByOrgSid(billsType, date, orgSid); // 流水号
String num = String.format("%04d", i + 1); // 不足4位补0 int i = selectCountByOrgSid(billsType, date, orgSid);
Map<String, String> map = new HashMap<>(); String num = String.format("%04d", i + 1); // 不足4位补0
map.put("billNo_Num", billsType + orgCode + date.replaceAll("-","") + num); Map<String, String> map = new HashMap<>();
map.put("billNo", billsType + orgCode + date.replaceAll("-","")); map.put("billNo_Num", billsType + orgCode + date.replaceAll("-", "") + num);
map.put("staffSid", user.getStaffSid()); map.put("billNo", billsType + orgCode + date.replaceAll("-", ""));
map.put("staffName", user.getName()); map.put("staffSid", user.getStaffSid());
map.put("orgSid", orgSid); map.put("staffName", user.getName());
map.put("orgName", orgName); map.put("orgSid", orgSid);
return map; map.put("orgName", orgName);
} return map;
}
/**
* 根据 单据类型编号+部门编码+日期 查询 /**
* * 根据 单据类型编号+部门编码+日期 查询
* @param billsType *
* @param date * @param billsType
* @param orgSid * @param date
* @return * @param orgSid
*/ * @return
public int selectCountByOrgSid(String billsType, String date, String orgSid) { */
return baseMapper.selectCountByOrgSid(billsType, date, orgSid); public int selectCountByOrgSid(String billsType, String date, String orgSid) {
} return baseMapper.selectCountByOrgSid(billsType, date, orgSid);
}
public ResultBean submitBaseOutSourcingApplication(SubmitBaseOutSourcingApplicationDto dto) {
//取组织架构的全路径sid public ResultBean submitBaseOutSourcingApplication(SubmitBaseOutSourcingApplicationDto dto) {
SysStaffOrg sysStaffOrg=sysStaffOrgFeign.getOrgByStaffSid(dto.getStaffSid()).getData(); //取组织架构的全路径sid
String orgSidPath=sysStaffOrg.getOrgSidPath(); SysStaffOrg sysStaffOrg = sysStaffOrgFeign.getOrgByStaffSid(dto.getStaffSid()).getData();
Map<String, Object> variables=BeanUtil.beanToMap(dto); String orgSidPath = sysStaffOrg.getOrgSidPath();
ResultBean resultBean = saveOrUpdateDto(dto); Map<String, Object> variables = BeanUtil.beanToMap(dto);
String businessSid = resultBean.getData().toString();
BusinessVariables bv= new BusinessVariables(); String busSid = dto.getBusinessSid();
BeanUtil.copyProperties(dto,bv); if (StringUtils.isBlank(busSid)) {
bv.setOrgSidPath(orgSidPath);
bv.setBusinessSid(businessSid); ResultBean resultBean = saveOrUpdateDto(dto);//insert
bv.setUserSid(dto.getUserSid());
variables.put("businessSid",businessSid); String businessSid = resultBean.getData().toString();
bv.setFormVariables(variables); BusinessVariables bv = new BusinessVariables();
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId()); BeanUtil.copyProperties(dto, bv);
//如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。 bv.setOrgSidPath(orgSidPath);
// 应该是也不允许走if 也不运行走else 那应该如何验证这个id是否允许走else呢? bv.setBusinessSid(businessSid);
// 取出来业务数据的taskid和前端传递的taskid作比较 来判断数据的是否有效 本质上是数据版本一致性的问题 bv.setUserSid(dto.getUserSid());
BaseOutsourcingApplicationDto booad=baseMapper.getBySid(businessSid); variables.put("businessSid", businessSid);
String businessTaskid=booad.getTaskId(); bv.setFormVariables(variables);
if(StringUtils.isBlank(businessTaskid)&&StringUtils.isBlank(dto.getTaskId())){ bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId());
// 新提交 taskid都是空的 //如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。
ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.startProcess(bv); // 应该是也不允许走if 也不运行走else 那应该如何验证这个id是否允许走else呢?
UpdateFlowFieldVo uff=resultBean1.getData(); // 取出来业务数据的taskid和前端传递的taskid作比较 来判断数据的是否有效 本质上是数据版本一致性的问题
updateFlowFiled(BeanUtil.beanToMap(uff));
return resultBean1; ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.startProcess(bv);
}else if(businessTaskid.equals(dto.getTaskId())){//只有数据一致的时候才能进行下一步 UpdateFlowFieldVo uff = resultBean1.getData();
bv.setTaskDefKey(booad.getTaskDefKey()); updateFlowFiled(BeanUtil.beanToMap(uff));
bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); return resultBean1;
bv.setInstanceId(dto.getInstanceId()); }
return complete(bv);
}else{
return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!"); BaseOutsourcingApplicationDto booad = new BaseOutsourcingApplicationDto();
} int r = submitBusinessData(dto, busSid, booad);
} if (r == 0) {
/** return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!");
* 检查用户是否设置部门 }
*
* @param staffSid ResultBean resultBean = saveOrUpdateDto(dto);//update
* @return 返回部门sid String businessSid = resultBean.getData().toString();
*/ BusinessVariables bv = new BusinessVariables();
private String checkUserOrg(String staffSid) { BeanUtil.copyProperties(dto, bv);
String orgSid = ""; bv.setOrgSidPath(orgSidPath);
ResultBean<String> resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid); bv.setBusinessSid(businessSid);
if (resultBean.getSuccess()) { bv.setUserSid(dto.getUserSid());
orgSid = resultBean.getData(); variables.put("businessSid", businessSid);
} bv.setFormVariables(variables);
return orgSid; bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId());
} //如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。
// 应该是也不允许走if 也不运行走else 那应该如何验证这个id是否允许走else呢?
/** // 取出来业务数据的taskid和前端传递的taskid作比较 来判断数据的是否有效 本质上是数据版本一致性的问题
* 保存流程业务关联表 数据
* if (r == 1) {
* @param map ResultBean<UpdateFlowFieldVo> resultBean1 = flowableFeign.startProcess(bv);
*/ UpdateFlowFieldVo uff = resultBean1.getData();
private void saveSysFormLink(Map<String, String> map) { updateFlowFiled(BeanUtil.beanToMap(uff));
String sid = map.get("sid"); return resultBean1;
ResultBean resultBean = sysFormLinkFeign.selectByBusinessSid(sid); } else if (r == 2) {
if (!resultBean.getSuccess()) { // 新增 bv.setTaskDefKey(booad.getTaskDefKey());
SysFormLinkDto sysFormLinkDto = new SysFormLinkDto(); bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
sysFormLinkDto.setBusinessSid(map.get("sid")); bv.setInstanceId(dto.getInstanceId());
sysFormLinkDto.setProcInsId(map.get("procInsId")); return complete(bv);
sysFormLinkDto.setTaskDefKey(map.get("taskDefKey")); }
sysFormLinkDto.setNodeState(map.get("nodeState")); return ResultBean.fireFail();
sysFormLinkDto.setFormType(SysFormLinkTypeEnum.ORDER_DEPOSIT_VEHICLE.getCode()); }
sysFormLinkDto.setFlowState(Integer.parseInt(SysFormLinkFlowStateEnum.PROCESSING.getCode()));
sysFormLinkFeign.save(sysFormLinkDto); private synchronized int submitBusinessData(SubmitBaseOutSourcingApplicationDto dto,
} else { // 更新 String businessSid, BaseOutsourcingApplicationDto booad) {
Map<String, Object> updateMap = new HashMap<>(); int r = 0;
updateMap.put("businessSid", sid); booad = baseMapper.getBySid(businessSid);
updateMap.put("nodeState", map.get("nodeState")); String businessTaskid = booad.getTaskId();
updateMap.put("taskDefKey", map.get("taskDefKey")); if (StringUtils.isBlank(businessTaskid) && StringUtils.isBlank(dto.getTaskId())) {
updateMap.put("flowState", SysFormLinkFlowStateEnum.PROCESSING.getCode()); // 新提交 taskid都是空的
sysFormLinkFeign.updateFiled(updateMap); r = 1;
} } else if (StringUtils.isNotBlank(businessTaskid) && businessTaskid.equals(dto.getTaskId())) {//只有数据一致的时候才能进行下一步
} r = 2;
}
/** return r;
* 办理 }
* @param bv
* @return /**
*/ * 检查用户是否设置部门
public ResultBean complete(BusinessVariables bv) { *
BaseOutsourcingApplicationDto booad=baseMapper.getBySid(bv.getBusinessSid()); * @param staffSid
String businessTaskid=booad.getTaskId(); * @return 返回部门sid
if(businessTaskid.equals(bv.getTaskId())){ //只有数据一致的时候才能进行下一步 */
ResultBean<UpdateFlowFieldVo> rb = flowableFeign.handleProsess(bv); private String checkUserOrg(String staffSid) {
Map<String, Object> stringObjectMap = BeanUtil.beanToMap(rb.getData()); String orgSid = "";
updateFlowFiled(stringObjectMap); ResultBean<String> resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid);
return rb; if (resultBean.getSuccess()) {
}else{ orgSid = resultBean.getData();
return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!"); }
} return orgSid;
} }
/** /**
* 更新流程相关的状态 * 保存流程业务关联表 数据
* @param map *
* @return * @param map
*/ */
private int updateFlowFiled(Map<String, Object> map) { private void saveSysFormLink(Map<String, String> map) {
return baseMapper.updateFlowFiled(map); String sid = map.get("sid");
} ResultBean resultBean = sysFormLinkFeign.selectByBusinessSid(sid);
if (!resultBean.getSuccess()) { // 新增
/** SysFormLinkDto sysFormLinkDto = new SysFormLinkDto();
* 撤回 sysFormLinkDto.setBusinessSid(map.get("sid"));
* @param userSid sysFormLinkDto.setProcInsId(map.get("procInsId"));
* @param businessSid sysFormLinkDto.setTaskDefKey(map.get("taskDefKey"));
* @param flowTaskVo sysFormLinkDto.setNodeState(map.get("nodeState"));
* @return sysFormLinkDto.setFormType(SysFormLinkTypeEnum.ORDER_DEPOSIT_VEHICLE.getCode());
*/ sysFormLinkDto.setFlowState(Integer.parseInt(SysFormLinkFlowStateEnum.PROCESSING.getCode()));
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) { sysFormLinkFeign.save(sysFormLinkDto);
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); } else { // 更新
BeanUtil.copyProperties(flowTaskVo,fl); Map<String, Object> updateMap = new HashMap<>();
fl.setBusinessSid(businessSid); updateMap.put("businessSid", sid);
fl.setUserSid(userSid); updateMap.put("nodeState", map.get("nodeState"));
ResultBean<UpdateFlowFieldVo> resultBean =flowableFeign.revokeProcess(fl); updateMap.put("taskDefKey", map.get("taskDefKey"));
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); updateMap.put("flowState", SysFormLinkFlowStateEnum.PROCESSING.getCode());
return resultBean; sysFormLinkFeign.updateFiled(updateMap);
} }
}
/**
* 驳回 /**
* @param businessSid * 办理
* @param flowTaskVo *
* @return * @param bv
*/ * @return
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) { */
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); public ResultBean complete(BusinessVariables bv) {
BeanUtil.copyProperties(flowTaskVo,fl); BaseOutsourcingApplicationDto booad = baseMapper.getBySid(bv.getBusinessSid());
fl.setBusinessSid(businessSid); String businessTaskid = booad.getTaskId();
BaseOutsourcingApplicationDto boad = baseMapper.getBySid(businessSid); if (businessTaskid.equals(bv.getTaskId())) { //只有数据一致的时候才能进行下一步
ResultBean<UpdateFlowFieldVo> rb = flowableFeign.handleProsess(bv);
ResultBean<UpdateFlowFieldVo> resultBean =flowableFeign.taskReject(fl); Map<String, Object> stringObjectMap = BeanUtil.beanToMap(rb.getData());
UpdateFlowFieldVo data = resultBean.getData(); updateFlowFiled(stringObjectMap);
Map<String, Object> stringObjectMap = BeanUtil.beanToMap(resultBean.getData()); return rb;
stringObjectMap.put("taskDefKey",data.getTaskDefKey()); } else {
stringObjectMap.put("procInstSid",boad.getProcInstSid()); return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!");
stringObjectMap.put("procDefId",boad.getProcDefId()); }
stringObjectMap.put("nodeState",data.getNodeState()); }
//stringObjectMap.put("taskId",resultBean.getData().getTaskId());
/**
updateFlowFiled(stringObjectMap); * 更新流程相关的状态
return resultBean; *
} * @param map
* @return
/** */
* 终止流程 private int updateFlowFiled(Map<String, Object> map) {
* @param businessSid return baseMapper.updateFlowFiled(map);
* @param flowTaskVo }
* @return
*/ /**
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) { * 撤回
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); *
BeanUtil.copyProperties(flowTaskVo,fl); * @param userSid
fl.setBusinessSid(businessSid); * @param businessSid
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(fl); * @param flowTaskVo
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); * @return
return resultBean; */
} public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
/** BeanUtil.copyProperties(flowTaskVo, fl);
* 流程历史流转记录 fl.setBusinessSid(businessSid);
* @param procInsId fl.setUserSid(userSid);
* @param deployId ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(fl);
* @return Map<String, Object> stringObjectMap = BeanUtil.beanToMap(resultBean.getData());
*/ updateFlowFiled(stringObjectMap);
public ResultBean flowRecord(String procInsId, String deployId) { return resultBean;
return flowTaskFeign.businessFlowRecord(procInsId,deployId); }
}
/**
public ResultBean readXml(String deployId) { * 驳回
return flowTaskFeign.readXml(deployId); *
} * @param businessSid
* @param flowTaskVo
public ResultBean getFlowViewer(String procInsId) { * @return
return flowTaskFeign.getFlowViewer(procInsId); */
} public ResultBean taskReject(FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
public ResultBean getNextTasks(String taskId) { BeanUtil.copyProperties(flowTaskVo, fl);
return flowTaskFeign.getNextTasks(taskId); BaseOutsourcingApplicationDto boad = baseMapper.getBySid(flowTaskVo.getBusinessSid());
} ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(fl);
UpdateFlowFieldVo data = resultBean.getData();
public ResultBean<List<SysUserVo>> getUsersByRoleSid(String orgSid,String roleSid) { Map<String, Object> stringObjectMap = BeanUtil.beanToMap(resultBean.getData());
UserQuery userQuery=new UserQuery(); stringObjectMap.put("taskDefKey", data.getTaskDefKey());
userQuery.setRoleSid(roleSid); stringObjectMap.put("procInstSid", boad.getProcInstSid());
userQuery.setOrgSidPath(orgSid); stringObjectMap.put("procDefId", boad.getProcDefId());
return sysUserFeign.getUserByRole(userQuery); stringObjectMap.put("nodeState", data.getNodeState());
} //stringObjectMap.put("taskId",resultBean.getData().getTaskId());
public ResultBean getProcessCirculationNodesByMap(BaseOutsourcingApplicationDto dto) { updateFlowFiled(stringObjectMap);
BusinessVariables bv=new BusinessVariables(); return resultBean;
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId()); }
bv.setFormVariables(BeanUtil.beanToMap(dto));
ResultBean processCirculationNodesByMap =flowTaskFeign.getProcessCirculationNodesByMap(bv); /**
processCirculationNodesByMap.setCode("200"); * 终止流程
processCirculationNodesByMap.setSuccess(true); *
return processCirculationNodesByMap; * @param businessSid
} * @param flowTaskVo
* @return
public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) { */
BusinessVariables bv=new BusinessVariables(); public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId()); com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
bv.setTaskDefKey(gnnd.getTaskDefKey()); BeanUtil.copyProperties(flowTaskVo, fl);
bv.setFormVariables(gnnd.getFormVariables()); fl.setBusinessSid(businessSid);
ResultBean processCirculationNodesByMap =flowTaskFeign.getNextNodesForSubmit(bv); ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(fl);
processCirculationNodesByMap.setCode("200"); updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
processCirculationNodesByMap.setSuccess(true); return resultBean;
return processCirculationNodesByMap; }
}
/**
public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) { * 流程历史流转记录
BusinessVariables bv=new BusinessVariables(); *
bv.setTaskDefKey(gnnd.getTaskDefKey()); * @param procInsId
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId()); * @param deployId
bv.setFormVariables(gnnd.getFormVariables()); * @return
ResultBean processCirculationNodesByMap =flowTaskFeign.getPreviousNodesForReject(bv); */
processCirculationNodesByMap.setCode("200"); public ResultBean flowRecord(String procInsId, String deployId) {
processCirculationNodesByMap.setSuccess(true); return flowTaskFeign.businessFlowRecord(procInsId, deployId);
return processCirculationNodesByMap; }
}
public ResultBean readXml(String deployId) {
return flowTaskFeign.readXml(deployId);
}
public ResultBean getFlowViewer(String procInsId) {
return flowTaskFeign.getFlowViewer(procInsId);
}
public ResultBean getNextTasks(String taskId) {
return flowTaskFeign.getNextTasks(taskId);
}
public ResultBean<List<SysUserVo>> getUsersByRoleSid(String orgSid, String roleSid) {
UserQuery userQuery = new UserQuery();
userQuery.setRoleSid(roleSid);
userQuery.setOrgSidPath(orgSid);
return sysUserFeign.getUserByRole(userQuery);
}
public ResultBean getProcessCirculationNodesByMap(BaseOutsourcingApplicationDto dto) {
BusinessVariables bv = new BusinessVariables();
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId());
bv.setFormVariables(BeanUtil.beanToMap(dto));
ResultBean processCirculationNodesByMap = flowTaskFeign.getProcessCirculationNodesByMap(bv);
processCirculationNodesByMap.setCode("200");
processCirculationNodesByMap.setSuccess(true);
return processCirculationNodesByMap;
}
public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) {
BusinessVariables bv = new BusinessVariables();
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId());
bv.setTaskDefKey(gnnd.getTaskDefKey());
bv.setFormVariables(gnnd.getFormVariables());
ResultBean processCirculationNodesByMap = flowTaskFeign.getNextNodesForSubmit(bv);
processCirculationNodesByMap.setCode("200");
processCirculationNodesByMap.setSuccess(true);
return processCirculationNodesByMap;
}
public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) {
BusinessVariables bv = new BusinessVariables();
bv.setTaskDefKey(gnnd.getTaskDefKey());
bv.setModelId(ProcDefEnum.BASEOUTSOURCINGAPPLICATION.getProDefId());
bv.setFormVariables(gnnd.getFormVariables());
ResultBean processCirculationNodesByMap = flowTaskFeign.getPreviousNodesForReject(bv);
processCirculationNodesByMap.setCode("200");
processCirculationNodesByMap.setSuccess(true);
return processCirculationNodesByMap;
}
} }

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

@ -102,7 +102,7 @@ public interface FlowableFeign {
@ApiOperation(value = "撤回流程") @ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess") @PostMapping(value = "/revokeProcess")
@ResponseBody @ResponseBody
ResultBean revokeProcess(@RequestBody com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl); ResultBean<UpdateFlowFieldVo> revokeProcess(@RequestBody com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl);
@ApiOperation(value = "驳回流程") @ApiOperation(value = "驳回流程")
@PostMapping(value = "/taskReject") @PostMapping(value = "/taskReject")

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

@ -284,7 +284,7 @@ public class FlowableRest implements FlowableFeign {
} }
@Override @Override
public ResultBean revokeProcess(com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl) { public ResultBean<UpdateFlowFieldVo> revokeProcess(com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
UpdateFlowFieldVo vo = new UpdateFlowFieldVo(); UpdateFlowFieldVo vo = new UpdateFlowFieldVo();
ResultBean<List<LatestTaskVo>> resultBean = flowtaskService.revokeProcess(fl); ResultBean<List<LatestTaskVo>> resultBean = flowtaskService.revokeProcess(fl);

2
anrui-scm/anrui-scm-ui/src/api/baseoutsourcingapplication/baseoutsourcingapplication.js

@ -92,7 +92,7 @@ export default {
// 驳回任务 // 驳回任务
rejectTask: function(params) { rejectTask: function(params) {
return request({ return request({
url: '/base/baseoutsourcingapplication/reject/' + params.businessSid, url: '/base/baseoutsourcingapplication/reject',
method: 'post', method: 'post',
data: params, data: params,
headers: { headers: {

25
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue

@ -10,7 +10,7 @@
</div> </div>
</div> </div>
<!-- 标题按钮部分结束 --> <!-- 标题按钮部分结束 -->
<div class="listconadd"> <div >
<el-form ref="form_obj" :model="formobj" label-position="right" class="formadd"> <el-form ref="form_obj" :model="formobj" label-position="right" class="formadd">
<el-row> <el-row>
<el-col :span="3" class="tleftb">申请编号</el-col> <el-col :span="3" class="tleftb">申请编号</el-col>
@ -72,7 +72,6 @@
</el-table> </el-table>
</div> </div>
</el-form> </el-form>
</div> </div>
</div> </div>
</template> </template>
@ -135,6 +134,14 @@ export default {
this.revokeList.businessSid = sid this.revokeList.businessSid = sid
this.revokeList.instanceId = obj.instanceId this.revokeList.instanceId = obj.instanceId
this.revokeList.taskId = obj.taskId this.revokeList.taskId = obj.taskId
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 600 + 'px'
}
}, '*')
}, },
methods: { methods: {
// //
@ -153,15 +160,15 @@ export default {
}) })
}, },
/** 撤回任务 */ /** 撤回任务 */
handleRevoke() {alert(1); handleRevoke() {
request.revokeTask(this.revokeList).then((response) => { request.revokeTask(this.revokeList).then((response) => {
if (response.code === '200') { if (response.code === '200') {
this.$notify({ window.parent.postMessage({
title: '提示', cmd: 'returnHeight',
message: '执行成功', params: {
type: 'success', code: 1,
duration: 2000 }
}) }, '*')
} else { } else {
this.$notify({ this.$notify({
title: '提示', title: '提示',

79
anrui-system-ui/src/views/flow/doneList.vue

@ -92,58 +92,16 @@
</div> </div>
<!-- Start查看页面 --> <!-- Start查看页面 -->
<el-dialog <el-dialog
title=""
:visible.sync="centerDialogVisible" :visible.sync="centerDialogVisible"
width="85%" width="78%"
height="100%" height="1%"
:before-close="closeIt" :before-close="closeIt"
center><!--src="http://localhost:9531/#/xiaoshouguanliFlow/dingjinshouqu" closeIt --> center>
<div class="scroll_div"> <iframe frameborder="0" id="iframe_done"
<iframe id="iframe_done" height="1000px" width="100%" style="width:100%;"
:src="this.centerDialogVisible === true ? url :''" :src="this.centerDialogVisible === true ? url :''"
scrolling="no"></iframe> ></iframe>
<div class="diaTitle"><i class="el-icon-notebook-2"></i><span>审批记录</span></div>
<div>
<el-card class="box-card" v-if="flowRecordList">
<el-col :span="16" :offset="4">
<div class="block">
<el-timeline>
<el-timeline-item
v-for="(item,index ) in flowRecordList"
:key="index"
:icon="setIcon(item.finishTime)"
:color="setColor(item.finishTime)"
>
<p style="font-weight: 700">{{item.taskName}}</p>
<el-card :body-style="{ padding: '10px' }">
<label v-if="item.assigneeName" style="font-weight: normal;margin-right: 30px;">实际办理
{{item.assigneeName}}
<el-tag type="info" size="mini">{{item.deptName}}</el-tag>
</label>
<label v-if="item.candidate"
style="font-weight: normal;margin-right: 30px;">候选办理{{item.candidate}}</label><br>
<label style="font-weight: normal">接收时间 </label><label style="color:#8a909c;font-weight: normal">{{item.createTime}}</label><br>
<label v-if="item.finishTime" style="font-weight: normal">办结时间 </label>
<label style="color:#8a909c;font-weight: normal">{{item.finishTime}}</label><br>
<label v-if="item.duration" style="font-weight: normal">耗时</label>
<label style="color:#8a909c;font-weight: normal">{{item.duration}}</label>
<p v-if="item.comment">
<el-tag type="success" v-if="item.comment.type === '1'"> {{item.comment.comment}}</el-tag>
<el-tag type="warning" v-if="item.comment.type === '2'"> {{item.comment.comment}}</el-tag>
<el-tag type="danger" v-if="item.comment.type === '3'"> {{item.comment.comment}}</el-tag>
<el-tag type="danger" v-if="item.comment.type === '7'"> {{item.comment.comment}}</el-tag>
</p>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
</el-col>
</el-card>
</div>
</div>
<span slot="footer" class="dialog-footer">
<!-- <el-button type="danger" :disabled="this.taskName_now == '已办结'?true:false" @click="openRevoke"> </el-button>-->
<!-- <el-button type="info" @click="centerDialogVisible = false"> </el-button>-->
</span>
</el-dialog> </el-dialog>
<!-- End查看页面--> <!-- End查看页面-->
@ -203,6 +161,7 @@
}, },
data() { data() {
return { return {
dialogHeight:'80%',
isDialogVisible: false, // isDialogVisible: false, //
centerDialogVisible: false, // centerDialogVisible: false, //
editDialog: false, editDialog: false,
@ -245,6 +204,10 @@
} }
} }
}, },
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
},
created() { created() {
// //
// this.getList() // this.getList()
@ -268,12 +231,24 @@
} }
}, },
methods: { methods: {
setIframeHeight(iframe) {
iframe.height = this.dialogHeight;//iframeWin.document.documentElement.scrollHeight || iframeWin.document.body.scrollHeight;
},
async handleMessage (event) {
var code= event.data.params.code;
if(code==1){
this.init()
this.centerDialogVisible=false
}else if(code==2){
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe_done'));
}
},
init() { init() {
var token = getStorage(); var token = getStorage();
loginDetails(token).then((response) => { loginDetails(token).then((response) => {
if (response.code === '200') { if (response.code === '200') {
this.loginInfo = response.data; this.loginInfo = response.data;
console.log(this.loginInfo)
this.revokeList.userSid = this.loginInfo.sid this.revokeList.userSid = this.loginInfo.sid
this.listQuery.params.userSid = this.loginInfo.sid this.listQuery.params.userSid = this.loginInfo.sid
this.getList() this.getList()
@ -282,7 +257,6 @@
}, },
/** 打开详情 */ /** 打开详情 */
handleCheck(row) { handleCheck(row) {
console.log('row', row)
this.selectUrl_list.proc_def_id = row.procDefId this.selectUrl_list.proc_def_id = row.procDefId
this.selectUrl_list.taskDefKey = row.taskDefKey this.selectUrl_list.taskDefKey = row.taskDefKey
this.selectUrl_list.type = 2 // this.selectUrl_list.type = 2 //
@ -297,7 +271,6 @@
if (response.code === '200') { if (response.code === '200') {
// this.url = 'http://120.46.131.15' + response.data.url + '?row=' + row.processVariables.businessSid + '#data=' + JSON.stringify(parameter_list) + '?token=' + getStorage() // this.url = 'http://120.46.131.15' + response.data.url + '?row=' + row.processVariables.businessSid + '#data=' + JSON.stringify(parameter_list) + '?token=' + getStorage()
this.url = 'http://localhost:9531' + response.data.url + '?row=' + row.processVariables.businessSid + '#data=' + JSON.stringify(parameter_list) + '?token=123456abc' this.url = 'http://localhost:9531' + response.data.url + '?row=' + row.processVariables.businessSid + '#data=' + JSON.stringify(parameter_list) + '?token=123456abc'
console.log('页面url', this.url)
} else { } else {
this.$notify({ this.$notify({
title: '提示', title: '提示',

Loading…
Cancel
Save