1、参数名的字典顺序。 密钥拼接方式为传输参数直接连接密钥,如只有param1和param2两参数,值分别为val1和val2,密钥为key,拼接结果为:param2=val2key。 使用“信息平台”分配的密钥进行MD5加密(密钥直接跟在组装好的参数后即可),将值赋给sign参数。 敏感信息班组编号、身份证图片路径、身份证号、银行卡号、社保号需要加密传输,使用DES加密,加密key等于接入密钥,加密后的字节码转为16进制编码的字符串,并在密文字符串的前面加“des:”前缀。算法:密文=”des:” + HEX(DES(idcard, key),如:身份证号:1,接入密钥:8c2da4c76982
2、8fcfa77aedb690999cf9,密文:des:80cfe03525bb2b8d43d62ff369e95334cd1facfe4bbb800c2.3注意事项 接口中各项参数当标识是M时参数必选,为O时可选。 接口字段长度分为三种:无限制(NL),固定长度(FL),可变长度(VL)。如果为FL,则长度必须精确到FL后跟随的数字,格式举例FL14;如果为VL,则长度在可变范围内即可,如果长度不够,不补空格或其它字符,格式举例VL30。 接口说明中,若参数字体为红色,请仔细阅读备注说明。 请求返回结果码不为0时,需要再次提交请求。如果结果码大于0,则需要根据提示信息修改错误后再次提交;如果
3、结果码小于0,可以间隔一段时间再提交(如:选择间隔5分钟、10分钟、30分钟、1小时提交一次,连续5次提交不成功时推迟到第二天再提交)。三、接口说明 所有接口响应的返回信息均以JSON字符串形式返回,可以使用JSON工具包对其进行解析。 返回信息具体字段参照接口说明中的响应参数,以下以举例:处理成功:resultCode:0,resultDesc处理成功处理失败:1,签名错误 返回结果码对照见附录4.2结果码对照表。3.1新增班组接口说明接口描述施工企业添加班组时调用请求地址/smz/team/save测试请求地址请求参数参数限制长度注释备注accessNoMFL32接入编号“信息平台”为施工
4、企业分配的接入编号teamCodeVL320班组编码工程内部的班组唯一编码,如果班组编码已存在则修改班组。格式:班组长身份证号 + 班组类型代码,使用DES加密nameVL40班组名称班组命名格式:班组长姓名 + 班组类型 + “班组”workTypeVL32班组类型参考附录4.3leaderAppointmentOVL400班组长证明书外网能访问的URL路径,“信息平台”会自动抓取leaderIdcardVL150工人身份证号检查工人是否存在的依据,使用DES加密leaderNameVL30工人姓名leaderSexFL1性别M:男 F:女leaderNation民族leaderBirthd
5、ayFL8生日yyyyMMddleaderAddress住址身份证上的住址leaderSignOrgan签发机关身份证的签发机关leaderExpiryStart有效期开始日期身份证有效期开始日期leaderExpiryEnd有效期结束日期身份证有效期结束日期,为空表示长期leaderHeadImg身份证头像URLleaderIdcardFrontVL1500身份证正面照外网能访问的URL路径,“信息平台”会自动抓取,使用DES加密leaderIdcardBack身份证反面照leaderCurrentAddress常住地址近期的常住地址leaderPolitical政治面貌0:党员 1:团员
6、2:群众leaderEducation文化程度本科以上、本科、大专、中专、高中、初中及以下leaderPhoneVL11手机号leaderEmployType用工形式固定工人 1:外聘leaderTechLevel技能水平无(普通);1:初级工;2:中级工;3:高级工;4:技师;5:高级技师leaderContractCodeVL50合同编号施工企业内部的合同编号。leaderContractFile合同附件外网能访问的URL路径,“信息平台”会自动抓取。leaderCardNum工资卡账号使用DES加密leaderCardBankVL10工资卡开户行代码参考附录4.4leaderWorkTy
7、pe工种代码leaderSecurityCodeVL300社保号leaderSafetyEdu是否参加安全教育true: 是;false:否leaderSafetyEduImg安全教育图片leaderBuilderType工人类型建筑工匠;建筑产业技术工人;其他leaderDoDate进场日期timestampFL17时间戳北京时间精确到毫秒(yyyyMMddHHmmssSSS)sign签名响应参数说明resultCode返回结果码,数字类型。0表示成功;其它表示失败。resultDesc返回结果描述3.2修改班组施工企业修改班组时调用/smz/team/update3.3添加班组工人为已登记
8、的班组添加工人。/smz/teamBuilder/save工程内部的班组唯一编码,如果班组编码已存在则修改班组,使用DES加密idcard检查工人是否存在的依据,如果工人已存在则修改,使用DES加密sexnationbirthdayaddresssignOrganexpiryStartexpiryEndheadImgidcardFrontidcardBackcurrentAddresspoliticaleducationVL20phoneemployType用工类型自有工人;外聘工人contractCodecontractFilecardNumcardBanktechLevelsecurity
9、CodesafetyEdusafetyEduImgbuilderTypedoDate3.4修改班组工人修改已登记的班组工人。/smz/teamBuilder/update签名 3.5班组工人进退场班组工人进场或退场。/smz/enterExit/save“信息平台”为施工企业项目分配的接入编号type类型进场;退场进退场日期四、附录4.1 测试环境测试环境接入编号:测试环境接入密钥:4.2 结果码对照表返回码返回码文本介绍请求成功当且仅当返回码为0时,请求成功1签名验证失败签名错误2参数错误参数长度或数据类型错误3接入编号错误接入编号不存在201班组不存在添加修改班组工人时返回202工人不存在
10、添加修改工人证书、添加修改班组工人时返回-1系统内部异常:.,请稍候再试系统内部异常,返回异常描述4.3 工种代码表4.4 银行代码表4.5调用示例1、将参数排序 (以Java TreeMap实现参数名按ASCII字典顺序排序)TreeMap params = new TreeMap();params.put(“param1”, urlencode(“value1”, “UTF-8”);params.put(“param2”, urlencode(“value2”, “UTF-8”);2、将参数拼接成字符串 (空值不参与签名)String str = ;for(param : params) if(param.value != null & 0) str += + param.key + = + param.value; str = str.substring(1, str.length();3、生成签名String sign = md5(str + key);params.put(sign, sign);4、提交数据http.post(params);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1