123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- package bamp.basedata.util;
- import kd.bos.dataentity.entity.DynamicObject;
- import kd.bos.orm.query.QCP;
- import kd.bos.orm.query.QFilter;
- import kd.bos.servicehelper.BusinessDataServiceHelper;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Map;
- /**
- * @author : libo_kd
- * @description :
- * @date : 2025.01.21 9:39:57
- */
- public class WebApiUtils {
- /* 校验并设置F7字段
- * @key 入参校验字段
- * @fieldName 写入客户对象的字段名
- * @entityNumber 字段对应基础资料实体名
- * @param 接口入参对象
- * @resultData 返回报文对象
- * @customerObj 客户对象
- */
- public static void setDynamicField(Boolean isMust, String key, String fieldName, String entityNumber, Map param, Map resultData, DynamicObject customerObj) {
- if(param.get(key)==null || "".equals(param.get(key))){
- if(isMust){
- resultData.put("errors","参数【" + key + "】必填");
- }
- }else{
- QFilter qFilter_number = new QFilter("number", QCP.equals,param.get(key));
- QFilter qFilter_enable = new QFilter("enable", QCP.equals,"1");
- QFilter qFilter_status = new QFilter("status", QCP.equals, "C");
- DynamicObject objCol = BusinessDataServiceHelper.loadSingleFromCache(entityNumber,"id,number,name",
- new QFilter[]{qFilter_number,qFilter_enable,qFilter_status});
- if(objCol!=null){
- customerObj.set(fieldName,objCol);
- }else{
- String errors = resultData.get("errors")!=null?resultData.get("errors").toString()+";":"";
- resultData.put("errors",errors+"参数【" + key + "】值匹配不成功,可能的原因是:1、编码不正确;2、不符合基础资料字段查询条件");
- }
- }
- }
- /* 校验并设置文本字段
- * @key 入参校验字段
- * @fieldName 写入客户对象的字段名
- * @param 接口入参对象
- * @resultData 返回报文对象
- * @customerObj 客户对象
- */
- public static void setTextField(Boolean isMust, String key, String fieldName, Map param, Map resultData, DynamicObject customerObj) {
- if(param.get(key)==null || "".equals(param.get(key))){
- if(isMust){
- String errors = resultData.get("errors")!=null?resultData.get("errors").toString()+";":"";
- resultData.put("errors",errors+"参数【" + key + "】必填");
- }
- }else{
- customerObj.set(fieldName,param.get(key));
- }
- }
- /* 校验并设置布尔字段
- * @key 入参校验字段
- * @fieldName 写入客户对象的字段名
- * @param 接口入参对象
- * @defaultValue 默认值
- * @resultData 返回报文对象
- * @customerObj 客户对象
- */
- public static void setBooleanField(Boolean isMust, String key, String fieldName,Boolean defaultValue,Map param, Map resultData, DynamicObject customerObj) throws ParseException {
- if(param.get(key)==null || "".equals(param.get(key))){
- if(isMust){
- String errors = resultData.get("errors")!=null?resultData.get("errors").toString()+";":"";
- resultData.put("errors",errors+"参数【" + key + "】必填");
- }else {
- customerObj.set(fieldName, defaultValue);
- }
- }else{
- customerObj.set(fieldName, param.get(key));
- }
- }
- /* 校验并设置日期字段
- * @key 入参校验字段
- * @fieldName 写入客户对象的字段名
- * @param 接口入参对象
- * @resultData 返回报文对象
- * @customerObj 客户对象
- */
- public static void setDateField(Boolean isMust, String key, String fieldName, Map param, Map resultData, DynamicObject customerObj) throws ParseException {
- if(param.get(key)==null || "".equals(param.get(key))){
- if(isMust){
- String errors = resultData.get("errors")!=null?resultData.get("errors").toString()+";":"";
- resultData.put("errors",errors+"参数【" + key + "】必填");
- }
- }else{
- customerObj.set(fieldName,new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(param.get(key).toString()));
- }
- }
- }
|