1.修改日期字段类型

2.新增盘点单据插入代码修改
feature-order-fix
x_z 3 years ago
parent 245af4f36b
commit 77d5b9fe33

@ -1,6 +1,7 @@
package com.glxp.api.admin.controller.inventory; package com.glxp.api.admin.controller.inventory;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.admin.req.inout.DeleteRequest; import com.glxp.api.admin.req.inout.DeleteRequest;
import com.glxp.api.admin.req.inventory.AddInvCountOrderRequest; import com.glxp.api.admin.req.inventory.AddInvCountOrderRequest;
@ -78,4 +79,18 @@ public class InvCountOrderController {
return ResultVOUtils.success(); return ResultVOUtils.success();
} }
/**
*
*
* @param id
* @return
*/
@GetMapping("/invCount/order/submitAudit")
public BaseResponse submitAudit(String id) {
if (StrUtil.isBlank(id)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
return invCountOrderService.submitAudit(id);
}
} }

@ -40,4 +40,12 @@ public interface InvCountCodesDao {
* @return * @return
*/ */
List<InvCountCodes> filterList(FilterInvCountCodesRequest codesRequest); List<InvCountCodes> filterList(FilterInvCountCodesRequest codesRequest);
/**
* ID
*
* @param orderIdFk
* @return
*/
Long countByOrderIdFk(@Param("orderIdFk") Integer orderIdFk);
} }

@ -40,4 +40,12 @@ public interface InvCountOrderDetailDao {
* @return * @return
*/ */
List<InvCountOrderDetail> filterList(FilterInvCountOrderDetailRequest detailRequest); List<InvCountOrderDetail> filterList(FilterInvCountOrderDetailRequest detailRequest);
/**
* ID
*
* @param orderIdFk
* @return
*/
Long countByOrderIdFk(@Param("orderIdFk") Integer orderIdFk);
} }

@ -2,8 +2,6 @@ package com.glxp.api.admin.entity.inventory;
import lombok.Data; import lombok.Data;
import java.util.Date;
/** /**
* *
*/ */
@ -40,12 +38,12 @@ public class InvCountOrder {
/** /**
* *
*/ */
private Date createTime; private String createTime;
/** /**
* *
*/ */
private Date updateTime; private String updateTime;
/** /**
* ID * ID
@ -55,7 +53,7 @@ public class InvCountOrder {
/** /**
* *
*/ */
private Date auditTime; private String auditTime;
/** /**
* 0 1 2 * 0 1 2

@ -26,4 +26,9 @@ public class FilterInvCountOrderRequest extends ListPageRequest {
*/ */
private String customerId; private String customerId;
/**
* 0 1 2
*/
private Integer status;
} }

@ -3,6 +3,7 @@ package com.glxp.api.admin.service.inventory;
import com.glxp.api.admin.req.inventory.AddInvCountOrderRequest; import com.glxp.api.admin.req.inventory.AddInvCountOrderRequest;
import com.glxp.api.admin.req.inventory.FilterInvCountOrderRequest; import com.glxp.api.admin.req.inventory.FilterInvCountOrderRequest;
import com.glxp.api.admin.res.inventory.InvCountOrderResponse; import com.glxp.api.admin.res.inventory.InvCountOrderResponse;
import com.glxp.api.common.res.BaseResponse;
import java.util.List; import java.util.List;
@ -32,4 +33,12 @@ public interface InvCountOrderService {
* @param invCountOrderRequest * @param invCountOrderRequest
*/ */
void saveCountOrder(AddInvCountOrderRequest invCountOrderRequest); void saveCountOrder(AddInvCountOrderRequest invCountOrderRequest);
/**
*
*
* @param id
* @return
*/
BaseResponse submitAudit(String id);
} }

