Browse Source

移库添加出门证

master
dimengzhe 3 years ago
parent
commit
9cbfd74b25
  1. 20
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmexitpermit/ScmExitPermit.java
  2. 15
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitMapper.java
  3. 9
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitMapper.xml
  4. 17
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitService.java
  5. 1
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.xml
  6. 56
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java
  7. 1467
      anrui-scm/anrui-scm-biz/src/main/resources/出门证.ftl
  8. 19
      doc/databases/scm_tables.sql

20
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmexitpermit/ScmExitPermit.java

@ -0,0 +1,20 @@
package com.yxt.anrui.scm.api.scmexitpermit;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/8/2 16:08
* @Description
*/
@Data
public class ScmExitPermit extends BaseEntity {
private static final long serialVersionUID = -7334329732636532160L;
@ApiModelProperty("关联sid")
private String linkSid;
@ApiModelProperty("出门证地址")
private String url;
}

15
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitMapper.java

@ -0,0 +1,15 @@
package com.yxt.anrui.scm.biz.scmexitpermit;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.scm.api.scmexitpermit.ScmExitPermit;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2022/8/2 16:12
* @Description
*/
@Mapper
public interface ScmExitPermitMapper extends BaseMapper<ScmExitPermit> {
ScmExitPermit selectByLinkSid(String sid);
}

9
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitMapper.xml

@ -0,0 +1,9 @@
<?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.yxt.anrui.scm.biz.scmexitpermit.ScmExitPermitMapper">
<select id="selectByLinkSid" resultType="com.yxt.anrui.scm.api.scmexitpermit.ScmExitPermit">
select *
from scm_exit_permit
where linkSid = #{sid}
</select>
</mapper>

17
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmexitpermit/ScmExitPermitService.java

@ -0,0 +1,17 @@
package com.yxt.anrui.scm.biz.scmexitpermit;
import com.yxt.anrui.scm.api.scmexitpermit.ScmExitPermit;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2022/8/2 16:11
* @Description
*/
@Service
public class ScmExitPermitService extends MybatisBaseService<ScmExitPermitMapper, ScmExitPermit> {
public ScmExitPermit selectByLinkSid(String sid) {
return baseMapper.selectByLinkSid(sid);
}
}

1
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.xml

@ -53,7 +53,6 @@
svg.applicantName as applyName, svg.applicantName as applyName,
svg.applicantDate as applyDate, svg.applicantDate as applyDate,
svg.applicantFunds as applyPrice, svg.applicantFunds as applyPrice,
svg.temporaryCard as downloadUrl,
svg.taskId, svg.taskId,
svg.procInstId svg.procInstId
FROM scm_vehicle_gression svg FROM scm_vehicle_gression svg

56
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java

