@@ -65,85 +65,79 @@ public class BudgetController {
return FuHttpResponse . Builder ( ) . dataResponse ( budget ) . build ( ) ;
}
// @ApiOperation("查询预算" )
// @GetMapping("/" )
// public HttpResponse list (
// @ApiParam(value = "每页数量") @RequestParam(name = "size", required = false, defaultValue = "10") Integer size,
// @ApiParam(value = "页码") @RequestParam(name = "current", required = false, defaultValue = "1") Integer current,
// @ApiParam(value = "名称") @RequestParam(value="name", required = false) String name
// ) throws Exception {
// var query = new LambdaQueryWrapper< Budget>() ;
// if (! ObjectUtils. isEmpty(name)) {
// query.like(Budget::getName, name) ;
// }
// var result = budgetService.page(new Page<>(current, size), query) ;
// return FuHttpResponse. Builder(). dataResponse( result).build() ;
// }
//
// @ApiOperation("删除预算" )
// @CommonLog("删除预算" )
// @DeleteMapping("/" )
// public HttpResponse delete (
// @ApiParam(value = "id列表: 1,2,3") @RequestParam(value="ids") String ids
// ) throws Exception {
// var idList = Arrays. asList(ids.split(",")) ;
// var query = new LambdaQueryWrapper< Budget>() ;
// query.in(Budget::getId, idList) ;
// budgetService. remove(query) ;
// return FuHttpResponse. Builder(). dataResponse().build() ;
// }
//
// @ApiOperation("预算详情" )
// @GetMapping("/{id}" )
// public HttpResponse detail (
// @ApiParam(value = "id") @PathVariable("id") Integer id
// ) throws Exception {
// var budget = budgetService. getById(id) ;
// if (budget == null) {
// throw new NcHttpException( HttpErrorResponseEnum. BUDGET_NOT_FOUND) ;
// }
//
// var query = new LambdaQueryWrapper< BudgetItem>() ;
// query.eq( BudgetItem:: getBudgetId, id) ;
// var list = budgetItemService.list(query) ;
//
// var result = new BudgetDetail(budget, list) ;
// return FuHttpResponse.Builder().dataResponse(result).build();
// }
//
// @ApiOperation("预算编辑")
// @CommonLog("预算编辑" )
// @PutMapping("/{id}" )
// public HttpResponse edit (
// @ApiParam("id") @PathVariable String id,
// @ApiParam("参数") @RequestBody BudgetCreateRequest params
// ) throws Exception {
// params.check();
// var user = StpLoginUserUtil.getLoginUser() ;
//
// var budget = budgetService.getById(id);
// if (budget == null) {
// throw new NcHttpException(HttpErrorResponseEnum.BUDGET_NOT_FOUND);
// }
//
// // 查询各月份材料价格
// LambdaQueryWrapper<PricePublish> query = pricePublishService.getQuery(params);
// // 转换查询结果为键值对 材料id,月份 => 价格
// var priceMap = pricePublishService.getPriceMapEntryByMaterialIdAndMonth(query) ;
// // 各月份求和
// var totalMap = params.getTotalMap(priceMap);
// var budgetItemList = params.getBudgetItemList(priceMap) ;
// // 入库
// budget.update(params, user, totalMap);
// budgetService.updateById(budget);
// budgetItemService.remove(new LambdaQueryWrapper<BudgetItem>().eq(BudgetItem::getBudgetId, id)) ;
// for (var budgetItem: budgetItemList) {
// budgetItem.setBudgetId(budget.getId());
// budgetItemService.save(budgetItem);
// }
//
// return FuHttpResponse.Builder().dataResponse(budgetItemList).build();
// }
@ApiOperation( " 查询预算 " )
@GetMapping( " / " )
public HttpResponse< Page < Budget > > list (
@ApiParam( value = " 每页数量 " ) @RequestParam ( name = " size " , required = false , defaultValue = " 10 " ) Integer size ,
@ApiParam( value = " 页码 " ) @RequestParam ( name = " current " , required = false , defaultValue = " 1 " ) Integer current ,
@ApiParam( value = " 名称 " ) @RequestParam ( value = " name " , required = false ) String name
) throws Exception {
var query = new LambdaQueryWrapper< Budget> ( ) ;
if ( ! ObjectUtils. isEmpty( name ) ) {
query. like ( Budget : : getName , name ) ;
}
var result = budgetService. page ( new Page < > ( current , size ) , query ) ;
return FuHttpResponse. Builder( ) . dataResponse( result) . build ( ) ;
}
@ApiOperation( " 删除预算 " )
@CommonLog( " 删除预算 " )
@DeleteMapping( " / " )
public HttpResponse delete (
@ApiParam( value = " id列表: 1,2,3 " ) @RequestParam ( value = " ids " ) String ids
) throws Exception {
var idList = Arrays. asList( ids . split ( " , " ) ) ;
var query = new LambdaQueryWrapper< Budget> ( ) ;
query. in ( Budget : : getId , idList) ;
budgetService. remove( query ) ;
return FuHttpResponse. Builder( ) . dataResponse( ) . build ( ) ;
}
@ApiOperation( " 预算详情 " )
@GetMapping( " /{id} " )
public HttpResponse< Budget > detail (
@ApiParam( value = " id " ) @PathVariable ( " id " ) Integer id
) throws Exception {
var budget = budgetService. getById( id ) ;
if ( budget = = null ) {
throw new NcHttpException( HttpErrorResponseEnum. BUDGET_NOT_FOUND) ;
}
var query = new LambdaQueryWrapper< BudgetItem> ( ) ;
query. eq ( BudgetItem: : getBudgetId, id ) ;
var list = budgetItemService . list ( query ) ;
budget . setItems ( list ) ;
return FuHttpResponse . Builder ( ) . dataResponse ( budget ) . build ( ) ;
}
@ApiOperation ( " 预算编辑 " )
@CommonLog ( " 预算编辑 " )
@PutMapping ( " /{id} " )
public HttpResponse edit (
@ApiParam( " id " ) @PathVariable String id ,
@ApiParam ( " 参数 " ) @RequestBody BudgetCreateRequest params
) throws Exception {
params . check ( ) ;
var user = StpLoginUserUtil . getLoginUser ( ) ;
var budget = budgetService . getById ( id ) ;
if ( budget = = null ) {
throw new NcHttpException ( HttpErrorResponseEnum . BUDGET_NOT_FOUND ) ;
}
// 入库
budget . update ( params , user ) ;
budgetService . updateById ( budget ) ;
budgetItemService . remove ( new LambdaQueryWrapper < BudgetItem > ( ) . eq ( BudgetItem : : getBudgetId , id ) ) ;
for ( var item : params . getItems ( ) ) {
var budgetItem = new BudgetItem ( budget . getId ( ) , item ) ;
budgetItemService . save ( budgetItem ) ;
}
return FuHttpResponse . Builder ( ) . dataResponse ( budget ) . build ( ) ;
}
// todo-1 地图里程数据
// todo-2 外省数据上传
@@ -152,5 +146,4 @@ public class BudgetController {
// * 大件运输部署测试
// * 材料管理系统-里程计算
// * 证据管理系统-部署
}