@ -1,6 +1,8 @@
package com.glxp.api.admin.service.inventory.impl; package com.glxp.api.admin.service.inventory.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.admin.constant.Constant; import com.glxp.api.admin.constant.Constant;
import com.glxp.api.admin.dao.inventory.InvCountCodesDao; import com.glxp.api.admin.dao.inventory.InvCountCodesDao;
@ -17,6 +19,9 @@ import com.glxp.api.admin.service.auth.CustomerService;
import com.glxp.api.admin.service.inventory.InvCountOrderService; import com.glxp.api.admin.service.inventory.InvCountOrderService;
import com.glxp.api.admin.util.GennerOrderUtils; import com.glxp.api.admin.util.GennerOrderUtils;
import com.glxp.api.admin.util.OrderNoTypeBean; import com.glxp.api.admin.util.OrderNoTypeBean;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -70,14 +75,14 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
invCountOrder.setOrderId(orderNo); //盘点单号 invCountOrder.setOrderId(orderNo); //盘点单号
AuthAdmin user = customerService.getUserBean(); AuthAdmin user = customerService.getUserBean();
invCountOrder.setCreateUser(user.getUserName()); invCountOrder.setCreateUser(user.getUserName());
int id = invCountOrderDao.insert(invCountOrder); invCountOrderDao.insert(invCountOrder);
List<InvProductEntity> invProductList = invCountOrderRequest.getInvProductList(); List<InvProductEntity> invProductList = invCountOrderRequest.getInvProductList();
//根据库存产品信息生成盘点单据详情 //根据库存产品信息生成盘点单据详情
for (InvProductEntity invProductEntity : invProductList) { for (InvProductEntity invProductEntity : invProductList) {
InvCountOrderDetail countOrderDetail = new InvCountOrderDetail(); InvCountOrderDetail countOrderDetail = new InvCountOrderDetail();
BeanUtil.copyProperties(invProductEntity, countOrderDetail); BeanUtil.copyProperties(invProductEntity, countOrderDetail);
countOrderDetail.setOrderIdFk(String.valueOf(id)); countOrderDetail.setOrderIdFk(String.valueOf(invCountOrder.getId()));
countOrderDetail.setBookNum(invProductEntity.getInCount() - invProductEntity.getOutCount()); countOrderDetail.setBookNum(invProductEntity.getInCount() - invProductEntity.getOutCount());
countOrderDetail.setProduceDate(invProductEntity.getProductionDate()); countOrderDetail.setProduceDate(invProductEntity.getProductionDate());
countOrderDetail.setProductId(invProductEntity.getRelIdFk()); countOrderDetail.setProductId(invProductEntity.getRelIdFk());
@ -86,5 +91,31 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
} }
@Override
public BaseResponse submitAudit(String id) {
InvCountOrder invCountOrder = invCountOrderDao.selectByPrimaryKey(Integer.valueOf(id));
if (null == invCountOrder) {
return ResultVOUtils.error(ResultEnum.DATA_ERROR, "单据不存在");
}
if (invCountOrder.getStatus() != 0) {
return ResultVOUtils.error(ResultEnum.DATA_ERROR, "单据已提交,请勿重复提交");
}
//查询单据详情和码表是否存在,如果无单据详情和条码,不允许提交
Long detailCount = invCountOrderDetailDao.countByOrderIdFk(invCountOrder.getId());
if (detailCount == 0) {
return ResultVOUtils.error(ResultEnum.DATA_ERROR, "请先选择盘点产品");
}
Long codesCount = invCountCodesDao.countByOrderIdFk(invCountOrder.getId());
if (codesCount == 0) {
return ResultVOUtils.error(ResultEnum.DATA_ERROR, "请扫描需要盘点的产品");
}
//更新状态
invCountOrder.setStatus(1);
invCountOrder.setUpdateTime(DateUtil.date().toString(DatePattern.NORM_DATETIME_PATTERN));
invCountOrderDao.updateByPrimaryKey(invCountOrder);
return ResultVOUtils.success();
}
} }

@ -161,4 +161,8 @@
</if> </if>
</where> </where>
</select> </select>
<select id="countByOrderIdFk" resultType="java.lang.Long">
select count(*) from inv_count_codes where orderIdFk = #{orderIdFk}
</select>
</mapper> </mapper>

@ -44,17 +44,18 @@
where id = #{id,jdbcType=INTEGER} where id = #{id,jdbcType=INTEGER}
</delete> </delete>
<insert id="insert" parameterType="com.glxp.api.admin.entity.inventory.InvCountOrder"> <insert id="insert" parameterType="com.glxp.api.admin.entity.inventory.InvCountOrder"
insert into inv_count_order (id, orderId, invStorageCode, keyColumn="id" keyProperty="id" useGeneratedKeys="true">
insert into inv_count_order (orderId, invStorageCode,
invWarehouseCode, invSpaceCode, `createUser`, invWarehouseCode, invSpaceCode, `createUser`,
createTime, updateTime, auditUser, createTime, updateTime, auditUser,
auditTime, `status`, remark) auditTime, `status`, remark)
values (#{id,jdbcType=INTEGER}, #{orderId,jdbcType=VARCHAR}, #{invStorageCode,jdbcType=VARCHAR}, values (#{orderId,jdbcType=VARCHAR}, #{invStorageCode,jdbcType=VARCHAR},
#{invWarehouseCode,jdbcType=VARCHAR}, #{invSpaceCode,jdbcType=VARCHAR}, #{createUser,jdbcType=VARCHAR}, #{invWarehouseCode,jdbcType=VARCHAR}, #{invSpaceCode,jdbcType=VARCHAR}, #{createUser,jdbcType=VARCHAR},
#{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, #{auditUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, #{auditUser,jdbcType=VARCHAR},
#{auditTime,jdbcType=TIMESTAMP}, #{status,jdbcType=BOOLEAN}, #{remark,jdbcType=VARCHAR}) #{auditTime,jdbcType=TIMESTAMP}, #{status,jdbcType=BOOLEAN}, #{remark,jdbcType=VARCHAR})
</insert> </insert>
<insert id="insertSelective" parameterType="com.glxp.api.admin.entity.inventory.InvCountOrder"> <insert id="insertSelective" parameterType="com.glxp.api.admin.entity.inventory.InvCountOrder">
insert into inv_count_order insert into inv_count_order
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
@ -285,10 +286,12 @@
co.status, co.status,
co.remark, co.remark,
w.name as invStorageName, w.name as invStorageName,
ws.name as invSubStorageName ws.name as invSubStorageName,
sp.name as invSpaceName
from inv_count_order co from inv_count_order co
left join inv_warehouse w on co.invStorageCode = w.code left join inv_warehouse w on co.invStorageCode = w.code
left join inv_warehouse_sub ws on co.invWarehouseCode = ws.code left join inv_warehouse_sub ws on co.invWarehouseCode = ws.code
left join inv_space sp on co.invSpaceCode = sp.code
<where> <where>
<if test="invStorageCode != null and invStorageCode != ''"> <if test="invStorageCode != null and invStorageCode != ''">
AND co.invStorageCode = #{invStorageCode} AND co.invStorageCode = #{invStorageCode}
@ -299,6 +302,9 @@
<if test="invSpaceCode != null and invSpaceCode != ''"> <if test="invSpaceCode != null and invSpaceCode != ''">
AND co.invSpaceCode = #{invSpaceCode} AND co.invSpaceCode = #{invSpaceCode}
</if> </if>
<if test="status != null">
AND co.status = #{status}
</if>
</where> </where>
</select> </select>

@ -277,4 +277,8 @@
from inv_count_order_detail from inv_count_order_detail
where orderIdFk = #{orderIdFk} where orderIdFk = #{orderIdFk}
</select> </select>
<select id="countByOrderIdFk" resultType="java.lang.Long">
select count(*) from inv_count_order_detail where orderIdFk = #{orderIdFk}
</select>
</mapper> </mapper>

@ -12,7 +12,7 @@ CREATE TABLE `inv_count_codes` (
# 盘点单据表 # 盘点单据表
DROP TABLE IF EXISTS `inv_count_order`; DROP TABLE IF EXISTS `inv_count_order`;
CREATE TABLE `inv_count_order` ( CREATE TABLE `inv_count_order` (
`id` int(0) NOT NULL COMMENT 'id', `id` int(0) NOT NULL AUTO_INCREMENT COMMENT 'id',
`orderId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '盘点单号', `orderId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '盘点单号',
`invStorageCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '仓库号', `invStorageCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '仓库号',
`invWarehouseCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '分库号', `invWarehouseCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '分库号',
@ -27,6 +27,8 @@ CREATE TABLE `inv_count_order` (
PRIMARY KEY (`id`) USING BTREE PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '盘点单据表' ROW_FORMAT = Dynamic; ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '盘点单据表' ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
# 盘点单据详情表 # 盘点单据详情表
DROP TABLE IF EXISTS `inv_count_order_detail`; DROP TABLE IF EXISTS `inv_count_order_detail`;
CREATE TABLE `inv_count_order_detail` ( CREATE TABLE `inv_count_order_detail` (

Loading…
Cancel
Save