许鹏程
2023-06-08 308359fcfb427f08c745880bf63353eb00dd8219
home-server-admin/src/main/java/com/home/xining/service/AdvanceNoticeService.java
@@ -17,6 +17,8 @@
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import java.text.DecimalFormat;
import java.text.Format;
import java.text.ParseException;
/**
@@ -86,13 +88,19 @@
    @Transactional
    public void addTypeSize(FieldSetEntity fs) throws BaseException {
        String tableName = fs.getTableName();
        String year = fs.getString("no01");
        DataTableEntity dataTableEntity = baseDao.listTable("SELECT IFNULL(MAX(no02),0) no02 FROM "+tableName+" where no01=?", new String[]{year});
        String no02 = String.valueOf(Integer.parseInt(dataTableEntity.getFieldSetEntity(0).getString("no02")) + 1);
        while (no02.length() < 3){
            no02 = "0" + no02;
        String yearNo = fs.getString("no01");
        //查询同字数据中最大的号
        FieldSetEntity fseMax =baseDao.getFieldSetEntityBySQL("SELECT IFNULL(MAX(no02),0)+1 no02 FROM "+tableName+" WHERE no01=?", new Object[] {yearNo}, false);
        if (fseMax!=null) {
           Integer maxNo = fseMax.getInteger("no02");
            //格式化号
            Format format = new DecimalFormat("000");
            String finalNo= format.format(maxNo);
            //修改数据
            baseDao.executeUpdate("UPDATE "+ tableName +" SET no02 =? WHERE uuid=?", new Object[] {finalNo, fs.getUUID()});
        }
        fs.setValue("no02",no02);
        baseDao.update(fs);
    }
}