package com.home.xining.service; import com.home.xining.config.CmnConst; import com.home.xining.service.idel.IOfficePurchaseService; 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.QueryFilterService; import com.product.core.spring.context.SpringMVCContextHolder; import com.product.core.transfer.Transactional; import com.product.util.BaseUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Date; /** * @ClassName: OfficePurchaseService * @Author: ZhouJie * @Date: 2022/1/24 09:49 * @Description: 办公室用品采购单 */ @Component public class OfficePurchaseService extends AdvanceNoticeService implements IOfficePurchaseService { @Autowired public BaseDao baseDao; @Autowired PermissionService permissionService; @Autowired QueryFilterService queryFilterService; /** * 保存办公室用品采购单 * @param fs * @return */ @Override @Transactional public String saveOfficePurchase(FieldSetEntity fs) { if(StringUtils.isEmpty(fs.getString(CmnConst.UUID))){ fs.setValue(CmnConst.BG05, new Date()); fs.setValue(CmnConst.BG07, SpringMVCContextHolder.getCurrentUser().getUser_id()); fs.setValue(CmnConst.BG03, 0); return baseDao.add(fs,true); } else { baseDao.update(fs); return fs.getString(CmnConst.UUID); } } /** * 删除办公室用品采购单 * @param fs * @return */ @Override @Transactional public boolean deleteOfficePurchase(FieldSetEntity fs) { String uuid = fs.getUUID(); String[] uuids = uuid.split(","); return baseDao.delete(CmnConst.BGSYPCGB, BaseUtil.buildQuestionMarkFilter(CmnConst.UUID, uuids.length, true), uuids); } /** * 获取办公室用品采购单列表 * @param fs * @return * @throws BaseException */ public DataTableEntity getOfficePurchaseList(FieldSetEntity fs) throws BaseException { String filter=fs.getString("filter"); String dataFilter = permissionService.getDataFilter(fs.getTableName(),CmnConst.BG07); 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); } DataTableEntity dt = baseDao.listTable(CmnConst.BGSYPCGB,filter,null,null," bg00 desc ",fs.getInteger(CmnConst.PAGESIZE),fs.getInteger(CmnConst.CPAGE)); baseDao.loadPromptData(dt); return dt; } /** * 获取办公室用品采购单详情 * @param fs * @return * @throws BaseException */ public FieldSetEntity getOfficePurchaseInfo(FieldSetEntity fs) throws BaseException { return baseDao.listInternationDataTable(baseDao.getFieldSetEntity(CmnConst.BGSYPCGB, fs.getString(CmnConst.UUID), true),null); } }