web端一个增删改查例子

1.水电费抄表信息

@Controller
@RequestMapping("/sdjfgl/sdfcbxx")
@FunctionModule(value = "水电费抄表信息", entry = "/sdjfgl/sdfcbxx", parent = "水电缴费管理")
public class SdfcbxxController extends BaseController {
    private final Logger logger = LoggerFactory.getLogger(this.getClass());
    
    /** 水电费抄表信息Service*/
    @Autowired
    private SdfcbxxService sdfcbxxService;
    
    /**
     * 加载水电费抄表页面
     * @return
     */
    @FunctionItem(value = "查询", code = "sdfcb:query")
    @RequiresPermissions(value={"sdfcb:query"})
    @RequestMapping(method = RequestMethod.GET)
    public String index() {

        return "sdjfgl/sdfcbxx/sdfcbxx";
    }
    
    /**
     * 加载水电费抄表列表
     * @param SdfcbxxDto
     * @param page
     * @param size
     * @param sortField
     * @return
     */
    @RequestMapping(value = "/list", method = RequestMethod.POST)
    public ModelAndView query(SdfcbxxDto queryDto,
            @RequestParam(value = "page", defaultValue = "1") int page,
            @RequestParam(value = "rows", defaultValue = Constants.PAGE_SIZE) int size,
            @RequestParam(value = "sortField", defaultValue = "gxsj") String sortField) {

        long startTime = System.currentTimeMillis();
        Map<String,String> sortMap = null;
        //sortMap = toTreeMap("{'"+sortField+"'='"+Direction.DESC.toString().toLowerCase()+"'}");
        List<SdfcbxxDto> sdfcbxxLi = null;
        try {
            sdfcbxxLi = sdfcbxxService.getSdfcbxx(page, size, queryDto, sortMap);
        } catch (Exception e) {
            e.printStackTrace();
        }
        long endTime = System.currentTimeMillis();
        logger.info("[service]运行时间:"+(endTime-startTime)+"ms");

        ModelAndView mv = new ModelAndView("sdjfgl/sdfcbxx/sdfcbxx_list");
        mv.addObject("total", sdfcbxxService.getContent(queryDto,sortMap)); // 总记录数
        mv.addObject("sdfcbxxLi", sdfcbxxLi); // 对象列表
        
        return mv;
    }
    
    /**
     * 编辑/新增
     *
     * @param dto
     * @param result
     * @return
     */
    @ResponseBody
    @FunctionItem(value = "编辑",code = "sdfcb:edit")
    @RequiresPermissions(value={"sdfcb:edit"})
    @RequestMapping(value = "/save", method = RequestMethod.POST)
    public Retval save(@Valid SdfcbxxDto dto, BindingResult result) {
        Retval retval = Retval.newInstance();

        // 表单校验
        if (result.hasErrors()) {
            retval.fail(getErrorMessage(result));
            return retval;
        }

        // 保存
        try {
            sdfcbxxService.save(dto);
        } catch (Exception e) {
            logger.error("", e);
            retval.fail();
        }
        return retval;
    }

    /**
     * 获取单个数据
     *
     * @param id
     * @return
     */
    @ResponseBody
    @RequestMapping(value = "/{id}", method = RequestMethod.GET)
    public Retval find(@PathVariable String id) {
        SdfcbxxEntity entity = sdfcbxxService.findById(Long.valueOf(id));
        Retval retval = Retval.newInstance();
        retval.put("obj", entity);
        return retval;
    }

    /**
     * 删除
     *
     * @param ids
     * @return
     */
    @ResponseBody
    @FunctionItem(value = "删除",code = "cxdw:delete")
    @RequiresPermissions(value={"cxdw:delete"})
    @RequestMapping(value = "/delete", method = RequestMethod.POST)
    public Retval delete(@RequestParam Long[] ids) {
        Retval retval = Retval.newInstance();
        try {
            sdfcbxxService.deleteByIds(ids);
        } catch (DataIntegrityViolationException e) {
            retval.fail(e.getMessage());
        } catch (Exception e) {
            logger.error(e.getMessage(), e);
            retval.fail(e.getMessage());
        }
        return retval;
    }
}



@Service
public class SdfcbxxService extends BaseService{
    
    @PersistenceContext
    private EntityManager entityManager;
    
    /** 水电费抄表信息Dao*/
    @Autowired
    private SdfcbxxDao sdfcbxxDao;
    
