From 23791518d86144aa18db1a6c2692bf6b40e44d23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Wed, 10 May 2023 23:44:24 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E7=B3=BB=E7=BB=9F=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E8=B6=85=E5=87=BA=E5=85=B3=E8=81=94?= =?UTF-8?q?=E5=8D=95=E6=8D=AE=E5=90=AF=E7=94=A8=E6=A0=87=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jshERP-boot/docs/jsh_erp.sql | 5 +- .../docs/数据库更新记录-首次安装请勿使用.txt | 9 ++- .../controller/SystemConfigController.java | 11 ++- .../erp/datasource/entities/SystemConfig.java | 10 +++ .../entities/SystemConfigExample.java | 70 +++++++++++++++++++ .../service/depotItem/DepotItemService.java | 14 ++-- .../systemConfig/SystemConfigService.java | 17 +++++ .../mapper_xml/SystemConfigMapper.xml | 23 +++++- 8 files changed, 141 insertions(+), 18 deletions(-) diff --git a/jshERP-boot/docs/jsh_erp.sql b/jshERP-boot/docs/jsh_erp.sql index 956d08ef..33a793bf 100644 --- a/jshERP-boot/docs/jsh_erp.sql +++ b/jshERP-boot/docs/jsh_erp.sql @@ -10,7 +10,7 @@ Target Server Type : MYSQL Target Server Version : 50704 File Encoding : 65001 -Date: 2023-03-21 22:20:03 +Date: 2023-05-10 23:21:02 */ SET FOREIGN_KEY_CHECKS=0; @@ -854,6 +854,7 @@ CREATE TABLE `jsh_system_config` ( `multi_bill_type` varchar(200) DEFAULT NULL COMMENT '流程类型,可多选', `force_approval_flag` varchar(1) DEFAULT '0' COMMENT '强审核启用标记,0未启用,1启用', `update_unit_price_flag` varchar(1) DEFAULT '1' COMMENT '更新单价启用标记,0未启用,1启用', + `over_link_bill_flag` varchar(1) DEFAULT '0' COMMENT '超出关联单据启用标记,0未启用,1启用', `tenant_id` bigint(20) DEFAULT NULL COMMENT '租户id', `delete_flag` varchar(1) DEFAULT '0' COMMENT '删除标记,0未删除,1删除', PRIMARY KEY (`id`) @@ -862,7 +863,7 @@ CREATE TABLE `jsh_system_config` ( -- ---------------------------- -- Records of jsh_system_config -- ---------------------------- -INSERT INTO `jsh_system_config` VALUES ('11', '公司test', '小李', '地址1', '12345678', null, null, '注:本单为我公司与客户约定账期内结款的依据,由客户或其单位员工签字生效,并承担法律责任。', '0', '0', '1', '0', '0', '', '0', '1', '63', '0'); +INSERT INTO `jsh_system_config` VALUES ('11', '公司test', '小李', '地址1', '12345678', null, null, '注:本单为我公司与客户约定账期内结款的依据,由客户或其单位员工签字生效,并承担法律责任。', '0', '0', '1', '0', '0', '', '0', '1', '0', '63', '0'); -- ---------------------------- -- Table structure for jsh_tenant diff --git a/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt b/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt index d68942ac..b540061e 100644 --- a/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt +++ b/jshERP-boot/docs/数据库更新记录-首次安装请勿使用.txt @@ -1473,4 +1473,11 @@ insert into `jsh_function` (`number`, `name`, `parent_number`, `url`, `component -- by jishenghua -- 给系统参数表增加更新单价启用标记 -- -------------------------------------------------------- -alter table jsh_system_config add update_unit_price_flag varchar(1) DEFAULT '1' COMMENT '更新单价启用标记,0未启用,1启用' after force_approval_flag; \ No newline at end of file +alter table jsh_system_config add update_unit_price_flag varchar(1) DEFAULT '1' COMMENT '更新单价启用标记,0未启用,1启用' after force_approval_flag; + +-- -------------------------------------------------------- +-- 时间 2023年05月10日 +-- by jishenghua +-- 给系统参数表增加超出关联单据启用标记 +-- -------------------------------------------------------- +alter table jsh_system_config add over_link_bill_flag varchar(1) DEFAULT '0' COMMENT '超出关联单据启用标记,0未启用,1启用' after update_unit_price_flag; \ No newline at end of file diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/SystemConfigController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/SystemConfigController.java index 877846b0..3f198344 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/SystemConfigController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/SystemConfigController.java @@ -1,11 +1,6 @@ package com.jsh.erp.controller; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.jsh.erp.constants.ExceptionConstants; -import com.jsh.erp.datasource.entities.Depot; import com.jsh.erp.datasource.entities.SystemConfig; -import com.jsh.erp.exception.BusinessRunTimeException; import com.jsh.erp.service.depot.DepotService; import com.jsh.erp.service.systemConfig.SystemConfigService; import com.jsh.erp.service.user.UserService; @@ -19,10 +14,12 @@ import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; -import org.springframework.dao.DataAccessException; import org.springframework.util.AntPathMatcher; import org.springframework.util.FileCopyUtils; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.HandlerMapping; diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfig.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfig.java index 248704f7..2211a878 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfig.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfig.java @@ -33,6 +33,8 @@ public class SystemConfig { private String updateUnitPriceFlag; + private String overLinkBillFlag; + private Long tenantId; private String deleteFlag; @@ -165,6 +167,14 @@ public class SystemConfig { this.updateUnitPriceFlag = updateUnitPriceFlag == null ? null : updateUnitPriceFlag.trim(); } + public String getOverLinkBillFlag() { + return overLinkBillFlag; + } + + public void setOverLinkBillFlag(String overLinkBillFlag) { + this.overLinkBillFlag = overLinkBillFlag == null ? null : overLinkBillFlag.trim(); + } + public Long getTenantId() { return tenantId; } diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfigExample.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfigExample.java index 2108c861..9d5c0f32 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfigExample.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/entities/SystemConfigExample.java @@ -1214,6 +1214,76 @@ public class SystemConfigExample { return (Criteria) this; } + public Criteria andOverLinkBillFlagIsNull() { + addCriterion("over_link_bill_flag is null"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagIsNotNull() { + addCriterion("over_link_bill_flag is not null"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagEqualTo(String value) { + addCriterion("over_link_bill_flag =", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagNotEqualTo(String value) { + addCriterion("over_link_bill_flag <>", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagGreaterThan(String value) { + addCriterion("over_link_bill_flag >", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagGreaterThanOrEqualTo(String value) { + addCriterion("over_link_bill_flag >=", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagLessThan(String value) { + addCriterion("over_link_bill_flag <", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagLessThanOrEqualTo(String value) { + addCriterion("over_link_bill_flag <=", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagLike(String value) { + addCriterion("over_link_bill_flag like", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagNotLike(String value) { + addCriterion("over_link_bill_flag not like", value, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagIn(List values) { + addCriterion("over_link_bill_flag in", values, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagNotIn(List values) { + addCriterion("over_link_bill_flag not in", values, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagBetween(String value1, String value2) { + addCriterion("over_link_bill_flag between", value1, value2, "overLinkBillFlag"); + return (Criteria) this; + } + + public Criteria andOverLinkBillFlagNotBetween(String value1, String value2) { + addCriterion("over_link_bill_flag not between", value1, value2, "overLinkBillFlag"); + return (Criteria) this; + } + public Criteria andTenantIdIsNull() { addCriterion("tenant_id 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 6c2db376..7cf150a5 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 @@ -521,8 +521,10 @@ public class DepotItemService { BigDecimal preNumber = rowObj.getBigDecimal("preNumber"); BigDecimal finishNumber = rowObj.getBigDecimal("finishNumber"); if(depotItem.getOperNumber().add(finishNumber).compareTo(preNumber)>0) { - throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_CODE, - String.format(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_MSG, barCode)); + if(!systemConfigService.getOverLinkBillFlag()) { + throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_CODE, + String.format(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_MSG, barCode)); + } } } else if("update".equals(actionType)) { //当前单据的类型 @@ -535,8 +537,10 @@ public class DepotItemService { //除去此单据之外的已入库|已出库 BigDecimal realFinishNumber = getRealFinishNumber(currentSubType, depotItem.getMaterialExtendId(), depotItem.getLinkId(), preHeaderId, headerId, unitInfo, unit); if(depotItem.getOperNumber().add(realFinishNumber).compareTo(preNumber)>0) { - throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_CODE, - String.format(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_MSG, barCode)); + if(!systemConfigService.getOverLinkBillFlag()) { + throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_CODE, + String.format(ExceptionConstants.DEPOT_HEAD_NUMBER_NEED_EDIT_FAILED_MSG, barCode)); + } } } } @@ -679,7 +683,7 @@ public class DepotItemService { if(materialAndSum.getOperNumber().compareTo(BigDecimal.ZERO) != 0) { BigDecimal materialSum = materialSumMap.get(materialAndSum.getMaterialExtendId()); if (materialSum != null) { - if (materialSum.compareTo(materialAndSum.getOperNumber()) != 0) { + if (materialSum.compareTo(materialAndSum.getOperNumber()) < 0) { res = BusinessConstants.BILLS_STATUS_SKIPING; } } else { diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/systemConfig/SystemConfigService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/systemConfig/SystemConfigService.java index de639f69..be237f5e 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/systemConfig/SystemConfigService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/systemConfig/SystemConfigService.java @@ -217,6 +217,23 @@ public class SystemConfigService { return updateUnitPriceFlag; } + /** + * 获取超出关联单据开关 + * @return + * @throws Exception + */ + public boolean getOverLinkBillFlag() throws Exception { + boolean overLinkBillFlag = false; + List list = getSystemConfig(); + if(list.size()>0) { + String flag = list.get(0).getOverLinkBillFlag(); + if(("1").equals(flag)) { + overLinkBillFlag = true; + } + } + return overLinkBillFlag; + } + /** * 获取强审核开关 * @return diff --git a/jshERP-boot/src/main/resources/mapper_xml/SystemConfigMapper.xml b/jshERP-boot/src/main/resources/mapper_xml/SystemConfigMapper.xml index 6757d039..29daf000 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/SystemConfigMapper.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/SystemConfigMapper.xml @@ -18,6 +18,7 @@ + @@ -83,7 +84,7 @@ id, company_name, company_contacts, company_address, company_tel, company_fax, company_post_code, sale_agreement, depot_flag, customer_flag, minus_stock_flag, purchase_by_sale_flag, multi_level_approval_flag, multi_bill_type, force_approval_flag, update_unit_price_flag, - tenant_id, delete_flag + over_link_bill_flag, tenant_id, delete_flag