版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35529931/article/details/82049423
不多说,按照顺序记录:
1.HTML
<div class="layui-btn-group" style="margin-left: 1%; margin-top:2%;">
<button class="layui-btn" data-ng-click="addMaintain()" >
添加记录
</button>
</div>
2.JS
$scope.addMaintain = function () {
layer.open({
type: 1,
area: ['1000px', '650px'], //宽高
skin: 'layui-layer-molv', //加上边框
title: "添加维修记录",
content: $('#add-Maintain')
, btn: ['保存', '取消'],
success: function () {
// 初始化省份城市,车牌号等函数
$scope.initializeAddUpkeepLayer();
laydate.render({
elem: "#add-maintain-date",
type: 'date'
});
},
btn1:function(){
$scope.addMaintain.carNumber = $.trim(document.getElementById("upkeepList-addUpkeep-pop-carNumber").options[document.getElementById("upkeepList-addUpkeep-pop-carNumber").selectedIndex].text);
$scope.addMaintain.patenteName = $.trim($("#upkeepList-addUpkeep-pop-patentName").val());
if ($scope.addMaintain.patenteName == '请选择') {
$scope.addMaintain.patenteName = null;
}
$scope.addMaintain.city = $.trim(document.getElementById("upkeepList-addUpkeep-pop-city").options[document.getElementById("upkeepList-addUpkeep-pop-city").selectedIndex].text);
console.log($scope.addMaintain.city);
$scope.addMaintain.date = $.trim($("#add-maintain-date").val());
$scope.addMaintain.compannyName=$.trim($("#add-compannyName").val());
$scope.addMaintain.site=$.trim($("#add-site").val());
$scope.addMaintain.free=$.trim($("#add-free").val());
$scope.addMaintain.info=$.trim($("#add-info").val());
$scope.addMaintain.patenteNumber=$.trim($("#add-patenteNumber").val());
将页面新增的数据记录下来,放到一个DTO中。
接下来,通过一个ajax向后台发送数据
// 向后台传添加的数据
$scope.addMaintaining=function(tag){
data.city = tag.city;
console.log(data.city);
data.warehouse = tag.warehouse;
data.carNumber = tag.carNumber;
data.patenteName = tag.patenteName;
data.date = tag.date;
data.compannyName = tag.compannyName;
data.site = tag.site;
data.free = tag.free;
data.info = tag.info;
data.patenteNumber = tag.patenteNumber;
$.ajax({
url:'/insertMaintain',
contentType: "application/json;charset=utf-8",
type:'POST',
data:JSON.stringify(data),
async: false,
cache: false,
processData: false,
success: function (result) {
if (result.result == 'success') {
layer.alert('操作成功', {icon: 6});
location.replace(location.href);
}
if (result.result == 'fail')
layer.alert('操作失败', {icon: 5});
return false;
}
});
接下来就是
<insert id="insert" parameterType="com.yijiupi.himalaya.supplychain.vehicle.domain.po.MaintainPO" >
INSERT INTO maintain (UUID, car_number, DATE,
companny_name, site, info,
free, patente_id, patente_name,
car_id, berichten, patente_number)
VALUES (#{uuid,jdbcType=CHAR}, #{carNumber,jdbcType=CHAR}, #{date,jdbcType=TIMESTAMP},
#{compannyName,jdbcType=VARCHAR}, #{site,jdbcType=VARCHAR}, #{info,jdbcType=VARCHAR},
#{free,jdbcType=DECIMAL}, #{patenteId,jdbcType=CHAR}, #{patenteName,jdbcType=VARCHAR},
#{carId,jdbcType=CHAR}, #{berichten,jdbcType=TIMESTAMP},#{patenteNumber,jdbcType=VARCHAR})
</insert>
dao层接口
int insert(MaintainPO record);
service实现:
MaintainPO maintainPO = new MaintainPO();
// 页面传过来的
maintainPO.setCity(maintainDTO.getCity());
maintainPO.setWarehouse(maintainDTO.getWarehouse());
maintainPO.setCarNumber(maintainDTO.getCarNumber());
maintainPO.setVehicleType(maintainDTO.getVehicleType());
maintainPO.setPatenteNumber(maintainDTO.getPatenteNumber());
maintainPO.setDate(dateSimpleDateFormat.parse(maintainDTO.getDate()));
maintainPO.setCompannyName(maintainDTO.getCompannyName());
maintainPO.setSite(maintainDTO.getSite());
maintainPO.setFree(maintainDTO.getFree());
maintainPO.setInfo(maintainDTO.getInfo());
maintainPO.setBerichten(maintainDTO.getBerichten());
maintainPO.setUuid(UuidUtils.getUuid());
// 车辆、驾照信息查询,放到维修表中
CarPO carByCarNumber = carPOMapper.getCarByCarNumber(maintainDTO.getCarNumber());
if (null == carByCarNumber) {
throw new RuntimeException("车牌号不存在,不能添加");
}
maintainPO.setCarId(carByCarNumber.getId());
maintainPO.setVehicleUse(carByCarNumber.getVehicle_use());
maintainPO.setPatenteId("0");
maintainPO.setPatenteName("0");
maintainPO.setPatenteNumber("0");
// 对于驾照信息的
if (!StringUtils.isEmpty(maintainDTO.getPatenteName())) {
PatentePO patentePO = patentePOMapper.getLiveByNameAndCity(maintainDTO.getPatenteName(), maintainDTO.getCity());
maintainPO.setPatenteName(maintainDTO.getPatenteName());
LOGGER.info("获得的驾照对象是:" + patentePO);
if (patentePO != null) {
maintainPO.setPatenteId(patentePO.getUuid());
maintainPO.setPatenteNumber(patentePO.getNumber());
}
}
maintainPOMapper.insert(maintainPO);
接下来就是controller的实现了:
/**
* 通过DUBBO微服务,新增维修记录
*/
@RequestMapping(value = "/insertMaintain",method = RequestMethod.POST,produces={"application/json;charset=UTF-8"})
public Map<String, String> insertMaintain(@RequestBody MaintainDTO maintainDTO) {
Map<String, String> resultMap = new HashMap<>(1);
try {
LOGGER.info("需要添加维修的车辆信息是:{}\n", maintainDTO);
iMaintainService.addIMaintain(maintainDTO);
resultMap.put("result", "success");
} catch (Exception e) {
resultMap.put("result", "fail");
}
return resultMap;
}
到此,新增实体的操作记录完成。