﻿DROP PROCEDURE IF EXISTS uspFollowUpGondviseloCim
GO

CREATE PROCEDURE uspFollowUpGondviseloCim
  @intezmenyId int,
  @tanevId int,
  @kovTanevId int,
  @CimID int
AS
BEGIN
  DECLARE @kovCimId int = (SELECT ID FROM T_CIM_OSSZES WHERE ELOZOTANEVIREKORDID=@CimID)

  IF (SELECT TOROLT FROM T_CIM_OSSZES WHERE ID = @CimID)='T' OR (SELECT TOROLT FROM T_CIM_OSSZES WHERE ID = @kovCimId)='T' BEGIN
    RETURN
  END
  
  IF @kovCimId IS NULL BEGIN
   INSERT INTO T_CIM_OSSZES (
       C_CIMTIPUSA
      ,C_ORSZAG
      ,C_IRANYITOSZAM
      ,C_VAROS
      ,C_MEGYE
      ,C_KOZTERULET
      ,C_KOZTERULETJELLEGE
      ,C_HAZSZAM
      ,C_EPULET
      ,C_LEPCSOHAZ
      ,C_EMELET
      ,C_AJTO
      ,C_OSSZETETTCIM
      ,C_ALAPERTELMEZETT
      ,C_FELHASZNALOID
      ,C_GONDVISELOID
      ,C_INTEZMENYID
      ,C_TANEVID
      ,TOROLT
      ,SERIAL
      ,LASTCHANGED
      ,CREATED
      ,MODIFIER
      ,CREATOR
      ,GID
      ,ELOZOTANEVIREKORDID
    ) SELECT
       c.C_CIMTIPUSA
      ,c.C_ORSZAG
      ,c.C_IRANYITOSZAM
      ,c.C_VAROS
      ,c.C_MEGYE
      ,c.C_KOZTERULET
      ,c.C_KOZTERULETJELLEGE
      ,c.C_HAZSZAM
      ,c.C_EPULET
      ,c.C_LEPCSOHAZ
      ,c.C_EMELET
      ,c.C_AJTO
      ,c.C_OSSZETETTCIM
      ,c.C_ALAPERTELMEZETT
      ,fhNew.ID
      ,g.ID 
      ,c.C_INTEZMENYID
      ,@kovTanevId
      ,'F'
      ,0
      ,GETDATE()
      ,GETDATE()
      ,NULL
      ,NULL
      ,GID
      ,c.ID
    FROM T_CIM_OSSZES c
      INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = c.C_FELHASZNALOID
      INNER JOIN T_FELHASZNALO_OSSZES fhNew ON fhNew.C_OKTATASIAZONOSITO=fh.C_OKTATASIAZONOSITO AND fhNew.TOROLT='F' AND fhNew.C_TANEVID=@kovTanevId
      INNER JOIN T_GONDVISELO_OSSZES g ON g.ELOZOTANEVIREKORDID=c.C_GONDVISELOID AND g.TOROLT='F'
    WHERE c.ID = @CimID

  END
  ELSE BEGIN
    UPDATE cKov SET  
       C_CIMTIPUSA = cOld.C_CIMTIPUSA
      ,C_ORSZAG = cOld.C_ORSZAG
      ,C_IRANYITOSZAM = cOld.C_IRANYITOSZAM
      ,C_VAROS = cOld.C_VAROS
      ,C_MEGYE = cOld.C_MEGYE
      ,C_KOZTERULET = cOld.C_KOZTERULET
      ,C_KOZTERULETJELLEGE = cOld.C_KOZTERULETJELLEGE
      ,C_HAZSZAM = cOld.C_HAZSZAM
      ,C_EPULET = cOld.C_EPULET
      ,C_LEPCSOHAZ = cOld.C_LEPCSOHAZ
      ,C_EMELET = cOld.C_EMELET
      ,C_AJTO = cOld.C_AJTO
      ,C_OSSZETETTCIM = cOld.C_OSSZETETTCIM
      ,C_ALAPERTELMEZETT = cOld.C_ALAPERTELMEZETT
      ,SERIAL += 1
      ,LASTCHANGED = GETDATE()
      ,MODIFIER = cOld.MODIFIER
    FROM T_CIM_OSSZES cOld
      INNER JOIN T_CIM_OSSZES cKov ON cKov.ELOZOTANEVIREKORDID=cOld.ID AND cOld.ID=@CimID
  END

END
GO