作者 王勇

数据库要添加字段,再做备份

... ... @@ -2,11 +2,9 @@ package com.sunyo.wlpt.station.manage.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
... ... @@ -14,8 +12,8 @@ import lombok.NoArgsConstructor;
/**
* @author 子诚
* Description:仓库静态资源表
* 时间:2020/10/12 12:00
* Description:
* 时间:2020/10/13 10:39
*/
@ApiModel(value = "仓库静态资源表")
@Data
... ... @@ -24,8 +22,7 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor
public class Warehouse implements Serializable {
private static final long serialVersionUID = 7237627901812899555L;
private static final long serialVersionUID = 1224656100260220596L;
/**
* ID
*/
... ... @@ -51,22 +48,28 @@ public class Warehouse implements Serializable {
private String name;
/**
* 仓库类型:001:进港仓库;002:出港仓库;003:监管仓库;004:危险品仓库
*/
@ApiModelProperty(value = "仓库类型:001:进港仓库;002:出港仓库;003:查验仓库;004:危险品仓库")
private String warehouseType;
/**
* 仓库长度
*/
@ApiModelProperty(value = "仓库长度")
private BigDecimal length;
private BigDecimal warehouseLength;
/**
* 仓库宽度
*/
@ApiModelProperty(value = "仓库宽度")
private BigDecimal width;
private BigDecimal warehouseWidth;
/**
* 仓库面积
*/
@ApiModelProperty(value = "仓库面积")
private BigDecimal area;
private BigDecimal warehouseArea;
/**
* 创建者
... ...
package com.sunyo.wlpt.station.manage.mapper;
import com.sunyo.wlpt.station.manage.domain.Warehouse;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;import java.util.List;
/**
* @author 子诚
* Description:
* 时间:2020/10/12 12:00
* 时间:2020/10/13 10:39
*/
@Mapper
public interface WarehouseMapper {
... ...
... ... @@ -68,3 +68,4 @@ public interface WarehouseService {
*/
ResultJson selectListByPage(Warehouse warehouse, Integer pageNum, Integer pageSize);
}
... ...
... ... @@ -58,8 +58,8 @@ public class BayonetServiceImpl implements BayonetService {
@Override
public ResultJson insertSelective(Bayonet bayonet)
{
Yard yard = yardMapper.selectByYardName(bayonet.getStationName());
bayonet.setYardId(yard.getId());
// Yard yard = yardMapper.selectByYardName(bayonet.getStationName());
// bayonet.setYardId(yard.getId());
bayonet.setId(IdUtils.generateId());
return bayonetMapper.insertSelective(bayonet) > 0
? ResultJson.success("200", "新增卡口信息,成功")
... ... @@ -81,8 +81,8 @@ public class BayonetServiceImpl implements BayonetService {
@Override
public ResultJson updateByPrimaryKeySelective(Bayonet bayonet)
{
Yard yard = yardMapper.selectByYardName(bayonet.getStationName());
bayonet.setYardId(yard.getId());
// Yard yard = yardMapper.selectByYardName(bayonet.getStationName());
// bayonet.setYardId(yard.getId());
return bayonetMapper.updateByPrimaryKeySelective(bayonet) > 0
? ResultJson.success("200", "编辑卡口信息,成功")
: ResultJson.error("500", "编辑卡口信息,失败");
... ... @@ -108,9 +108,9 @@ public class BayonetServiceImpl implements BayonetService {
PageHelper.startPage(pageNum, pageSize);
List<Bayonet> bayonetList = bayonetMapper.selectListByPage(bayonet);
bayonetList.stream().parallel().forEach(item -> {
item.setStationName(yardMapper.selectByPrimaryKey(item.getYardId()).getName());
});
// bayonetList.stream().parallel().forEach(item -> {
// item.setStationName(yardMapper.selectByPrimaryKey(item.getYardId()).getName());
// });
PageInfo<Bayonet> pageInfo = new PageInfo<>(bayonetList);
return pageInfo.getTotal() >= 0
... ...
... ... @@ -2,8 +2,10 @@ package com.sunyo.wlpt.station.manage.service.impl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.pagehelper.util.StringUtil;
import com.sunyo.wlpt.station.manage.domain.Bayonet;
import com.sunyo.wlpt.station.manage.response.ResultJson;
import com.sunyo.wlpt.station.manage.utils.BigDecimalUtil;
import com.sunyo.wlpt.station.manage.utils.IdUtils;
import org.springframework.stereotype.Service;
... ... @@ -12,7 +14,9 @@ import javax.annotation.Resource;
import com.sunyo.wlpt.station.manage.domain.Warehouse;
import com.sunyo.wlpt.station.manage.mapper.WarehouseMapper;
import com.sunyo.wlpt.station.manage.service.WarehouseService;
import org.springframework.util.StringUtils;
import java.math.BigDecimal;
import java.util.List;
/**
... ... @@ -56,6 +60,13 @@ public class WarehouseServiceImpl implements WarehouseService {
public ResultJson insertSelective(Warehouse warehouse)
{
warehouse.setId(IdUtils.generateId());
BigDecimal warehouseLength = warehouse.getWarehouseLength();
BigDecimal warehouseWidth = warehouse.getWarehouseWidth();
if (StringUtils.isEmpty(warehouseLength) || StringUtils.isEmpty(warehouseWidth)) {
return ResultJson.error("400", "仓库长度与仓库宽度,不能为空!");
}
warehouse.setWarehouseArea(BigDecimalUtil.mul(warehouseLength, warehouseWidth));
return warehouseMapper.insertSelective(warehouse) > 0
? ResultJson.success("200", "增加仓库信息,成功")
: ResultJson.error("500", "增加仓库信息,失败");
... ... @@ -106,3 +117,4 @@ public class WarehouseServiceImpl implements WarehouseService {
: ResultJson.error("500", "查询仓库信息列表,失败!");
}
}
... ...
package com.sunyo.wlpt.station.manage.utils;
import java.math.BigDecimal;
/**
* @author 子诚
* Description:BigDecimal的简单加减乘除工具类
* <p>
* 可将double类型转成BigDecimal类型;
* BigDecimal b1 = new BigDecimal(Double.toString(v1));
* <p>
* 时间:2020/10/13 10:59
*/
public class BigDecimalUtil {
/**
* 私有构造方法
*/
private BigDecimalUtil()
{
}
/**
* 加法
*
* @param v1 参数一
* @param v2 参数二
* @return
*/
public static BigDecimal add(BigDecimal v1, BigDecimal v2)
{
return v1.add(v1);
}
/**
* 减法
*
* @param v1 参数一
* @param v2 参数二
* @return
*/
public static BigDecimal sub(BigDecimal v1, BigDecimal v2)
{
return v1.subtract(v2);
}
/**
* 乘法
*
* @param v1 参数一
* @param v2 参数二
* @return
*/
public static BigDecimal mul(BigDecimal v1, BigDecimal v2)
{
return v1.multiply(v2);
}
/**
* 乘法
*
* @param v1 参数一
* @param v2 参数二
* @return
*/
public static BigDecimal div(BigDecimal v1, BigDecimal v2)
{
//四舍五入,保留2位小数
return v1.divide(v2, 2, BigDecimal.ROUND_HALF_UP);
//除不尽的情况
}
public static BigDecimal add(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2);
}
public static BigDecimal sub(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.subtract(b2);
}
public static BigDecimal mul(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2);
}
public static BigDecimal div(double v1,double v2){
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.divide(b2,2,BigDecimal.ROUND_HALF_UP);//四舍五入,保留2位小数
//除不尽的情况
}
}
... ...
... ... @@ -8,9 +8,10 @@
<result column="yard_id" jdbcType="VARCHAR" property="yardId"/>
<result column="cop_code" jdbcType="VARCHAR" property="copCode"/>
<result column="name" jdbcType="VARCHAR" property="name"/>
<result column="length" jdbcType="DECIMAL" property="length"/>
<result column="width" jdbcType="DECIMAL" property="width"/>
<result column="area" jdbcType="DECIMAL" property="area"/>
<result column="warehouse_type" jdbcType="VARCHAR" property="warehouseType"/>
<result column="warehouse_length" jdbcType="DECIMAL" property="warehouseLength"/>
<result column="warehouse_width" jdbcType="DECIMAL" property="warehouseWidth"/>
<result column="warehouse_area" jdbcType="DECIMAL" property="warehouseArea"/>
<result column="create_by" jdbcType="VARCHAR" property="createBy"/>
<result column="create_date" jdbcType="TIMESTAMP" property="createDate"/>
<result column="update_by" jdbcType="VARCHAR" property="updateBy"/>
... ... @@ -18,19 +19,10 @@
<result column="remarks" jdbcType="VARCHAR" property="remarks"/>
<result column="del_flag" jdbcType="CHAR" property="delFlag"/>
</resultMap>
<!-- 该Mapper映射关系的作用,是仓库与场站的1:1的关系映射 -->
<resultMap id="WarehouseAndYardMap" extends="BaseResultMap"
type="com.sunyo.wlpt.station.manage.domain.Warehouse">
<association property="yard" javaType="com.sunyo.wlpt.station.manage.domain.Yard">
<id column="id" property="id"/>
<result column="yard_name" property="name"/>
</association>
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, yard_id, cop_code, `name`, `length`, width, area, create_by, create_date, update_by,
update_date, remarks, del_flag
id, yard_id, cop_code, `name`, warehouse_type, warehouse_length, warehouse_width, warehouse_area,
create_by, create_date, update_by, update_date, remarks, del_flag
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
<!--@mbg.generated-->
... ... @@ -39,38 +31,6 @@
from warehouse
where id = #{id,jdbcType=VARCHAR}
</select>
<!-- 分页查询 -->
<select id="selectListByPage" parameterType="com.sunyo.wlpt.station.manage.domain.Warehouse" resultMap="WarehouseAndYardMap">
select w.id,
w.yard_id,
w.cop_code,
w.name,
w.length,
w.width,
w.area,
w.create_by,
w.create_date,
w.update_by,
w.update_date,
w.remarks,
w.del_flag,
y.name as yard_name
from warehouse w,
yard y
<where>
<!-- name,仓库名称 -->
<if test="name != null and name != ''">
and w.name = #{name,jdbcType=VARCHAR}
</if>
<!-- stationName,货站名称 -->
<if test="stationName != null and stationName != ''">
and y.name = #{stationName,jdbcType=VARCHAR}
</if>
and w.yard_id = y.id
</where>
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
<!--@mbg.generated-->
delete
... ... @@ -80,15 +40,15 @@
<insert id="insert" parameterType="com.sunyo.wlpt.station.manage.domain.Warehouse">
<!--@mbg.generated-->
insert into warehouse (id, yard_id, cop_code,
`name`, `length`, width,
area, create_by, create_date,
update_by, update_date, remarks,
del_flag)
`name`, warehouse_type, warehouse_length,
warehouse_width, warehouse_area, create_by,
create_date, update_by, update_date,
remarks, del_flag)
values (#{id,jdbcType=VARCHAR}, #{yardId,jdbcType=VARCHAR}, #{copCode,jdbcType=VARCHAR},
#{name,jdbcType=VARCHAR}, #{length,jdbcType=DECIMAL}, #{width,jdbcType=DECIMAL},
#{area,jdbcType=DECIMAL}, #{createBy,jdbcType=VARCHAR}, #{createDate,jdbcType=TIMESTAMP},
#{updateBy,jdbcType=VARCHAR}, #{updateDate,jdbcType=TIMESTAMP}, #{remarks,jdbcType=VARCHAR},
#{delFlag,jdbcType=CHAR})
#{name,jdbcType=VARCHAR}, #{warehouseType,jdbcType=VARCHAR}, #{warehouseLength,jdbcType=DECIMAL},
#{warehouseWidth,jdbcType=DECIMAL}, #{warehouseArea,jdbcType=DECIMAL}, #{createBy,jdbcType=VARCHAR},
#{createDate,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{updateDate,jdbcType=TIMESTAMP},
#{remarks,jdbcType=VARCHAR}, #{delFlag,jdbcType=CHAR})
</insert>
<insert id="insertSelective" parameterType="com.sunyo.wlpt.station.manage.domain.Warehouse">
<!--@mbg.generated-->
... ... @@ -106,14 +66,17 @@
<if test="name != null">
`name`,
</if>
<if test="length != null">
`length`,
<if test="warehouseType != null">
warehouse_type,
</if>
<if test="width != null">
width,
<if test="warehouseLength != null">
warehouse_length,
</if>
<if test="area != null">
area,
<if test="warehouseWidth != null">
warehouse_width,
</if>
<if test="warehouseArea != null">
warehouse_area,
</if>
<if test="createBy != null">
create_by,
... ... @@ -147,14 +110,17 @@
<if test="name != null">
#{name,jdbcType=VARCHAR},
</if>
<if test="length != null">
#{length,jdbcType=DECIMAL},
<if test="warehouseType != null">
#{warehouseType,jdbcType=VARCHAR},
</if>
<if test="warehouseLength != null">
#{warehouseLength,jdbcType=DECIMAL},
</if>
<if test="width != null">
#{width,jdbcType=DECIMAL},
<if test="warehouseWidth != null">
#{warehouseWidth,jdbcType=DECIMAL},
</if>
<if test="area != null">
#{area,jdbcType=DECIMAL},
<if test="warehouseArea != null">
#{warehouseArea,jdbcType=DECIMAL},
</if>
<if test="createBy != null">
#{createBy,jdbcType=VARCHAR},
... ... @@ -189,14 +155,17 @@
<if test="name != null">
`name` = #{name,jdbcType=VARCHAR},
</if>
<if test="length != null">
`length` = #{length,jdbcType=DECIMAL},
<if test="warehouseType != null">
warehouse_type = #{warehouseType,jdbcType=VARCHAR},
</if>
<if test="width != null">
width = #{width,jdbcType=DECIMAL},
<if test="warehouseLength != null">
warehouse_length = #{warehouseLength,jdbcType=DECIMAL},
</if>
<if test="area != null">
area = #{area,jdbcType=DECIMAL},
<if test="warehouseWidth != null">
warehouse_width = #{warehouseWidth,jdbcType=DECIMAL},
</if>
<if test="warehouseArea != null">
warehouse_area = #{warehouseArea,jdbcType=DECIMAL},
</if>
<if test="createBy != null">
create_by = #{createBy,jdbcType=VARCHAR},
... ... @@ -222,18 +191,59 @@
<update id="updateByPrimaryKey" parameterType="com.sunyo.wlpt.station.manage.domain.Warehouse">
<!--@mbg.generated-->
update warehouse
set yard_id = #{yardId,jdbcType=VARCHAR},
cop_code = #{copCode,jdbcType=VARCHAR},
`name` = #{name,jdbcType=VARCHAR},
`length` = #{length,jdbcType=DECIMAL},
width = #{width,jdbcType=DECIMAL},
area = #{area,jdbcType=DECIMAL},
create_by = #{createBy,jdbcType=VARCHAR},
create_date = #{createDate,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_date = #{updateDate,jdbcType=TIMESTAMP},
remarks = #{remarks,jdbcType=VARCHAR},
del_flag = #{delFlag,jdbcType=CHAR}
set yard_id = #{yardId,jdbcType=VARCHAR},
cop_code = #{copCode,jdbcType=VARCHAR},
`name` = #{name,jdbcType=VARCHAR},
warehouse_type = #{warehouseType,jdbcType=VARCHAR},
warehouse_length = #{warehouseLength,jdbcType=DECIMAL},
warehouse_width = #{warehouseWidth,jdbcType=DECIMAL},
warehouse_area = #{warehouseArea,jdbcType=DECIMAL},
create_by = #{createBy,jdbcType=VARCHAR},
create_date = #{createDate,jdbcType=TIMESTAMP},
update_by = #{updateBy,jdbcType=VARCHAR},
update_date = #{updateDate,jdbcType=TIMESTAMP},
remarks = #{remarks,jdbcType=VARCHAR},
del_flag = #{delFlag,jdbcType=CHAR}
where id = #{id,jdbcType=VARCHAR}
</update>
<!-- 该Mapper映射关系的作用,是仓库与场站的1:1的关系映射 -->
<resultMap extends="BaseResultMap" id="WarehouseAndYardMap" type="com.sunyo.wlpt.station.manage.domain.Warehouse">
<association javaType="com.sunyo.wlpt.station.manage.domain.Yard" property="yard">
<id column="id" property="id"/>
<result column="yard_name" property="name"/>
</association>
</resultMap>
<!-- 分页查询 -->
<select id="selectListByPage" parameterType="com.sunyo.wlpt.station.manage.domain.Warehouse" resultMap="WarehouseAndYardMap">
select w.id,
w.yard_id,
w.cop_code,
w.name,
w.warehouse_type,
w.warehouse_length,
w.warehouse_width,
w.warehouse_area,
w.create_by,
w.create_date,
w.update_by,
w.update_date,
w.remarks,
w.del_flag,
y.name as yard_name
from warehouse w,
yard y
<where>
<!-- name,仓库名称 -->
<if test="name != null and name != ''">
and w.name = #{name,jdbcType=VARCHAR}
</if>
<!-- stationName,货站名称 -->
<if test="stationName != null and stationName != ''">
and y.name = #{stationName,jdbcType=VARCHAR}
</if>
and w.yard_id = y.id
</where>
</select>
</mapper>
\ No newline at end of file
... ...