Commit d9cdd669 authored by 祁正's avatar 祁正

日常报销-修改

parent 23dcca22
...@@ -93,7 +93,6 @@ public class FyglDailyReimbursementController extends BaseController ...@@ -93,7 +93,6 @@ public class FyglDailyReimbursementController extends BaseController
/** /**
* 修改日常报销 * 修改日常报销
*/ */
@PreAuthorize("@ss.hasPermi('dailyReimbursement:dailyReimbursement:edit')")
@Log(title = "日常报销", businessType = BusinessType.UPDATE) @Log(title = "日常报销", businessType = BusinessType.UPDATE)
@PutMapping @PutMapping
public AjaxResult edit(@RequestBody FyglDailyReimbursement fyglDailyReimbursement) public AjaxResult edit(@RequestBody FyglDailyReimbursement fyglDailyReimbursement)
......
...@@ -54,5 +54,5 @@ public class FyglDailyReimbursement extends BaseEntity ...@@ -54,5 +54,5 @@ public class FyglDailyReimbursement extends BaseEntity
private Long rid; private Long rid;
//插入的时候的费用列表 //插入的时候的费用列表
List<FyglDailyReimbursementDetailitemListDTO> feiyongList; List<FyglDailyReimbursementDetailitemListDTO> childList;
} }
...@@ -4,7 +4,7 @@ import lombok.Data; ...@@ -4,7 +4,7 @@ import lombok.Data;
//日常报销的详情的list //日常报销的详情的list
@Data @Data
public class FyglDailyReimbursementDetailitemListDTO { public class FyglDailyReimbursementDetailitemListDTO {
private Integer id; private Integer id;
private Long rid; private Long rid;
//费用发生时间 //费用发生时间
......
...@@ -25,13 +25,16 @@ public interface FyglDailyReimbursementMapper ...@@ -25,13 +25,16 @@ public interface FyglDailyReimbursementMapper
*/ */
public FyglDailyReimbursementDetailDTO selectFyglDailyReimbursementById(Long id); public FyglDailyReimbursementDetailDTO selectFyglDailyReimbursementById(Long id);
//根据rid删除所有数据
int delDataByRid(Long rid);
public List<FyglDailyReimbursementDetailitemListDTO> selectFyglDailyReimbursementItemListById(@Param("rid") Long rid); public List<FyglDailyReimbursementDetailitemListDTO> selectFyglDailyReimbursementItemListById(@Param("rid") Long rid);
public List<String> selectTimeItemListByRid(Long id); public List<String> selectTimeItemListByRid(Long id);
// 查找日常报销每个项目的所有报销 // 查找日常报销每个项目的所有报销
public List<FyglDailyReimbursementTableItemDTO> getItemList(Long id); public List<FyglDailyReimbursementTableItemDTO> getItemList(Long id);
public int insertFyglDailyReimbursement2(FyglDailyReimbursement fyglDailyReimbursement); public int insertFyglDailyReimbursement2(FyglDailyReimbursement fyglDailyReimbursement);
int updateProjectId(FyglDailyReimbursement fyglDailyReimbursement);
public int insertFyglDailyReimbursement3(FyglDailyReimbursementDetailitemListDTO fyglDailyReimbursement); public int insertFyglDailyReimbursement3(FyglDailyReimbursementDetailitemListDTO fyglDailyReimbursement);
/** /**
* 查询日常报销列表 * 查询日常报销列表
......
...@@ -105,7 +105,7 @@ public class FyglDailyReimbursementServiceImpl implements IFyglDailyReimbursemen ...@@ -105,7 +105,7 @@ public class FyglDailyReimbursementServiceImpl implements IFyglDailyReimbursemen
int i2 = fyglDailyReimbursementMapper.insertFyglDailyReimbursement2(fyglDailyReimbursement); int i2 = fyglDailyReimbursementMapper.insertFyglDailyReimbursement2(fyglDailyReimbursement);
System.out.println("第2次的rid = " + fyglDailyReimbursement.getRid()); System.out.println("第2次的rid = " + fyglDailyReimbursement.getRid());
//插入第三层表 //插入第三层表
for(FyglDailyReimbursementDetailitemListDTO item:fyglDailyReimbursement.getFeiyongList()){ for(FyglDailyReimbursementDetailitemListDTO item:fyglDailyReimbursement.getChildList()){
item.setRid(fyglDailyReimbursement.getRid()); item.setRid(fyglDailyReimbursement.getRid());
//发起插入请求 //发起插入请求
fyglDailyReimbursementMapper.insertFyglDailyReimbursement3(item); fyglDailyReimbursementMapper.insertFyglDailyReimbursement3(item);
...@@ -125,10 +125,25 @@ public class FyglDailyReimbursementServiceImpl implements IFyglDailyReimbursemen ...@@ -125,10 +125,25 @@ public class FyglDailyReimbursementServiceImpl implements IFyglDailyReimbursemen
* @return 结果 * @return 结果
*/ */
@Override @Override
@Transactional
public int updateFyglDailyReimbursement(FyglDailyReimbursement fyglDailyReimbursement) public int updateFyglDailyReimbursement(FyglDailyReimbursement fyglDailyReimbursement)
{ {
fyglDailyReimbursement.setUpdateBy(SecurityUtils.getUsername());
fyglDailyReimbursement.setUpdateTime(DateUtils.getNowDate()); fyglDailyReimbursement.setUpdateTime(DateUtils.getNowDate());
return fyglDailyReimbursementMapper.updateFyglDailyReimbursement(fyglDailyReimbursement); System.out.println("修改日常 = " + fyglDailyReimbursement);
//先修改主属性内容,项目id,更新日期等
int i = fyglDailyReimbursementMapper.updateProjectId(fyglDailyReimbursement);
//再修改其他主要属性
int i1 = fyglDailyReimbursementMapper.updateFyglDailyReimbursement(fyglDailyReimbursement);
//再删除所有关联的子表数据
int i3 = fyglDailyReimbursementMapper.delDataByRid(fyglDailyReimbursement.getId());
//再循环插入子表数据
for(FyglDailyReimbursementDetailitemListDTO item:fyglDailyReimbursement.getChildList()){
item.setRid(fyglDailyReimbursement.getId());
//发起插入请求
fyglDailyReimbursementMapper.insertFyglDailyReimbursement3(item);
}
return i1;
} }
/** /**
......
...@@ -205,20 +205,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -205,20 +205,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</insert> </insert>
<update id="updateFyglDailyReimbursement" parameterType="com.ruoyi.domain.FyglDailyReimbursement" useGeneratedKeys="true" keyProperty="rid"> <update id="updateFyglDailyReimbursement" parameterType="com.ruoyi.domain.FyglDailyReimbursement" useGeneratedKeys="true" keyProperty="rid">
update fygl_daily_reimbursement update fygl_daily_rembursement_relevancy_r
<trim prefix="SET" suffixOverrides=","> <trim prefix="SET" suffixOverrides=",">
<if test="projectId != null">project_id = #{projectId},</if> <if test="status != null">status = #{status},</if>
<if test="serialNumber != null">serial_number = #{serialNumber},</if> <if test="serialNumber != null">serial_number = #{serialNumber},</if>
<if test="reimbursement != null">reimbursement = #{reimbursement},</if> <if test="reimbursement != null">reimbursement = #{reimbursement},</if>
<if test="registrationTime != null">registration_time = #{registrationTime},</if> <if test="accessory != null">accessory = #{accessory},</if>
<if test="createBy != null">create_by = #{createBy},</if> <if test="registrationTime != null">registration_time = #{registrationTime}</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
</trim> </trim>
where id = #{id} where id = #{id}
</update> </update>
<update id="updateProjectId" parameterType="com.ruoyi.domain.FyglDailyReimbursement">
update fygl_daily_reimbursement
<trim prefix="SET" suffixOverrides=",">
<if test="projectId != null">project_id = #{projectId},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime}</if>
</trim>
where id = (select did from fygl_daily_rembursement_relevancy_r r where r.id = #{id})
</update>
<delete id="deleteFyglDailyReimbursementById" parameterType="Long"> <delete id="deleteFyglDailyReimbursementById" parameterType="Long">
delete from fygl_daily_reimbursement where id = #{id} delete from fygl_daily_reimbursement where id = #{id}
...@@ -230,4 +238,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -230,4 +238,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{id} #{id}
</foreach> </foreach>
</delete> </delete>
<delete id="delDataByRid">
delete from fygl_daily_reimbursement_relevancy r where r.rid = #{rid}
</delete>
</mapper> </mapper>
\ 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