$PBExportHeader$uo_ljfieb_cus.sru forward global type uo_ljfieb_cus from nonvisualobject end type end forward global type uo_ljfieb_cus from nonvisualobject end type global uo_ljfieb_cus uo_ljfieb_cus type variables long uo_repid end variables forward prototypes public function integer uof_add_cust_rep (s_cus_rep_ljfieb arg_s_cus_rep, ref string arg_msg, boolean arg_ifcommit) public function integer uof_del_cust_rep (long arg_repid, ref string arg_msg, boolean arg_ifcommit) public function integer uof_reset_pwd (long arg_repid, ref string arg_msg, boolean arg_ifcommit) public function integer uof_del_cust_rep_cm (long arg_repid, string arg_ljemail, ref string arg_msg, boolean arg_ifcommit) public function integer uof_add_cust_rep_cm (s_cus_rep_cm_ljfieb arg_s_mx, ref string arg_msg, boolean arg_ifcommit) end prototypes public function integer uof_add_cust_rep (s_cus_rep_ljfieb arg_s_cus_rep, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 Long cnt,ll_repid string ls_ljemail , ls_commcode IF IsNull(arg_s_cus_rep.loginname) THEN arg_s_cus_rep.loginname = '' IF IsNull(arg_s_cus_rep.repname) THEN arg_s_cus_rep.repname = '' IF IsNull(arg_s_cus_rep.duty) THEN arg_s_cus_rep.duty = '' IF IsNull(arg_s_cus_rep.sex) THEN arg_s_cus_rep.sex = '' IF IsNull(arg_s_cus_rep.officetel) THEN arg_s_cus_rep.officetel = '' IF IsNull(arg_s_cus_rep.handtel) THEN arg_s_cus_rep.handtel = '' IF IsNull(arg_s_cus_rep.faxno) THEN arg_s_cus_rep.faxno = '' IF IsNull(arg_s_cus_rep.email) THEN arg_s_cus_rep.email = '' IF IsNull(arg_s_cus_rep.dscrp) THEN arg_s_cus_rep.dscrp = '' IF IsNull(arg_s_cus_rep.deptname) THEN arg_s_cus_rep.deptname = '' IF IsNull(arg_s_cus_rep.interest) THEN arg_s_cus_rep.interest = '' IF IsNull(arg_s_cus_rep.mainproduct) THEN arg_s_cus_rep.mainproduct = '' IF IsNull(arg_s_cus_rep.qqcode) THEN arg_s_cus_rep.qqcode = '' IF IsNull(arg_s_cus_rep.msncode) THEN arg_s_cus_rep.msncode = '' IF IsNull(arg_s_cus_rep.Address) THEN arg_s_cus_rep.Address = '' IF IsNull(arg_s_cus_rep.Permissions ) THEN arg_s_cus_rep.Permissions = '' IF IsNull(arg_s_cus_rep.reptype ) THEN arg_s_cus_rep.reptype = 1 IF IsNull(arg_s_cus_rep.ljemail ) THEN arg_s_cus_rep.ljemail = '' IF arg_s_cus_rep.repname = '' THEN arg_msg = '请输入用户名称' rslt = 0 GOTO ext END IF IF arg_s_cus_rep.loginname = '' THEN arg_msg = '请输入登陆账号' rslt = 0 GOTO ext END IF IF arg_s_cus_rep.reptype = 1 THEN SELECT commcode INTO :ls_commcode FROM u_spt Where sptid = :arg_s_cus_rep.cusid; IF sqlca.SQLCode <> 0 THEN arg_msg = '查询供应商资料失败,'+sqlca.SQLErrText rslt = 0 GOTO ext END IF // IF cnt = 0 THEN // arg_msg = '供应商资料不存在' // rslt = 0 // GOTO ext // END IF ELSEIF arg_s_cus_rep.reptype = 2 THEN SELECT commcode INTO :ls_commcode FROM u_cust Where cusid = :arg_s_cus_rep.cusid; IF sqlca.SQLCode <> 0 THEN arg_msg = '查询客户资料失败,'+sqlca.SQLErrText rslt = 0 GOTO ext END IF // IF cnt = 0 THEN // arg_msg = '客户资料不存在' // rslt = 0 // GOTO ext // END IF END IF //系统内定 arg_s_cus_rep.ljemail = trim(arg_s_cus_rep.loginname) +'@@'+ trim(ls_commcode) IF arg_s_cus_rep.repid = 0 THEN ll_repid = f_sys_scidentity(0,"ros_cust_rep","repid",arg_msg,True,id_sqlca) IF ll_repid <= 0 THEN rslt = 0 GOTO ext END IF INSERT INTO ros_cust_rep (repid, cusid, loginname, repname, duty, sex, officetel, handtel, faxno, email, dscrp, deptname, interest, mainproduct, qqcode, msncode, opdate, opemp, address, reptype, Permissions, ljemail) VALUES(:ll_repid, :arg_s_cus_rep.cusid, :arg_s_cus_rep.loginname, :arg_s_cus_rep.repname, :arg_s_cus_rep.duty, :arg_s_cus_rep.sex, :arg_s_cus_rep.officetel, :arg_s_cus_rep.handtel, :arg_s_cus_rep.faxno, :arg_s_cus_rep.email, :arg_s_cus_rep.dscrp, :arg_s_cus_rep.deptname, :arg_s_cus_rep.interest, :arg_s_cus_rep.qqcode, :arg_s_cus_rep.mainproduct, :arg_s_cus_rep.msncode, getdate(), :publ_operator, :arg_s_cus_rep.Address, :arg_s_cus_rep.reptype, :arg_s_cus_rep.Permissions, :arg_s_cus_rep.ljemail); IF sqlca.SQLCode <> 0 THEN IF Pos(sqlca.SQLErrText, "IX_ros_cust_rep") > 0 THEN arg_msg = '建立电子商务用户失败,登陆账号已存在,不能重复使用' ELSE arg_msg = '建立电子商务用户失败,'+sqlca.SQLErrText END IF rslt = 0 GOTO ext END IF //设置密码 IF uof_reset_pwd(ll_repid, arg_msg, False) = 0 THEN rslt = 0 GOTO ext END IF uo_repid = ll_repid ELSE UPDATE ros_cust_rep SET loginname = :arg_s_cus_rep.loginname, repname = :arg_s_cus_rep.repname, duty = :arg_s_cus_rep.duty, sex = :arg_s_cus_rep.sex, officetel = :arg_s_cus_rep.officetel, handtel = :arg_s_cus_rep.handtel, faxno = :arg_s_cus_rep.faxno, email = :arg_s_cus_rep.email, dscrp = :arg_s_cus_rep.dscrp, deptname = :arg_s_cus_rep.deptname, interest = :arg_s_cus_rep.interest, mainproduct = :arg_s_cus_rep.mainproduct, qqcode = :arg_s_cus_rep.qqcode, msncode = :arg_s_cus_rep.msncode, moddate = getdate(), modemp = :publ_operator, address = :arg_s_cus_rep.address, Permissions = :arg_s_cus_rep.Permissions, ljemail = :arg_s_cus_rep.ljemail Where repid = :arg_s_cus_rep.repid; IF sqlca.SQLCode <> 0 THEN IF Pos(sqlca.SQLErrText, "IX_ros_cust_rep") > 0 THEN arg_msg = '建立电子商务用户失败,登陆账号已存在,不能重复使用' ELSE arg_msg = '更新电子商务用户失败,'+sqlca.SQLErrText END IF rslt = 0 GOTO ext END IF uo_repid = arg_s_cus_rep.repid END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF rslt = 1 And arg_ifcommit THEN COMMIT; END IF RETURN rslt end function public function integer uof_del_cust_rep (long arg_repid, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 IF arg_repid <= 0 THEN rslt = 0 arg_msg = "错误的电子商务用户唯一码." GOTO ext END IF DELETE FROM ros_cust_rep Where repid = :arg_repid; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = "删除电子商务用户失败, "+sqlca.SQLErrText GOTO ext END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF arg_ifcommit THEN COMMIT; END IF RETURN rslt end function public function integer uof_reset_pwd (long arg_repid, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 String ls_loginname, ls_pwd SELECT loginname INTO :ls_loginname FROM ros_cust_rep Where repid = :arg_repid; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = "查询电子商务用户信息失败,"+sqlca.SQLErrText GOTO ext END IF ls_pwd = f_psw_bczh(Lower(ls_loginname),0,'987654321380084') UPDATE ros_cust_rep SET password = :ls_pwd Where repid = :arg_repid; IF sqlca.SQLCode <> 0 THEN arg_msg = "恢复密码失败,"+sqlca.SQLErrText rslt = 0 GOTO ext END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF arg_ifcommit THEN COMMIT; END IF RETURN rslt end function public function integer uof_del_cust_rep_cm (long arg_repid, string arg_ljemail, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 IF arg_repid <= 0 THEN rslt = 0 arg_msg = "错误的电子商务用户唯一码." GOTO ext END IF IF arg_ljemail = '' THEN rslt = 0 arg_msg = "错误的内部邮件账号." GOTO ext END IF DELETE FROM ros_cust_rep_CM Where repid = :arg_repid and ljemail = :arg_ljemail; IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = "删除电子商务用户联系人失败, "+sqlca.SQLErrText GOTO ext END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF arg_ifcommit THEN COMMIT; END IF RETURN rslt end function public function integer uof_add_cust_rep_cm (s_cus_rep_cm_ljfieb arg_s_mx, ref string arg_msg, boolean arg_ifcommit);Int rslt = 1 Long cnt,ll_repid IF IsNull(arg_s_mx.repid) THEN arg_s_mx.repid = 0 IF IsNull(arg_s_mx.username) THEN arg_s_mx.username = '' IF IsNull(arg_s_mx.ljemail) THEN arg_s_mx.ljemail = '' IF IsNull(arg_s_mx.cmtype) THEN arg_s_mx.cmtype = 0 IF IsNull(arg_s_mx.dscrp) THEN arg_s_mx.dscrp = '' IF arg_s_mx.repid = 0 THEN arg_msg = '请选择电子商务用户' rslt = 0 GOTO ext END IF IF arg_s_mx.username = '' THEN arg_msg = '请输入用户名称' rslt = 0 GOTO ext END IF IF arg_s_mx.ljemail = '' THEN arg_msg = '请输入联系账号' rslt = 0 GOTO ext END IF IF arg_s_mx.cmtype = 0 THEN SELECT count(*) INTO :cnt FROM u_user Where ljemail = :arg_s_mx.ljemail; IF sqlca.SQLCode <> 0 THEN arg_msg = '查询ERP用户资料失败,'+sqlca.SQLErrText rslt = 0 GOTO ext END IF IF cnt = 0 THEN arg_msg = 'ERP用户资料内部邮件账号不存在' rslt = 0 GOTO ext END IF ELSE SELECT count(*) INTO :cnt FROM ros_cust_rep Where ljemail = :arg_s_mx.ljemail; IF sqlca.SQLCode <> 0 THEN arg_msg = '查询电子商务用户资料失败,'+sqlca.SQLErrText rslt = 0 GOTO ext END IF IF cnt = 0 THEN arg_msg = '电子商务用户资料内部邮件账号不存在' rslt = 0 GOTO ext END IF END IF UPDATE ros_cust_rep_CM SET username = :arg_s_mx.username, cmtype = :arg_s_mx.cmtype, dscrp = :arg_s_mx.dscrp WHERE repid = :arg_s_mx.repid And ljemail = :arg_s_mx.ljemail; IF sqlca.SQLCode = 0 THEN IF sqlca.SQLNRows = 0 THEN INSERT INTO ros_cust_rep_CM (repid, ljemail, username, cmtype, dscrp) VALUES(:arg_s_mx.repid, :arg_s_mx.ljemail, :arg_s_mx.username, :arg_s_mx.cmtype, :arg_s_mx.dscrp); IF sqlca.SQLCode <> 0 THEN IF Pos(sqlca.SQLErrText, "PK_ros_cust_rep_CM") > 0 THEN arg_msg = '建立电子商务用户联系人失败,联系账号已存在,不能重复建立' ELSE arg_msg = '建立电子商务用户联系人失败,'+sqlca.SQLErrText END IF rslt = 0 GOTO ext END IF END IF ELSE IF Pos(sqlca.SQLErrText, "PK_ros_cust_rep_CM") > 0 THEN arg_msg = '更新电子商务用户联系人失败,联系账号已存在,不能重复建立' ELSE arg_msg = '更新电子商务用户联系人失败,'+sqlca.SQLErrText END IF rslt = 0 GOTO ext END IF ext: IF rslt = 0 THEN ROLLBACK; ELSEIF rslt = 1 And arg_ifcommit THEN COMMIT; END IF RETURN rslt end function on uo_ljfieb_cus.create call super::create TriggerEvent( this, "constructor" ) end on on uo_ljfieb_cus.destroy TriggerEvent( this, "destructor" ) call super::destroy end on