package com.kingdee.eas.custom.shuiyou.service; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.kingdee.bos.BOSException; import com.kingdee.bos.Context; import com.kingdee.bos.bsf.service.app.IHRMsfService; import com.kingdee.bos.dao.ormapping.ObjectUuidPK; import com.kingdee.bos.util.BOSUuid; import com.kingdee.eas.common.EASBizException; import com.kingdee.shr.compensation.SubmitStatusEnum; import com.kingdee.shr.compensation.app.incomeTax.TaxPersonRecordEntryFactory; import com.kingdee.shr.compensation.app.incomeTax.TaxPersonRecordEntryInfo; import org.apache.log4j.Logger; import java.util.Map; public class PersonnelReportService implements IHRMsfService { private static Logger logger = Logger.getLogger("com.kingdee.eas.custom.shuiyou.service.PersonnelReportService"); @Override public Object process(Context context, Map map) throws EASBizException, BOSException { logger.error("com.kingdee.eas.custom.shuiyou.service.PersonnelReportService.process"); Object o = map.get("result"); if (o == null) { throw new RuntimeException("参数result为空"); } JSONObject jsonObject = JSONObject.parseObject(o.toString()); logger.error("入参:"+jsonObject); JSONObject body = jsonObject.getJSONObject("body"); JSONArray bsjgs = body.getJSONArray("bsjg"); for (int b = 0; b < bsjgs.size(); b++) { JSONObject bsjg = bsjgs.getJSONObject(b); String nsrsbh = bsjg.getString("nsrsbh"); TaxPersonRecordEntryInfo taxPersonRecordEntry = TaxPersonRecordEntryFactory.getLocalInstance(context). getTaxPersonRecordEntryInfo("select * , bill.* where taxNumber = '" + nsrsbh + "'"); String sbzt = bsjg.getString("sbzt");//报送状态 1 待报送 2 代报中 3 代报失败 4 代报成功 taxPersonRecordEntry.setSubmitStatus(StartReflection(sbzt)); bsjg.getString("rzzt");//验证状态0 若是身份证,状态为验证中;其他证件为暂不验证 1 验证通过 2 验证不通过 4 待验证 9 同代码0处理 //bsjg.getString("sfyjd");//是否建档 String sbyy = bsjg.getString("sbyy");//失败原因 taxPersonRecordEntry.setFailReason(sbyy); BOSUuid id = taxPersonRecordEntry.getId(); TaxPersonRecordEntryFactory.getLocalInstance(context).update(new ObjectUuidPK(id),taxPersonRecordEntry); } return null; } public SubmitStatusEnum StartReflection(String start){ switch (start){ case "1": return SubmitStatusEnum.NotSubmit; case "2": return SubmitStatusEnum.Submiting; case "3": return SubmitStatusEnum.SubmitFail; case "4": return SubmitStatusEnum.HaveSubmit; } return null; } }