@ -26,6 +26,7 @@
package com.yxt.anrui.scm.biz.scmvehiclegression; package com.yxt.anrui.scm.biz.scmvehiclegression;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
@ -53,16 +54,19 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo; import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo;
import com.yxt.anrui.scm.api.scmexitpermit.ScmExitPermit;
import com.yxt.anrui.scm.api.scmfile.ScmFile; import com.yxt.anrui.scm.api.scmfile.ScmFile;
import com.yxt.anrui.scm.api.scmvehiclegression.*; import com.yxt.anrui.scm.api.scmvehiclegression.*;
import com.yxt.anrui.scm.api.scmvehiclegression.flowable.GetNodeQuery; import com.yxt.anrui.scm.api.scmvehiclegression.flowable.GetNodeQuery;
import com.yxt.anrui.scm.api.scmvehiclegression.flowable.GetNodeVo; import com.yxt.anrui.scm.api.scmvehiclegression.flowable.GetNodeVo;
import com.yxt.anrui.scm.api.scmvehiclegression.flowable.ScmCarTransferTaskQuery; import com.yxt.anrui.scm.api.scmvehiclegression.flowable.ScmCarTransferTaskQuery;
import com.yxt.anrui.scm.api.scmvehiclegression.flowable.SubmitCarTransferDto; import com.yxt.anrui.scm.api.scmvehiclegression.flowable.SubmitCarTransferDto;
import com.yxt.anrui.scm.biz.scmexitpermit.ScmExitPermitService;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService; import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.WordUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
@ -120,6 +124,8 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
@Autowired @Autowired
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private ScmExitPermitService scmExitPermitService;
private QueryWrapper<ScmVehicleGression> createQueryWrapper(ScmVehicleGressionQuery query) { private QueryWrapper<ScmVehicleGression> createQueryWrapper(ScmVehicleGressionQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
@ -243,6 +249,11 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
for (AppScmVehicleGressionPageVo record : records) { for (AppScmVehicleGressionPageVo record : records) {
if ("已办结".equals(record.getState())) { if ("已办结".equals(record.getState())) {
record.setShowDownloadBtn(true); record.setShowDownloadBtn(true);
//查询出门证
ScmExitPermit scmExitPermit = scmExitPermitService.selectByLinkSid(record.getSid());
if (scmExitPermit != null) {
record.setDownloadUrl(fileUploadComponent.getUrlPrefix() + scmExitPermit.getUrl());
}
List<ScmFile> list = scmFileService.getByLinkSidAndType(record.getSid(), type); List<ScmFile> list = scmFileService.getByLinkSidAndType(record.getSid(), type);
if (list.size() > 0) { if (list.size() > 0) {
record.setShowUploadBtn(false); record.setShowUploadBtn(false);
@ -691,6 +702,12 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
vehicleGression.setLocation(scmVehicleGression.getTargetLocationSid()); vehicleGression.setLocation(scmVehicleGression.getTargetLocationSid());
vehicleGression.setLocationName(scmVehicleGression.getTargetLocation()); vehicleGression.setLocationName(scmVehicleGression.getTargetLocation());
baseVehicleFeign.updateVehicleGressionByVin(vehicleGression); baseVehicleFeign.updateVehicleGressionByVin(vehicleGression);
String pdfPath = createPdf(bv.getBusinessSid());
//将生成的出门证添加到出门证表中
ScmExitPermit scmExitPermit = new ScmExitPermit();
scmExitPermit.setLinkSid(bv.getBusinessSid());
scmExitPermit.setUrl(pdfPath);
scmExitPermitService.insert(scmExitPermit);
} }
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
return rb.success().setData(resultBean.getData()); return rb.success().setData(resultBean.getData());
@ -906,4 +923,43 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
temporaryExitPermitInfo.setCarryCarName("—"); temporaryExitPermitInfo.setCarryCarName("—");
return rb.success().setData(temporaryExitPermitInfo); return rb.success().setData(temporaryExitPermitInfo);
} }
public String createPdf(String sid) {
ScmVehicleGression scmVehicleGression = fetchBySid(sid);
SysOrganization sysOrganization = sysOrganizationFeign.selectBySid(scmVehicleGression.getUseOrgSid()).getData();
BaseVehicleSelectVo data = baseVehicleFeign.details(scmVehicleGression.getVehicleSid()).getData();
ExiCarConfigDetailVo exiCarConfigDetailVo = baseVehicleFeign.selectExiCarConfig(data.getModelSid(), data.getModelConfigSid(), data.getVehModelConfigSid()).getData();
Map<String, Object> dataMap = new HashMap<String, Object>();
dataMap.put("date", DateUtil.today());
// dataMap.put("contractNo", "-");
dataMap.put("orgName", sysOrganization.getName());
// dataMap.put("name", "-");
dataMap.put("modelName", exiCarConfigDetailVo.getVehicleAlias() + exiCarConfigDetailVo.getCarColor());
dataMap.put("number", 1);
dataMap.put("vinNo", scmVehicleGression.getVinNo());
dataMap.put("reason", "存放地点变更");
dataMap.put("operator", scmVehicleGression.getOperator());
// dataMap.put("finOperator", "-");
// dataMap.put("carCollector", "-");
// dataMap.put("signature", "-");
// 模板名
String typeName = "出门证模板";
// 模板路径
String sourcePath = "D:\\anrui\\upload\\template\\";
// 生成的word文件名
String fileName = "出门证.doc";
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
// 生成文件路径
String targetPath = sourcePath + dateStr;
// 调用生成word方法
WordUtils.creatWord(dataMap, typeName, sourcePath, targetPath, fileName);
// 新生成的word路径;
String wordPath = targetPath + "\\" + fileName;
// 生成pdf的文件名
String pdfName = "出门证_" + fileUploadComponent.dateFileName() + ".pdf";
WordUtils.doc2pdf(wordPath, targetPath, pdfName);
return "template" + "/" + dateStr + "/" + pdfName;
}
} }

1467
anrui-scm/anrui-scm-biz/src/main/resources/出门证.ftl

File diff suppressed because it is too large

19
doc/databases/scm_tables.sql

@ -889,4 +889,23 @@ CREATE TABLE `scm_vehinspect_itemDetail`
) ENGINE = INNODB ) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='验车检查项目内容'; DEFAULT CHARSET = utf8 COMMENT ='验车检查项目内容';
DROP TABLE IF EXISTS `scm_exit_permit`;
CREATE TABLE `scm_exit_permit`
(
`id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(32) DEFAULT '0' COMMENT '版本锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用',
`state` int(32) DEFAULT '1' COMMENT '状态',
`isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`linkSid` varchar(64) DEFAULT NULL COMMENT '关联sid',
`url` varchar(64) DEFAULT NULL COMMENT '出门证地址',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='出门证';

Loading…
Cancel
Save