dev
This commit is contained in:
parent
e456844d91
commit
1a6d1e47db
BIN
dbhelper.jar
BIN
dbhelper.jar
Binary file not shown.
|
|
@ -43,6 +43,7 @@ public class ControllerAspect {
|
||||||
result.setData(null);
|
result.setData(null);
|
||||||
result.setCode(101);
|
result.setCode(101);
|
||||||
log.error(e.getMessage());
|
log.error(e.getMessage());
|
||||||
|
e.printStackTrace();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -80,4 +80,7 @@ public class Inventory implements Serializable {
|
||||||
|
|
||||||
@ApiModelProperty("标识码 由追溯码生成")
|
@ApiModelProperty("标识码 由追溯码生成")
|
||||||
private String idCodes;
|
private String idCodes;
|
||||||
|
|
||||||
|
@ApiModelProperty("警告日期")
|
||||||
|
private LocalDate warmDate;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,14 +20,14 @@ import java.util.Map;
|
||||||
*/
|
*/
|
||||||
public interface InventoryMapper extends BaseMapper<Inventory> {
|
public interface InventoryMapper extends BaseMapper<Inventory> {
|
||||||
@Select("SELECT" +
|
@Select("SELECT" +
|
||||||
" inventory.*,goods.expiry_warn_days,goods.unit_price,EXTRACT(EPOCH FROM AGE(expiry_date, CURRENT_DATE)) / 86400 AS remaining_days" +
|
" inventory.*,goods.expiry_warn_days,goods.unit_price" +
|
||||||
" FROM inventory LEFT JOIN goods ON inventory.good_id = goods.id" +
|
" FROM inventory LEFT JOIN goods ON inventory.good_id = goods.id" +
|
||||||
" WHERE CURRENT_DATE + INTERVAL '1 day' * goods.expiry_warn_days >= inventory.expiry_date AND inventory.whole_number !=0 ORDER BY inventory.expiry_date ASC LIMIT #{limit} offset #{offset} ")
|
" WHERE CURRENT_DATE >= inventory.warm_date AND inventory.whole_number !=0 ORDER BY inventory.expiry_date ASC LIMIT #{limit} offset #{offset} ")
|
||||||
List<Map<String, Object>> selectExpiryWarn(@Param("limit") Integer limit, @Param("offset") Integer offset);
|
List<Map<String, Object>> selectExpiryWarn(@Param("limit") Integer limit, @Param("offset") Integer offset);
|
||||||
@Select("SELECT" +
|
@Select("SELECT" +
|
||||||
" count(1)" +
|
" count(1)" +
|
||||||
" FROM inventory LEFT JOIN goods ON inventory.good_id = goods.id" +
|
" FROM inventory LEFT JOIN goods ON inventory.good_id = goods.id" +
|
||||||
" WHERE CURRENT_DATE + INTERVAL '1 day' * goods.expiry_warn_days >= inventory.expiry_date AND inventory.whole_number !=0 ")
|
" WHERE CURRENT_DATE >= inventory.warm_date AND inventory.whole_number !=0 ")
|
||||||
Long countExpiryWarn();
|
Long countExpiryWarn();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -38,6 +38,7 @@ import java.time.LocalDate;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class GoodsService extends BaseService {
|
public class GoodsService extends BaseService {
|
||||||
|
|
@ -97,6 +98,21 @@ public class GoodsService extends BaseService {
|
||||||
} else {
|
} else {
|
||||||
//修改建档信息
|
//修改建档信息
|
||||||
Goods dbGoods = goodsMapper.selectById(goods.getId());
|
Goods dbGoods = goodsMapper.selectById(goods.getId());
|
||||||
|
|
||||||
|
if (!Objects.equals(dbGoods.getExpiryWarnDays(), goods.getExpiryWarnDays()))
|
||||||
|
{
|
||||||
|
QueryWrapper<Inventory> inventoryWrapper = new QueryWrapper<>();
|
||||||
|
|
||||||
|
inventoryWrapper.eq("good_id", goods.getId());
|
||||||
|
|
||||||
|
List<Inventory> inventoryList = inventoryMapper.selectList(inventoryWrapper);
|
||||||
|
|
||||||
|
for (Inventory inventory : inventoryList) {
|
||||||
|
inventory.setWarmDate(inventory.getExpiryDate().minusDays(goods.getExpiryWarnDays()));
|
||||||
|
inventoryMapper.updateById(inventory);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
goodsMapper.updateById(goods);
|
goodsMapper.updateById(goods);
|
||||||
if (!dbGoods.getTrdnFlag().equals(goods.getTrdnFlag())) {
|
if (!dbGoods.getTrdnFlag().equals(goods.getTrdnFlag())) {
|
||||||
// todo 拆零标志变化 重新初始化医保库存
|
// todo 拆零标志变化 重新初始化医保库存
|
||||||
|
|
|
||||||
|
|
@ -136,6 +136,11 @@ public class InventoryPurchaseService extends BaseService {
|
||||||
remark = Constants.InitInventory;
|
remark = Constants.InitInventory;
|
||||||
}
|
}
|
||||||
inventory.setRefererType(refererTypeEnum.getType());
|
inventory.setRefererType(refererTypeEnum.getType());
|
||||||
|
|
||||||
|
if (goods.getExpiryWarnDays() != null && goods.getExpiryWarnDays() > 0) {
|
||||||
|
inventory.setWarmDate(inventory.getExpiryDate().minusDays(goods.getExpiryWarnDays()));
|
||||||
|
}
|
||||||
|
|
||||||
inventoryMapper.insert(inventory);
|
inventoryMapper.insert(inventory);
|
||||||
if (init != null) {
|
if (init != null) {
|
||||||
init.setInventoryId(inventory.getId());
|
init.setInventoryId(inventory.getId());
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,9 @@ import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.temporal.ChronoUnit;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -257,12 +259,18 @@ public class InventoryService extends BaseService {
|
||||||
Integer limit = pageSize;
|
Integer limit = pageSize;
|
||||||
Integer offset = (pageNum - 1) * pageSize;
|
Integer offset = (pageNum - 1) * pageSize;
|
||||||
Long totalCount = inventoryMapper.countExpiryWarn();
|
Long totalCount = inventoryMapper.countExpiryWarn();
|
||||||
|
|
||||||
|
System.out.println(totalCount);
|
||||||
|
|
||||||
int totalPage= (int) (totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1);
|
int totalPage= (int) (totalCount % pageSize == 0 ? totalCount / pageSize : totalCount / pageSize + 1);
|
||||||
List<Map<String, Object>> maps = inventoryMapper.selectExpiryWarn(limit, offset);
|
List<Map<String, Object>> maps = inventoryMapper.selectExpiryWarn(limit, offset);
|
||||||
|
|
||||||
|
for (Map<String, Object> map : maps) {
|
||||||
|
long days = LocalDate.now().until(LocalDate.parse(map.get("expiry_date").toString()), ChronoUnit.DAYS);
|
||||||
|
map.put("remaining_days",days);
|
||||||
|
}
|
||||||
|
|
||||||
Page<Map<String, Object>> page = new Page<>();
|
Page<Map<String, Object>> page = new Page<>();
|
||||||
page.setList(maps);
|
|
||||||
page.setTotal_page(totalPage);
|
|
||||||
page.setTotal_count(totalCount);
|
|
||||||
return page;
|
return page;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue