📄 frmphsmodifyinfo.pas
字号:
ls_value:=trim( phssiminfo1.LwlPhsSim.fieldbyname('prodsec_no').AsString);
ls_value_o:=trim(phssiminfo1.LwlPhsSimold.fieldbyname('prodsec_no').AsString);
if ls_value <> ls_value_o then
begin
//ls_flagps:='0';
if FrmYyslzx.Getywm()<> '' then
begin
ls_flagps:='1';
end;
appendvalue(Lwlphsmodify,'J2','3','prodsec_no','外地号码','varchar2','M','1',ls_value,ls_value_o);
ls_flag:='1';
end;
end;
if phssiminfo1.Dblccardtype.Enabled then
begin
ls_value:=trim( phssiminfo1.LwlPhsSim.fieldbyname('card_type').AsString);
ls_value_o:=trim(phssiminfo1.LwlPhsSimold.fieldbyname('card_type').AsString);
if ls_value <> ls_value_o then
begin
//ls_flagps:='0';
if FrmYyslzx.Getywm()<> '' then
begin
ls_flagps:='1';
end;
ls_flag:='1';
appendvalue(Lwlphsmodify,'J2','6','card_type','SIM类','char','M','1',ls_value,ls_value_o);
end;
end;
//add eng
if ls_flag='1' then
begin
ls_value:=trim(phoneinfo.LwlPhoneInfo.fieldbyname('phone_id').AsString);
ls_value_o:=trim(phoneinfo.LwlPhoneInfo.fieldbyname('phone_id').AsString);
appendvalue(Lwlphsmodify,'A1','2','phone_id','电话编号','number','M','1',ls_value,ls_value_o);
end;
if ls_flagps='0' then
begin
//add by zgw 20050512
ls_value:=trim(phssiminfo1.LwlPhsSim.fieldbyname('card_psnm').AsString);
ls_value_o:=trim(phssiminfo1.LwlPhsSimold.fieldbyname('card_psnm').AsString);
if ls_value <> ls_value_o then
begin
//showmessage('设备号card_psnm'+ls_value+'card_psnmls_value_o'+ls_value_o);
appendvalue(Lwlphsmodify,'A1','16','fac_code','设备号','varchar2','M','1',ls_value,ls_value_o);
end;
end;
ProgFunc.gCustId:=Frmyhxx.LwlUserInfo.fieldbyname('cust_id').AsString;
//产品服务变动信息
if progfunc.BtnFunc.Enabled then
begin
ProgFunc.FuncCompareData(Lwlphsmodify,'13');
end;
//mod bay zgw 20050517解决该问题:增加完新设备后不修改PS码也能通过
//终端设备变动信息
if progfunc.BtnDevice.Enabled then
begin
ProgFunc.FuncCompareData(Lwlphsmodify,'2');
//mod bay zgw 20050517解决该问题:增加完新设备后不修改PS码也能通过
ls_value:=trim(ProgFunc.LwlDevice.fieldbyname('device_code').AsString);
ls_value_o:=trim(ProgFunc.LwlDeviceOld.fieldbyname('device_code').AsString);
if ls_value <> ls_value_o then
begin
ls_value:=trim(Framephsinfo.Lwlphs.FieldByName('ps_code').AsString) ;
ls_value_o:=trim(Framephsinfo.Lwlphsold.FieldByName('ps_code').AsString) ;
if ls_value = ls_value_o then
begin
messagedlg('请输入新的PS编码!',mtinformation,[mbok],1);
exit;
end;
end;
end;
//PS信息变动情况
framephsinfo.ModifiedData(Lwlphsmodify);
//移机修改投递地址
ProdInfo.ComPostAddr(Lwlphsmodify);
//把当前的一受理单传递给服务
ls_SrvType:='0';
if FrmYyslzx.Getywlx() = '0' then
begin
if Frmyyslzx.Getscls() = -1 then
begin
ls_NewScls := '';
end
else
begin
ls_NewScls := InttoStr(Frmyyslzx.Getscls());
ls_ywm:=Frmyyslzx.Getywm();
end;
if FrmYyslzx.Getscbh = -1 then
begin
li_sl := FrmYyslzx.Getnextscbh();
if li_sl <> -1 then
begin
while li_sl <> -1 do
begin
AppendValue(Lwlphsmodify,'//',InttoStr(li_sl),InttoStr(FrmYyslzx.Getnextscls()),FrmYyslzx.Getnextslbh(),FrmYyslzx.Getnextywm(),'','','','');
li_sl := FrmYyslzx.Getnextscbh();
end;
end;
end;
end
else if FrmYyslzx.Getywlx() = '1' then
begin
ls_NewScls := '';
ls_SrvType:='1';
ls_ywm:=Frmyyslzx.GetNewywm();
li_sl := FrmYyslzx.Getnextscbh(); //多张工单
if li_sl <> -1 then
begin
while li_sl <> -1 do
begin
AppendValue(Lwlphsmodify,'//',InttoStr(li_sl),InttoStr(FrmYyslzx.Getnextscls()),FrmYyslzx.Getnextslbh(),FrmYyslzx.Getnextywm(),'','','','');
li_sl := FrmYyslzx.Getnextscbh();
end;
end;
end
else if FrmYyslzx.Getywlx() = '2' then
begin
ls_NewScls := InttoStr(FrmYyslzx.Getscls());
ls_ywm:=Frmyyslzx.Getywm();
ls_SrvType:='1';
end;
ls_NewScbh := ProdInfo.LwlProdInfo.FieldByName('produce_id').AsString;
ls_NewCpbh := ProdInfo.LwlProdInfo.FieldByName('product_id').AsString;
ls_AcceptState := FrmYyslzx.Getsldlx();
//获取原单的生产流水
if FrmYyslzx.GetOldscls() = -1 then
ls_Seq := ''
else
ls_Seq := InttoStr(FrmYyslzx.GetOldscls);
//获取所要释放的产品号码,PSCODE
ls_prodno:=trim(phoneinfo.LwlPhoneInfo.fieldbyname('product_no').AsString);
if (trim(ls_prodno)<>trim(Oldprodno)) and (trim(Oldprodno)<>'') then
begin
ls_prodno:=trim(Oldprodno);
end
else
ls_prodno:='';
//获取要释放的ps编码
ls_oldpscode:=trim(framephsinfo.oldpscode);
ls_newpscode:=trim(framephsinfo.Lwlphs.fieldbyname('ps_code').AsString);
if ls_oldpscode = ls_newpscode then
ls_oldpscode:=''
else
ls_oldpscode:=ls_oldpscode;
//addby zgw 20050426获取要释放的sim编码
ls_OldSim:=trim(phssiminfo1.iOldSim);
ls_newsim:=trim(phssiminfo1.LwlPhsSim.fieldbyname('card_iccid').AsString);
if ls_OldSim = ls_newsim then
ls_OldSim:=''
else
ls_OldSim:=ls_OldSim;
//判定是否要补机或补卡
ls_repair:='N';
if cbxrepair.Enabled and cbxrepair.checked then
begin
ls_repair:='Y'; //补机
end
else if cbxmend.Enabled and CBxMend.Checked then
begin
ls_repair:='X'; //补卡
end;
//提示客户是否要改号通知音
if ls_znwflag='Y' then
begin
try
FrmMoveType:=TFrmMoveType.create(nil);
FrmMoveType.RbInside.Visible:=false;
FrmMoveType.RbSpan.Visible:=false;
FrmMoveType.RbBuilding.Visible:=false;
FrmMoveType.CbYjlh.Visible:=false;
FrmMoveType.CbYjbgh.Visible:=false;
FrmMoveType.CbMoveType.Visible:=false;
ls_srvywm:='';
FrmMoveType.ShowModal;
//ls_srvywm,ls_lang,ls_starttime,ls_timelen,ls_lentype:string;
if FrmMoveType.CbGhtzy.Checked then
begin
ls_srvywm:='0Q/';
ls_lang:=trim(FrmMoveType.LinkInfo.lwllinkinfo.fieldbyname('lang_type').asstring);
if ls_lang='' then
begin
messagedlg('当选择改号通知音时,语言种类不能为空!',mtinformation,[mbok],0);
exit;
end;
ls_starttime:=datetimetostr(FrmMoveType.LinkInfo.DtpStime.Datetime);
if ls_starttime='' then
begin
messagedlg('请先确定改号通知音的开始时间!',mtinformation,[mbok],0);
exit;
end;
ls_timelen:=trim(FrmMoveType.LinkInfo.LwlLinkInfo.fieldbyname('day_len').AsString);
if (ls_timelen='') or (ls_timelen='0') then
begin
messagedlg('请先确定改号通知音的时长!',mtinformation,[mbok],0);
exit;
end;
ls_lentype:=trim(FrmMoveType.LinkInfo.LwlLinkInfo.fieldbyname('time_type').AsString);
if ls_lentype='' then
begin
messagedlg('请先确定改号通知音的时长类型!',mtinformation,[mbok],0);
exit;
end;
end;
finally
if FrmMoveType<>nil then
begin
FrmMoveType.Free;
FrmMoveType:=nil;
end;
end;
end;
//判断是否一号通代扣电话的对月付费改预付费的约束 edited by ljb 2004.02.25
if not CheckUptPayNoPrepay then exit;
//设置服务的参数
SetLinkParmIn(Lwlphsmodify,'param1',ls_NewScbh); //生产编号
SetLinkParmIn(Lwlphsmodify,'param2',ls_NewScls); //生产流水
SetLinkParmIn(Lwlphsmodify,'param3',FrmYyslzx.Getddbh); //订单编号
SetLinkParmIn(Lwlphsmodify,'param4',FrmYyslzx.Getslbh); //受理编号
SetLinkParmIn(Lwlphsmodify,'param5',ls_NewCpbh); //产品编号
SetLinkParmIn(Lwlphsmodify,'param6',ls_SrvType); //业务类型
SetLinkParmIn(Lwlphsmodify,'param7',vg_lan_code); //受理本地网
SetLinkParmIn(Lwlphsmodify,'param8',vg_lan_code); //所属本地网
SetLinkParmIn(Lwlphsmodify,'param9',LwlAcceLog.FieldByName('accept_grade').AsString); //受理等级
SetLinkParmIn(Lwlphsmodify,'param10',vg_accept_mode); //受理方式
SetLinkParmIn(Lwlphsmodify,'param11',vg_order_tache); //收款环节
SetLinkParmIn(Lwlphsmodify,'param12',vg_unit_type); //所属单位类型
SetLinkParmIn(Lwlphsmodify,'param13',vg_unit_code); //所属单位编码
SetLinkParmIn(Lwlphsmodify,'param14',vg_exch_code); //受理局编码
SetLinkParmIn(Lwlphsmodify,'param15',vg_depart_code); //部门编码
SetLinkParmIn(Lwlphsmodify,'param16',vg_depart_type); //部门类型
SetLinkParmIn(Lwlphsmodify,'param17',vg_oper_code); //受理工号
SetLinkParmIn(Lwlphsmodify,'param18',vg_ipaddr); //营业终端IP
SetLinkParmIn(Lwlphsmodify,'param19',vg_term_code); //受理班次
SetLinkParmIn(Lwlphsmodify,'param20',ls_prodno); //要释放的号码
SetLinkParmIn(Lwlphsmodify,'param21',ls_oldpscode); //要释放的PSCODE
SetLinkParmIn(Lwlphsmodify,'param22',ls_ywm); //业务码
SetLinkParmIn(Lwlphsmodify,'param23',ls_AcceptState); //受理单状态
SetLinkParmIn(Lwlphsmodify,'param24',ls_ywm); //子业务码
SetLinkParmIn(Lwlphsmodify,'param25',ProdInfo.LwlProdInfo.FieldByName('prod_class').AsString);//产品类别
SetLinkParmIn(Lwlphsmodify,'param26',ls_Seq); //原单的生产流水
SetLinkParmIn(Lwlphsmodify,'param27',Frmyhxx.LwlUserInfo.FieldByName('cust_type').AsString);//客户等级
SetLinkParmIn(Lwlphsmodify,'param28',prodinfo.LwlProdInfo.FieldByName('exch_code').AsString);//局向
SetLinkParmIn(Lwlphsmodify,'param29',phoneinfo.LwlPhoneInfo.FieldByName('switch_id').AsString);//交换机
SetLinkParmIn(Lwlphsmodify,'param30',prodinfo.LwlProdInfo.FieldByName('prot_code').AsString);//协议编号
SetLinkParmIn(Lwlphsmodify,'param31',ls_repair);//是否补机标识位
SetLinkParmIn(Lwlphsmodify,'param32',ls_srvywm);//改号通知音业务码
SetLinkParmIn(Lwlphsmodify,'param33',ls_lang); //语音种类
SetLinkParmIn(Lwlphsmodify,'param34',ls_starttime); //改号通知音开始时间
SetLinkParmIn(Lwlphsmodify,'param35',ls_timelen); //改号通知音时长
SetLinkParmIn(Lwlphsmodify,'param36',ls_lentype); //改号通知音时长类型
//ls_srvywm,ls_lang,ls_starttime,ls_timelen,ls_lentype:string;
//===========================================================
//经办人信息输入 薛盈 2003-10-4
//=============================================================
SetLinkParmIn(Lwlphsmodify,'param37',FrmYhxx.ApplyInfo1.LwlApplyInfo.FieldByName('apply_name').AsString);
SetLinkParmIn(Lwlphsmodify,'param38',FrmYhxx.ApplyInfo1.LwlApplyInfo.FieldByName('apply_cert').AsString);
SetLinkParmIn(Lwlphsmodify,'param39',FrmYhxx.ApplyInfo1.LwlApplyInfo.FieldByName('apply_certno').AsString);
SetLinkParmIn(Lwlphsmodify,'param40',FrmYhxx.ApplyInfo1.LwlApplyInfo.FieldByName('apply_tel').AsString);
SetLinkParmIn(Lwlphsmodify,'param41',FrmYhxx.ApplyInfo1.LwlApplyInfo.FieldByName('apply_addr').AsString);
//================================================================
//add by zgw 20050425
SetLinkParmIn(Lwlphsmodify,'param42',ls_OldSim); //要释放的simCODE
SetLinkParmOut(Lwlphsmodify,'retparam1'); //返回的订单编号
//*******************************************************************************
//modify kenshine 20040709
SetLinkParmOut(Lwlphsmodify,'retparam2'); //返回的订单编号
/////////////////////
Lwlphsmodify.Apply;
if Lwlphsmodify.RValue <> 0 then
begin
ShowError('调用中间件出错',Lwlphsmodify.Infomation);
exit;
end;
if Lwlphsmodify.RValue = 0 then
begin
MessageDlg('业务受理成功!按确定返回控制中心',mtInformation,[mbOk],0);
//设置给控制中心的返回值
Lwlphsmodify.First;
ls_scbh := Lwlphsmodify.Fields[0].AsString; //生产编号
ls_cplb := FrmYyslzx.GetNewcplb();
for i := 0 to (Lwlphsmodify.RecordCount-1) do
begin
//审核单打印(2003.02.26)
ls_ywm := Lwlphsmodify.Fields[3].AsString; //业务码
ls_scls := Lwlphsmodify.Fields[1].AsString; //生产流水
ls_slbh := Lwlphsmodify.Fields[2].AsString; //受理编号
SetAssistantData(ls_scbh,ls_scls,ls_slbh,ls_ywm,ls_cplb);
//返回数据给客户服务中心
FrmYyslzx.setscbh(StrtoInt(Lwlphsmodify.Fields[0].AsString)); //生产编号
FrmYyslzx.setscls(StrtoInt(Lwlphsmodify.Fields[1].AsString)); //生产流水
FrmYyslzx.setslbh(Lwlphsmodify.Fields[2].AsString); //受理编号
FrmYyslzx.Setywm(Lwlphsmodify.Fields[3].AsString); //业务码
FrmYyslzx.Setywmc(Lwlphsmodify.Fields[4].AsString); //业务名称
FrmYyslzx.setddbh(Lwlphsmodify.Param.ParamByName('retparam1').asString);//订单编号
FrmYyslzx.setkhmc(Frmyhxx.DbeUserNam.Field.Text); //客户名称
FrmYyslzx.setcphm(phoneinfo.LwlphoneInfo.fieldbyname('product_no').AsString); //产品号码
FrmYyslzx.setsldlx(Lwlphsmodify.Fields[5].AsString); //受理单类型
FrmYyslzx.Dispcurrrecord; //调用控制中心的函数,显示工单
Lwlphsmodify.Next;
end;
//审核单打印(2003.02.26)
//zhg 2004.7.10 add
if not ProgFunc.LwlDevice.Active then ProgFunc.LwlDevice.Open;
if not ProgFunc.LwlDeviceold.Active then ProgFunc.LwlDeviceold.Open;
ProgFunc.LwlDeviceold.First;
while not ProgFunc.LwlDeviceold.Eof do
begin
//showmessage(ProgFunc.LwlDeviceold.fieldbyname('device_code').asstring);
/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -