354798ggg
2023-08-29 fd0c7c174d7b7313aa49061df05350405a3c1bf1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package com.home.xining.service;
 
import com.home.xining.config.CmnConst;
import com.home.xining.service.idel.IAdvanceNoticeService;
import com.home.xining.service.idel.IOfficeExpensesService;
import com.product.common.lang.StringUtils;
import com.product.core.dao.BaseDao;
import com.product.core.entity.DataTableEntity;
import com.product.core.entity.FieldSetEntity;
import com.product.core.exception.BaseException;
import com.product.core.permission.PermissionService;
import com.product.core.service.support.AbstractBaseService;
import com.product.core.service.support.QueryFilterService;
import com.product.core.transfer.Transactional;
import com.product.util.BaseUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
 
import java.text.DecimalFormat;
import java.text.Format;
import java.text.ParseException;
 
/**
 * @ClassName: AdvanceNoticeService
 * @Author:
 * @Date: 2022/1/11 17:16
 * @Description: 行政处罚事先告知书Service
 */
@Service
public class AdvanceNoticeService extends AbstractBaseService implements IAdvanceNoticeService {
 
    @Autowired
    public BaseDao baseDao;
    @Autowired
    PermissionService permissionService;
    @Autowired
    QueryFilterService queryFilterService;
 
    @Override
    public DataTableEntity listAdvanceNoticeg(FieldSetEntity fs) throws BaseException {
        String filter = fs.getString("filter");
        String dataFilter = permissionService.getDataFilter(fs.getTableName(), CmnConst.NO18);
 
        if (!StringUtils.isEmpty(dataFilter)) {
            if (!StringUtils.isEmpty(filter)) {
                filter += " and " + dataFilter;
            } else {
                filter = dataFilter;
            }
        }
        if (!BaseUtil.dataTableIsEmpty(fs.getSubDataTable("systemSeniorQueryString"))) {
            filter = filter + " and " + queryFilterService.getQueryFilter(fs);
        }
//        fs.getInteger(CmnConst.PAGESIZE),fs.getInteger(CmnConst.CPAGE)
        DataTableEntity dt = baseDao.listTable(CmnConst.APP_NOTICE_PUNISHMENT, filter, null, null, " no00 desc", fs.getInteger(CmnConst.PAGESIZE), fs.getInteger(CmnConst.CPAGE));
        baseDao.loadPromptData(dt);
        return dt;
    }
 
    @Override
    public FieldSetEntity getAdvanceNotice(FieldSetEntity fs) {
        return baseDao.getFieldSet(CmnConst.APP_NOTICE_PUNISHMENT, fs.getUUID(), false);
    }
 
    @Override
    @Transactional
    public String saveAdvanceNotice(FieldSetEntity fs) throws BaseException {
        String fsUUID = fs.getUUID();
        if (BaseUtil.strIsNull(fsUUID)) {
            fsUUID = baseDao.add(fs);
        } else {
            baseDao.update(fs);
        }
        return fsUUID;
    }
 
    @Override
    @Transactional
    public String deleteAdvanceNotice(FieldSetEntity fs) throws BaseException {
        String uuids = fs.getString(CmnConst.UUID);
        String[] uuid = uuids.split(",");
        baseDao.delete(CmnConst.APP_NOTICE_PUNISHMENT, uuid);
        return uuids;
    }
 
    @Override
    @Transactional
    public void addTypeSize(FieldSetEntity fs) throws BaseException {
        String tableName = fs.getTableName();
        String yearNo = fs.getString("no01");
 
        //查询同字数据中最大的号
        FieldSetEntity fseMax = baseDao.getFieldSetEntityBySQL("SELECT CONVERT(IFNULL(MAX(no02),0)+1,UNSIGNED INT ) 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", finalNo);
        }
    }
}