From 4a79cef7b632681b4cd4a622ecff7000a6088a1a Mon Sep 17 00:00:00 2001 From: Yen Date: Fri, 28 Feb 2025 17:06:36 +0800 Subject: [PATCH] =?UTF-8?q?opt:=20=E5=AE=A2=E6=88=B7=E7=89=B9=E6=AE=8A?= =?UTF-8?q?=E4=BB=B7=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serve/common/util/AuthContextUtils.java | 2 +- .../controller/AdminPortalController.java | 51 ++++++++ .../goods/controller/GoodsSpuController.java | 34 +++--- .../service/impl/GoodsSkuServiceImpl.java | 40 +++---- .../controller/OmsSaleOrderController.java | 18 ++- .../oms/service/impl/OmsOrderServiceImpl.java | 60 ++++++---- .../service/impl/OmsSaleOrderServiceImpl.java | 109 ++++++++++++------ .../tbs/common/dto/TbsBudgetChangeVo.java | 2 + .../controller/TbsCostApplyController.java | 14 +++ .../third/PortalOfCostRmController.java | 28 +++++ .../mapper/tbs/TbsBudgetChangeMapper.xml | 34 +++++- 11 files changed, 294 insertions(+), 98 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/third/PortalOfCostRmController.java diff --git a/src/main/java/com/qs/serve/common/util/AuthContextUtils.java b/src/main/java/com/qs/serve/common/util/AuthContextUtils.java index 64ba294c..2620f7e0 100644 --- a/src/main/java/com/qs/serve/common/util/AuthContextUtils.java +++ b/src/main/java/com/qs/serve/common/util/AuthContextUtils.java @@ -104,7 +104,7 @@ public class AuthContextUtils { public static String getLockTheme(){return RES_THEME_LOCK.get();} public static void setSupplierId(String value){ - if(value!=null){ + if(StringUtils.hasText(value)){ try { THREAD_SUPPLIER.set(Long.parseLong(value)); } catch (NumberFormatException e) { diff --git a/src/main/java/com/qs/serve/controller/AdminPortalController.java b/src/main/java/com/qs/serve/controller/AdminPortalController.java index 14b40f0c..f2e6c426 100644 --- a/src/main/java/com/qs/serve/controller/AdminPortalController.java +++ b/src/main/java/com/qs/serve/controller/AdminPortalController.java @@ -29,9 +29,13 @@ import com.qs.serve.modules.goods.service.GoodsSkuService; import com.qs.serve.modules.goods.service.GoodsSpuService; import com.qs.serve.modules.oms.entity.OmsOrder; import com.qs.serve.modules.oms.entity.OmsOrderItem; +import com.qs.serve.modules.oms.entity.OmsSaleOrder; +import com.qs.serve.modules.oms.entity.OmsSaleOrderItem; import com.qs.serve.modules.oms.mapper.OmsOrderMapper; import com.qs.serve.modules.oms.service.OmsOrderItemService; import com.qs.serve.modules.oms.service.OmsOrderService; +import com.qs.serve.modules.oms.service.OmsSaleOrderItemService; +import com.qs.serve.modules.oms.service.OmsSaleOrderService; import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; import com.qs.serve.modules.seeyon.enums.SyAffairState; import com.qs.serve.modules.seeyon.service.SeeYonRequestService; @@ -98,6 +102,10 @@ public class AdminPortalController { private OmsOrderService omsOrderService; private OmsOrderItemService omsOrderItemService; + + private OmsSaleOrderService omsSaleOrderService; + private OmsSaleOrderItemService omsSaleOrderItemService; + private BmsSupplierAddressService bmsSupplierAddressService; private GoodsCategoryRuleService goodsCategoryRuleService; private GoodsSpuService goodsSpuService; @@ -358,4 +366,47 @@ public class AdminPortalController { return R.error(); } + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getSaleOrder/{id}") + public R getSaleOrderById(@PathVariable("id") String id, String supplierId){ + AuthContextUtils.setTenant("001"); + OmsSaleOrder omsOrder = omsSaleOrderService.getById(id); + if(omsOrder==null){return R.errorNotFound();} + omsOrder.setBrandRuleInfo(goodsCategoryRuleService.getById(omsOrder.getBrandRuleId())); + omsOrder.setAddressInfo(bmsSupplierAddressService.getById(omsOrder.getSupplierAddrId())); + + // 关联折扣信息 + if(StringUtils.hasText(omsOrder.getOaRateId())){ + SimpleKeyValue obj = omsOrderMapper.getExpiredRateInfo(omsOrder.getOaRateId()); + omsOrder.setDiscountRateInfo(obj); + } + if(omsOrder.getSupplierId().toString().equals(supplierId)){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(OmsSaleOrderItem::getOrderId,id); + List list = omsSaleOrderItemService.list(lqw); + for (OmsSaleOrderItem orderItem : list) { + GoodsSpu goodsSpu = goodsSpuService.getById(orderItem.getSpuId()); + GoodsCategory goodsCategory = goodsCategoryService.getById(goodsSpu.getCategoryLast()); + orderItem.setCategoryInfo(goodsCategory); + orderItem.setSpuInfo(goodsSpu); + GoodsSku goodsSku = goodsSkuService.getById(orderItem.getSkuId()); + if(goodsSku!=null){ + orderItem.setSkuSpecialFlag(goodsSku.getSpecialFlag()); + } + //临期品添加批次对象 + if(omsOrder.getOrderType().equals(3)&&orderItem.getSkuBatchId()!=null){ + orderItem.setBatchInfo(goodsImminentBatchMapper.selectById(orderItem.getSkuBatchId())); + } + } + omsOrder.setOrderItems(list); + return R.ok(omsOrder); + } + return R.error(); + } + + } diff --git a/src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java b/src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java index 3bcfac85..de3a8213 100644 --- a/src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java +++ b/src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java @@ -549,23 +549,23 @@ public class GoodsSpuController { List inventoryCusPrices = null; try { if(skuCodes.size()>0){ - - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode,skuCodes); - return customerPrices.stream().map(obj->{ - InventoryCusPrice cusPrice = new InventoryCusPrice(); - cusPrice.setCusCode(supplierCode); - cusPrice.setInvCode(obj.getSkuCode()); - cusPrice.setPrice(obj.getRealPrice()); - return cusPrice; - }).collect(Collectors.toList()); - -// InventoryCusPriceQuery query = new InventoryCusPriceQuery(); -// query.setCusCode(supplierCode); -// query.setInvCodes(skuCodes); -// R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); -// if(res.getStatus().equals(200)){ -// inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); -// } +// +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode,skuCodes); +// return customerPrices.stream().map(obj->{ +// InventoryCusPrice cusPrice = new InventoryCusPrice(); +// cusPrice.setCusCode(supplierCode); +// cusPrice.setInvCode(obj.getSkuCode()); +// cusPrice.setPrice(obj.getRealPrice()); +// return cusPrice; +// }).collect(Collectors.toList()); + + InventoryCusPriceQuery query = new InventoryCusPriceQuery(); + query.setCusCode(supplierCode); + query.setInvCodes(skuCodes); + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + } } } catch (Exception e) { log.error("客户特殊价异常:{}",e.getMessage()); diff --git a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java index 86871ecc..34fc69a1 100644 --- a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSkuServiceImpl.java @@ -91,29 +91,29 @@ public class GoodsSkuServiceImpl extends ServiceImpl im query.setCusCode(supplierCode); query.setInvCodes(codes); try { - GoodsCustomerPriceService goodsCustomerPriceService = SpringUtils.getBean(GoodsCustomerPriceService.class); - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode,codes); - for (GoodsCustomerPrice customerPrice : customerPrices) { - for (GoodsSku sku : skus) { - if(sku.getSkuCode().equals(customerPrice.getSkuCode())){ - sku.setSalesPrice(customerPrice.getRealPrice()); - break; - } - } - } -// R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); -// if(res.getStatus().equals(200)){ -// List inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); -// assert inventoryCusPrices != null; -// for (InventoryCusPrice cusPrice : inventoryCusPrices) { -// for (GoodsSku sku : skus) { -// if(sku.getSkuCode().equals(cusPrice.getInvCode())){ -// sku.setSalesPrice(cusPrice.getPrice()); -// break; -// } +// GoodsCustomerPriceService goodsCustomerPriceService = SpringUtils.getBean(GoodsCustomerPriceService.class); +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode,codes); +// for (GoodsCustomerPrice customerPrice : customerPrices) { +// for (GoodsSku sku : skus) { +// if(sku.getSkuCode().equals(customerPrice.getSkuCode())){ +// sku.setSalesPrice(customerPrice.getRealPrice()); +// break; // } // } // } + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + List inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + assert inventoryCusPrices != null; + for (InventoryCusPrice cusPrice : inventoryCusPrices) { + for (GoodsSku sku : skus) { + if(sku.getSkuCode().equals(cusPrice.getInvCode())){ + sku.setSalesPrice(cusPrice.getPrice()); + break; + } + } + } + } } catch (Exception e) { log.error("客户特殊价异常:{}",e.getMessage()); } diff --git a/src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java b/src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java index 8f9e283c..faef2ec1 100644 --- a/src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java +++ b/src/main/java/com/qs/serve/modules/oms/controller/OmsSaleOrderController.java @@ -15,10 +15,7 @@ import com.qs.serve.modules.bms.entity.BmsSupplierAddress; import com.qs.serve.modules.bms.mapper.BmsSupplierMapper; import com.qs.serve.modules.bms.service.BmsSupplierAddressService; import com.qs.serve.modules.oms.common.OmsOrderCheckState; -import com.qs.serve.modules.oms.entity.OmsOrder; -import com.qs.serve.modules.oms.entity.OmsOrderItem; -import com.qs.serve.modules.oms.entity.OmsSaleOrder; -import com.qs.serve.modules.oms.entity.OmsSaleOrderItem; +import com.qs.serve.modules.oms.entity.*; import com.qs.serve.modules.oms.entity.bo.*; import com.qs.serve.modules.oms.entity.vo.OmsPlanResult; import com.qs.serve.modules.oms.entity.vo.OmsSpuAssesInfo; @@ -58,6 +55,7 @@ public class OmsSaleOrderController { private OmsSaleOrderItemService omsSaleOrderItemService; private BmsSupplierMapper bmsSupplierMapper; private SeeYonRequestBaseService seeYonRequestBaseService; + private OmsVerSaleOrderService omsVerSaleOrderService; /** * 查看排产预估计划 @@ -94,6 +92,18 @@ public class OmsSaleOrderController { return R.ok(omsSaleOrderService.getChangeLog(code)); } + /** + * 获取erp订单日志 + * @param code + * @return + */ + @GetMapping("getErpOrderChanges") + public R getErpOrderVersionChangeLogs(String code){ + List list = omsVerSaleOrderService.list(new LambdaQueryWrapper() + .eq(OmsVerSaleOrder::getOrderSn,code) + .orderByAsc(OmsVerSaleOrder::getId)); + return R.ok(list); + } /** * 获取ERP订单信息 diff --git a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java index 1381fc3f..8ae3b27c 100644 --- a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java @@ -690,21 +690,21 @@ public class OmsOrderServiceImpl extends ServiceImpl i String supplierCode = supplier.getCode(); List skuCodes = orderItems.stream().map(OmsOrderItem::getSkuCode).collect(Collectors.toList()); if (skuCodes.size() > 0) { - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode, skuCodes); - inventoryCusPrices = customerPrices.stream().map(obj -> { - InventoryCusPrice cusPrice = new InventoryCusPrice(); - cusPrice.setCusCode(supplierCode); - cusPrice.setInvCode(obj.getSkuCode()); - cusPrice.setPrice(obj.getRealPrice()); - return cusPrice; - }).collect(Collectors.toList()); -// InventoryCusPriceQuery query = new InventoryCusPriceQuery(); -// query.setCusCode(supplierCode); -// query.setInvCodes(skuCodes); -// R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); -// if(res.getStatus().equals(200)){ -// inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); -// } +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode, skuCodes); +// inventoryCusPrices = customerPrices.stream().map(obj -> { +// InventoryCusPrice cusPrice = new InventoryCusPrice(); +// cusPrice.setCusCode(supplierCode); +// cusPrice.setInvCode(obj.getSkuCode()); +// cusPrice.setPrice(obj.getRealPrice()); +// return cusPrice; +// }).collect(Collectors.toList()); + InventoryCusPriceQuery query = new InventoryCusPriceQuery(); + query.setCusCode(supplierCode); + query.setInvCodes(skuCodes); + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + } } } catch (Exception e) { log.error("客户特殊价异常:{}", e.getMessage()); @@ -1023,14 +1023,32 @@ public class OmsOrderServiceImpl extends ServiceImpl i } private void buildSkuSpecPrice(BmsSupplier supplier, List orderItems, List skuCodes) { - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplier.getCode(), skuCodes); - for (OmsOrderItem orderItem : orderItems) { - for (GoodsCustomerPrice customerPrice : customerPrices) { - if (orderItem.getSkuCode().equals(customerPrice.getSkuCode())) { - orderItem.setSalesPrice(customerPrice.getRealPrice()); - break; +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplier.getCode(), skuCodes); +// for (OmsOrderItem orderItem : orderItems) { +// for (GoodsCustomerPrice customerPrice : customerPrices) { +// if (orderItem.getSkuCode().equals(customerPrice.getSkuCode())) { +// orderItem.setSalesPrice(customerPrice.getRealPrice()); +// break; +// } +// } +// } + InventoryCusPriceQuery query = new InventoryCusPriceQuery(); + query.setCusCode(supplier.getCode()); + query.setInvCodes(skuCodes); + try { + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + List inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + for (InventoryCusPrice cusPrice : inventoryCusPrices) { + for (OmsOrderItem orderItem : orderItems) { + if(cusPrice.getCusCode().equals(orderItem.getSkuCode())&&cusPrice.getPrice().compareTo(cusPrice.getPrice())!=0){ + orderItem.setSalesPrice(cusPrice.getPrice()); + } + } } } + } catch (Exception e) { + e.printStackTrace(); } } diff --git a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java index db247ad9..4d27a660 100644 --- a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsSaleOrderServiceImpl.java @@ -670,7 +670,7 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl skuCodes = orderItems.stream().map(OmsSaleOrderItem::getSkuCode).collect(Collectors.toList()); if (skuCodes.size() > 0) { - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode, skuCodes); - inventoryCusPrices = customerPrices.stream().map(obj -> { - InventoryCusPrice cusPrice = new InventoryCusPrice(); - cusPrice.setCusCode(supplierCode); - cusPrice.setInvCode(obj.getSkuCode()); - cusPrice.setPrice(obj.getRealPrice()); - return cusPrice; - }).collect(Collectors.toList()); -// InventoryCusPriceQuery query = new InventoryCusPriceQuery(); -// query.setCusCode(supplierCode); -// query.setInvCodes(skuCodes); -// R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); -// if(res.getStatus().equals(200)){ -// inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); -// } +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplierCode, skuCodes); +// inventoryCusPrices = customerPrices.stream().map(obj -> { +// InventoryCusPrice cusPrice = new InventoryCusPrice(); +// cusPrice.setCusCode(supplierCode); +// cusPrice.setInvCode(obj.getSkuCode()); +// cusPrice.setPrice(obj.getRealPrice()); +// return cusPrice; +// }).collect(Collectors.toList()); + InventoryCusPriceQuery query = new InventoryCusPriceQuery(); + query.setCusCode(supplierCode); + query.setInvCodes(skuCodes); + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + } } } catch (Exception e) { log.error("客户特殊价异常:{}", e.getMessage()); @@ -1287,14 +1287,32 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl orderItems, List skuCodes) { - List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplier.getCode(), skuCodes); - for (OmsSaleOrderItem orderItem : orderItems) { - for (GoodsCustomerPrice customerPrice : customerPrices) { - if (orderItem.getSkuCode().equals(customerPrice.getSkuCode())) { - orderItem.setSalesPrice(customerPrice.getRealPrice()); - break; +// List customerPrices = goodsCustomerPriceService.getBySupplierCodeAndCode(supplier.getCode(), skuCodes); +// for (OmsSaleOrderItem orderItem : orderItems) { +// for (GoodsCustomerPrice customerPrice : customerPrices) { +// if (orderItem.getSkuCode().equals(customerPrice.getSkuCode())) { +// orderItem.setSalesPrice(customerPrice.getRealPrice()); +// break; +// } +// } +// } + InventoryCusPriceQuery query = new InventoryCusPriceQuery(); + query.setCusCode(supplier.getCode()); + query.setInvCodes(skuCodes); + try { + R res = seeYonRequestBaseService.postBase(TbsSeeYonConst.ERP_CUS_INV_PRICE,query,"查询客户特殊价"); + if(res.getStatus().equals(200)){ + List inventoryCusPrices = JsonUtil.jsonToList(res.getData(), InventoryCusPrice.class); + for (InventoryCusPrice cusPrice : inventoryCusPrices) { + for (OmsSaleOrderItem orderItem : orderItems) { + if(cusPrice.getCusCode().equals(orderItem.getSkuCode())&&cusPrice.getPrice().compareTo(cusPrice.getPrice())!=0){ + orderItem.setSalesPrice(cusPrice.getPrice()); + } + } } } + } catch (Exception e) { + e.printStackTrace(); } } @@ -1311,9 +1329,9 @@ public class OmsSaleOrderServiceImpl extends ServiceImpl removeByAdmin2(String costCode,String remark){ + TbsCostApply costApply = tbsCostApplyMapper.selectList(new LambdaQueryWrapper().eq(TbsCostApply::getCode,costCode)).get(0); + Long costApplyId = costApply.getId(); + deleteLogService.deleteCostApply(costApplyId,remark); + BirActivityCenterGoodsUtil.buildBir(costApplyId); + return R.ok(); + } /** * 移除费用申请 diff --git a/src/main/java/com/qs/serve/modules/third/PortalOfCostRmController.java b/src/main/java/com/qs/serve/modules/third/PortalOfCostRmController.java new file mode 100644 index 00000000..87268509 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/third/PortalOfCostRmController.java @@ -0,0 +1,28 @@ +package com.qs.serve.modules.third; + +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author YenHex + * @since 2025/2/24 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("thirty/cost") +public class PortalOfCostRmController { + + /** + * 移除试吃品费用 + */ + @PostMapping("/rmSHXCost") + public void rmShxSpuCost(){ + + } + +} diff --git a/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml b/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml index bdd7dba9..f61522be 100644 --- a/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml +++ b/src/main/resources/mapper/tbs/TbsBudgetChangeMapper.xml @@ -28,7 +28,37 @@ - select 'apply' as type, null as `budget_change_id`, @@ -91,10 +121,10 @@ tbs_budget_change.`schedule_code`, tbs_budget_change.`schedule_name`, tbs_budget_change.`submit_time`, - tbs_budget_change.`remark`, tbs_budget_change.`user_id`, tbs_budget_change.`user_code`, tbs_budget_change.`user_name`, + tbs_budget_change.`remark`, tbs_budget_change.`batch_apply_flag`, tbs_budget_change.`batch_apply_id` from tbs_budget_change