报销单修改功能
This commit is contained in:
parent
7f0994bd93
commit
d1d3eba5a6
|
@ -49,6 +49,13 @@ GSDM,KJND,mlId
|
|||
<!--select ATFile as Rpt_Rt_content from AT_AttachmentFile where ATGuid='A1:00367df4-d5d6-4abb-82f6-e3bd1ca9e070'-->
|
||||
</select>
|
||||
|
||||
<select id="entity_list_base" resultMap="get-OerDjmlEntity-result" parameterType="com.hzya.frame.grpU8.nxproof.oerdjml.entity.OerDjmlEntity">
|
||||
select * from oer_djml
|
||||
<trim prefix="where" prefixOverrides="and">
|
||||
<if test="djbh != null and djbh != ''"> djbh = #{djbh}</if>
|
||||
<if test="mlid != null and mlid != ''">and mlid = #{mlId}</if>
|
||||
</trim>
|
||||
</select>
|
||||
<!-- 查询最大单据编号+1-->
|
||||
<select id="OerDjmlEntity_list_base_djbhMax" resultMap="get-OerDjmlEntity-result" parameterType="com.hzya.frame.grpU8.nxproof.oerdjml.entity.OerDjmlEntity">
|
||||
select
|
||||
|
@ -227,8 +234,8 @@ GSDM,KJND,mlId
|
|||
|
||||
|
||||
<update id="OerDjmlEntity_update_data" parameterType="com.hzya.frame.grpU8.nxproof.oerdjml.entity.OerDjmlEntity">
|
||||
update oer_djml set
|
||||
<trim prefixOverrides="," suffixOverrides=",">
|
||||
update OER_DJML set
|
||||
<trim suffix="" suffixOverrides=",">
|
||||
<if test="gsdm != null and gsdm !='' "> GSDM = #{gsdm}, </if>
|
||||
<if test="kjnd != null and kjnd !='' "> KJND = #{kjnd}, </if>
|
||||
<if test="djlxId != null and djlxId !='' "> DJLXID = #{djlxId}, </if>
|
||||
|
@ -267,6 +274,11 @@ GSDM,KJND,mlId
|
|||
<if test="yhzh != null and yhzh !='' "> yhzh = #{yhzh}, </if>
|
||||
<if test="xmdm != null and xmdm !='' "> xmdm = #{xmdm}, </if>
|
||||
<if test="xmmc != null and xmmc !='' "> xmmc = #{xmmc}, </if>
|
||||
<if test="WX00000051 != null and WX00000051 !='' "> WX00000051 =#{WX00000051}, </if>
|
||||
<if test="WX00000054 != null and WX00000054 !='' "> WX00000054 = #{WX00000054}, </if>
|
||||
<if test="WX00000055 != null and WX00000055 !='' "> WX00000055 = #{WX00000055}, </if>
|
||||
<if test="WX00000056 != null and WX00000056 !='' "> WX00000056 = #{WX00000056}, </if>
|
||||
<if test="WX00000057 != null and WX00000057 !='' "> WX00000057 = #{WX00000057}</if>
|
||||
</trim>
|
||||
where DJBH = #{djbh} and MLID=${mlId}
|
||||
</update>
|
||||
|
|
|
@ -1155,70 +1155,43 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
|
|||
if(StrUtil.isEmpty(entity.getDjdate())){
|
||||
return BaseResult.getFailureMessageEntity("单据日期不能为空!请排查参数djdate");
|
||||
}
|
||||
if(StrUtil.isEmpty(entity.getDjbh())){
|
||||
return BaseResult.getFailureMessageEntity("单据编号不能为空!请排查参数djbh");
|
||||
}
|
||||
if(entity.getOerDjnrEntityList() == null || entity.getOerDjnrEntityList().size() == 0 ){
|
||||
return BaseResult.getFailureMessageEntity("报销单明细数据为空!请检查参数");
|
||||
}
|
||||
if(entity.getOerDjjsfsEntityList() == null || entity.getOerDjjsfsEntityList().size() == 0 ){
|
||||
return BaseResult.getFailureMessageEntity("报销单结算明细数据为空!请检查参数");
|
||||
}
|
||||
boolean flag = false;
|
||||
String maxDjbh = null;
|
||||
String maxDjbh = entity.getDjbh();
|
||||
String maxMlId = null;
|
||||
// if (entity.getDjbh() == null || "".equals(entity.getDjbh())) {
|
||||
// OerDjmlEntity oerDjmlEntity = new OerDjmlEntity();
|
||||
// oerDjmlEntity.setDataSourceCode(dataSourceCode);
|
||||
// oerDjmlEntity.setGsdm(gsdm);
|
||||
// oerDjmlEntity.setDjdate(entity.getDjdate());
|
||||
// oerDjmlEntity.setFph(nullConvert(entity.getFph()));
|
||||
// maxDjbh = iOerDjmlDao.getMaxDjbgByGsdm(oerDjmlEntity);
|
||||
// entity.setDjbh(maxDjbh);
|
||||
// }else {
|
||||
// OerDjmlEntity oerDjmlAllEntity = new OerDjmlEntity();
|
||||
// oerDjmlAllEntity.setDataSourceCode(dataSourceCode);
|
||||
// oerDjmlAllEntity.setDjbh(entity.getDjbh());
|
||||
// List<OerDjmlEntity> oerDjmlAllEntities = iOerDjmlDao.queryOerDjml(oerDjmlAllEntity);
|
||||
// if(oerDjmlAllEntities != null && oerDjmlAllEntities.size() == 1){
|
||||
// flag = true;
|
||||
// maxDjbh = oerDjmlAllEntities.get(0).getDjbh();
|
||||
// maxMlId = oerDjmlAllEntities.get(0).getMlId();
|
||||
// }
|
||||
// }
|
||||
//查询最大单据号
|
||||
OerDjmlEntity maxDjml = new OerDjmlEntity();
|
||||
maxDjml.setDataSourceCode(dataSourceCode);
|
||||
maxDjml.setGsdm(gsdm);
|
||||
maxDjml.setDjdate(entity.getDjdate());
|
||||
maxDjbh = iOerDjmlDao.getMaxDjbgByGsdm(maxDjml);
|
||||
Assert.notEmpty(maxDjbh,"生成单号出错");
|
||||
OerDjmlEntity oerDjmlAllEntity = new OerDjmlEntity();
|
||||
oerDjmlAllEntity.setDataSourceCode(dataSourceCode);
|
||||
oerDjmlAllEntity.setDjbh(maxDjbh);
|
||||
List<OerDjmlEntity> oerDjmlAllEntities = iOerDjmlDao.queryOerDjml(oerDjmlAllEntity);
|
||||
if(oerDjmlAllEntities != null && oerDjmlAllEntities.size() == 1){
|
||||
boolean flag = false;
|
||||
//根据单号查一下 有没有保存过
|
||||
OerDjmlEntity oer = new OerDjmlEntity();
|
||||
oer.setDjbh(entity.getDjbh());
|
||||
oer.setGsdm(entity.getGsdm());
|
||||
oer.setDataSourceCode(dataSourceCode);
|
||||
List<OerDjmlEntity> oerList = iOerDjmlDao.queryOerDjml(oer);
|
||||
if (CollectionUtils.isNotEmpty(oerList) && oerList.size() == 1){
|
||||
flag = true;
|
||||
maxDjbh = oerDjmlAllEntities.get(0).getDjbh();
|
||||
maxMlId = oerDjmlAllEntities.get(0).getMlId();
|
||||
}
|
||||
|
||||
if(!flag){
|
||||
//logger.info("获取最大单据编号");
|
||||
maxDjbh = oerList.get(0).getDjbh();
|
||||
maxMlId = oerList.get(0).getMlId();
|
||||
}else {
|
||||
//查最大MLID
|
||||
OerDjmlEntity oerDjmlEntity = new OerDjmlEntity();
|
||||
oerDjmlEntity.setDataSourceCode(dataSourceCode);
|
||||
oerDjmlEntity.setGsdm(gsdm);
|
||||
oerDjmlEntity.setDjdate(entity.getDjdate());
|
||||
oerDjmlEntity.setFph(nullConvert(entity.getFph()));
|
||||
//maxDjbh = iOerDjmlDao.getMaxDjbgByGsdm(oerDjmlEntity);
|
||||
maxDjbh = entity.getDjbh();
|
||||
logger.info("获取到最大单据编号:------>"+maxDjbh);
|
||||
//查询最大单据ID mlid
|
||||
maxMlId = iOerDjmlDao.getMaxMlIdByGsdm(oerDjmlEntity);
|
||||
logger.info("获取到最大单据ID MLID:------>"+maxMlId);
|
||||
}
|
||||
|
||||
logger.info("组装单据主表数据开始:------>");
|
||||
OerDjmlEntity oerdjml = setMainData(entity,maxDjbh,maxMlId);
|
||||
logger.info("保存主表信息:------>");
|
||||
if(flag){
|
||||
if(oerList != null && oerList.size() == 1){
|
||||
logger.info("已经保存过单据,走修改逻辑。mlid:{},djbh:{}",oerList.get(0).getMlId(),oerList.get(0).getDjbh());
|
||||
oerdjml.setDataSourceCode(dataSourceCode);
|
||||
iOerDjmlDao.updateData(oerdjml);
|
||||
//删除明细
|
||||
|
|
Loading…
Reference in New Issue