Commit fd7e5501 authored by 刘林's avatar 刘林

fix(jg):车用气瓶打证和单位办理打证修复

parent 278f00b1
...@@ -177,4 +177,22 @@ public class JgUseRegistrationManage extends BaseEntity { ...@@ -177,4 +177,22 @@ public class JgUseRegistrationManage extends BaseEntity {
@TableField("is_scrap") @TableField("is_scrap")
private String isScrap; private String isScrap;
/**
* 气瓶数量
*/
@TableField("gas_num")
private Integer gasNum;
/**
* 容积
*/
@TableField("volume")
private String volume;
/**
* 充装介质
*/
@TableField("filling_medium")
private String fillingMedium;
} }
...@@ -46,8 +46,8 @@ public class JgUseRegistrationManageController extends BaseController { ...@@ -46,8 +46,8 @@ public class JgUseRegistrationManageController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/brushHistoryCertificate") @GetMapping(value = "/brushHistoryCertificate")
@ApiOperation(httpMethod = "GET", value = "将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中", notes = "将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中") @ApiOperation(httpMethod = "GET", value = "将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中", notes = "将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中")
public ResponseModel<Boolean> brushHistoryCertificate() { public ResponseModel<Boolean> brushHistoryCertificate(@RequestParam(value = "type") String type) {
return ResponseHelper.buildResponse(jgUseRegistrationManageServiceImpl.brushHistoryCertificate()); return ResponseHelper.buildResponse(jgUseRegistrationManageServiceImpl.brushHistoryCertificate(type));
} }
......
...@@ -113,116 +113,123 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -113,116 +113,123 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
* 将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中 * 将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean brushHistoryCertificate() { public Boolean brushHistoryCertificate(String type) {
this.baseMapper.delete(new LambdaQueryWrapper<>());
if (type.equals("1")){
// 使用登记表中已经审批通过的单子 this.baseMapper.delete(new LambdaQueryWrapper<JgUseRegistrationManage>().eq(JgUseRegistrationManage::getRegType, BusinessTypeEnum.JG_USAGE_REGISTRATION.getName()));
List<JgUseRegistration> jgUseRegistrations = jgUseRegistrationMapper.selectList(new LambdaQueryWrapper<JgUseRegistration>() // 使用登记表中已经审批通过的单子
.eq(JgUseRegistration::getStatus, "已完成") List<JgUseRegistration> jgUseRegistrations = jgUseRegistrationMapper.selectList(new LambdaQueryWrapper<JgUseRegistration>()
.eq(JgUseRegistration::getIsDelete, false)); .eq(JgUseRegistration::getStatus, "已完成")
for (JgUseRegistration useRegistration : jgUseRegistrations) { .eq(JgUseRegistration::getIsDelete, false));
// 使用单位信息 for (JgUseRegistration useRegistration : jgUseRegistrations) {
Map<String, Object> enterpriseInfo = commonServiceImpl.getEnterpriseInfo(useRegistration.getUseUnitCreditCode()); // 使用单位信息
// 设备使用地址 Map<String, Object> enterpriseInfo = commonServiceImpl.getEnterpriseInfo(useRegistration.getUseUnitCreditCode());
String fullAddress = ""; // 设备使用地址
// 设备种类/类别/品种 String fullAddress = "";
Map<String, String> equType = jgUseRegistrationMapper.getEquTypeByUseRegSeq(String.valueOf(useRegistration.getSequenceNbr())); // 设备种类/类别/品种
if (!"unit".equals(useRegistration.getManageType())) { Map<String, String> equType = jgUseRegistrationMapper.getEquTypeByUseRegSeq(String.valueOf(useRegistration.getSequenceNbr()));
List<JgUseRegistrationEq> jgUseRegistrationEqs = jgUseRegistrationEqMapper.selectList(new LambdaQueryWrapper<JgUseRegistrationEq>() if (!"unit".equals(useRegistration.getManageType())) {
.eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr())); List<JgUseRegistrationEq> jgUseRegistrationEqs = jgUseRegistrationEqMapper.selectList(new LambdaQueryWrapper<JgUseRegistrationEq>()
if (!ValidationUtil.isEmpty(jgUseRegistrationEqs)) { .eq(JgUseRegistrationEq::getEquipTransferId, useRegistration.getSequenceNbr()));
String equId = jgUseRegistrationEqs.get(0).getEquId(); if (!ValidationUtil.isEmpty(jgUseRegistrationEqs)) {
IdxBizJgUseInfo useInfo = idxBizJgUseInfoService.getOne(new QueryWrapper<IdxBizJgUseInfo>() String equId = jgUseRegistrationEqs.get(0).getEquId();
.eq("RECORD", equId)); IdxBizJgUseInfo useInfo = idxBizJgUseInfoService.getOne(new QueryWrapper<IdxBizJgUseInfo>()
if (!ObjectUtils.isEmpty(useInfo.getProvinceName())) { .eq("RECORD", equId));
fullAddress += useInfo.getProvinceName(); if (!ObjectUtils.isEmpty(useInfo.getProvinceName())) {
} fullAddress += useInfo.getProvinceName();
if (!ObjectUtils.isEmpty(useInfo.getCityName())) { }
fullAddress += useInfo.getCityName(); if (!ObjectUtils.isEmpty(useInfo.getCityName())) {
} fullAddress += useInfo.getCityName();
if (!ObjectUtils.isEmpty(useInfo.getCountyName())) { }
fullAddress += useInfo.getCountyName(); if (!ObjectUtils.isEmpty(useInfo.getCountyName())) {
} fullAddress += useInfo.getCountyName();
if (!ObjectUtils.isEmpty(useInfo.getStreetName())) { }
fullAddress += useInfo.getStreetName(); if (!ObjectUtils.isEmpty(useInfo.getStreetName())) {
} fullAddress += useInfo.getStreetName();
if (!ObjectUtils.isEmpty(useInfo.getAddress())) { }
fullAddress += useInfo.getAddress(); if (!ObjectUtils.isEmpty(useInfo.getAddress())) {
fullAddress += useInfo.getAddress();
}
} }
} }
// 组装数据
JgUseRegistrationManage jgUseRegistrationManage = new JgUseRegistrationManage();
jgUseRegistrationManage.setUseUnitName(useRegistration.getUseUnitName());
jgUseRegistrationManage.setApplyNo(useRegistration.getApplyNo());
jgUseRegistrationManage.setCertificateStatus(CertificateStatusEnum.YIDENGJI.getName());
jgUseRegistrationManage.setReceiveOrgName(useRegistration.getReceiveOrgName());
jgUseRegistrationManage.setAuditPassDate(useRegistration.getAuditPassDate());
jgUseRegistrationManage.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName());
jgUseRegistrationManage.setRegDate(useRegistration.getRegDate());
jgUseRegistrationManage.setEquList(equType.get("equList"));
jgUseRegistrationManage.setEquListCode(equType.get("equListCode"));
jgUseRegistrationManage.setEquCategory(equType.get("equCategory"));
jgUseRegistrationManage.setEquCategoryCode(equType.get("equCategoryCode"));
jgUseRegistrationManage.setEquDefine(equType.get("equDefine"));
jgUseRegistrationManage.setEquDefineCode(equType.get("equDefineCode"));
jgUseRegistrationManage.setIsDelete(Boolean.FALSE);
jgUseRegistrationManage.setRecUserId(useRegistration.getRecUserId());
jgUseRegistrationManage.setRecUserName(useRegistration.getRecUserName());
jgUseRegistrationManage.setRecDate(useRegistration.getRecDate());
jgUseRegistrationManage.setCreateUserId(useRegistration.getCreateUserId());
jgUseRegistrationManage.setCreateDate(useRegistration.getRecDate());
jgUseRegistrationManage.setEquUseAddress(fullAddress);
jgUseRegistrationManage.setManageType(useRegistration.getManageType());
jgUseRegistrationManage.setUseUnitAddress(!ValidationUtil.isEmpty(enterpriseInfo) ? (String) enterpriseInfo.get("address") : "");
jgUseRegistrationManage.setUseRegistrationCode(useRegistration.getUseRegistrationCode());
jgUseRegistrationManage.setUseUnitCreditCode(useRegistration.getUseUnitCreditCode());
jgUseRegistrationManage.setReceiveCompanyCode(useRegistration.getReceiveCompanyCode());
jgUseRegistrationManage.setCertificateNo(commonServiceImpl.generateCertificateNo(equType, useRegistration.getAuditPassDate(), useRegistration.getReceiveCompanyCode()));
this.baseMapper.insert(jgUseRegistrationManage);
} }
// 组装数据
JgUseRegistrationManage jgUseRegistrationManage = new JgUseRegistrationManage();
jgUseRegistrationManage.setUseUnitName(useRegistration.getUseUnitName());
jgUseRegistrationManage.setApplyNo(useRegistration.getApplyNo());
jgUseRegistrationManage.setCertificateStatus(CertificateStatusEnum.YIDENGJI.getName());
jgUseRegistrationManage.setReceiveOrgName(useRegistration.getReceiveOrgName());
jgUseRegistrationManage.setAuditPassDate(useRegistration.getAuditPassDate());
jgUseRegistrationManage.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName());
jgUseRegistrationManage.setRegDate(useRegistration.getRegDate());
jgUseRegistrationManage.setEquList(equType.get("equList"));
jgUseRegistrationManage.setEquListCode(equType.get("equListCode"));
jgUseRegistrationManage.setEquCategory(equType.get("equCategory"));
jgUseRegistrationManage.setEquCategoryCode(equType.get("equCategoryCode"));
jgUseRegistrationManage.setEquDefine(equType.get("equDefine"));
jgUseRegistrationManage.setEquDefineCode(equType.get("equDefineCode"));
jgUseRegistrationManage.setIsDelete(Boolean.FALSE);
jgUseRegistrationManage.setRecUserId(useRegistration.getRecUserId());
jgUseRegistrationManage.setRecUserName(useRegistration.getRecUserName());
jgUseRegistrationManage.setRecDate(useRegistration.getRecDate());
jgUseRegistrationManage.setCreateUserId(useRegistration.getCreateUserId());
jgUseRegistrationManage.setCreateDate(useRegistration.getRecDate());
jgUseRegistrationManage.setEquUseAddress(fullAddress);
jgUseRegistrationManage.setManageType(useRegistration.getManageType());
jgUseRegistrationManage.setUseUnitAddress(!ValidationUtil.isEmpty(enterpriseInfo) ? (String) enterpriseInfo.get("address") : "");
jgUseRegistrationManage.setUseRegistrationCode(useRegistration.getUseRegistrationCode());
jgUseRegistrationManage.setUseUnitCreditCode(useRegistration.getUseUnitCreditCode());
jgUseRegistrationManage.setReceiveCompanyCode(useRegistration.getReceiveCompanyCode());
jgUseRegistrationManage.setCertificateNo(commonServiceImpl.generateCertificateNo(equType, useRegistration.getAuditPassDate(), useRegistration.getReceiveCompanyCode()));
this.baseMapper.insert(jgUseRegistrationManage);
} }
if (type.equals("2")){
this.baseMapper.delete(new LambdaQueryWrapper<JgUseRegistrationManage>().eq(JgUseRegistrationManage::getRegType, BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName()));
// 车用气瓶使用登记表中已经审批通过的单子 // 车用气瓶使用登记表中已经审批通过的单子
List<JgVehicleInformation> jgVehicleInformations = jgVehicleInformationMapper.selectList(new LambdaQueryWrapper<JgVehicleInformation>() List<JgVehicleInformation> jgVehicleInformations = jgVehicleInformationMapper.selectList(new LambdaQueryWrapper<JgVehicleInformation>()
.eq(JgVehicleInformation::getStatus, "已完成") .eq(JgVehicleInformation::getStatus, "已完成")
.eq(JgVehicleInformation::getIsDelete, false)); .eq(JgVehicleInformation::getIsDelete, false));
for (JgVehicleInformation vehicleInformation : jgVehicleInformations) { for (JgVehicleInformation vehicleInformation : jgVehicleInformations) {
// 使用单位信息 // 使用单位信息
Map<String, Object> enterpriseInfo = commonServiceImpl.getEnterpriseInfo(vehicleInformation.getUseUnitCreditCode()); Map<String, Object> enterpriseInfo = commonServiceImpl.getEnterpriseInfo(vehicleInformation.getUseUnitCreditCode());
// 设备种类/类别/品种 // 设备种类/类别/品种
Map<String, String> equType = jgUseRegistrationMapper.getEquTypeByVehSeq(String.valueOf(vehicleInformation.getSequenceNbr())); Map<String, String> equType = jgUseRegistrationMapper.getEquTypeByVehSeq(String.valueOf(vehicleInformation.getSequenceNbr()));
// 组装数据 // 组装数据
JgUseRegistrationManage jgUseRegistrationManage = new JgUseRegistrationManage(); JgUseRegistrationManage jgUseRegistrationManage = new JgUseRegistrationManage();
jgUseRegistrationManage.setUseUnitName(vehicleInformation.getUseUnitName()); jgUseRegistrationManage.setUseUnitName(vehicleInformation.getUseUnitName());
jgUseRegistrationManage.setApplyNo(vehicleInformation.getApplyNo()); jgUseRegistrationManage.setApplyNo(vehicleInformation.getApplyNo());
jgUseRegistrationManage.setCertificateStatus(CertificateStatusEnum.YIDENGJI.getName()); jgUseRegistrationManage.setCertificateStatus(CertificateStatusEnum.YIDENGJI.getName());
jgUseRegistrationManage.setReceiveOrgName(vehicleInformation.getReceiveOrgName()); jgUseRegistrationManage.setReceiveOrgName(vehicleInformation.getReceiveOrgName());
jgUseRegistrationManage.setAuditPassDate(vehicleInformation.getAuditPassDate()); jgUseRegistrationManage.setAuditPassDate(vehicleInformation.getAuditPassDate());
jgUseRegistrationManage.setRegType(BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName()); jgUseRegistrationManage.setRegType(BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName());
jgUseRegistrationManage.setRegDate(vehicleInformation.getRegDate()); jgUseRegistrationManage.setRegDate(vehicleInformation.getRegDate());
jgUseRegistrationManage.setEquList(equType.get("equList")); jgUseRegistrationManage.setEquList(equType.get("equList"));
jgUseRegistrationManage.setEquListCode(equType.get("equListCode")); jgUseRegistrationManage.setEquListCode(equType.get("equListCode"));
jgUseRegistrationManage.setEquCategory(equType.get("equCategory")); jgUseRegistrationManage.setEquCategory(equType.get("equCategory"));
jgUseRegistrationManage.setEquCategoryCode(equType.get("equCategoryCode")); jgUseRegistrationManage.setEquCategoryCode(equType.get("equCategoryCode"));
jgUseRegistrationManage.setEquDefine(equType.get("equDefine")); jgUseRegistrationManage.setEquDefine(equType.get("equDefine"));
jgUseRegistrationManage.setEquDefineCode(equType.get("equDefineCode")); jgUseRegistrationManage.setEquDefineCode(equType.get("equDefineCode"));
jgUseRegistrationManage.setIsDelete(Boolean.FALSE); jgUseRegistrationManage.setIsDelete(Boolean.FALSE);
jgUseRegistrationManage.setRecUserId(vehicleInformation.getRecUserId()); jgUseRegistrationManage.setRecUserId(vehicleInformation.getRecUserId());
jgUseRegistrationManage.setRecUserName(vehicleInformation.getRecUserName()); jgUseRegistrationManage.setRecUserName(vehicleInformation.getRecUserName());
jgUseRegistrationManage.setRecDate(vehicleInformation.getRecDate()); jgUseRegistrationManage.setRecDate(vehicleInformation.getRecDate());
jgUseRegistrationManage.setCreateUserId(vehicleInformation.getCreateUserId()); jgUseRegistrationManage.setCreateUserId(vehicleInformation.getCreateUserId());
jgUseRegistrationManage.setCreateDate(vehicleInformation.getRecDate()); jgUseRegistrationManage.setCreateDate(vehicleInformation.getRecDate());
jgUseRegistrationManage.setEquUseAddress(""); jgUseRegistrationManage.setEquUseAddress("");
jgUseRegistrationManage.setManageType("unit"); jgUseRegistrationManage.setManageType("unit");
jgUseRegistrationManage.setCarNumber(vehicleInformation.getCarNumber()); jgUseRegistrationManage.setCarNumber(vehicleInformation.getCarNumber());
jgUseRegistrationManage.setUseUnitAddress(!ValidationUtil.isEmpty(enterpriseInfo) ? (String) enterpriseInfo.get("address") : ""); jgUseRegistrationManage.setUseUnitAddress(!ValidationUtil.isEmpty(enterpriseInfo) ? (String) enterpriseInfo.get("address") : "");
jgUseRegistrationManage.setUseRegistrationCode(vehicleInformation.getUseRegistrationCode()); jgUseRegistrationManage.setUseRegistrationCode(vehicleInformation.getUseRegistrationCode());
jgUseRegistrationManage.setUseUnitCreditCode(vehicleInformation.getUseUnitCreditCode()); jgUseRegistrationManage.setUseUnitCreditCode(vehicleInformation.getUseUnitCreditCode());
jgUseRegistrationManage.setReceiveCompanyCode(vehicleInformation.getReceiveCompanyCode()); jgUseRegistrationManage.setReceiveCompanyCode(vehicleInformation.getReceiveCompanyCode());
jgUseRegistrationManage.setCertificateNo(commonServiceImpl.generateCertificateNo(equType, vehicleInformation.getAuditPassDate(), vehicleInformation.getReceiveCompanyCode())); jgUseRegistrationManage.setGasNum(vehicleInformation.getGasNum());
this.baseMapper.insert(jgUseRegistrationManage); jgUseRegistrationManage.setFillingMedium(vehicleInformation.getFillingMedium());
jgUseRegistrationManage.setVolume(vehicleInformation.getVolume());
jgUseRegistrationManage.setCertificateNo(commonServiceImpl.generateCertificateNo(equType, vehicleInformation.getAuditPassDate(), vehicleInformation.getReceiveCompanyCode()));
this.baseMapper.insert(jgUseRegistrationManage);
}
} }
return Boolean.TRUE; return Boolean.TRUE;
} }
...@@ -519,7 +526,6 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -519,7 +526,6 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
exportParamsMap.put("useInnerCode", deviceList.get(0).get("USE_INNER_CODE")); exportParamsMap.put("useInnerCode", deviceList.get(0).get("USE_INNER_CODE"));
exportParamsMap.put("carNumber", manage.getCarNumber()); exportParamsMap.put("carNumber", manage.getCarNumber());
if ("0".equals(printType)) { if ("0".equals(printType)) {
// 调用生成使用登记证 // 调用生成使用登记证
commonService.generateCertificateReport(exportParamsMap, response); commonService.generateCertificateReport(exportParamsMap, response);
...@@ -540,12 +546,17 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -540,12 +546,17 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
UseFlagParamDto useFlagParamDto = new UseFlagParamDto(); UseFlagParamDto useFlagParamDto = new UseFlagParamDto();
useFlagParamDto.setReceiveCompanyCode(manage.getReceiveCompanyCode()); useFlagParamDto.setReceiveCompanyCode(manage.getReceiveCompanyCode());
useFlagParamDto.setEquList(exportParamsMap.get("equList").toString()); useFlagParamDto.setEquList(exportParamsMap.get("equList").toString());
useFlagParamDto.setEquListCode(manage.getEquListCode()); if (BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName().equals(manage.getRegType())){
useFlagParamDto.setEquListCode("0000");
useFlagParamDto.setEquipDefine("车用气瓶");
}else{
useFlagParamDto.setEquListCode(manage.getEquListCode());
useFlagParamDto.setEquipDefine(Optional.ofNullable(exportParamsMap.get("equDefine"))
.orElse(exportParamsMap.get("equCategory").toString())
.toString());
}
useFlagParamDto.setEquipCode(exportParamsMap.get("equCode").toString()); useFlagParamDto.setEquipCode(exportParamsMap.get("equCode").toString());
useFlagParamDto.setEquipCategory(manage.getEquCategory()); useFlagParamDto.setEquipCategory(manage.getEquCategory());
useFlagParamDto.setEquipDefine(Optional.ofNullable(exportParamsMap.get("equDefine"))
.orElse(exportParamsMap.get("equCategory").toString())
.toString());
useFlagParamDto.setUseUnitName(exportParamsMap.get("useUnitName").toString()); useFlagParamDto.setUseUnitName(exportParamsMap.get("useUnitName").toString());
useFlagParamDto.setUseInnerCode(exportParamsMap.get("useInnerCode").toString()); useFlagParamDto.setUseInnerCode(exportParamsMap.get("useInnerCode").toString());
useFlagParamDto.setReceiveOrgName(manage.getReceiveOrgName()); useFlagParamDto.setReceiveOrgName(manage.getReceiveOrgName());
...@@ -558,8 +569,8 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -558,8 +569,8 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
// 电梯维保信息字段设置 // 电梯维保信息字段设置
setMainInfoField((String) deviceList.get(0).get("SEQUENCE_NBR"), useFlagParamDto); setMainInfoField((String) deviceList.get(0).get("SEQUENCE_NBR"), useFlagParamDto);
// 车用气瓶专用字段 暂无数据源 需车用气瓶功能开发完成后进行 // 车用气瓶专用字段 暂无数据源 需车用气瓶功能开发完成后进行
useFlagParamDto.setCylinderNumOrVolume(""); useFlagParamDto.setCylinderNumOrVolume(manage.getGasNum() + "/" + manage.getVolume());
useFlagParamDto.setFillingMedium(""); useFlagParamDto.setFillingMedium(manage.getFillingMedium());
return useFlagParamDto; return useFlagParamDto;
} }
...@@ -583,7 +594,6 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -583,7 +594,6 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
return StringUtil.isNotEmpty(idxBizJgMaintenanceRecordInfo.getMeMasterPhone()) ? idxBizJgMaintenanceRecordInfo.getMeMasterPhone() : StringUtil.isNotEmpty(idxBizJgMaintenanceRecordInfo.getMeMaster1Phone()) ? idxBizJgMaintenanceRecordInfo.getMeMaster1Phone() : ""; return StringUtil.isNotEmpty(idxBizJgMaintenanceRecordInfo.getMeMasterPhone()) ? idxBizJgMaintenanceRecordInfo.getMeMasterPhone() : StringUtil.isNotEmpty(idxBizJgMaintenanceRecordInfo.getMeMaster1Phone()) ? idxBizJgMaintenanceRecordInfo.getMeMaster1Phone() : "";
} }
/** /**
* 根据sequenceNbr查询---大屏使用 * 根据sequenceNbr查询---大屏使用
* *
......
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