using E_ZKEcc.Domian; using E_ZKEcc.Service; using E_ZKEccSDK.Request; using Kingdee.BOS.App.Data; using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Orm.DataEntity; using System; using System.Collections.Generic; using System.Linq; namespace Demi.DB_StaffData { public class OperationEventPlugInEx : AbstractOperationServicePlugIn { public override void OnPreparePropertys(PreparePropertysEventArgs e) { base.OnPreparePropertys(e); e.FieldKeys.Add("FSTATUS"); } /// /// 操作结束-事务内 /// /// public override void EndOperationTransaction(EndOperationTransactionArgs e) { base.EndOperationTransaction(e); // 保存8提交9审核1反审核26删除3 if (this.FormOperation.OperationId == 1) { if (e.DataEntitys.Any()) { DoUpdateEmployeeFunc(e.DataEntitys); } } } /// /// 审核后进行人员更新 /// /// private void DoUpdateEmployeeFunc(DynamicObject[] DataEntitys) { var apiInfo = GetE_ZKEccSDKAPIInfo(); var service = new EmployeeService(apiInfo); var list = new List(); foreach (var entity in DataEntitys) { var domain = new EmployeeUpdateRequest(); list.Add(domain); domain.pin = entity["FNumber"].ToString(); domain.name = entity["FName"].ToString(); //domain.deptnumber = item["FDeptName"].ToSafeTurnString(); //暂时固定部门 domain.deptnumber = "11001100"; domain.identitycard = entity["IdentityCard"].ToString(); } var result = service.UpdateEmployee(list); if (result.ret != 0) { throw new Exception(result.msg); } } /// /// 获取E_ZKEcc考勤机api连接信息 /// /// private ApiInfoDomian GetE_ZKEccSDKAPIInfo() { var vSql = "/*dialect*/ SELECT * FROM V_E_ZKEccSDK_API_INFO "; var dataTable = DBUtils.ExecuteDynamicObject(this.Context, vSql); var dataRow = dataTable[0]; var apiInfo = new ApiInfoDomian { appKey = dataRow["appKey"].ToString(), apiVersion = dataRow["apiVersion"].ToString(), serverUrl = dataRow["serverUrl"].ToString() }; return apiInfo; } } }