diff --git a/jshERP-boot/docs/jsh_erp.sql b/jshERP-boot/docs/jsh_erp.sql index a47b4f28..2067e341 100644 --- a/jshERP-boot/docs/jsh_erp.sql +++ b/jshERP-boot/docs/jsh_erp.sql @@ -781,6 +781,7 @@ CREATE TABLE `jsh_serial_number` ( `depot_id` bigint(20) DEFAULT NULL COMMENT '仓库id', `serial_number` varchar(64) DEFAULT NULL COMMENT '序列号', `is_sell` varchar(1) DEFAULT '0' COMMENT '是否卖出,0未卖出,1卖出', + `in_price` decimal(24,6) NULL DEFAULT NULL COMMENT '入库单价' , `remark` varchar(1024) DEFAULT NULL COMMENT '备注', `delete_flag` varchar(1) DEFAULT '0' COMMENT '删除标记,0未删除,1删除', `create_time` datetime DEFAULT NULL COMMENT '创建时间', @@ -796,9 +797,9 @@ CREATE TABLE `jsh_serial_number` ( -- ---------------------------- -- Records of jsh_serial_number -- ---------------------------- -INSERT INTO `jsh_serial_number` VALUES ('105', '586', '14', '12312323423223', '0', 'abab', '0', '2019-12-28 12:14:39', '63', '2020-07-21 00:30:32', '63', null, null, '63'); -INSERT INTO `jsh_serial_number` VALUES ('108', '586', '14', '3215952626621201', '0', '', '0', '2020-07-21 00:31:02', '63', '2020-07-21 00:31:02', '63', null, null, '63'); -INSERT INTO `jsh_serial_number` VALUES ('109', '586', '14', '3215952626621202', '0', '', '0', '2020-07-21 00:31:02', '63', '2020-07-21 00:31:02', '63', null, null, '63'); +INSERT INTO `jsh_serial_number` VALUES ('105', '586', '14', '12312323423223', '0', null, 'abab', '0', '2019-12-28 12:14:39', '63', '2020-07-21 00:30:32', '63', null, null, '63'); +INSERT INTO `jsh_serial_number` VALUES ('108', '586', '14', '3215952626621201', '0', null, '', '0', '2020-07-21 00:31:02', '63', '2020-07-21 00:31:02', '63', null, null, '63'); +INSERT INTO `jsh_serial_number` VALUES ('109', '586', '14', '3215952626621202', '0', null, '', '0', '2020-07-21 00:31:02', '63', '2020-07-21 00:31:02', '63', null, null, '63'); -- ---------------------------- -- Table structure for jsh_supplier diff --git a/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt b/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt index 34d7b1f5..ee7d94c3 100644 --- a/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt +++ b/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt @@ -1546,4 +1546,11 @@ update jsh_person set type='销售员' where type='业务员'; -- by jishenghua -- 给系统参数表增加出入库管理启用标记,开启后,采购入库、采购退货、销售出库、销售退货单据都会经过出入库流程,适合有独立仓库的场景。 -- -------------------------------------------------------- -alter table jsh_system_config add in_out_manage_flag varchar(1) DEFAULT '0' COMMENT '出入库管理启用标记,0未启用,1启用' after over_link_bill_flag; \ No newline at end of file +alter table jsh_system_config add in_out_manage_flag varchar(1) DEFAULT '0' COMMENT '出入库管理启用标记,0未启用,1启用' after over_link_bill_flag; + +-- -------------------------------------------------------- +-- 时间 2024年4月8日 +-- by jishenghua +-- 给序列号表里面增加入库单价字段 +-- -------------------------------------------------------- +alter table jsh_serial_number add in_price decimal(24,6) DEFAULT NULL COMMENT '入库单价' after is_sell; \ No newline at end of file diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumber.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumber.java index 65717209..920772ef 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumber.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumber.java @@ -1,5 +1,6 @@ package com.jsh.erp.datasource.entities; +import java.math.BigDecimal; import java.util.Date; public class SerialNumber { @@ -13,6 +14,8 @@ public class SerialNumber { private String isSell; + private BigDecimal inPrice; + private String remark; private String deleteFlag; @@ -71,6 +74,14 @@ public class SerialNumber { this.isSell = isSell == null ? null : isSell.trim(); } + public BigDecimal getInPrice() { + return inPrice; + } + + public void setInPrice(BigDecimal inPrice) { + this.inPrice = inPrice; + } + public String getRemark() { return remark; } diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumberExample.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumberExample.java index 66e0ecd1..310438e6 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumberExample.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SerialNumberExample.java @@ -1,5 +1,6 @@ package com.jsh.erp.datasource.entities; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -425,6 +426,66 @@ public class SerialNumberExample { return (Criteria) this; } + public Criteria andInPriceIsNull() { + addCriterion("in_price is null"); + return (Criteria) this; + } + + public Criteria andInPriceIsNotNull() { + addCriterion("in_price is not null"); + return (Criteria) this; + } + + public Criteria andInPriceEqualTo(BigDecimal value) { + addCriterion("in_price =", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceNotEqualTo(BigDecimal value) { + addCriterion("in_price <>", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceGreaterThan(BigDecimal value) { + addCriterion("in_price >", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceGreaterThanOrEqualTo(BigDecimal value) { + addCriterion("in_price >=", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceLessThan(BigDecimal value) { + addCriterion("in_price <", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceLessThanOrEqualTo(BigDecimal value) { + addCriterion("in_price <=", value, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceIn(List values) { + addCriterion("in_price in", values, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceNotIn(List values) { + addCriterion("in_price not in", values, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceBetween(BigDecimal value1, BigDecimal value2) { + addCriterion("in_price between", value1, value2, "inPrice"); + return (Criteria) this; + } + + public Criteria andInPriceNotBetween(BigDecimal value1, BigDecimal value2) { + addCriterion("in_price not between", value1, value2, "inPrice"); + return (Criteria) this; + } + public Criteria andRemarkIsNull() { addCriterion("remark is null"); return (Criteria) this; diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java index 12c038ea..c914b76b 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java @@ -455,8 +455,12 @@ public class DepotItemService { int operNum = rowObj.getInteger("operNumber"); if(snArray.length == operNum) { Long depotId = rowObj.getLong("depotId"); + BigDecimal inPrice = BigDecimal.ZERO; + if (StringUtil.isExist(rowObj.get("unitPrice"))) { + inPrice = rowObj.getBigDecimal("unitPrice"); + } serialNumberService.addSerialNumberByBill(depotHead.getType(), depotHead.getSubType(), - depotHead.getNumber(), materialExtend.getMaterialId(), depotId, depotItem.getSnList()); + depotHead.getNumber(), materialExtend.getMaterialId(), depotId, inPrice, depotItem.getSnList()); } else { throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_SN_NUMBERE_FAILED_CODE, String.format(ExceptionConstants.DEPOT_HEAD_SN_NUMBERE_FAILED_MSG, barCode)); diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/serialNumber/SerialNumberService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/serialNumber/SerialNumberService.java index 9c62c8ab..dc532b81 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/serialNumber/SerialNumberService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/serialNumber/SerialNumberService.java @@ -20,6 +20,7 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -352,7 +353,7 @@ public class SerialNumberService { return count; } - public void addSerialNumberByBill(String type, String subType, String inBillNo, Long materialId, Long depotId, String snList) throws Exception { + public void addSerialNumberByBill(String type, String subType, String inBillNo, Long materialId, Long depotId, BigDecimal inPrice, String snList) throws Exception { //录入序列号的时候不能和库里面的重复-入库 if ((BusinessConstants.SUB_TYPE_PURCHASE.equals(subType) || BusinessConstants.SUB_TYPE_OTHER.equals(subType) || @@ -374,6 +375,7 @@ public class SerialNumberService { serialNumber.setMaterialId(materialId); serialNumber.setDepotId(depotId); serialNumber.setSerialNumber(sn); + serialNumber.setInPrice(inPrice); Date date = new Date(); serialNumber.setCreateTime(date); serialNumber.setUpdateTime(date); diff --git a/jshERP-boot/src/main/resources/mapper_xml/SerialNumberMapper.xml b/jshERP-boot/src/main/resources/mapper_xml/SerialNumberMapper.xml deleted file mode 100644 index dbaffaa1..00000000 --- a/jshERP-boot/src/main/resources/mapper_xml/SerialNumberMapper.xml +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - and ${criterion.condition} - - - and ${criterion.condition} #{criterion.value} - - - and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} - - - and ${criterion.condition} - - #{listItem} - - - - - - - - - - - - - - - - - - and ${criterion.condition} - - - and ${criterion.condition} #{criterion.value} - - - and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} - - - and ${criterion.condition} - - #{listItem} - - - - - - - - - - - id, material_id, depot_id, serial_number, is_sell, remark, delete_flag, create_time, - creator, update_time, updater, in_bill_no, out_bill_no, tenant_id - - - - - delete from jsh_serial_number - where id = #{id,jdbcType=BIGINT} - - - delete from jsh_serial_number - - - - - - insert into jsh_serial_number (id, material_id, depot_id, - serial_number, is_sell, remark, - delete_flag, create_time, creator, - update_time, updater, in_bill_no, - out_bill_no, tenant_id) - values (#{id,jdbcType=BIGINT}, #{materialId,jdbcType=BIGINT}, #{depotId,jdbcType=BIGINT}, - #{serialNumber,jdbcType=VARCHAR}, #{isSell,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}, - #{deleteFlag,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{creator,jdbcType=BIGINT}, - #{updateTime,jdbcType=TIMESTAMP}, #{updater,jdbcType=BIGINT}, #{inBillNo,jdbcType=VARCHAR}, - #{outBillNo,jdbcType=VARCHAR}, #{tenantId,jdbcType=BIGINT}) - - - insert into jsh_serial_number - - - id, - - - material_id, - - - depot_id, - - - serial_number, - - - is_sell, - - - remark, - - - delete_flag, - - - create_time, - - - creator, - - - update_time, - - - updater, - - - in_bill_no, - - - out_bill_no, - - - tenant_id, - - - - - #{id,jdbcType=BIGINT}, - - - #{materialId,jdbcType=BIGINT}, - - - #{depotId,jdbcType=BIGINT}, - - - #{serialNumber,jdbcType=VARCHAR}, - - - #{isSell,jdbcType=VARCHAR}, - - - #{remark,jdbcType=VARCHAR}, - - - #{deleteFlag,jdbcType=VARCHAR}, - - - #{createTime,jdbcType=TIMESTAMP}, - - - #{creator,jdbcType=BIGINT}, - - - #{updateTime,jdbcType=TIMESTAMP}, - - - #{updater,jdbcType=BIGINT}, - - - #{inBillNo,jdbcType=VARCHAR}, - - - #{outBillNo,jdbcType=VARCHAR}, - - - #{tenantId,jdbcType=BIGINT}, - - - - - - update jsh_serial_number - - - id = #{record.id,jdbcType=BIGINT}, - - - material_id = #{record.materialId,jdbcType=BIGINT}, - - - depot_id = #{record.depotId,jdbcType=BIGINT}, - - - serial_number = #{record.serialNumber,jdbcType=VARCHAR}, - - - is_sell = #{record.isSell,jdbcType=VARCHAR}, - - - remark = #{record.remark,jdbcType=VARCHAR}, - - - delete_flag = #{record.deleteFlag,jdbcType=VARCHAR}, - - - create_time = #{record.createTime,jdbcType=TIMESTAMP}, - - - creator = #{record.creator,jdbcType=BIGINT}, - - - update_time = #{record.updateTime,jdbcType=TIMESTAMP}, - - - updater = #{record.updater,jdbcType=BIGINT}, - - - in_bill_no = #{record.inBillNo,jdbcType=VARCHAR}, - - - out_bill_no = #{record.outBillNo,jdbcType=VARCHAR}, - - - tenant_id = #{record.tenantId,jdbcType=BIGINT}, - - - - - - - - update jsh_serial_number - set id = #{record.id,jdbcType=BIGINT}, - material_id = #{record.materialId,jdbcType=BIGINT}, - depot_id = #{record.depotId,jdbcType=BIGINT}, - serial_number = #{record.serialNumber,jdbcType=VARCHAR}, - is_sell = #{record.isSell,jdbcType=VARCHAR}, - remark = #{record.remark,jdbcType=VARCHAR}, - delete_flag = #{record.deleteFlag,jdbcType=VARCHAR}, - create_time = #{record.createTime,jdbcType=TIMESTAMP}, - creator = #{record.creator,jdbcType=BIGINT}, - update_time = #{record.updateTime,jdbcType=TIMESTAMP}, - updater = #{record.updater,jdbcType=BIGINT}, - in_bill_no = #{record.inBillNo,jdbcType=VARCHAR}, - out_bill_no = #{record.outBillNo,jdbcType=VARCHAR}, - tenant_id = #{record.tenantId,jdbcType=BIGINT} - - - - - - update jsh_serial_number - - - material_id = #{materialId,jdbcType=BIGINT}, - - - depot_id = #{depotId,jdbcType=BIGINT}, - - - serial_number = #{serialNumber,jdbcType=VARCHAR}, - - - is_sell = #{isSell,jdbcType=VARCHAR}, - - - remark = #{remark,jdbcType=VARCHAR}, - - - delete_flag = #{deleteFlag,jdbcType=VARCHAR}, - - - create_time = #{createTime,jdbcType=TIMESTAMP}, - - - creator = #{creator,jdbcType=BIGINT}, - - - update_time = #{updateTime,jdbcType=TIMESTAMP}, - - - updater = #{updater,jdbcType=BIGINT}, - - - in_bill_no = #{inBillNo,jdbcType=VARCHAR}, - - - out_bill_no = #{outBillNo,jdbcType=VARCHAR}, - - - tenant_id = #{tenantId,jdbcType=BIGINT}, - - - where id = #{id,jdbcType=BIGINT} - - - update jsh_serial_number - set material_id = #{materialId,jdbcType=BIGINT}, - depot_id = #{depotId,jdbcType=BIGINT}, - serial_number = #{serialNumber,jdbcType=VARCHAR}, - is_sell = #{isSell,jdbcType=VARCHAR}, - remark = #{remark,jdbcType=VARCHAR}, - delete_flag = #{deleteFlag,jdbcType=VARCHAR}, - create_time = #{createTime,jdbcType=TIMESTAMP}, - creator = #{creator,jdbcType=BIGINT}, - update_time = #{updateTime,jdbcType=TIMESTAMP}, - updater = #{updater,jdbcType=BIGINT}, - in_bill_no = #{inBillNo,jdbcType=VARCHAR}, - out_bill_no = #{outBillNo,jdbcType=VARCHAR}, - tenant_id = #{tenantId,jdbcType=BIGINT} - where id = #{id,jdbcType=BIGINT} - - \ No newline at end of file