Commit 7295faea authored by litengwei's avatar litengwei

Merge remote-tracking branch 'origin/develop_tzs_register' into develop_tzs_register

parents 37a32ecc 0c3cf18b
package com.yeejoin.amos.boot.module.jg.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -7,6 +8,7 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* @author system_generator
......@@ -60,6 +62,13 @@ public class JgMaintenanceContractDto extends BaseDto {
@ApiModelProperty(value = "维保合同结束日期")
private Date informEnd;
@ApiModelProperty(value = "管理员id")
private String maintenanceManagerId;
@ApiModelProperty(value = "管理员姓名")
private String maintenanceManagerName;
@ApiModelProperty(value = "维保负责人一id")
private String maintenanceManagerOneId;
......@@ -73,9 +82,6 @@ public class JgMaintenanceContractDto extends BaseDto {
@ApiModelProperty(value = "24小时维保电话")
private String maintenance24Tel;
@ApiModelProperty(value = "办理流程")
private String applyFlow;
@ApiModelProperty(value = "备注")
private String remark;
......@@ -101,4 +107,18 @@ public class JgMaintenanceContractDto extends BaseDto {
@ApiModelProperty(value = "创建时间")
private Date createDate;
@TableField("instance_status")
private String instanceStatus;
@TableField("next_execute_ids")
private String nextExecuteIds;
@TableField("promoter")
private String promoter;
@TableField("status")
private String status;
private List<String> roleIds;
}
......@@ -179,4 +179,6 @@ public class JgReformNoticeDto extends BaseDto {
@ApiModelProperty(value = "设备使用地点-街道(镇)")
private String streetName;
private String receiveOrgCreditCode;
}
......@@ -101,6 +101,19 @@ public class JgMaintenanceContract extends BaseEntity {
private Date informEnd;
/**
* 管理员id
*/
@TableField("maintenance_manager_id")
private String maintenanceManagerId;
/**
* 管理员id
*/
@TableField("maintenance_manager_name")
private String maintenanceManagerName;
/**
* 维保负责人一id
*/
@TableField("maintenance_manager_one_id")
......@@ -126,12 +139,6 @@ public class JgMaintenanceContract extends BaseEntity {
private String maintenance24Tel;
/**
* 办理流程
*/
@TableField("apply_flow")
private String applyFlow;
/**
* 备注
*/
@TableField("remark")
......@@ -180,4 +187,19 @@ public class JgMaintenanceContract extends BaseEntity {
@TableField("create_date")
private Date createDate;
@TableField("instance_status")
private String instanceStatus;
@TableField("next_execute_ids")
private String nextExecuteIds;
@TableField("promoter")
private String promoter;
/**
* 状态
*/
@TableField("status")
private String status;
}
......@@ -8,7 +8,8 @@ import io.swagger.models.auth.In;
public enum MaintenanceEnum {
SHIYONG(0,"使用单位"),
WEIBAO(1,"维保单位"),
JIANGUAN(2,"监管单位");
JIANGUAN(2,"监管单位"),
OVER(3,"维保结束");
private Integer code;
private String msg;
......
package com.yeejoin.amos.boot.module.jg.api.mapper;
import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContractEq;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper 接口
......@@ -10,4 +13,6 @@ import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContractEq;
*/
public interface JgMaintenanceContractEqMapper extends CustomBaseMapper<JgMaintenanceContractEq> {
Boolean deleteForBatch(@Param("ids") List<Long> ids);
}
......@@ -24,4 +24,6 @@ public interface JgMaintenanceContractMapper extends BaseMapper<JgMaintenanceCon
Boolean deleteForBatch(@Param("ids") List<Long> ids);
void updatePromoter(@Param("id")Long id);
}
package com.yeejoin.amos.boot.module.jg.api.vo;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
......@@ -20,6 +22,9 @@ public class JgMaintenanceContractVo {
@TableField("维保单位-驳回-是否可操作")
private Boolean rejectedIsFlag;
@TableField("使用:0,维保:1,监管:2")
private String phase;
@TableField("维保备案编号")
private String applyNo;
......@@ -83,9 +88,6 @@ public class JgMaintenanceContractVo {
@TableField("24小时维保电话")
private String maintenance24Tel;
@TableField("办理流程")
private String applyFlow;
@TableField("备注")
private String remark;
......@@ -110,4 +112,37 @@ public class JgMaintenanceContractVo {
@TableField("创建时间")
private Date createDate;
@TableField("管理员id")
private String maintenanceManagerId;
@ApiModelProperty(value = "管理员姓名")
private String maintenanceManagerName;
@ApiModelProperty(value = "主键ID")
protected Long sequenceNbr;
@ApiModelProperty(value = "更新时间")
protected Date recDate;
@ApiModelProperty(value = "更新人id")
protected String recUserId;
@ApiModelProperty(value = "更新人")
protected String recUserName;
@ApiModelProperty(value = "是否删除")
private Boolean isDelete=false;
@ApiModelProperty("instance_status")
private String instanceStatus;
@ApiModelProperty("next_execute_ids")
private String nextExecuteIds;
@ApiModelProperty("promoter")
private String promoter;
@ApiModelProperty("status")
private String status;
}
......@@ -2,4 +2,12 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractEqMapper">
<delete id="deleteForBatch">
UPDATE amos_tzs_biz.tzs_jg_maintenance_contract_eq tjmce
set tjmce.is_delete = 1
WHERE tjmce.sequence_nbr in
<foreach collection="ids" separator="," item="id" open="(" close=")">
#{id}
</foreach>
</delete>
</mapper>
......@@ -40,6 +40,9 @@
<if test="dto.informEnd != null">
inform_end = #{dto.informEnd},
</if>
<if test="dto.maintenanceManagerId != null">
maintenance_manager_id = #{dto.maintenanceManagerId},
</if>
<if test="dto.maintenanceManagerOneId != null">
maintenance_manager_one_id = #{dto.maintenanceManagerOneId},
</if>
......@@ -52,9 +55,6 @@
<if test="dto.maintenance24Tel != null">
maintenance_24_tel = #{dto.maintenance24Tel},
</if>
<if test="dto.applyFlow != null">
apply_flow = #{dto.applyFlow},
</if>
<if test="dto.remark != null">
remark = #{dto.remark},
</if>
......@@ -79,12 +79,19 @@
<if test="dto.instanceId != null">
instance_id = #{dto.instanceId},
</if>
<if test="dto.promoter != null">
promoter = #{dto.promoter}
</if>
</set>
WHERE sequence_nbr = #{dto.sequenceNbr}
</update>
<update id="updatePromoter">
UPDATE amos_tzs_biz.tzs_jg_maintenance_contract set promoter = null
where sequence_nbr = #{id}
</update>
<delete id="deleteForBatch">
delete from amos_tzs_biz.tzs_jg_maintenance_contract tjmc
UPDATE amos_tzs_biz.tzs_jg_maintenance_contract tjmc
set tjmc.is_delete = 1
WHERE tjmc.sequence_nbr in
<foreach collection="ids" separator="," item="id" open="(" close=")">
#{id}
......@@ -110,7 +117,6 @@
maintenance_manager_two_id,
emergency_call,
maintenance_24_tel,
apply_flow,
remark,
is_delete,
input_unit_no,
......@@ -126,6 +132,7 @@
FROM
amos_tzs_biz.tzs_jg_maintenance_contract
<where>
is_delete = 0
<if test="contractDto.applyNo != '' and contractDto.applyNo != null">
and apply_no like concat('%',#{contractDto.applyNo},'%')
</if>
......@@ -138,9 +145,6 @@
<if test="contractDto.applyStatus != '' and contractDto.applyStatus != null">
and apply_status like concat('%',#{contractDto.applyStatus},'%')
</if>
<if test="contractDto.applyFlow != '' and contractDto.applyFlow != null">
and apply_flow like concat('%',#{contractDto.applyFlow},'%')
</if>
<if test="contractDto.useUnitCode != '' and contractDto.useUnitCode != null">
and use_unit_code = #{contractDto.useUnitCode}
</if>
......@@ -150,6 +154,11 @@
<if test="contractDto.receiveOrgCode != '' and contractDto.receiveOrgCode != null">
and receive_org_code = #{contractDto.receiveOrgCode}
</if>
<if test="contractDto.roleIds != null">
<foreach collection='roleIds' item='role' open='and (' close=')' separator='or'>
instance_status like concat('%',#{role},'%')
</foreach>
</if>
</where>
</select>
<select id="queryBySequenceNbr"
......
......@@ -13,9 +13,17 @@
isn.notice_status AS noticeStatus,
isn.install_unit_name AS installUnitName,
isn.province_name AS provinceName,
isn.province,
isn.city,
isn.county,
isn.city_name AS cityName,
isn.county_name AS countyName,
isn.instance_id AS instanceId
isn.street_name AS streetName,
isn.street,
isn.instance_id AS instanceId,
isn.plan_date AS planDate,
isn.receive_company_code AS receiveCompanyCode,
isn.receive_org_name AS receiveOrgName
FROM
tzs_jg_reform_notice isn
<where>
......@@ -38,7 +46,9 @@
</if>
</if>
<if test="type == 'supervision'">
AND (isn.notice_status in ('6612', '6613', '6614') or isn.status in('6614') )
AND isn.notice_status in ('6612', '6613', '6614')
AND isn.receive_org_credit_code = #{orgCode}
<!-- AND (isn.notice_status in ('6612', '6613', '6614') or isn.status in('6614') )-->
</if>
<if test="orgCode != null and orgCode != ''">
AND isn.install_unit_credit_code = #{orgCode}
......@@ -56,8 +66,17 @@
isn.province_name AS provinceName,
isn.city_name AS cityName,
isn.county_name AS countyName,
isn.province,
isn.city,
isn.county,
isn.street_name AS streetName,
isn.street,
isn.address AS address,
isn.use_unit_name AS useUnitName,
isn.receive_company_code AS receiveCompanyCode,
isn.receive_org_name AS receiveOrgName,
isn.receive_org_code AS receiveOrgCode,
ri.equ_code AS equRegisterCode,
ri.equ_list AS equList,
ri.equ_category AS equCategory,
ri.EQU_DEFINE AS equDefine,
......
......@@ -22,7 +22,7 @@
ur.instance_id as instanceId,
re.equ_id as equipId,
ur.apply_no as applyNo,
ur.next_execute_ids as nextExecuteIds,
ifnull(ur.next_execute_ids,'') as nextExecuteIds,
ur.promoter
from tzs_jg_use_registration ur
LEFT JOIN tzs_jg_use_registration_eq re on ur.sequence_nbr = re.equip_transfer_id
......@@ -43,7 +43,7 @@
<if test="dto.useUnitName != null and dto.useUnitName != ''">
and ur.use_unit_name like concat('%',#{dto.useUnitName},'%')
</if>
<if test="roleIds != null">
<if test="roleIds != null and dto.dataType == 'jg'">
<foreach collection='roleIds' item='role' open='and (' close=')' separator='or'>
instance_status like concat('%',#{role},'%')
</foreach>
......
package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService;
import com.yeejoin.amos.boot.module.ymt.api.entity.EquipmentCategory;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -117,7 +119,8 @@ public class CommonController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getEnterpriseEmployee")
@ApiOperation(httpMethod = "GET", value = "查询企业的下面的人员", notes = "查询企业的下面的人员")
public ResponseModel<List<Map<String,Object>>> getEnterpriseEmployee(@RequestParam(value = "unitCode") String unitCode) {
return ResponseHelper.buildResponse(commonService.getEnterpriseEmployee(unitCode));
public ResponseModel<List<Map<String,Object>>> getEnterpriseEmployee(@RequestParam String unitCode) {
String companyCode = unitCode.split("_")[0];
return ResponseHelper.buildResponse(commonService.getEnterpriseEmployee(companyCode));
}
}
package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
......@@ -16,8 +18,7 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 维保合同备案
......@@ -55,9 +56,11 @@ public class JgMaintenanceContractController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/updateMaintenanceAndEquipment")
@ApiOperation(httpMethod = "POST", value = "更新维保合同和设备对应关系", notes = "更新维保合同和设备对应关系")
public ResponseModel<Object> updateMaintenanceAndEquipment(@RequestBody JgMaintenanceContractDto model,
List<Integer> equipmentLists) {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.updateMaintenanceAndEquipment(model, equipmentLists));
public ResponseModel<Object> updateMaintenanceAndEquipment(@RequestBody Map<String , Object> model,
@RequestParam(value = "submit",required = false,defaultValue = "0") String submit) {
JgMaintenanceContractDto dto = JSON.parseObject(JSON.toJSONString(model), JgMaintenanceContractDto.class);
List<Map<String, Object>> list = (List<Map<String, Object>>) model.get("equipmentLists");
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.updateMaintenanceAndEquipment(submit,dto,list));
}
/**
......@@ -68,43 +71,40 @@ public class JgMaintenanceContractController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/submit")
@ApiOperation(httpMethod = "POST", value = "维保合同提交", notes = "维保合同提交")
public ResponseModel<Object> submit(@RequestBody JgMaintenanceContractDto model) {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.submit(model));
public ResponseModel<Object> submit(@RequestBody Map<String , Object> model) {
JgMaintenanceContractDto dto = JSON.parseObject(JSON.toJSONString(model), JgMaintenanceContractDto.class);
String comment = String.valueOf(model.get("comment"));
String operate = String.valueOf(model.get("operate"));
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.submit(dto,comment,operate));
}
/**
* 撤回
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/revocation")
@ApiOperation(httpMethod = "POST", value = "维保合同撤回", notes = "维保合同撤回")
public ResponseModel<Object> revocation(@RequestBody JgMaintenanceContractDto model) {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.revocation(model));
}
/**
* 维保合同驳回
* 审批
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/rejected")
@ApiOperation(httpMethod = "POST", value = "维保合同驳回", notes = "维保合同驳回")
public ResponseModel<Object> rejected(@RequestBody JgMaintenanceContractDto model) {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.rejected(model));
@PostMapping(value = "/approval")
@ApiOperation(httpMethod = "POST", value = "审批", notes = "审批")
public ResponseModel<Object> approval(@RequestBody Map<String , Object> model) {
JgMaintenanceContractDto dto = JSON.parseObject(JSON.toJSONString(model.get("formData")), JgMaintenanceContractDto.class);
String comment = String.valueOf(model.get("comment"));
String operate = String.valueOf(model.get("operate"));
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.approval(dto,comment,operate));
}
/**
* 维保合同受理
* 撤回
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/accepted")
@ApiOperation(httpMethod = "POST", value = "维保合同受理", notes = "维保合同受理")
public ResponseModel<Object> accepted(@RequestBody JgMaintenanceContractDto model) {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.accepted(model));
@PostMapping(value = "/revocation")
@ApiOperation(httpMethod = "POST", value = "维保合同撤回", notes = "维保合同撤回")
public ResponseModel<Object> revocation(@RequestBody JSONObject map) {
jgMaintenanceContractServiceImpl.revocation(String.valueOf(map.get("instanceId")));
return ResponseHelper.buildResponse("ok");
}
/**
......@@ -163,6 +163,14 @@ public class JgMaintenanceContractController extends BaseController {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.queryBySequenceNbr(sequenceNbr));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/flowExecute")
@ApiOperation(httpMethod = "POST", value = "执行流程", notes = "执行流程")
public ResponseModel<Object> flowExecute(@RequestBody JSONObject map) {
jgMaintenanceContractServiceImpl.flowExecute(Long.valueOf(String.valueOf(map.get("sequenceNbr"))),String.valueOf(map.get("instanceId")), String.valueOf(map.get("operate")), String.valueOf(map.get("comment")), true);
return ResponseHelper.buildResponse("ok");
}
/**
* 列表分页查询
*
......@@ -185,16 +193,4 @@ public class JgMaintenanceContractController extends BaseController {
return ResponseHelper.buildResponse(contractDtoPage);
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "列表全部数据查询维保合同备案", notes = "列表全部数据查询维保合同备案")
@GetMapping(value = "/list")
public ResponseModel<List<JgMaintenanceContractDto>> selectForList() {
return ResponseHelper.buildResponse(jgMaintenanceContractServiceImpl.queryForJgMaintenanceContractList());
}
}
package com.yeejoin.amos.boot.module.jg.biz.controller;
import com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractEqDto;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
......@@ -13,7 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractEqDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
......
......@@ -58,7 +58,7 @@ public class JgReformByWorkFlowController {
@PostMapping (value = "/cancel")
@ApiOperation (httpMethod = "POST", value = "改造告知撤销", notes = "改造告知撤销")
public ResponseModel<JgReformNoticeDto> cancel(@RequestBody Map<String, Object> model) {
JgReformNoticeDto installationInfo = BeanUtil.mapToBean(((LinkedHashMap) model.get("reformNoticeAdd")), JgReformNoticeDto.class, true);
JgReformNoticeDto installationInfo = BeanUtil.mapToBean(((LinkedHashMap) model.get("reformInfo")), JgReformNoticeDto.class, true);
if (Objects.isNull(installationInfo)) {
throw new IllegalArgumentException("参数reformInfo不能为空");
}
......@@ -77,7 +77,7 @@ public class JgReformByWorkFlowController {
public ResponseModel<JgReformNoticeDto> accept(@RequestBody Map<String, Object> model, String op) {
// TODO 受理改造告知流程
LinkedHashMap model1 = (LinkedHashMap) model.get("model");
LinkedHashMap installationInfo = (LinkedHashMap) model1.get("reformNoticeAdd");
LinkedHashMap installationInfo = (LinkedHashMap) model1.get("reformInfo");
JgReformNoticeDto JgReformNoticeDto = JSON.parseObject(JSON.toJSONString(installationInfo), JgReformNoticeDto.class);
jgReformNoticeService.accept(JgReformNoticeDto, op);
return ResponseHelper.buildResponse(null);
......
......@@ -163,7 +163,7 @@ public class CommonServiceImpl implements ICommonService {
if (type.equals("use")) {
type = "使用单位";
} else if (type.equals("maintenance")) {
type = "维保单位";
type = "安装改造维修单位";
} else if (type.equals("inspection")) {
type = "检验检测机构";
}
......@@ -190,7 +190,7 @@ public class CommonServiceImpl implements ICommonService {
@Override
public Map<String, Object> getUserInfo(String sequenceNbr) {
return commonMapper.getUserInfo(sequenceNbr);
return commonMapper.getUserInfo(sequenceNbr.split("_")[0]);
}
@Override
......
package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractEqDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContractEq;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractEqMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgMaintenanceContractEqService;
import com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractEqDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......
package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContract;
import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContractEq;
import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistration;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.MaintenanceEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.UseStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractEqMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgMaintenanceContractService;
import com.yeejoin.amos.boot.module.jg.api.vo.JgMaintenanceContractVo;
......@@ -30,6 +37,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.*;
......@@ -57,43 +65,36 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
@Autowired
private JgMaintenanceContractMapper maintenanceContractMapper;
@Autowired
private JgMaintenanceContractEqMapper maintenanceContractEqMapper;
@Autowired
private JgMaintenanceContractEqServiceImpl jgMaintenanceContractEqService;
@Autowired
private DataDictionaryServiceImpl iDataDictionaryService;
/**
* 监管-根据字典type,code获取字典值
*/
private DataDictionary getDict(String dictType, String dictCode) {
HashMap<String, String> dictMap = new HashMap<>();
LambdaQueryWrapper<DataDictionary> queryWrapper = new LambdaQueryWrapper<DataDictionary>()
.eq(DataDictionary::getType, dictType)
.eq(DataDictionary::getCode, dictCode);
return iDataDictionaryService.getOne(queryWrapper);
}
@Autowired
RedisUtils redisUtils;
/**
* 分页查询
*/
public Page<JgMaintenanceContractVo> queryForPage(Page<JgMaintenanceContract> page,
int phase, JgMaintenanceContractDto dto, ReginParams reginParams) {
int phase,
JgMaintenanceContractDto dto,
ReginParams reginParams) {
Page<JgMaintenanceContractDto> contractList = new Page<>();
Page<JgMaintenanceContractVo> result = new Page<>();
CompanyBo company = reginParams.getCompany();
if (MaintenanceEnum.SHIYONG.getCode().equals(phase)) {
//使用单位用"使用单位统一信用代码"匹配数据
dto.setUseUnitCode(company.getCompanyCode());
dto.setApplyFlow(MaintenanceEnum.SHIYONG.getMsg());
dto.setRoleIds(null);
contractList = maintenanceContractMapper.getContractList(page, dto);
} else if (MaintenanceEnum.WEIBAO.getCode().equals(phase)) {
//维保单位用"维保单位统一信用代码"匹配数据
dto.setMaintenanceUnitCode(company.getCompanyCode());
dto.setApplyFlow(MaintenanceEnum.WEIBAO.getMsg());
dto.setMaintenanceUnitCode(company.getCompanyCode()+"_"+company.getCompanyName());
contractList = maintenanceContractMapper.getContractList(page, dto);
} else if (MaintenanceEnum.JIANGUAN.getCode().equals(phase)) {
//监管单位用"接收机构统一使用代码"匹配
dto.setReceiveOrgCode(company.getOrgCode());
dto.setApplyFlow(MaintenanceEnum.JIANGUAN.getMsg());
contractList = maintenanceContractMapper.getContractList(page, dto);
}
BeanUtils.copyProperties(contractList, result);
......@@ -108,6 +109,8 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
JgMaintenanceContractVo vo = new JgMaintenanceContractVo();
BeanUtils.copyProperties(dto, vo);
vo.setMaintenanceContract(ObjectUtils.isEmpty(dto.getMaintenanceContract()) ? null : JSON.parseArray(dto.getMaintenanceContract()));
vo.setMaintenanceManagerOneName(ObjectUtils.isEmpty(dto.getMaintenanceManagerOneId()) ? null : dto.getMaintenanceManagerOneId().split("_")[1]);
vo.setMaintenanceManagerTwoName(ObjectUtils.isEmpty(dto.getMaintenanceManagerTwoId()) ? null : dto.getMaintenanceManagerTwoId().split("_")[1]);
return vo;
}
......@@ -121,28 +124,124 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
return maintenanceContractMapper.updateBySequenceNbr(dto);
}
public String flowExecute(Long id,String instanceId, String operate, String comment, Boolean update) {
String role = "";
String taskName = "流程结束";
ArrayList<String> roleList = new ArrayList<>();
try {
JSONObject task = workFlowFeginService.getTaskNoAuth(instanceId);
JSONObject taskMessage = JSON.parseObject(JSON.toJSONString(task.get("data")));
String taskId = taskMessage.getString("id");
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
dto.setVariable(map);
//执行流程
Workflow.taskClient.completeByTask(taskId, dto);
// 查询下节点任务
JSONObject taskNoAuth = workFlowFeginService.getTaskNoAuth(instanceId);
if (!ObjectUtils.isEmpty(taskNoAuth.get("data"))) {
JSONObject nextTask = JSON.parseObject(JSON.toJSONString(taskNoAuth.get("data")));
String nextTaskId = nextTask.getString("id");
taskName = nextTask.getString("name");
AjaxResult taskGroupName = Workflow.taskClient.getTaskGroupName(nextTaskId);
JSONArray data = JSON.parseArray(JSON.toJSONString(taskGroupName.get("data")));
for (Object datum : data) {
if (((Map) datum).containsKey("groupId")) {
roleList.add(((Map) datum).get("groupId").toString());
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
role= String.join(",", roleList);
if (update) {
Boolean rollBack = "1".equals(operate) ? true : false;
updateStatus(id, taskName, role, rollBack);
}
return role;
}
public void updateStatus(Long id , String taskName, String role, Boolean rollBack) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
LambdaQueryWrapper<JgMaintenanceContract> lambda = new QueryWrapper<JgMaintenanceContract>().lambda();
lambda.eq(JgMaintenanceContract::getSequenceNbr, id);
JgMaintenanceContract jgMaintenanceContract = this.getBaseMapper().selectOne(lambda);
if ("流程结束".equals(taskName)) {
jgMaintenanceContract.setStatus(taskName);
jgMaintenanceContract.setApplyStatus("已完成");
} else {
jgMaintenanceContract.setNextExecuteIds(role);
jgMaintenanceContract.setPromoter(reginParams.getUserModel().getUserId());
if (!ObjectUtils.isEmpty(jgMaintenanceContract.getInstanceStatus())) {
jgMaintenanceContract.setInstanceStatus(jgMaintenanceContract.getInstanceStatus() + "," + role);
} else {
jgMaintenanceContract.setInstanceStatus(role);
}
UseStatusEnum message = UseStatusEnum.getMessage(taskName);
jgMaintenanceContract.setStatus(message.getPass());
}
if (rollBack){
this.getBaseMapper().update(jgMaintenanceContract, lambda);
this.getBaseMapper().updatePromoter(jgMaintenanceContract.getSequenceNbr());
}else {
this.getBaseMapper().update(jgMaintenanceContract, lambda);
}
}
/**
* 批量删除
*/
@Transactional
public Boolean deleteForBatch(Long[] ids) {
return maintenanceContractMapper.deleteForBatch(Arrays.asList(ids));
List<Long> list = Arrays.asList(ids);
list.forEach(x->{
QueryWrapper<JgMaintenanceContract> wrapper = new QueryWrapper<>();
wrapper.eq("sequence_nbr", x);
JgMaintenanceContract jgMaintenanceContract = maintenanceContractMapper.selectOne(wrapper);
LambdaQueryWrapper<JgMaintenanceContractEq> queryWrapper = new LambdaQueryWrapper<JgMaintenanceContractEq>()
.eq(JgMaintenanceContractEq::getEquipTransferId,jgMaintenanceContract.getApplyNo())
.eq(JgMaintenanceContractEq::getIsDelete, false);
List<Long> listSeq = jgMaintenanceContractEqService.list(queryWrapper).stream()
.map(JgMaintenanceContractEq::getSequenceNbr).collect(Collectors.toList());
maintenanceContractEqMapper.deleteForBatch(listSeq);
});
maintenanceContractMapper.deleteForBatch(list);
return true;
}
public String startByVariable() {
String instanceId = "";
//启动流程
try {
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("maintenanceContract");
dto.setBusinessKey("submit");
AjaxResult ajaxResult = Workflow.taskClient.startByVariable(dto);
instanceId = ((Map<?, ?>) ajaxResult.get("data")).get("id").toString();
} catch (Exception e) {
e.printStackTrace();
}
return instanceId;
}
/**
* 维保合同提交
*/
@Transactional
public Boolean submit(JgMaintenanceContractDto dto) {
public Boolean submit(JgMaintenanceContractDto dto,String comment,String operate) {
String instanceId = "";
//启动流程
try {
AjaxResult ajaxResult;
ActWorkflowStartDTO flowDto = new ActWorkflowStartDTO();
flowDto.setProcessDefinitionKey(WB_PROCESS_DEFINITION_KEY);
flowDto.setBusinessKey("1");
HashMap<String, Object> dtoMap = new HashMap<>();
dtoMap.put("condition", "ces");
flowDto.setVariables(dtoMap);
AjaxResult ajaxResult = Workflow.taskClient.startByVariable(flowDto);
ajaxResult = Workflow.taskClient.startByVariable(flowDto);
instanceId = ((Map<?, ?>) ajaxResult.get("data")).get("id").toString();
ajaxResult = Workflow.taskClient.getTask(instanceId);
// 执行一步
......@@ -152,65 +251,110 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setResultCode("approvalStatus");
taskResultDTO.setTaskId(taskId);
taskResultDTO.setComment("提交流程");
taskResultDTO.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", "1");
map.put("approvalStatus", operate);
taskResultDTO.setVariable(map);
//执行流程
Workflow.taskClient.completeByTask(taskId, taskResultDTO);
Workflow.taskClient.completeByTask(taskId, taskResultDTO);
} catch (Exception e) {
e.printStackTrace();
}
String[] split = dto.getApplyFlow().split("-");
String lastFlowName = split[split.length - 1];
String applyFlow = dto.getApplyFlow() + "-" +
MaintenanceEnum.getMsgByCode(Objects.requireNonNull(MaintenanceEnum.getEnumByMsg(lastFlowName)).getCode() + 1);
dto.setApplyFlow(applyFlow);
dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setInstanceId(instanceId);
dto.setReceiveOrgCode(null);
return this.updateBySequenceNbr(dto);
}
/**
* 维保合同撤回
*/
@Transactional
public Boolean revocation(JgMaintenanceContractDto dto) {
String[] split = dto.getApplyFlow().split("-");
String lastFlowName = split[split.length - 1];
String applyFlow = dto.getApplyFlow() + "-" +
MaintenanceEnum.getMsgByCode(Objects.requireNonNull(MaintenanceEnum.getEnumByMsg(lastFlowName)).getCode() - 1);
dto.setApplyFlow(applyFlow);
dto.setApplyStatus(FlowStatusEnum.TO_BE_SUBMITTED.getName());
workFlowFeginService.rollBack(dto.getInstanceId());
return this.updateBySequenceNbr(dto);
public Boolean approval(JgMaintenanceContractDto dto,String comment,String operate) {
String instanceId = dto.getInstanceId();
try {
AjaxResult ajaxResult;
ajaxResult = Workflow.taskClient.getTask(instanceId);
JSONObject dataObject = JSON.parseObject(JSON.toJSONString(ajaxResult.get("data")));
String taskId = dataObject.getString("id");
//组装信息
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setResultCode("approvalStatus");
taskResultDTO.setTaskId(taskId);
taskResultDTO.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
taskResultDTO.setVariable(map);
//执行流程
Workflow.taskClient.completeByTask(taskId, taskResultDTO);
} catch (Exception e) {
e.printStackTrace();
}
/**
* 维保合同驳回
*/
@Transactional
public Boolean rejected(JgMaintenanceContractDto dto) {
String[] split = dto.getApplyFlow().split("-");
String lastFlowName = split[split.length - 1];
String applyFlow = dto.getApplyFlow() + "-" + MaintenanceEnum.getMsgByCode(Objects.requireNonNull(MaintenanceEnum.getEnumByMsg(lastFlowName)).getCode() - 1);
dto.setApplyFlow(applyFlow);
dto.setApplyStatus(FlowStatusEnum.REJECTED.getName());
// if("tongguo"){
// if("weibao"){
// dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
// }else {
// dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
// }
// }else {
// if("weibao"){
// dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
// }else {
// dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
// }
// }
if ("1".equals(operate)){
}
//审批通过
if ("0".equals(operate)){
}
dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setInstanceId(instanceId);
dto.setReceiveOrgCode(null);
return this.updateBySequenceNbr(dto);
}
/**
* 维保合同受理
* 维保合同撤回
*/
@Transactional
public Boolean accepted(JgMaintenanceContractDto dto) {
String[] split = dto.getApplyFlow().split("-");
String lastFlowName = split[split.length - 1];
String applyFlow = dto.getApplyFlow() + "-" + MaintenanceEnum.getMsgByCode(Objects.requireNonNull(MaintenanceEnum.getEnumByMsg(lastFlowName)).getCode() + 1);
dto.setApplyFlow(applyFlow);
dto.setApplyStatus(FlowStatusEnum.TO_BE_PROCESSED.getName());
return this.updateBySequenceNbr(dto);
public void revocation(String instanceId) {
String taskName = "";
JgMaintenanceContract jgMaintenanceContract = new JgMaintenanceContract();
LambdaQueryWrapper<JgMaintenanceContract> lambda = new QueryWrapper<JgMaintenanceContract>().lambda();
lambda.eq(JgMaintenanceContract::getInstanceId, instanceId);
ArrayList<String> roleList = new ArrayList<>();
try {
workFlowFeginService.rollBack(instanceId);
JSONObject taskNoAuth = workFlowFeginService.getTaskNoAuth(instanceId);
JSONObject nextTask = JSON.parseObject(JSON.toJSONString(taskNoAuth.get("data")));
taskName = nextTask.getString("name");
if (!ObjectUtils.isEmpty(taskNoAuth.get("data"))) {
String nextTaskId = nextTask.getString("id");
AjaxResult taskGroupName = Workflow.taskClient.getTaskGroupName(nextTaskId);
JSONArray data = JSON.parseArray(JSON.toJSONString(taskGroupName.get("data")));
for (Object datum : data) {
if (((Map<?, ?>) datum).containsKey("groupId")) {
roleList.add(((Map<?, ?>) datum).get("groupId").toString());
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
if (!ObjectUtils.isEmpty(taskName)) {
UseStatusEnum message = UseStatusEnum.getMessage(taskName);
jgMaintenanceContract.setStatus(message.getPass());
}
String join = String.join(",", roleList);
JgMaintenanceContract jgMaintenanceContract1 = this.getBaseMapper().selectOne(lambda);
this.updateStatus(jgMaintenanceContract1.getSequenceNbr(), taskName, join, true);
}
/**
......@@ -218,24 +362,49 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
*/
@Transactional
public Boolean saveOrSubmit(String submit, Map<String, Object> map, ReginParams reginParams) {
// 判断当前是否为提交
String instanceId = null;
JgMaintenanceContractDto dto = JSON.parseObject(JSON.toJSONString(map), JgMaintenanceContractDto.class);
List<Map<String, Object>> equipmentLists = (List<Map<String, Object>>) map.get("equipmentLists");
CompanyBo company = reginParams.getCompany();
JgMaintenanceContract contract = new JgMaintenanceContract();
BeanUtils.copyProperties(dto, contract);
//获取维保备案编号
String wbApplyNo = iCreateCodeService.createApplicationFormCode(ApplicationFormTypeEnum.WBBA.getCode(), 1).get(0);
contract.setApplyNo(wbApplyNo);
contract.setInstanceId(instanceId);
contract.setUseUnitCode(company.getCompanyCode());
contract.setUseUnitName(company.getCompanyName());
//管理员信息
String[] MaintenanceManager = dto.getMaintenanceManagerId().split("_");
contract.setMaintenanceManagerId(dto.getMaintenanceManagerId());
contract.setMaintenanceManagerName(MaintenanceManager[1]);
//接收机构信息
String[] splitReceiveOrgCode = dto.getReceiveOrgCode().split("_");
contract.setReceiveOrgCode(splitReceiveOrgCode[0]);
contract.setReceiveOrgName(splitReceiveOrgCode[1]);
//维保单位信息
String[] splitMaintenanceUnitCode = dto.getMaintenanceUnitCode().split("_");
contract.setMaintenanceUnitCode(dto.getMaintenanceUnitCode());
contract.setMaintenanceUnitName(splitMaintenanceUnitCode[1]);
contract.setApplyStatus(FlowStatusEnum.TO_BE_SUBMITTED.getName());
contract.setEquNum(equipmentLists.size());
contract.setInstanceId(instanceId);
// 判断当前是否为提交
if (SUBMIT_TYPE_FLOW.equals(submit)) {
// 发起流程
try {
ArrayList<String> roleList = new ArrayList<>();
ActWorkflowStartDTO flowDto = new ActWorkflowStartDTO();
flowDto.setProcessDefinitionKey(WB_PROCESS_DEFINITION_KEY);
flowDto.setBusinessKey("1");
HashMap<String, Object> dtoMap = new HashMap<>();
dtoMap.put("condition", "ces");
flowDto.setVariables(dtoMap);
AjaxResult ajaxResult = Workflow.taskClient.startByVariable(flowDto);
instanceId = ((Map<?, ?>) ajaxResult.get("data")).get("id").toString();
ajaxResult = Workflow.taskClient.getTask(instanceId);
// 查询下节点任务
extracted(instanceId, roleList, contract);
// 执行一步
JSONObject dataObject = JSON.parseObject(JSON.toJSONString(ajaxResult.get("data")));
String taskId = dataObject.getString("id");
//组装信息
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setResultCode("approvalStatus");
taskResultDTO.setTaskId(taskId);
......@@ -245,71 +414,109 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
taskResultDTO.setVariable(hashMap);
//执行流程
Workflow.taskClient.completeByTask(taskId, taskResultDTO);
extracted(instanceId, roleList, contract);
contract.setInstanceId(instanceId);
contract.setApplyStatus(FlowStatusEnum.SUBMITTED.getName());
contract.setStatus(FlowStatusEnum.SUBMITTED.getName());
} catch (Exception e) {
log.error("维保使用单位提交流程启动失败:{}", e);
}
}
JgMaintenanceContractDto dto = JSON.parseObject(JSON.toJSONString(map), JgMaintenanceContractDto.class);
Object o = map.get("equipmentLists");
List<Object> equipmentLists = Collections.singletonList(o);
CompanyBo company = reginParams.getCompany();
JgMaintenanceContract contract = new JgMaintenanceContract();
BeanUtils.copyProperties(dto, contract);
//获取维保备案编号
String wbApplyNo = iCreateCodeService.createApplicationFormCode(ApplicationFormTypeEnum.WBBA.getCode(), 1).get(0);
contract.setApplyNo(wbApplyNo);
contract.setInstanceId(instanceId);
contract.setUseUnitCode(company.getCompanyCode());
contract.setUseUnitName(company.getCompanyName());
contract.setApplyFlow(MaintenanceEnum.SHIYONG.getMsg());
contract.setApplyStatus(FlowStatusEnum.TO_BE_SUBMITTED.getName());
contract.setEquNum(equipmentLists.size());
contract.setInstanceId(instanceId);
this.save(contract);
//关联设备
List<JgMaintenanceContractEq> equipList = new ArrayList<>();
equipmentLists.forEach(x -> {
JgMaintenanceContractEq equip = new JgMaintenanceContractEq();
equip.setEquId(String.valueOf(x));
equip.setEquId(String.valueOf(x.get("SEQUENCE_NBR")));
equip.setEquipTransferId(wbApplyNo);
equipList.add(equip);
});
return jgMaintenanceContractEqService.saveBatch(equipList);
}
private void extracted(String instanceId, ArrayList<String> roleList, JgMaintenanceContract contract) {
JSONObject taskNoAuth = workFlowFeginService.getTaskNoAuth(instanceId);
if (!ObjectUtils.isEmpty(taskNoAuth.get("data"))) {
JSONObject nextTask = JSON.parseObject(JSON.toJSONString(taskNoAuth.get("data")));
String nextTaskId = nextTask.getString("id");
AjaxResult taskGroupName = Workflow.taskClient.getTaskGroupName(nextTaskId);
JSONArray data = JSON.parseArray(JSON.toJSONString(taskGroupName.get("data")));
for (Object datum : data) {
if (((Map<?, ?>) datum).containsKey("groupId")) {
roleList.add(((Map<?, ?>) datum).get("groupId").toString());
}
}
}
contract.setInstanceStatus(String.join(",", roleList));
}
/**
* 更新维保合同和设备对应关系
*/
@Transactional
public Boolean updateMaintenanceAndEquipment(JgMaintenanceContractDto dto, List<Integer> EquipmentLists) {
public Boolean updateMaintenanceAndEquipment(String submit,JgMaintenanceContractDto dto, List<Map<String, Object>> list) {
String instanceId = null;
//更新维保合同表
this.updateBySequenceNbr(dto);
String[] MaintenanceManager = dto.getMaintenanceManagerId().split("_");
dto.setMaintenanceManagerId(dto.getMaintenanceManagerId());
dto.setMaintenanceManagerName(MaintenanceManager[1]);
List<Integer> collect = EquipmentLists.stream().filter(Objects::nonNull).collect(Collectors.toList());
if (!collect.isEmpty()) {
String[] splitReceiveOrgCode = dto.getReceiveOrgCode().split("_");
dto.setReceiveOrgCode(splitReceiveOrgCode[0]);
dto.setReceiveOrgName(splitReceiveOrgCode[1]);
String[] splitMaintenanceUnitCode = dto.getMaintenanceUnitCode().split("_");
dto.setMaintenanceUnitCode(dto.getMaintenanceUnitCode());
dto.setMaintenanceUnitName(splitMaintenanceUnitCode[1]);
// 判断当前是否为提交
if (SUBMIT_TYPE_FLOW.equals(submit)) {
// 发起流程
try {
ActWorkflowStartDTO flowDto = new ActWorkflowStartDTO();
flowDto.setProcessDefinitionKey(WB_PROCESS_DEFINITION_KEY);
flowDto.setBusinessKey("1");
AjaxResult ajaxResult = Workflow.taskClient.startByVariable(flowDto);
instanceId = ((Map<?, ?>) ajaxResult.get("data")).get("id").toString();
ajaxResult = Workflow.taskClient.getTask(instanceId);
// 执行一步
JSONObject dataObject = JSON.parseObject(JSON.toJSONString(ajaxResult.get("data")));
String taskId = dataObject.getString("id");
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setResultCode("approvalStatus");
taskResultDTO.setTaskId(taskId);
taskResultDTO.setComment("提交流程");
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("approvalStatus", "0");
taskResultDTO.setVariable(hashMap);
//执行流程
Workflow.taskClient.completeByTask(taskId, taskResultDTO);
// dto.setApplyFlow(MaintenanceEnum.SHIYONG.getMsg()+","+MaintenanceEnum.WEIBAO.getMsg());
dto.setInstanceId(instanceId);
} catch (Exception e) {
log.error("维保使用单位提交流程启动失败:{}", e);
}
}
this.updateBySequenceNbr(dto);
//更新对应设备表
if (!list.isEmpty()) {
//先删除原先设备对应关系
LambdaQueryWrapper<JgMaintenanceContractEq> queryWrapper = new LambdaQueryWrapper<JgMaintenanceContractEq>()
.eq(JgMaintenanceContractEq::getEquId,list.get(0).get("SEQUENCE_NBR"))
.eq(JgMaintenanceContractEq::getIsDelete, false);
List<Long> list = jgMaintenanceContractEqService.list(queryWrapper).stream().map(JgMaintenanceContractEq::getSequenceNbr).collect(Collectors.toList());
jgMaintenanceContractEqService.deleteBatchSeq(list);
List<Long> listSeq = jgMaintenanceContractEqService.list(queryWrapper).stream()
.map(JgMaintenanceContractEq::getSequenceNbr).collect(Collectors.toList());
jgMaintenanceContractEqService.deleteBatchSeq(listSeq);
//重新生成关系表
List<JgMaintenanceContractEq> equipList = new ArrayList<>();
collect.forEach(x -> {
list.forEach(x -> {
JgMaintenanceContractEq equip = new JgMaintenanceContractEq();
// equip.setBusinessId(dto.getApplyNo());
// equip.setEquipId(String.valueOf(x));
// equip.setBusinessType(BusinessTypeEnum.MAINTENANCE_RECORD.getName());
equip.setEquId(String.valueOf(x.get("SEQUENCE_NBR")));
equip.setEquipTransferId(dto.getApplyNo());
equipList.add(equip);
});
return jgMaintenanceContractEqService.saveBatch(equipList);
}
return true;
}
/**
* 列表查询 示例
*/
public List<JgMaintenanceContractDto> queryForJgMaintenanceContractList() {
return this.queryForList("", false);
}
}
\ No newline at end of file
......@@ -76,7 +76,7 @@ import java.util.stream.Collectors;
public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, JgReformNotice, JgReformNoticeMapper> implements IJgReformNoticeService {
private static final String SUBMIT_TYPE_FLOW = "1";
private static final String PROCESS_DEFINITION_KEY = "renovationNotice";
private static final String PROCESS_DEFINITION_KEY = "renovationNoticeNew";
private static final String TABLE_PAGE_ID = "reformNoticeAdd";
......@@ -136,26 +136,24 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
return null;
}
Map<String, Object> installationInfo = BeanUtil.beanToMap(notice);
installationInfo.put("province", notice.getProvince() + "_" + notice.getProvinceName());
installationInfo.put("city", notice.getCity() + "_" + notice.getCityName());
installationInfo.put("county", notice.getCounty() + "_" + notice.getCountyName());
installationInfo.put("fullAddress", notice.getProvinceName() + notice.getCityName() + notice.getCityName() + notice.getStreetName() + notice.getAddress());
installationInfo.put("useUnitCreditCode", notice.getUseUnitCreditCode() + "_" + notice.getUseUnitName());
installationInfo.put("receiveOrgCreditCode", notice.getReceiveOrgCode() + "_" + notice.getReceiveOrgName());
// installationInfo.put("receiveOrgCreditCode", notice.getReceiveOrgCode() + "_" + notice.getReceiveOrgName());
installationInfo.put("receiveOrgCode", notice.getReceiveOrgCode() + "_" + notice.getReceiveOrgName());
// if (!ValidationUtil.isEmpty(notice.getInspectUnitId()) && ValidationUtil.isEmpty(notice.getInspectUnitName())) {
// installationInfo.put("inspectUnitId", notice.getInspectUnitId() + "_" + notice.getInspectUnitName());
// }
if(!ValidationUtil.isEmpty(notice.getFactoryUseSiteStreet()) && !ValidationUtil.isEmpty(notice.getStreetName())) {
installationInfo.put("factoryUseSiteStreet", notice.getFactoryUseSiteStreet() + "_" + notice.getStreetName());
if (!ValidationUtil.isEmpty(notice.getStreet()) && !ValidationUtil.isEmpty(notice.getStreetName())) {
installationInfo.put("street", notice.getStreet() + "_" + notice.getStreetName());
}
String[] fields = {"productPhoto", "designDoc", "designStandard", "factoryStandard",
"productQualityYieldProve", "insUseMaintainExplain", "inspectReport",
"proxyStatementAttachment", "installContractAttachment"};
// 设备信息
List<Map<String, Object>> equipmentInfos = JgReformNoticeMapper.queryEquipInformation(sequenceNbr);
for (String s : fields) {
if (installationInfo.containsKey(s)) {
installationInfo.put(s, JSON.parseArray(installationInfo.get(s).toString()));
......@@ -164,9 +162,8 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
equipmentInfos.get(0).put(s, JSON.parseArray(equipmentInfos.get(0).get(s).toString()));
}
}
return new HashMap<String, Map<String, Object>>() {{
this.put(TABLE_PAGE_ID, installationInfo);
this.put("reformInfo", installationInfo);
this.put("equipmentInfo", equipmentInfos.get(0));
}};
}
......@@ -181,10 +178,8 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
if (Objects.isNull(noticeDto) || StringUtils.isEmpty(submitType)) {
throw new IllegalArgumentException("参数不能为空");
}
// 字段转换
this.convertField(noticeDto);
if (SUBMIT_TYPE_FLOW.equals(submitType)) {
AjaxResult ajaxResult;
// 发起流程
......@@ -245,13 +240,7 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
@Override
public Page<JgReformNoticeDto> queryForJgReformNoticePage(Page<JgReformNotice> page, JgReformNoticeDto model, String type, ReginParams reginParams) {
String orgCode;
if (type.equals("enterprise")) {
orgCode = reginParams.getCompany().getCompanyCode();
} else {
orgCode = reginParams.getCompany().getOrgCode();
}
String orgCode = reginParams.getCompany().getCompanyCode();
Page<JgReformNotice> noticePage = JgReformNoticeMapper.queryForPage(page, model, type, orgCode);
// 将Page<JgReformNotice>转化为Page<JgReformNoticeDto>
......@@ -533,12 +522,12 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
}
}
String factoryUseSiteStreet = model.getFactoryUseSiteStreet();
if (!ObjectUtils.isEmpty(factoryUseSiteStreet)) {
String[] factoryUseSiteStreetList = factoryUseSiteStreet.split("_");
if (factoryUseSiteStreetList.length > 1) {
model.setFactoryUseSiteStreet(factoryUseSiteStreetList[0]);
model.setStreetName(factoryUseSiteStreetList[1]);
String street = model.getStreet();
if (!ObjectUtils.isEmpty(street)) {
String[] streetList = street.split("_");
if (streetList.length > 1) {
model.setStreet(streetList[0]);
model.setStreetName(streetList[1]);
}
}
......@@ -551,7 +540,9 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
model.setUseUnitName(useUnitList[1]);
}
}
if (org.apache.commons.lang3.StringUtils.isEmpty(model.getReceiveOrgCode())) {
model.setReceiveOrgCode(model.getReceiveOrgCreditCode());
}
String receiveOrgId = model.getReceiveOrgCode();
if (!ObjectUtils.isEmpty(receiveOrgId)) {
String[] receiveOrgIdList = receiveOrgId.split("_");
......
......@@ -13,7 +13,7 @@ public enum DocumentEnum {
GZS("gzs", "告知书"),
CPZL("cpzl", "产品质量证明书"),
SGZX("sgzx", "施工自行检查报告"),
SGZX("sgzxbg", "施工自行检查报告"),
SGHT("sght", "施工合同或证明"),
SGFA("sgfa", "施工方案/施工设计文件"),
SGDWXK("sgdwxk", "施工单位许可证书"),
......@@ -26,7 +26,22 @@ public enum DocumentEnum {
SGSJ("sgsj", "施工设计文件"),
SGFB("sgfb", "施工分包方目录"),
FBSPJ("fbspj", "分包方评价资料"),
QT("qt", "其他附件");
QT("qtfj", "其他附件"),
CPZLHGZ("cpzlhg", "产品质量合格证"),
CPSJ("cpsj", "产品设计文件"),
ZZXK("zzxk", "制造许可证"),
ZJSY("zjsy", "安全保护装置的型式试验证书"),
DDHL("ddhl", "电动葫芦的型式试验证书"),
SYWH("sywh", "使用维护说明书"),
CLXS("clxs", "车辆行驶线路图"),
SYDJ("sydj", "使用登记证"),
SYCJY("sycjy", "上一次检验报告"),
FBHG("fbhg", "防爆合格证"),
NDZXJC("ndzxjc", "年度自行检查报告"),
AGGLRY("aqglry", "安全管理人员证"),
ZYRYZ("zyry", "作业人员证"),
WBHT("wbht", "维保合同"),
AZJY("azjy", "安装监检报告");
private String code;
private String name;
......
package com.yeejoin.amos.boot.module.jyjc.api.model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import org.typroject.tyboot.core.rdbms.model.BaseModel;
import java.util.Date;
......@@ -37,6 +39,7 @@ public class JyjcInspectionApplicationModel extends BaseModel {
private String applicationNo;
@ApiModelProperty(value = "申请日期")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date applicationDate;
@ApiModelProperty(value = "检验检测类别")
......
......@@ -97,8 +97,6 @@ public class JyjcInspectionResultModel extends BaseModel {
private String inspectionTypeName;
@ApiModelProperty(value = "报检日期")
@JsonFormat(pattern="yyyy-MM-dd")
@DateTimeFormat("yyyy-MM-dd")
private Date applicationDate;
@ApiModelProperty("检验结果方式")
......
......@@ -19,7 +19,7 @@
tzjia.application_date,
tzjia.accept_date,
tzjia.inspection_charge_phone,
tzjia.inspection_charge_person,
tbei2.use_contact as inspectionChargePerson,
tbei1.use_unit AS applicationUnitName,
tbei.use_unit AS inspectionUnitName,
tzjia.status,
......@@ -29,6 +29,7 @@
tz_jyjc_inspection_application AS tzjia
LEFT JOIN tz_base_enterprise_info tbei ON tbei.use_code = tzjia.application_unit_code
LEFT JOIN tz_base_enterprise_info tbei1 ON tbei1.use_code = tzjia.inspection_unit_code
LEFT JOIN tz_base_enterprise_info tbei2 ON tbei2.sequence_nbr = tzjia.inspection_charge_person
LEFT JOIN cb_data_dictionary cdd ON cdd.code = tzjia.equip_classify
LEFT JOIN cb_data_dictionary cdd1 ON cdd1.code = tzjia.inspection_classify
LEFT JOIN cb_data_dictionary cdd2 ON cdd2.code = tzjia.status and cdd2.type = 'JYLCZT'
......
......@@ -29,7 +29,7 @@ import java.util.Objects;
*/
public class BizCustomDateSerializer extends StdSerializer<Date> {
private List<String> customFields = Arrays.asList("acceptDate", "expiryDate");
private List<String> customFields = Arrays.asList("acceptDate", "expiryDate","applicationDate");
public BizCustomDateSerializer()
{
......
......@@ -124,7 +124,9 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
model.setResultType(jyjcOpeningApplication.getResultType());
}
model.setApplicationNo(UUID.randomUUID().toString());
List<String> codes = createCodeService.createApplicationFormCode(ApplicationFormTypeEnum.JY.getCode(), 1);
model.setApplicationNo(codes.get(0));
model.setApplicationDate(new Date());
// region 获取下一个流程节点的数据
Map<String, Object> nextNodeInfo = workflowHelper.getNextWorkflowNode(model.getProcessInstanceId());
......
......@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.jyjc.api.common.StringUtil;
......@@ -54,6 +55,7 @@ public class JyjcInspectionResultServiceImpl extends BaseService<JyjcInspectionR
private static final String JYJC_SUBMIT_FILE_PREFIX = "JYJC_";
private static final String JYJC_SUBMIT_KEY = "inspectResult";
private static final String JYJC_RESULT_STATUS = "2";
@Autowired
private IJyjcInspectionResultAttachmentService iJyjcInspectionResultAttachmentService;
......@@ -125,6 +127,7 @@ public class JyjcInspectionResultServiceImpl extends BaseService<JyjcInspectionR
Object inspectors = jsonArray.stream().map(String::valueOf).collect(Collectors.joining(","));
model.setInspector(String.valueOf(inspectors));
}
model.setResultStatus(JYJC_RESULT_STATUS);
// 更新结果主表
updateWithModel(model);
......@@ -206,6 +209,7 @@ public class JyjcInspectionResultServiceImpl extends BaseService<JyjcInspectionR
info.setSequenceCode(model.getEquipUnicode());
info.setInspectOrgCode(model.getUseUnitCreditCode());
info.setInspectReportNo(model.getResultNo());
info.setRecDate(new Date());
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment