liusheng
2023-12-19 369d38887176f7737ebdf51d10c76dd2fbe8b5b7
代码提交
已修改3个文件
35 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseOnlyValController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IBaseOnlyvalueService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOnlyvalueServiceImpl.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseOnlyValController.java
@@ -39,10 +39,10 @@
     */
    @ApiOperation("获取唯一编号")
    @GetMapping("/getOnlyCode")
    public AjaxResult getOnlyCode(@RequestParam("businessType") String businessType) {
    public AjaxResult getOnlyCode(@RequestParam("businessType") String businessType, @RequestParam("datequery") Boolean datequery) {
        log.info("查询唯一编号类型 :{}:" , businessType);
        startPage();
        BaseOnlyvalue baseOnlyvalue = baseOnlyvalueService.getOnlyCode(businessType);
        BaseOnlyvalue baseOnlyvalue = baseOnlyvalueService.getOnlyCode(businessType, datequery);
        return AjaxResult.success(baseOnlyvalue);
    }
ruoyi-project/src/main/java/com/ruoyi/project/service/IBaseOnlyvalueService.java
@@ -27,5 +27,5 @@
     * @param businessType
     * @return
     */
    public BaseOnlyvalue getOnlyCode(String businessType);
    public BaseOnlyvalue getOnlyCode(String businessType, Boolean datequery);
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOnlyvalueServiceImpl.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.project.domain.BaseOnlyvalue;
import com.ruoyi.project.mapper.BaseOnlyvalueMapper;
@@ -49,7 +50,7 @@
    @Override
    public BaseOnlyvalue getOnlyCode(String businessType) {
    public BaseOnlyvalue getOnlyCode(String businessType, Boolean datequery) {
        LocalDate currentDate = LocalDate.now();
        int year = currentDate.getYear();
        int month = currentDate.getMonthValue();
@@ -57,7 +58,9 @@
        //通过年月日期去查询该月份是否存在
        String data = String.valueOf(year) + String.valueOf(month);
        BaseOnlyvalue baseOnlyvalue = new BaseOnlyvalue();
        if (datequery) {
        baseOnlyvalue.setAppentvalue(data);
        }
        baseOnlyvalue.setBusinesstype(businessType);
        List<BaseOnlyvalue> baseOnlyvalues = queryList(baseOnlyvalue);
@@ -68,16 +71,32 @@
            baseOnlyvalue.setBusinesstype(businessType);
            save(baseOnlyvalue);
//            return "OPO-" + data + "1";
            return  baseOnlyvalue;
        } else {
            //则将currentValue+1,重新赋值
            BaseOnlyvalue baseOnlyvalue1 = baseOnlyvalues.get(0);
            for (BaseOnlyvalue baseOnlyvalue1 : baseOnlyvalues) {
                if (datequery) {
                    //说明是需要将带日期的加1
                    if (!StringUtils.isEmpty(baseOnlyvalue1.getAppentvalue())) {
            long newCurrentvalue = baseOnlyvalue1.getCurrentvalue() + 1;
            baseOnlyvalue1.setCurrentvalue(newCurrentvalue);
            updateById(baseOnlyvalue1);
                    } else {
                        continue;
                    }
                } else {
                    //说明是需要将不带日期的加1
                    if (StringUtils.isEmpty(baseOnlyvalue1.getAppentvalue())) {
                        long newCurrentvalue = baseOnlyvalue1.getCurrentvalue() + 1;
                        baseOnlyvalue1.setCurrentvalue(newCurrentvalue);
                        updateById(baseOnlyvalue1);
                    } else {
                        continue;
                    }
                }
                baseOnlyvalue = baseOnlyvalue1;
            }
            return baseOnlyvalue1;
            return baseOnlyvalue;
        }
    }