Sfoglia il codice sorgente

调整时间转换和行政区划转换逻辑

Airhead 6 anni fa
parent
commit
1a3ff5b2d5

+ 6 - 0
src/main/java/com/yihu/quota/contants/MicroServiceApi.java

@ -6,9 +6,15 @@ package com.yihu.quota.contants;
public interface MicroServiceApi {
public interface MicroServiceApi {
    interface Service {
    interface Service {
        String RESOURCE = "svr-resource";
        String RESOURCE = "svr-resource";
        String REDIS = "svr-redis";
    }
    }
    interface Resource {
    interface Resource {
        String DICT_ENTRY = "cache/dict-entry";
        String DICT_ENTRY = "cache/dict-entry";
    }
    }
    interface Redis {
        String ORG_NAME = "/redis/orgName";
        String ORG_AREA = "/redis/orgArea";
    }
}
}

+ 29 - 0
src/main/java/com/yihu/quota/etl/formula/DateFunc.java

@ -0,0 +1,29 @@
package com.yihu.quota.etl.formula;
import java.util.Calendar;
import java.util.Date;
public class DateFunc implements Functioner {
    /**
     * @param args args[0] date
     *             args[1] span 1-YEAR, 2-MONTH, 5-DAY_OF_MONTH
     * @return
     */
    @Override
    public Integer execute(Object... args) {
        if (args.length < 2) {
            return 0;
        }
        Date date = (Date) args[0];
        Integer span = (Integer) args[0];
        if (span != Calendar.YEAR && span != Calendar.MONTH && span != Calendar.DAY_OF_MONTH){
            return 0;
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return calendar.get(Calendar.YEAR);
    }
}

+ 0 - 21
src/main/java/com/yihu/quota/etl/formula/Day.java

@ -1,21 +0,0 @@
package com.yihu.quota.etl.formula;
import java.util.Calendar;
import java.util.Date;
/**
 * @author l4qiang
 */
public class Day implements Functioner {
    @Override
    public Integer execute(Object... args) {
        if (args.length == 0) {
            return 0;
        }
        Date date = (Date) args[0];
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return calendar.get(Calendar.DAY_OF_MONTH);
    }
}

+ 18 - 4
src/main/java/com/yihu/quota/etl/formula/Division.java

@ -1,9 +1,17 @@
package com.yihu.quota.etl.formula;
package com.yihu.quota.etl.formula;
import com.yihu.quota.feign.RsDictClient;
import com.yihu.quota.util.SpringUtil;
/**
/**
 * @author l4qiang
 * @author l4qiang
 */
 */
public class Division implements Functioner {
public class Division implements Functioner {
    /**
     * @param args args[0] orgCode
     *             args[1] level 1-区县,2-市,3-省,4-国家
     * @return
     */
    @Override
    @Override
    public String execute(Object... args) {
    public String execute(Object... args) {
        if (args.length < 2) {
        if (args.length < 2) {
@ -11,11 +19,17 @@ public class Division implements Functioner {
        }
        }
        String orgCode = (String) args[0];
        String orgCode = (String) args[0];
        String level = (String) args[1];
        String divisonCode = "";
        int level = Integer.parseInt((String) args[1]);
        if (level == 0) {
            return "";
        }
        RsDictClient rsDictClient = SpringUtil.getBean(RsDictClient.class);
        String divisionCode = orgCode;
        for (int i = 0; i < level; ++i) {
            divisionCode = rsDictClient.getCacheValue("", divisionCode);
        }
        return divisonCode;
        return divisionCode;
    }
    }
}
}

+ 0 - 21
src/main/java/com/yihu/quota/etl/formula/Month.java

@ -1,21 +0,0 @@
package com.yihu.quota.etl.formula;
import java.util.Calendar;
import java.util.Date;
/**
 * @author l4qiang
 */
public class Month implements Functioner {
    @Override
    public Integer execute(Object... args) {
        if (args.length == 0) {
            return 0;
        }
        Date date = (Date) args[0];
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return calendar.get(Calendar.MONTH);
    }
}

+ 0 - 21
src/main/java/com/yihu/quota/etl/formula/Year.java

@ -1,21 +0,0 @@
package com.yihu.quota.etl.formula;
import java.util.Calendar;
import java.util.Date;
/**
 * @author l4qiang
 */
public class Year implements Functioner {
    @Override
    public Integer execute(Object... args) {
        if (args.length == 0) {
            return 0;
        }
        Date date = (Date) args[0];
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        return calendar.get(Calendar.YEAR);
    }
}

+ 33 - 0
src/main/java/com/yihu/quota/feign/RedisClient.java

@ -0,0 +1,33 @@
package com.yihu.quota.feign;
import com.yihu.ehr.constants.ApiVersion;
import com.yihu.quota.contants.MicroServiceApi;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import springfox.documentation.annotations.ApiIgnore;
/**
 * @author l4qiang
 */
@FeignClient(name = MicroServiceApi.Service.REDIS)
@RequestMapping(value = ApiVersion.Version1_0)
@ApiIgnore
public interface RedisClient {
    @ApiOperation("通过机构编码获取机构名称")
    @RequestMapping(value = MicroServiceApi.Redis.ORG_NAME, method = RequestMethod.GET)
    String getOrgName(
            @ApiParam(value = "key", required = true)
            @RequestParam(value = "key") String key);
    @ApiOperation("通过机构编码获取机构区域")
    @RequestMapping(value = MicroServiceApi.Redis.ORG_AREA, method = RequestMethod.GET)
    String getOrgArea(
            @ApiParam(value = "key", required = true)
            @RequestParam(value = "key") String key);
}