诺诺发票
This commit is contained in:
parent
acaac3b424
commit
26468c5a6e
|
@ -3,10 +3,13 @@ package com.hzya.frame.seeyon.dao;
|
|||
import com.hzya.frame.basedao.dao.IBaseDao;
|
||||
import com.hzya.frame.seeyon.entity.CtpFileEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description seeyon 附件对象
|
||||
* @Author xiangerlin
|
||||
* @Date 2024/6/17 15:21
|
||||
**/
|
||||
public interface ICtpFileDao extends IBaseDao<CtpFileEntity,String> {
|
||||
List<CtpFileEntity> queryFile(CtpFileEntity ctpFileEntity);
|
||||
}
|
||||
|
|
|
@ -9,5 +9,7 @@ import java.util.List;
|
|||
public interface INuoNuoCallbackDao extends IBaseDao<NuoNuoCallbackEntity, String> {
|
||||
|
||||
List<NuoNuoCallbackEntity> queryOaData(NuoNuoCallbackEntity queryData);
|
||||
|
||||
int updateNuoNuo(NuoNuoCallbackEntity nuoNuoCallbackEntity);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.hzya.frame.seeyon.dao.impl;
|
||||
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.hzya.frame.basedao.dao.MybatisGenericDao;
|
||||
import com.hzya.frame.seeyon.dao.ICtpAttachmentDao;
|
||||
import com.hzya.frame.seeyon.dao.ICtpFileDao;
|
||||
|
@ -7,6 +8,8 @@ import com.hzya.frame.seeyon.entity.CtpAttachmentEntity;
|
|||
import com.hzya.frame.seeyon.entity.CtpFileEntity;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description
|
||||
* @Author xiangerlin
|
||||
|
@ -14,4 +17,10 @@ import org.springframework.stereotype.Repository;
|
|||
**/
|
||||
@Repository()
|
||||
public class CtpFileDaoImpl extends MybatisGenericDao<CtpFileEntity,String> implements ICtpFileDao {
|
||||
@DS("#entity.dataSourceCode")
|
||||
@Override
|
||||
public List<CtpFileEntity> queryFile(CtpFileEntity entity) {
|
||||
List<CtpFileEntity> o = (List<CtpFileEntity>) super.selectList(getSqlIdPrifx() + "queryFile", entity);
|
||||
return o;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,5 +17,10 @@ public class NuoNuoCallbackDaoImpl extends MybatisGenericDao<NuoNuoCallbackEntit
|
|||
public List<NuoNuoCallbackEntity> queryOaData(NuoNuoCallbackEntity entity) {
|
||||
return (List<NuoNuoCallbackEntity>) super.selectList(getSqlIdPrifx()+"queryOaData",entity);
|
||||
}
|
||||
@DS("#entity.dataSourceCode")
|
||||
@Override
|
||||
public int updateNuoNuo(NuoNuoCallbackEntity entity) {
|
||||
return super.update(getSqlIdPrifx()+"updateNuoNuo",entity);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -45,5 +45,15 @@
|
|||
</trim>
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 查询 采用==查询 -->
|
||||
<select id="queryFile" resultMap="get-CtpFileEntity-result" parameterType="com.hzya.frame.seeyon.entity.CtpFileEntity">
|
||||
select
|
||||
<include refid="CtpFileEntity_sql"/>
|
||||
from
|
||||
ctp_file
|
||||
<trim prefix="where" prefixOverrides="and">
|
||||
<if test="id != null and id != ''">id = #{id}</if>
|
||||
<if test="filename != null and filename != ''">and filename = #{filename}</if>
|
||||
</trim>
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -15,5 +15,19 @@
|
|||
<if test="field00001 != null and field00001 !='' ">field00001 = #{field00001} </if>
|
||||
</trim>
|
||||
</select>
|
||||
|
||||
<update id="updateNuoNuo" parameterType="com.hzya.frame.seeyon.entity.NuoNuoCallbackEntity">
|
||||
update formmain_11951 set
|
||||
<trim suffix="" suffixOverrides=",">
|
||||
<if test="field0001 != null and field0001 !='' "> field0001 = #{field0001},</if>
|
||||
<if test="field0150 != null and field0150 !='' "> field0150 = #{field0150},</if>
|
||||
<if test="field0151 != null and field0151 !='' "> field0151 = #{field0151},</if>
|
||||
<if test="field0188 != null and field0188 !='' "> field0188 = #{field0188},</if>
|
||||
<if test="field0152 != null and field0152 !='' "> field0152 = #{field0152},</if>
|
||||
<if test="field0153 != null and field0153 !='' "> field0153 = #{field0153},</if>
|
||||
</trim>
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
||||
|
|
|
@ -16,5 +16,5 @@ public interface ICtpAttachmentService extends IBaseService<CtpAttachmentEntity,
|
|||
* @param sub_reference 随机uuid
|
||||
* @return
|
||||
*/
|
||||
CtpAttachmentEntity saveAttachment(String fileUrl, String col_summary_id, String sub_reference)throws Exception;
|
||||
CtpAttachmentEntity saveAttachment(String fileUrl, String col_summary_id, String sub_reference, String dataSourceCode)throws Exception;
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.hzya.frame.seeyon.service.impl;
|
|||
import cn.hutool.core.date.DateUtil;
|
||||
import com.hzya.frame.basedao.service.impl.BaseService;
|
||||
import com.hzya.frame.seeyon.dao.ICtpAttachmentDao;
|
||||
import com.hzya.frame.seeyon.dao.ICtpFileDao;
|
||||
import com.hzya.frame.seeyon.entity.CtpAttachmentEntity;
|
||||
import com.hzya.frame.seeyon.entity.CtpFileEntity;
|
||||
import com.hzya.frame.seeyon.service.ICtpAttachmentService;
|
||||
|
@ -23,6 +24,9 @@ import java.util.List;
|
|||
@Service(value = "ctpAttachmentService")
|
||||
public class CtpAttachmentServiceImpl extends BaseService<CtpAttachmentEntity, String> implements ICtpAttachmentService {
|
||||
|
||||
|
||||
@Autowired
|
||||
private ICtpFileDao ctpFileDao;
|
||||
private ICtpAttachmentDao ctpAttachmentDao;
|
||||
@Autowired
|
||||
private ICtpFileService ctpFileService;
|
||||
|
@ -41,16 +45,17 @@ public class CtpAttachmentServiceImpl extends BaseService<CtpAttachmentEntity, S
|
|||
* @return
|
||||
*/
|
||||
@Override
|
||||
public CtpAttachmentEntity saveAttachment(String fileUrl, String col_summary_id, String sub_reference)throws Exception {
|
||||
public CtpAttachmentEntity saveAttachment(String fileUrl, String col_summary_id, String sub_reference, String dataSourceCode)throws Exception {
|
||||
//查一下附件
|
||||
CtpFileEntity ctpFileEntity = new CtpFileEntity();
|
||||
ctpFileEntity.setId(fileUrl);
|
||||
ctpFileEntity.setDataSourceCode("");
|
||||
List<CtpFileEntity> ctpFileList = ctpFileService.query(ctpFileEntity);
|
||||
ctpFileEntity.setDataSourceCode(dataSourceCode);
|
||||
List<CtpFileEntity> ctpFileList = ctpFileDao.queryFile(ctpFileEntity);
|
||||
if (CollectionUtils.isNotEmpty(ctpFileList)){
|
||||
CtpFileEntity ctpFile = ctpFileList.get(0);
|
||||
if (null != ctpFile){
|
||||
CtpAttachmentEntity ctpAttachmentEntity = new CtpAttachmentEntity();
|
||||
ctpAttachmentEntity.setDataSourceCode(dataSourceCode);
|
||||
ctpAttachmentEntity.setId(String.valueOf(UUIDLong.longUUID()));
|
||||
ctpAttachmentEntity.setFile_url(ctpFile.getId());//ctp_file表的id
|
||||
ctpAttachmentEntity.setAtt_reference(col_summary_id);//业务表单的id
|
||||
|
@ -61,7 +66,7 @@ public class CtpAttachmentServiceImpl extends BaseService<CtpAttachmentEntity, S
|
|||
ctpAttachmentEntity.setMime_type(ctpFile.getMime_type());
|
||||
ctpAttachmentEntity.setAttachment_size(ctpFile.getFile_size());
|
||||
ctpAttachmentEntity.setCreatedate(new Date());
|
||||
this.save(ctpAttachmentEntity);
|
||||
ctpAttachmentDao.saveCtpAttachment(ctpAttachmentEntity);
|
||||
return ctpAttachmentEntity;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -88,7 +88,7 @@ public class NuoNuoCallbackServiceImpl implements INuoNuoCallbackService {
|
|||
}
|
||||
//查找单据,上传附件
|
||||
NuoNuoCallbackEntity queryData = new NuoNuoCallbackEntity();
|
||||
queryData.setDataSourceCode("");//todo
|
||||
queryData.setDataSourceCode("SW-OA");
|
||||
queryData.setField0001(orderNo);
|
||||
List<NuoNuoCallbackEntity> entityList = nuoNuoCallbackDao.queryOaData(queryData);
|
||||
if(entityList == null || entityList.size() == 0){
|
||||
|
@ -104,41 +104,51 @@ public class NuoNuoCallbackServiceImpl implements INuoNuoCallbackService {
|
|||
return returnData;
|
||||
}
|
||||
NuoNuoCallbackEntity nuoNuoCallbackEntity = entityList.get(0);
|
||||
nuoNuoCallbackEntity.setDataSourceCode("");//todo
|
||||
|
||||
//private String field0153;//电子发票
|
||||
nuoNuoCallbackEntity.setDataSourceCode("SW-OA");
|
||||
nuoNuoCallbackEntity.setField0001(orderNo);//单据号
|
||||
nuoNuoCallbackEntity.setField0150(invoiceNumber);//发票号码
|
||||
nuoNuoCallbackEntity.setField0151(invoiceTime);//开票日期
|
||||
nuoNuoCallbackEntity.setField0188(invoiceCode);//发票代码
|
||||
nuoNuoCallbackEntity.setField0152(errorMessage);//开票结果
|
||||
|
||||
String urluuid = String.valueOf(UUID.randomUUID().getLeastSignificantBits());
|
||||
if(pdfUrl != null){
|
||||
String urlData = sendFileUpload(pdfUrl);
|
||||
if(urlData != null){
|
||||
//保存关联表
|
||||
String urluuid = String.valueOf(UUID.randomUUID().getLeastSignificantBits());
|
||||
nuoNuoCallbackEntity.setField0153(urluuid);//发票文件
|
||||
ctpAttachmentService.saveAttachment(urlData,nuoNuoCallbackEntity.getId(),urluuid,nuoNuoCallbackEntity.getDataSourceCode());
|
||||
try {
|
||||
ctpAttachmentService.saveAttachment(urlData,nuoNuoCallbackEntity.getId(),urluuid,nuoNuoCallbackEntity.getDataSourceCode());
|
||||
} catch (Exception e) {
|
||||
JSONObject returnData = new JSONObject();
|
||||
returnData.put("code","9999");
|
||||
returnData.put("message","根据订单编号上传附件失败");
|
||||
return returnData;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(imageUrl != null){
|
||||
String urlData = sendFileUpload(imageUrl);
|
||||
if(urlData != null){
|
||||
//保存关联表
|
||||
nuoNuoCallbackEntity.setField0153(urluuid);//发票文件
|
||||
try {
|
||||
ctpAttachmentService.saveAttachment(urlData,nuoNuoCallbackEntity.getId(),urluuid,nuoNuoCallbackEntity.getDataSourceCode());
|
||||
} catch (Exception e) {
|
||||
JSONObject returnData = new JSONObject();
|
||||
returnData.put("code","9999");
|
||||
returnData.put("message","根据订单编号上传附件失败");
|
||||
return returnData;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//修改单据信息
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
nuoNuoCallbackDao.updateNuoNuo(nuoNuoCallbackEntity);
|
||||
JSONObject returnData = new JSONObject();
|
||||
returnData.put("code","0000");
|
||||
returnData.put("message","业务方接收同步成功");
|
||||
return returnData;
|
||||
}
|
||||
|
||||
|
||||
|
||||
private String sendFileUpload(String fileurl) {
|
||||
try {
|
||||
// 获取文件字节数据
|
||||
|
@ -222,7 +232,7 @@ public class NuoNuoCallbackServiceImpl implements INuoNuoCallbackService {
|
|||
paramMap.put("file", file);
|
||||
String url = "/seeyon/rest/attachment?token=@token@";//如果后面加上applicationCategory=1&extensions=&firstSave=true,附件业务自动生成一条记录
|
||||
//url = url.replaceAll("@token@", getOAToken(loginName));
|
||||
String result = HttpUtil.post("http://60.204.152.210" + url, paramMap);
|
||||
String result = HttpUtil.post("https://swoa.sunwave.com.cn:9999" + url, paramMap);
|
||||
if (StrUtil.isNotBlank(result)) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(result);
|
||||
String atts = jsonObject.get("atts").toString();
|
||||
|
|
Loading…
Reference in New Issue