Commit 80f9c005 authored by KeYong's avatar KeYong

Merge branch 'develop_tzs_register' of…

Merge branch 'develop_tzs_register' of http://36.40.66.175:5000/moa/amos-boot-biz into develop_tzs_register
parents 92e01101 edb1caa3
......@@ -361,8 +361,8 @@
tz_cylinder_inspection insp
LEFT JOIN tz_cylinder_unit unit ON insp.app_id = unit.app_id
WHERE
to_date( insp.next_inspection_date, 'yyyy-mm-dd' ) < now()
OR (( to_days ( to_date(( insp.next_inspection_date ), 'yyyy-mm-dd' ) ) - to_days ( now())) <= 30 )
(to_date( insp.next_inspection_date, 'yyyy-mm-dd' ) < now()
OR (( to_days ( to_date(( insp.next_inspection_date ), 'yyyy-mm-dd' ) ) - to_days ( now())) <= 30 ))
<if test="companyId != null and companyId != ''">
......@@ -412,8 +412,8 @@
tz_cylinder_inspection insp
LEFT JOIN tz_cylinder_unit unit ON insp.app_id = unit.app_id
WHERE
to_date( insp.next_inspection_date, 'yyyy-mm-dd' ) &lt; now()
OR (( to_days ( to_date(( insp.next_inspection_date ), 'yyyy-mm-dd' ) ) - to_days ( now())) &lt;= 30 )
(to_date( insp.next_inspection_date, 'yyyy-mm-dd' ) &lt; now()
OR (( to_days ( to_date(( insp.next_inspection_date ), 'yyyy-mm-dd' ) ) - to_days ( now())) &lt;= 30 ))
<if test="companyId != null and companyId != ''">
and unit.app_id = #{companyId}
</if>
......
......@@ -17,8 +17,6 @@ import java.util.Map;
public interface JgEquipTransferMapper extends CustomBaseMapper<JgEquipTransfer> {
Page<JgEquipTransferDto> queryForPage(Page<JgEquipTransferDto> page, @Param("param") JgEquipTransferDto model, @Param("type") String type, @Param("companyCode") String companyCode);
void updatePromoter(@Param("id")Long id);
@MapKey("sequenceNbr")
List<Map<String, Object>> queryEquipInformation(Long sequenceNbr);
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.jg.api.mapper.JgEquipTransferMapper">
<update id="updatePromoter">
</update>
<select id="queryForPage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgEquipTransferDto">
select
jet.sequence_nbr AS sequenceNbr,
......@@ -72,8 +68,8 @@
<if test="param.applyNo != null and param.applyNo != ''">
AND jet.apply_no LIKE CONCAT('%', #{param.applyNo}, '%')
</if>
<if test="param.useUnitName != null and param.useUnitName != ''">
AND jet.use_unit_name LIKE CONCAT('%', #{param.useUnitName}, '%')
<if test="param.useUnitCreditCode != null and param.useUnitCreditCode != ''">
AND jet.use_unit_credit_code = #{param.useUnitCreditCode}
</if>
<if test="param.installUnitCreditCode != null and param.installUnitCreditCode != ''">
AND jet.install_unit_credit_code = #{param.installUnitCreditCode}
......@@ -121,7 +117,7 @@
ri.equ_type AS equType,
ri.equ_price AS equPrice,
ri.product_photo AS productPhoto,
ri.EQU_CODE,
ri.EQU_CODE as equCode,
di.design_unit_credit_code AS designUnitCreditCode,
di.design_unit_name AS designUnitName,
di.design_license_num AS designLicenseNum,
......
......@@ -17,6 +17,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 javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -133,4 +134,11 @@ public class JgUseRegistrationController extends BaseController {
return ResponseHelper.buildResponse(map);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/export")
@ApiOperation(httpMethod = "GET", value = "导出使用登记证", notes = "导出使用登记证")
public void exportImageZip(HttpServletResponse response, @RequestParam("sequenceNbr") String sequenceNbr){
jgUseRegistrationServiceImpl.exportUseRegistrationCertificate(sequenceNbr, response);
}
}
......@@ -118,18 +118,9 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
public void save(JSONObject map) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
UseInfo useInfo = new UseInfo();
BeanUtil.copyProperties(map, useInfo);
String equipId = map.get("record").toString();
LambdaQueryWrapper<UseInfo> lambda = new QueryWrapper<UseInfo>().lambda();
lambda.eq(UseInfo::getRecord, equipId);
// 更新使用信息
useInfoMapper.update(useInfo, lambda);
InspectionDetectionInfo inspectionDetectionInfo = new InspectionDetectionInfo();
BeanUtil.copyProperties(map, inspectionDetectionInfo);
LambdaQueryWrapper<InspectionDetectionInfo> inspectionLambda = new QueryWrapper<InspectionDetectionInfo>().lambda();
inspectionLambda.eq(InspectionDetectionInfo::getRecord, equipId);
// 更新检验检测信息
inspectionDetectionInfoMapper.update(inspectionDetectionInfo, inspectionLambda);
// 使用登记信息
JgChangeRegistrationReform jgChangeRegistrationReform = new JgChangeRegistrationReform();
LambdaQueryWrapper<OtherInfo> otherLambda = new QueryWrapper<OtherInfo>().lambda();
......@@ -137,8 +128,9 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
OtherInfo otherInfo = otherInfoMapper.selectOne(otherLambda);
String supervisoryCode = otherInfo.getSupervisoryCode();
jgChangeRegistrationReform.setSupervisoryCode(supervisoryCode);
jgChangeRegistrationReform.setUseUnitName(useInfo.getUseUnitName());
jgChangeRegistrationReform.setUseUnitCreditCode(useInfo.getUseUnitCreditCode());
jgChangeRegistrationReform.setUseUnitName(ObjectUtils.isEmpty(useInfo.getUseUnitName())?reginParams.getCompany().getCompanyName():useInfo.getUseUnitName());
jgChangeRegistrationReform.setUseUnitCreditCode(ObjectUtils.isEmpty(useInfo.getUseUnitCreditCode())?reginParams.getCompany().getCompanyCode():useInfo.getUseUnitCreditCode());
if (!ObjectUtils.isEmpty(map.get("transformationQualityCertificate"))) {
jgChangeRegistrationReform.setTransformationQualityCertificate(JSONObject.toJSONString(map.get("transformationQualityCertificate")));
}
......
......@@ -20,7 +20,12 @@ import com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationEqMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgUseRegistrationService;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService;
import com.yeejoin.amos.boot.module.jg.flc.api.fegin.WorkFlowFeignService;
import com.yeejoin.amos.boot.module.ymt.api.entity.EquipmentCategory;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgFactoryInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.InspectionDetectionInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.OtherInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.UseInfo;
......@@ -35,14 +40,19 @@ import com.yeejoin.amos.feign.workflow.Workflow;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
import com.yeejoin.amos.feign.workflow.model.AjaxResult;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import org.apache.commons.collections.CollectionUtils;
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.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDate;
import java.util.*;
/**
......@@ -72,6 +82,15 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
JgRegistrationHistoryServiceImpl jgRegistrationHistoryService;
@Autowired
IdxBizJgRegisterInfoMapper idxBizJgRegisterInfoMapper;
@Autowired
private IdxBizJgRegisterInfoServiceImpl idxBizJgRegisterInfoService;
@Autowired
private IdxBizJgUseInfoServiceImpl idxBizJgUseInfoService;
@Autowired
private IdxBizJgFactoryInfoServiceImpl idxBizJgFactoryInfoService;
@Autowired
ICommonService commonService;
public Page<Map<String, Object>> getList(JgUseRegistrationDto dto, Page<Map<String, Object>> page, List<String> roleIds) {
Page<Map<String, Object>> listPage = this.baseMapper.getListPage(page, dto, roleIds);
return listPage;
......@@ -468,4 +487,118 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
}
return null;
}
public void exportUseRegistrationCertificate(String sequenceNbr, HttpServletResponse response) {
Map<String, Object> exportParamsMap = new HashMap<>();
//查询使用登记详情
JgUseRegistration useRegistration = this.getById(sequenceNbr);
LambdaQueryWrapper<JgUseRegistrationEq> useEqLambda = new QueryWrapper<JgUseRegistrationEq>().lambda();
useEqLambda.eq(JgUseRegistrationEq::getEquipTransferId, sequenceNbr);
JgUseRegistrationEq useRegistrationEq = jgRelationEquipMapper.selectOne(useEqLambda);
if (ValidationUtil.isEmpty(useRegistration) || ValidationUtil.isEmpty(useRegistrationEq)) {
throw new BadRequest("使用登记证导出失败,请稍后重试!");
}
//登记机关
if(ValidationUtil.isEmpty(useRegistration.getReceiveOrgName())){
throw new BadRequest("使用登记证导出失败,登记机关为空!");
}
exportParamsMap.put("receiveOrgName", useRegistration.getReceiveOrgName());
//使用登记证编号
if(ValidationUtil.isEmpty(useRegistration.getUseRegistrationCode())){
throw new BadRequest("使用登记证导出失败,使用登记证编号为空!");
}
exportParamsMap.put("useRegistrationCode", useRegistration.getUseRegistrationCode());
//使用单位名称
if(ValidationUtil.isEmpty(useRegistration.getUseUnitName())){
throw new BadRequest("使用登记证导出失败,使用单位名称为空!");
}
exportParamsMap.put("useUnitName", useRegistration.getUseUnitName());
//监管码
if(ValidationUtil.isEmpty(useRegistration.getSupervisoryCode())){
throw new BadRequest("使用登记证导出失败,监管码为空!");
}
exportParamsMap.put("supervisoryCode", useRegistration.getSupervisoryCode());
//发证日期(当前时间)
LocalDate today = LocalDate.now();
exportParamsMap.put("giveOutYear", today.getYear());
exportParamsMap.put("giveOutMonth", today.getMonthValue());
exportParamsMap.put("giveOutDay", today.getDayOfMonth());
//查询设备注册信息
IdxBizJgRegisterInfo registerInfo = idxBizJgRegisterInfoService.getOne(new QueryWrapper<IdxBizJgRegisterInfo>().eq("RECORD", useRegistrationEq.getEquId()));
if(!ValidationUtil.isEmpty(registerInfo)){
//设备种类、类别、品种
String equList = registerInfo.getEquList();//设备种类
String equCategory = registerInfo.getEquCategory();//设备类别
String equDefine = registerInfo.getEquDefine();//设备品种
List<EquipmentCategory> categoryList0 = commonService.getEquipmentCategoryList(equList, null);
List<EquipmentCategory> categoryList1 = commonService.getEquipmentCategoryList(equCategory, null);
List<EquipmentCategory> categoryList2 = commonService.getEquipmentCategoryList(equDefine, null);
if (CollectionUtils.isNotEmpty(categoryList0)) {
if(ValidationUtil.isEmpty(categoryList0.get(0).getName())){
throw new BadRequest("使用登记证导出失败,设备种类为空!");
}
exportParamsMap.put("equList", categoryList0.get(0).getName());
}
if (CollectionUtils.isNotEmpty(categoryList1)) {
if(ValidationUtil.isEmpty(categoryList1.get(0).getName())){
throw new BadRequest("使用登记证导出失败,设备类别为空!");
}
exportParamsMap.put("equCategory", categoryList1.get(0).getName());
}
if (CollectionUtils.isNotEmpty(categoryList2)) {
if(ValidationUtil.isEmpty(categoryList2.get(0).getName())){
throw new BadRequest("使用登记证导出失败,设备品种为空!");
}
exportParamsMap.put("equDefine", categoryList2.get(0).getName());
}
//设备代码
if(ValidationUtil.isEmpty(registerInfo.getEquCode())){
throw new BadRequest("使用登记证导出失败,设备代码为空!");
}
exportParamsMap.put("equCode", registerInfo.getEquCode());
}
IdxBizJgUseInfo useInfo = idxBizJgUseInfoService.getOneData(useRegistrationEq.getEquId());
if(!ValidationUtil.isEmpty(useInfo)){
if(ValidationUtil.isEmpty(useInfo.getUseInnerCode())){
throw new BadRequest("使用登记证导出失败,设备单位内部编码为空!");
}
//单位内部编码
exportParamsMap.put("useInnerCode", useInfo.getUseInnerCode());
//设备使用地址
String fullAddress="";
if (!ObjectUtils.isEmpty(useInfo.getProvinceName())) {
fullAddress += useInfo.getProvinceName();
}
if (!ObjectUtils.isEmpty(useInfo.getCityName())) {
fullAddress += useInfo.getCityName();
}
if (!ObjectUtils.isEmpty(useInfo.getCountyName())) {
fullAddress += useInfo.getCountyName();
}
if (!ObjectUtils.isEmpty(useInfo.getStreetName())) {
fullAddress += useInfo.getStreetName();
}
if (!ObjectUtils.isEmpty(useInfo.getAddress())) {
fullAddress += useInfo.getAddress();
}
if(ValidationUtil.isEmpty(fullAddress)){
throw new BadRequest("使用登记证导出失败,设备使用地址为空!");
}
exportParamsMap.put("fullAddress", fullAddress);
}
IdxBizJgFactoryInfo factoryInfo = idxBizJgFactoryInfoService.getOneData(useRegistrationEq.getEquId());
//产品编号(出厂编号)
if(!ValidationUtil.isEmpty(factoryInfo)){
if(ValidationUtil.isEmpty(factoryInfo.getFactoryNum())){
throw new BadRequest("使用登记证导出失败,产品编号为空!");
}
exportParamsMap.put("factoryNum", factoryInfo.getFactoryNum());
}
//调用生成使用登记证
commonService.generateCertificateReport(exportParamsMap, response);
}
}
\ No newline at end of file
......@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.jyjc.api.model.JyjcOpeningApplicationRequstDto;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper 接口
*
......@@ -19,4 +21,6 @@ public interface JyjcOpeningApplicationMapper extends BaseMapper<JyjcOpeningAppl
@Param("jyjcOpeningApplicationRequstDto") JyjcOpeningApplicationRequstDto jyjcOpeningApplicationRequstDto, @Param("applyStartTime") String applyStartTime, @Param("applyendTime") String applyendTime);
void updatePromoter(@Param("id") Long id);
List<Long> selectOverdueData();
}
......@@ -56,6 +56,9 @@
order by sequence_nbr desc
</select>
<select id="selectOverdueData" resultType="java.lang.Long">
SELECT sequence_nbr FROM "tz_jyjc_opening_application" WHERE CURDATE() > expiry_date
</select>
<update id="updatePromoter">
UPDATE tz_jyjc_opening_application set promoter = null
......
package com.yeejoin.amos.boot.module.jyjc.biz.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcOpeningApplication;
import com.yeejoin.amos.boot.module.jyjc.api.model.JyjcOpeningApplicationRequstDto;
import com.yeejoin.amos.boot.module.jyjc.biz.config.BaseException;
......@@ -9,6 +10,8 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
......@@ -39,6 +42,7 @@ import java.util.stream.Collectors;
@RestController
@Api(tags = "检验业务申请单api")
@RequestMapping(value = "/jyjc-opening-application")
@EnableScheduling
public class JyjcOpeningApplicationController extends BaseController {
@Autowired
......@@ -278,4 +282,29 @@ public class JyjcOpeningApplicationController extends BaseController {
String remark = (String) params.get("remark");
return ResponseHelper.buildResponse(jyjcOpeningApplicationServiceImpl.doDiscard(Long.parseLong(sequenceNbr), remark));
}
/**
* 自动作废
*
*
* @param
* @return {@link ResponseModel< List< TzBaseEnterpriseInfo>>}
* @author yangyang
* @throws
* @date 2023/12/22 16:13
*/
@Scheduled(cron = "0 0 0 * * ?")
public void timingDiscard() {
List<Long> longs = jyjcOpeningApplicationServiceImpl.selectOverdueData();
if (CollectionUtils.isNotEmpty(longs)){
for (Long aLong : longs) {
String remark = "到期作废";
jyjcOpeningApplicationServiceImpl.doDiscard(aLong, remark);
}
}
}
}
......@@ -586,4 +586,9 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
// 根据开通机构过滤
return tzBaseEnterpriseInfos.stream().filter(o -> StringUtils.isNotBlank(o.getUseCode()) && unitCodes.contains(o.getUseCode())).collect(Collectors.toList());
}
public List<Long> selectOverdueData(){
return jyjcOpeningApplicationMapper.selectOverdueData();
}
}
\ No newline at end of file
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