    /** 原生sql查询水电费抄表信息 start **/
    /**
     * 查询结果的封装
     *
     * @param page
     * @param size
     * @param dto
     * @param sortMap
     * @return
     * @throws Exception
     */
    public List<SdfcbxxDto> getSdfcbxx(int page, int size, SdfcbxxDto dto, Map<String, String> sortMap) throws Exception {
        
        Query query = getQuerySdfcbxx(dto, sortMap);
        query.setFirstResult((page - 1) * size);
        query.setMaxResults(size);
        query.unwrap(SQLQuery.class).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
        List<Map<String, Object>> list = query.getResultList();
        List<SdfcbxxDto> sdfcbxxLi = new ArrayList<SdfcbxxDto>();
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM");
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        for (Map<String, Object> m : list) {
            SdfcbxxDto sdfcbxxDto = new SdfcbxxDto();
            sdfcbxxDto.setId(Long.valueOf(String.valueOf(m.get("id"))));
            sdfcbxxDto.setCbny(sdf1.format(sdf1.parse(String.valueOf(m.get("cbny")))));
            sdfcbxxDto.setFj(String.valueOf(m.get("ss")));
            sdfcbxxDto.setQy(String.valueOf(m.get("qy")));
            sdfcbxxDto.setLy(String.valueOf(m.get("ly")));
            sdfcbxxDto.setDbengyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("dby")))));
            sdfcbxxDto.setDshangyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("dsy")))));
            sdfcbxxDto.setDshiyong(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("dsy1")))));
            sdfcbxxDto.setDzongzje(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("dzje")))));
            sdfcbxxDto.setLsbenyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("lsby")))));
            sdfcbxxDto.setLsshangyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("lssy")))));
            sdfcbxxDto.setLsshiyong(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("lssy1")))));
            sdfcbxxDto.setLshuizje(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("lszje")))));
            sdfcbxxDto.setRsbenyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("rsby")))));
            sdfcbxxDto.setRsshangyue(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("rssy")))));
            sdfcbxxDto.setRshiyong(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("rssy1")))));
            sdfcbxxDto.setRszje(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("rszje")))));
            sdfcbxxDto.setSzje(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("szje")))));
            sdfcbxxDto.setYjje(BigDecimal.valueOf(Double.valueOf(String.valueOf(m.get("yjje")))));
            sdfcbxxDto.setSfjfzt(Integer.valueOf(String.valueOf(m.get("sfjfzt"))));
            sdfcbxxDto.setDfjfzt(Integer.valueOf(String.valueOf(m.get("dfjfzt"))));
            sdfcbxxDto.setJfsj(sdf2.format(sdf2.parse(String.valueOf(m.get("jfsj")))));
            
            sdfcbxxLi.add(sdfcbxxDto);
        }
        return sdfcbxxLi;
    }

    
    /**
     * 查询语句的拼接
     *
     * @param shzt
     * @param sortMap
     * @return
     * @throws Exception
     */
    private Query getQuerySdfcbxx(SdfcbxxDto dto, Map<String, String> sortMap) {
        Long ssxx = getSchoolId();
        Query query = null;
        String sql = BeanContainer.getBeanContainer().getBean("QuerySdfcbxx").toString();
        StringBuffer sb = new StringBuffer();
        sb.append(sql);
        query = entityManager.createNativeQuery(SqlUtils.getSql(sb.toString(), sortMap));
        query.setParameter("ssxx", ssxx);
        if(StringUtils.isNotBlank(dto.getCbny())){
            query.setParameter("cbny", "%"+dto.getCbny()+"%");
        }else{
            query.setParameter("cbny", null);
        }
        if(StringUtils.isNotBlank(dto.getFj())){
            query.setParameter("fj", "%"+dto.getFj()+"%");
        }else{
            query.setParameter("fj", null);
        }
        if(StringUtils.isNotBlank(dto.getLy())){
            query.setParameter("lyid", dto.getLy());
        }else{
            query.setParameter("lyid", null);
        }
        if(StringUtils.isNotBlank(dto.getQy())){
            query.setParameter("qyid", dto.getQy());
        }else{
            query.setParameter("qyid", null);
        }
        return query;
    }

    /**
     * 查询水电费抄表的总数据
     *
     * @param dto
     * @param wslr
     * @param bxztList
     * @param sortMap
     * @return
     */
    public int getContent(SdfcbxxDto dto, Map<String, String> sortMap) {
        int content = 0;
        try {
            content = getQuerySdfcbxx(dto,sortMap).getResultList().size();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return content;
    }
    
    /**
     * 编辑/新增
     *
     * @param dto
     * @throws Exception
     */
    @Transactional
    public void save(SdfcbxxDto dto) throws Exception {
        SdfcbxxEntity entity = null;
        if(dto.getId() == null){
            entity = new SdfcbxxEntity();
        }else{
            entity = sdfcbxxDao.findOne(dto.getId());
        }
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
        entity.setCbny(sdf.parse(dto.getCbny()));
        
        if(dto.getFj() != null){
            FjEntity fj = new FjEntity();
            fj.setId(Long.valueOf(dto.getFj()));
            entity.setFj(fj);
        }
        entity.setDbengyue(dto.getDbengyue());
        entity.setDshangyue(dto.getDshangyue());
        entity.setDshiyong(dto.getDshiyong());
        entity.setDzongzje(dto.getDzongzje());
        entity.setLsbenyue(dto.getLsbenyue());
        entity.setLsshangyue(dto.getLsshangyue());
        entity.setLsshiyong(dto.getLsshiyong());
        entity.setLshuizje(dto.getLshuizje());
        entity.setRsbenyue(dto.getRsbenyue());
        entity.setRsshangyue(dto.getRsshangyue());
        entity.setRshiyong(dto.getRshiyong());
        entity.setRszje(dto.getRszje());
        entity.setSfjfzt(1);
        entity.setDfjfzt(1);
        entity.setJfsj(sdf.parse(dto.getJfsj()));
        super.save(entity, dto);
    }
    
    /**
     * 获取单个数据
     *
     * @param id
     * @return
     */
    public SdfcbxxEntity findById(Long id){
        SdfcbxxEntity entity = sdfcbxxDao.findOne(id);
        return entity;
    }
    
    /**
     * 批量删除
     *
     * @param ids
     * @throws DataIntegrityViolationException
     * @throws SQLException
     */
    @Transactional
    public void deleteByIds(Long[] ids) throws DataIntegrityViolationException, SQLException {
        sdfcbxxDao.deleteByIds(ids);
    }

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值