更新销售合同/提成/业绩、精工工序工价/生产审核/工时统计、仓储盘点/库存/补货/入库/库房管理,新增提成设置/销售业绩/库房管理/入库单移动端等模块及SQL脚本

This commit is contained in:
Developer
2026-08-05 08:13:08 +08:00
parent 33549c3787
commit fd84f9d3ca
94 changed files with 14531 additions and 345 deletions

View File

@@ -0,0 +1,170 @@
USE [ERPTOOL_JY]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- 同步正式库历史工序工价总时间,确保总时间等于机动时间加辅助时间;修改人:Ld 修改时间:2026-08-03 15:24:31;
IF OBJECT_ID(N'[dbo].[车间生产管理工艺_工序工价]', N'U') IS NOT NULL
BEGIN
UPDATE [dbo].[_工序工价]
SET [s] = ISNULL([s], 0) + ISNULL([s], 0),
= GETDATE()
WHERE ISNULL([s], 0) <> ISNULL([s], 0) + ISNULL([s], 0);
END
GO
-- 工序工价总时间数据库兜底,后续新增或修改时自动保持总时间=机动时间+辅助时间;修改人:Ld 修改时间:2026-08-03 15:24:31;
IF OBJECT_ID(N'[dbo].[TR_车间生产管理工艺_工序工价_总时间自动计算]', N'TR') IS NOT NULL
DROP TRIGGER [dbo].[TR_车间生产管理工艺_工序工价_总时间自动计算];
GO
CREATE TRIGGER [dbo].[TR_车间生产管理工艺_工序工价_总时间自动计算]
ON [dbo].[_工序工价]
AFTER INSERT, UPDATE
AS
BEGIN
SET NOCOUNT ON;
IF TRIGGER_NESTLEVEL() > 1
RETURN;
-- 修改人:Ld 修改时间:2026-08-03 15:24:31; 仅修正本次变动行,避免人工或接口传入错误总时间。
UPDATE price
SET price.[s] = ISNULL(price.[s], 0) + ISNULL(price.[s], 0)
FROM [dbo].[_工序工价] price
INNER JOIN inserted i ON price. = i.
WHERE ISNULL(price.[s], 0) <> ISNULL(price.[s], 0) + ISNULL(price.[s], 0);
END
GO
-- 工序工价导出,正式库复用页面查询筛选口径并导出全部匹配数据;修改人:Ld 修改时间:2026-08-03 15:24:31;
IF OBJECT_ID(N'[dbo].[车间生产管理工艺_工序工价_导出表格_查询]', N'P') IS NOT NULL
DROP PROCEDURE [dbo].[_工序工价_导出表格_查询];
GO
CREATE PROCEDURE [dbo].[_工序工价_导出表格_查询]
@_check INT = 0,
@ INT = NULL,
@_check INT = 0,
@ INT = NULL,
@_check INT = 0,
@ INT = NULL,
@_check INT = 0,
@ NVARCHAR(100) = N'',
@_check INT = 0,
@ NVARCHAR(100) = N'',
@_check INT = 0,
@ NVARCHAR(100) = N'',
@_check INT = 0,
@ NVARCHAR(100) = N'',
@_check INT = 0,
@ NVARCHAR(20) = N''
AS
BEGIN
SET NOCOUNT ON;
SELECT N'工序工价_' + REPLACE(REPLACE(REPLACE(CONVERT(NVARCHAR(19), GETDATE(), 21), ':', ''), '-', ''), ' ', '-') AS tablename, '15' AS tabletype;
SELECT
256 * 20 AS ,
256 * 20 AS ,
256 * 20 AS ,
256 * 20 AS ,
256 * 24 AS ,
256 * 20 AS ,
256 * 12 AS ,
256 * 12 AS ,
256 * 12 AS ,
256 * 12 AS [s],
256 * 12 AS [s],
256 * 12 AS [s],
256 * 16 AS [()],
256 * 12 AS ,
256 * 14 AS [()],
256 * 18 AS [(/)],
256 * 14 AS ,
256 * 12 AS ,
256 * 12 AS ,
256 * 24 AS ,
256 * 14 AS ,
256 * 20 AS ,
256 * 14 AS ,
256 * 20 AS ;
SELECT
0 AS ,
0 AS ,
0 AS ,
0 AS ,
0 AS ,
0 AS ,
1 AS ,
1 AS ,
1 AS ,
1 AS [s],
1 AS [s],
1 AS [s],
1 AS [()],
1 AS ,
1 AS [()],
1 AS [(/)],
0 AS ,
1 AS ,
0 AS ,
0 AS ,
0 AS ,
0 AS ,
0 AS ,
0 AS ;
;WITH PlanData AS (
-- 页面查询同源工艺计划数据源,确保正式库导出与列表一致;修改人:Ld 修改时间:2026-08-03 15:24:31;
SELECT gp.*
FROM [dbo].[_零件工艺计划_视图] gp
WHERE gp. >= 1
AND (@_check = 0 OR gp. = @)
AND (@_check = 0 OR gp. = @)
AND (@_check = 0 OR gp. = @)
AND (@_check = 0 OR gp. + gp. LIKE N'%' + @ + N'%')
AND (@_check = 0 OR gp. LIKE N'%' + @ + N'%')
)
SELECT
gp.,
gp.,
base. AS ,
base. AS ,
gp.,
gp. AS ,
gx.,
gx.,
gx.,
ISNULL(price.[s], 0) AS [s],
ISNULL(price.[s], 0) AS [s],
ISNULL(price.[s], 0) + ISNULL(price.[s], 0) AS [s],
ISNULL(price.[()], 0) AS [()],
ISNULL(price.[], 0) AS ,
ISNULL(price.[()], 0) AS [()],
ISNULL(price.[(/)], 0) AS [(/)],
CONVERT(VARCHAR(10), price., 23) AS ,
ISNULL(price., 0) AS ,
CASE WHEN ISNULL(price., 1) = 1 THEN N'启用' ELSE N'停用' END AS ,
price.,
price.,
CONVERT(VARCHAR(19), price., 120) AS ,
price.,
CONVERT(VARCHAR(19), price., 120) AS
FROM PlanData gp
INNER JOIN [dbo].[_零件工序] gx ON gp. = gx.
LEFT JOIN [dbo].[_基础表_工艺名称] base ON gx. = base.
LEFT JOIN [dbo].[_工序工价] price ON gx. = price.
WHERE NULLIF(LTRIM(RTRIM(base.)), N'') IS NOT NULL
AND (@_check = 0 OR base. LIKE N'%' + @ + N'%')
AND (@_check = 0 OR base. LIKE N'%' + @ + N'%')
AND (@_check = 0 OR CAST(ISNULL(price., 1) AS NVARCHAR(20)) = @)
ORDER BY gp. DESC, gp. DESC, gx. ASC, gx. ASC;
END
GO