版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35529931/article/details/82049153
这次记录的是使用SpringBoot的对实体一次新增和修改,至于对图片的,下次在解说。
顺序依旧是HTML(JS)–service–Controller,dao层就不进行记录了。
1HTML的记录。通过在后台获得的主键(UUID),在click事件中将ID传过去。
<button class="layui-btn layui-btn-primary layui-btn-xs"
data-ng-click="modifyMaintain(temp.uuid)">
<i class="layui-icon" >修改</i></button>
2.JS的记录
在JS中,通过一个ajax,将ID传到后台,查询出来我们需要修改的对象,放到一个新的页面中。
// 更新操作
$scope.modifymaintainDTO = {};
$scope.modifyMaintain=function(id){
$.ajax({
url:"/maintain/detail/"+id ,
type:'GET',
success:function(result){
// 把对象赋值到表单中
$scope.maintainImgMaintains = result.data.imageMaintains;
$scope.maintainImgMaintainFaults = result.data.imageMaintainFaults;
$scope.maintainImgMaintainFrees = result.data.imageMaintainFrees;
$("#city-form").text(result.data.city);
$("#warehouse-form").text(result.data.warehouse);
$("#carNumber-form").text(result.data.carNumber);
$("#vehicleType-form").text(result.data.carNumber);
$("#patenteName-update-form").text(result.data.patenteName);
$("#date-modifyMantian-form").val(result.data.date);
$("#compannyName-form").val(result.data.compannyName);
$("#site-form").val(result.data.site);
$("#free-form").val(result.data.free);
$("#info-form").val(result.data.info);
接下来,继续在这个函数中,将表单中的值获得,放到对象中,将对象传给后台,通过一个$http请求(跟ajax一样的请求)
// 将表单中的修改值 传到后台
$scope.modifymaintainDTO.uuid = result.data.uuid;
$scope.modifymaintainDTO.date = $("#date-modifyMantian-form").val();
$scope.modifymaintainDTO.patenteName = result.data.patenteName;
$scope.modifymaintainDTO.site = $("#site-form").val();
$scope.modifymaintainDTO.compannyName = $("#compannyName-form").val();
$scope.modifymaintainDTO.free = $("#free-form").val();
$scope.modifymaintainDTO.info = $("#info-form").val();
$http.post("/updateMaintain",$scope.modifymaintainDTO).success(function (result) {
if (result.result == 'success') {
layer.alert('操作成功', {icon: 6});
location.replace(location.href);
}
if (result.result == 'fail') {
layer.alert('操作失败');
return false;
}
});
到此,比较复杂的部分就算完成了。
dao层:
关于XML:
<update id="updateByPrimaryKey" parameterType="com.yijiupi.himalaya.supplychain.vehicle.domain.po.MaintainPO" >
UPDATE maintain
SET
DATE = #{date,jdbcType=TIMESTAMP},
companny_name = #{compannyName,jdbcType=VARCHAR},
site =#{site,jdbcType=VARCHAR},
info =#{info,jdbcType=VARCHAR},
free = #{free,jdbcType=DECIMAL}
WHERE UUID = #{uuid,jdbcType=CHAR}
</update>
关于dao接口:
int updateByPrimaryKey(MaintainPO record);
在Service 层:
在controller层中:
@RequestMapping(value = "/updateMaintain",method = RequestMethod.POST)
public Map<String, String> updateMaintain(@RequestBody MaintainDTO maintainDTO) {
Map<String, String> resultMap = new HashMap<>(1);
try {
LOGGER.info("需要更新维修的车辆信息是:{}\n", maintainDTO);
iMaintainService.updateMaintain(maintainDTO);
resultMap.put("result", "success");
} catch (Exception e) {
resultMap.put("result", "fail");
}
return resultMap;
}
到此,一个完整的修改描述完成。