文章目录
准备:仓库管理、客户管理
抽取改进
抽取BaseBillDomain
@Getter@Setter
public class BaseBillDomain extends BaseDomain{
public static final int STATUS_NORMAL = 0;
public static final int STATUS_AUDIT = 1;
private String sn;
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date vdate;
private Integer status = STATUS_NORMAL;
private BigDecimal totalAmount;
private BigDecimal totalNumber;
private Date auditTime;
private Date inputTime;
private Employee inputUser;
private Employee auditor;
}
抽取查询对象BaseBillQueryObject
@Setter@Getter
public class BaseBillQueryObject extends QueryObject {
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date beginDate;
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date endDate;
private Long status = -1L;
public Date getEndDate(){
if(endDate == null){
return null;
}
return DateUtil.getEndDate(endDate);
}
}
入库单、入库明细单
全套复制粘贴:改OrderBill为StockIncomeBill,supplier字段改depot
StockIncomeBillMapper,resultMap改关联属性
service:
-
计算总额,保留小数位数四舍五入totalAmount.setScale(BigDecimal.ROUND_HALF_UP,2)
-
保存时,通过订单id查询单据状态信息,判断是否为0(未审核)
-
前台操作基本一样,注意细节
细节:
判断语句都应该在EL表达式括号内
计算小计,JS中保留小数位数tofixed(2);
关闭按钮依然有缓存值,如何解决?清空productInfo用$.dialog.data赋值null和false和""都行
domain中,属性名不是缩写时,第二个字母不要用大写——vdate
出库单、出库明细单
- 全套复制StockIncomeBill,costPrice改salePrice,增加客户关系
- 新建查询对象:StockIncomeBillQueryObject、StockOutcomeBillQueryObject
- 审核入库出库单都要修改库存,放到库存中处理,依赖productStockService调用即可
出库入库impl中修改库存:
productStockService.stockInCome(old);