|
|
|
@ -0,0 +1,47 @@ |
|
|
|
package com.xujie.sys.modules.ruler; |
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.xujie.sys.common.utils.SpringContextUtils; |
|
|
|
import com.xujie.sys.modules.sys.dao.SysCodeCountMapper; |
|
|
|
import com.xujie.sys.modules.sys.entity.SysCodeCount; |
|
|
|
import com.xujie.sys.modules.sys.service.impl.SysCodeCountServiceImpl; |
|
|
|
import org.springframework.util.CollectionUtils; |
|
|
|
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
public class CodeRule implements IFillRuleHandler{ |
|
|
|
@Override |
|
|
|
public Object execute(JSONObject params, JSONObject formData) { |
|
|
|
String codeno=formData.get("codeno").toString(); |
|
|
|
SysCodeCountServiceImpl sysCodeCountImpl = (SysCodeCountServiceImpl)SpringContextUtils.getBean("SysCodeCountServiceImpl"); |
|
|
|
SimpleDateFormat format = new SimpleDateFormat("yyMMdd") ; |
|
|
|
String updateDate=format.format(new Date()) ; |
|
|
|
QueryWrapper<SysCodeCount> queryWrapper=new QueryWrapper<>() ; |
|
|
|
queryWrapper.eq("code_no",codeno); |
|
|
|
List<SysCodeCount> firs= sysCodeCountImpl.list(queryWrapper); |
|
|
|
|
|
|
|
SysCodeCount fir = null; |
|
|
|
int cnum=0; |
|
|
|
if(CollectionUtils.isEmpty(firs)){ |
|
|
|
cnum++; |
|
|
|
fir=new SysCodeCount(); |
|
|
|
fir.setCnum(cnum); |
|
|
|
fir.setCodeNo(codeno); |
|
|
|
fir.setUpdateDate(new Date()); |
|
|
|
fir.setCreateDate(new Date()); |
|
|
|
sysCodeCountImpl.save(fir); |
|
|
|
}else{ |
|
|
|
fir = firs.get(0); |
|
|
|
cnum= fir.getCnum(); |
|
|
|
cnum++; |
|
|
|
fir.setCnum(cnum); |
|
|
|
fir.setUpdateDate(new Date()); |
|
|
|
sysCodeCountImpl.updateById(fir); |
|
|
|
} |
|
|
|
String value = codeno + updateDate + String.format("%04d", cnum) ; |
|
|
|
return value; |
|
|
|
} |
|
|
|
} |