IF EXISTS (SELECT 1 FROM sys.objects WHERE object_id = OBJECT_ID('[dbo].[order_271_3695_wrklink_after]') AND type = 'P')
DROP PROCEDURE [dbo].[order_271_3695_wrklink_after]
GO

-- 生成时间:2018-11-22 18:21:42 by ebs-core  
CREATE  procedure order_271_3695_wrklink_after(
     @cmpid int, 
     @useruid int,
     @bizid int, 
     @ordid bigint, 
     @wrkid int, 
     @jbid bigint, 
     @wsid int, 
     @wsstatus nvarchar(50) 
  ) 
as  
begin  
set nocount on  
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
declare @autoapplycode varchar(50) 
  set @autoapplycode =  ''
declare @nonedate datetime 
set @nonedate = CONVERT(datetime,'1910-1-1')
declare @ord2group2 nvarchar(50) 
set @ord2group2 = '' 
declare @sys_recid bigint 
set @sys_recid = 0 
  
 --- 以下是预处理事件中的临时表
 
exec drop_temp_table '#master' 
select * into #master from order_271 with(nolock) where ord_id=@ordid 
 ---- 以下是开发人员写的 before link job 事件 --------------
 update order_260 
set ord_fcbz = ord_fcbz + m.ord_fcxgxx 
from #master m 
where order_260.ord_id = m.ord_fordid

/*消息*/
declare  
@ordidx bigint =0,
@cuidx bigint =0,
@ordnox nvarchar(30)=''

select @cuidx = c.ord_createcuid,
@ordnox = c.ord_no,
@ordidx = c.ord_id
from order_260 c with(nolock) ,
#master m --order_271 m --
where c.ord_id  =m.ord_fordid 
and m.ord_id =@ordid --31--

INSERT INTO mps_alarm_message (
almmsg_type,
almmsg_cmpid,
almmsg_almid,
almmsg_text,
almmsg_date,
almmsg_cuid,
almmsg_identkey,
almmsg_title,
almmsg_category,
almmsg_read,
almmsg_lastdate,
almmsg_sndcuid,
almmsg_sndname,
almmsg_objtype,
almmsg_ctgid,
almmsg_ctgid2,
almmsg_objid,
almmsg_jbid
) 
VALUES (
'message',
1,
0,
'门店工单【'+@ordnox+'】总部已再次与维修厂家联系，请做相关报价调整',
getdate(),
@cuidx,
',',
'服务接件单',
'工作提醒',
1,
'1900-01-01 00:00:00:000',
0,
'',
'biz',
NULL,
260,
@ordidx,
0);

 ---- 以上是开发人员写的 before libk job 事件 --------------
 
  
 

 declare @authority_old varchar(32)=''
declare @authority_new varchar(32)='' 
select top 1 @authority_old=substring(sys.fn_sqlvarbasetostr(HashBytes('MD5', convert(varchar(100),ord_createcuid) )),3,32) from order_271 with(nolock) where ord_id=@ordid 
set @authority_old = isnull(@authority_old,'') 
select top 1 @authority_new=substring(sys.fn_sqlvarbasetostr(HashBytes('MD5', convert(varchar(100),ord_createcuid) )),3,32) from #master 
set @authority_new = isnull(@authority_new,'') 
update old set 
ord_branch=case when new.ord_branch is null or new.ord_branch = '_none_'  then old.ord_branch else new.ord_branch end,ord_bxlx=case when new.ord_bxlx is null or new.ord_bxlx = '_none_'  then old.ord_bxlx else new.ord_bxlx end,ord_cbid=case when new.ord_cbid is null or new.ord_cbid = -999999999  then old.ord_cbid else new.ord_cbid end,ord_createbizids=case when new.ord_createbizids is null or new.ord_createbizids = '_none_'  then old.ord_createbizids else new.ord_createbizids end,ord_createcuid=case when new.ord_createcuid is null or new.ord_createcuid = -999999999  then old.ord_createcuid else new.ord_createcuid end,ord_createdepart=case when new.ord_createdepart is null or new.ord_createdepart = '_none_'  then old.ord_createdepart else new.ord_createdepart end,ord_createdpid=case when new.ord_createdpid is null or new.ord_createdpid = -999999999  then old.ord_createdpid else new.ord_createdpid end,ord_creator=case when new.ord_creator is null or new.ord_creator = '_none_'  then old.ord_creator else new.ord_creator end,ord_cuid=case when new.ord_cuid is null or new.ord_cuid = -999999999  then old.ord_cuid else new.ord_cuid end,ord_cylx=case when new.ord_cylx is null or new.ord_cylx = '_none_'  then old.ord_cylx else new.ord_cylx end,ord_depart=case when new.ord_depart is null or new.ord_depart = '_none_'  then old.ord_depart else new.ord_depart end,ord_dpid=case when new.ord_dpid is null or new.ord_dpid = -999999999  then old.ord_dpid else new.ord_dpid end,ord_empname=case when new.ord_empname is null or new.ord_empname = '_none_'  then old.ord_empname else new.ord_empname end,ord_enddate=case when new.ord_enddate is null or new.ord_enddate <= @nonedate then old.ord_enddate else new.ord_enddate end,ord_fbizid=case when new.ord_fbizid is null or new.ord_fbizid = -999999999  then old.ord_fbizid else new.ord_fbizid end,ord_fcbzls=case when new.ord_fcbzls is null or new.ord_fcbzls = '_none_'  then old.ord_fcbzls else new.ord_fcbzls end,ord_fcxgxx=case when new.ord_fcxgxx is null or new.ord_fcxgxx = '_none_'  then old.ord_fcxgxx else new.ord_fcxgxx end,ord_fjbid=case when new.ord_fjbid is null or new.ord_fjbid = -999999999  then old.ord_fjbid else new.ord_fjbid end,ord_ford2id=case when new.ord_ford2id is null or new.ord_ford2id = -999999999  then old.ord_ford2id else new.ord_ford2id end,ord_ford2tag=case when new.ord_ford2tag is null or new.ord_ford2tag = -999999999  then old.ord_ford2tag else new.ord_ford2tag end,ord_fordid=case when new.ord_fordid is null or new.ord_fordid = -999999999  then old.ord_fordid else new.ord_fordid end,ord_ftype=case when new.ord_ftype is null or new.ord_ftype = '_none_'  then old.ord_ftype else new.ord_ftype end,ord_gjrq=case when new.ord_gjrq is null or new.ord_gjrq <= @nonedate then old.ord_gjrq else new.ord_gjrq end,ord_gzfl=case when new.ord_gzfl is null or new.ord_gzfl = '_none_'  then old.ord_gzfl else new.ord_gzfl end,ord_gzsm=case when new.ord_gzsm is null or new.ord_gzsm = '_none_'  then old.ord_gzsm else new.ord_gzsm end,ord_hyxm=case when new.ord_hyxm is null or new.ord_hyxm = '_none_'  then old.ord_hyxm else new.ord_hyxm end,ord_imei=case when new.ord_imei is null or new.ord_imei = '_none_'  then old.ord_imei else new.ord_imei end,ord_jjlx=case when new.ord_jjlx is null or new.ord_jjlx = '_none_'  then old.ord_jjlx else new.ord_jjlx end,ord_jjmd=case when new.ord_jjmd is null or new.ord_jjmd = '_none_'  then old.ord_jjmd else new.ord_jjmd end,ord_jjrq=case when new.ord_jjrq is null or new.ord_jjrq <= @nonedate then old.ord_jjrq else new.ord_jjrq end,ord_key=case when new.ord_key is null or new.ord_key = '_none_'  then old.ord_key else new.ord_key end,ord_lxdh=case when new.ord_lxdh is null or new.ord_lxdh = '_none_'  then old.ord_lxdh else new.ord_lxdh end,ord_no=case when new.ord_no is null or new.ord_no = '_none_'  then old.ord_no else new.ord_no end,ord_noi=case when new.ord_noi is null or new.ord_noi = -999999999  then old.ord_noi else new.ord_noi end,ord_rbizid=case when new.ord_rbizid is null or new.ord_rbizid = -999999999  then old.ord_rbizid else new.ord_rbizid end,ord_rord2id=case when new.ord_rord2id is null or new.ord_rord2id = -999999999  then old.ord_rord2id else new.ord_rord2id end,ord_rord2tag=case when new.ord_rord2tag is null or new.ord_rord2tag = -999999999  then old.ord_rord2tag else new.ord_rord2tag end,ord_rordid=case when new.ord_rordid is null or new.ord_rordid = -999999999  then old.ord_rordid else new.ord_rordid end,ord_rtype=case when new.ord_rtype is null or new.ord_rtype = '_none_'  then old.ord_rtype else new.ord_rtype end,ord_security=case when new.ord_security is null or new.ord_security = -999999999  then old.ord_security else new.ord_security end,ord_sfzh=case when new.ord_sfzh is null or new.ord_sfzh = '_none_'  then old.ord_sfzh else new.ord_sfzh end,ord_sn=case when new.ord_sn is null or new.ord_sn = '_none_'  then old.ord_sn else new.ord_sn end,ord_sobjid=case when new.ord_sobjid is null or new.ord_sobjid = -999999999  then old.ord_sobjid else new.ord_sobjid end,ord_ssfgs=case when new.ord_ssfgs is null or new.ord_ssfgs = '_none_'  then old.ord_ssfgs else new.ord_ssfgs end,ord_status=case when new.ord_status is null or new.ord_status = '_none_'  then old.ord_status else new.ord_status end,ord_style=case when new.ord_style is null or new.ord_style = -999999999  then old.ord_style else new.ord_style end,ord_sxfj=case when new.ord_sxfj is null or new.ord_sxfj = '_none_'  then old.ord_sxfj else new.ord_sxfj end,ord_template=case when new.ord_template is null or new.ord_template = '_none_'  then old.ord_template else new.ord_template end,ord_templateid=case when new.ord_templateid is null or new.ord_templateid = -999999999  then old.ord_templateid else new.ord_templateid end,ord_title=case when new.ord_title is null or new.ord_title = '_none_'  then old.ord_title else new.ord_title end,ord_type=case when new.ord_type is null or new.ord_type = '_none_'  then old.ord_type else new.ord_type end,ord_wgqk=case when new.ord_wgqk is null or new.ord_wgqk = '_none_'  then old.ord_wgqk else new.ord_wgqk end,ord_ys=case when new.ord_ys is null or new.ord_ys = '_none_'  then old.ord_ys else new.ord_ys end,ord_zdpp=case when new.ord_zdpp is null or new.ord_zdpp = '_none_'  then old.ord_zdpp else new.ord_zdpp end,ord_zdxh=case when new.ord_zdxh is null or new.ord_zdxh = '_none_'  then old.ord_zdxh else new.ord_zdxh end,ord_dqmdgcsid=case when new.ord_dqmdgcsid is null or new.ord_dqmdgcsid = -999999999  then old.ord_dqmdgcsid else new.ord_dqmdgcsid end,ord_authority_factor=case when new.ord_authority_factor is null or new.ord_authority_factor = -999999999  then old.ord_authority_factor else new.ord_authority_factor end

from order_271 old with(rowlock), #master new  where old.ord_id=new.ord_id 

if (@authority_new<>@authority_old) 
begin
if (not exists (select 1 from order_271_authority_factor with(nolock) where ordaf_value=@authority_new)) 
begin
insert into order_271_authority_factor(ordaf_done,ordaf_ordid,ordaf_value) values(0,@ordid,@authority_new)
end 
end

 
--- 清除临时表 
exec drop_temp_table '#master' 

set nocount off 
end