From 9f5d3337988e28033718f2d318a1e1a0737d244c Mon Sep 17 00:00:00 2001 From: cun-nan <19819293608@163.com> Date: Sun, 4 Feb 2024 18:08:43 +0800 Subject: [PATCH] bug --- fuintAdmin/src/api/order/hangbill.js | 98 ++++ fuintAdmin/src/api/order/returnrecord.js | 27 + .../src/views/convenienceStore/goodsFile.vue | 76 +-- .../src/views/convenienceStore/index.vue | 18 +- fuintAdmin/src/views/member/creditIndex.vue | 6 +- fuintAdmin/src/views/order/order_Added.vue | 490 +++++++++++++++++ fuintAdmin/src/views/order/order_Oil.vue | 70 +-- .../convenienceSore/entity/LJGoods.java | 4 + .../mapper/xml/LJGoodsMapper.xml | 3 + .../controller/CreditUnitController.java | 12 + .../order/controller/HangBillController.java | 11 + .../business/order/entity/CreditUnit.java | 9 +- .../business/order/mapper/HangBillMapper.java | 6 + .../order/mapper/xml/HangBillMapper.xml | 37 +- .../order/service/CreditUnitService.java | 8 + .../order/service/HangBillService.java | 10 +- .../service/impl/CreditUnitServiceImpl.java | 20 + .../service/impl/HangBillServiceImpl.java | 36 ++ fuintCashierWeb/src/api/cashier/creditunit.js | 8 + .../src/views/cashier/NewComponents/Order.vue | 16 +- .../views/cashier/NewComponents/credit.vue | 342 +++++++++--- .../cashier/orderComponents/order_Added.vue | 504 +++++++++++++----- .../cashier/orderComponents/order_Cashier.vue | 82 +-- .../cashier/orderComponents/order_Goods.vue | 2 +- .../cashier/orderComponents/order_Oil.vue | 72 +-- .../pagesRefuel/orderDetail/index.vue | 2 +- 26 files changed, 1585 insertions(+), 384 deletions(-) create mode 100644 fuintAdmin/src/api/order/hangbill.js create mode 100644 fuintAdmin/src/api/order/returnrecord.js create mode 100644 fuintAdmin/src/views/order/order_Added.vue diff --git a/fuintAdmin/src/api/order/hangbill.js b/fuintAdmin/src/api/order/hangbill.js new file mode 100644 index 000000000..de5533365 --- /dev/null +++ b/fuintAdmin/src/api/order/hangbill.js @@ -0,0 +1,98 @@ +import request from '@/utils/request' + +// 查询挂账信息列表 +export function listHangBill(query) { + return request({ + url: '/business/hangBill/list', + method: 'get', + params: query + }) +} + +// 查询挂账信息列表 +export function hangBillInfo(id) { + return request({ + url: '/business/hangBill/'+id, + method: 'get', + }) +} + +// 查询所有挂账信息列表 +export function hangBills() { + return request({ + url: '/business/hangBill/hangBills', + method: 'get', + }) +} + +// 新增挂账记录 +export function addHangBill(data) { + return request({ + url: '/business/hangBill', + method: 'post', + data: data + }) +} + +// 批量归还挂账信息 +export function batchHangBill(data) { + return request({ + url: '/business/hangBill/batch', + method: 'post', + data: data + }) +} + +// 根据订单号查询挂账记录信息 +export function queryHangBill(data) { + return request({ + url: '/business/hangBill/orderNo', + method: 'post', + data: data + }) +} + +// 修改挂账记录及收款 +export function editHangBill(data) { + return request({ + url: '/business/hangBill', + method: 'put', + data: data + }) +} + +// 当前店铺归还账单的数量 +export function hangBillReturnTotal(query) { + return request({ + url: '/business/hangBill/returnTotal', + method: 'get', + params: query + }) +} + +// 当前店铺归还账单的数量 +export function hangBillAllAmount(query) { + return request({ + url: '/business/hangBill/allAmount', + method: 'get', + params: query + }) +} + +// 当前店铺归还账单的数量 +export function hangBillAllReturnAmount(query) { + return request({ + url: '/business/hangBill/allReturnAmount', + method: 'get', + params: query + }) +} + +// 当前店铺归还账单的数量 +export function hangBillAllNoReturnAmount(query) { + return request({ + url: '/business/hangBill/allNoReturnAmount', + method: 'get', + params: query + }) +} diff --git a/fuintAdmin/src/api/order/returnrecord.js b/fuintAdmin/src/api/order/returnrecord.js new file mode 100644 index 000000000..ab20be3ad --- /dev/null +++ b/fuintAdmin/src/api/order/returnrecord.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +// 根据挂账记录id查询归还记录信息 +export function listReturnRecord(query) { + return request({ + url: '/business/returnRecord/list', + method: 'get', + params: query + }) +} + +// 根据id查询挂账归还信息 +export function returnRecordInfo(id) { + return request({ + url: '/business/returnRecord/' + id, + method: 'get', + }) +} + +// 根据订单号查询挂账归还信息 +export function returnRecordByOrderNo(data) { + return request({ + url: '/business/returnRecord/order', + method: 'post', + data: data + }) +} diff --git a/fuintAdmin/src/views/convenienceStore/goodsFile.vue b/fuintAdmin/src/views/convenienceStore/goodsFile.vue index f738a3cbe..2eceb4425 100644 --- a/fuintAdmin/src/views/convenienceStore/goodsFile.vue +++ b/fuintAdmin/src/views/convenienceStore/goodsFile.vue @@ -8,7 +8,7 @@ - + + + + + + + + @@ -263,7 +265,15 @@ - + + + + 是 + 否 + + + + @@ -403,7 +413,7 @@ export default { // 表单参数 form: { id:'',goodsNo:'',name:'',cvsGoodId:"",buyingPrice:'',retailPrice:"",memberPrice:'',pinyinCode:"", - unit:'',shelfNumber:'',canUsePoint:'no',stock:0,supplierId:'',sort:0,status:'qy' + unit:'',shelfNumber:'',canUsePoint:'no',canUseExchange:'1',stock:0,supplierId:'',sort:0,status:'qy' }, // 显示搜索条件 showSearch: true, @@ -603,11 +613,11 @@ export default { // 搜索按钮操作 handleQuery() { this.queryParams.page = 1; - if (this.cvsGoodId.length==1){ - this.queryParams.cvsGoodId = this.cvsGoodId[0] - }else { - this.queryParams.cvsGoodId = this.cvsGoodId[1] - } + // if (this.cvsGoodId.length==1){ + // this.queryParams.cvsGoodId = this.cvsGoodId[0] + // }else { + // this.queryParams.cvsGoodId = this.cvsGoodId[1] + // } this.getList(); }, // 重置按钮操作 @@ -622,7 +632,7 @@ export default { this.resetForm("form"); this.form= { id:'',goodsNo:'',name:'',cvsGoodId:"",buyingPrice:'',retailPrice:"",memberPrice:'',pinyinCode:"", - unit:'',shelfNumber:'',canUsePoint:'no',stock:0,supplierId:'',sort:0,status:'qy' + unit:'',shelfNumber:'',canUsePoint:'no',canUseExchange:'1',stock:0,supplierId:'',sort:0,status:'qy' } }, // 是否移至回收站 @@ -665,20 +675,20 @@ export default { const id = row.id; getLJGoods(id).then(response => { this.form = response.data; - this.cvsGoodOptions.forEach(item => { - if (item.value == response.data.cvsGoodId){ - this.cvsGoodId.push(item.value) - }else { - if (item.children.length>0){ - item.children.forEach(i => { - if (i.value == response.data.cvsGoodId){ - this.cvsGoodId.push(item.value) - this.cvsGoodId.push(i.value) - } - }) - } - } - }) + // this.cvsGoodOptions.forEach(item => { + // if (item.value == response.data.cvsGoodId){ + // this.cvsGoodId.push(item.value) + // }else { + // if (item.children.length>0){ + // item.children.forEach(i => { + // if (i.value == response.data.cvsGoodId){ + // this.cvsGoodId.push(item.value) + // this.cvsGoodId.push(i.value) + // } + // }) + // } + // } + // }) this.supplierList.forEach(item => { if (item.id == response.data.supplierId){ this.supplier = item.name @@ -710,10 +720,10 @@ export default { } this.$refs["form"].validate(valid => { if (valid) { - if (this.form.stock==0){ - this.$modal.msgError("库存不可为0"); - return; - } + // if (this.form.stock==0){ + // this.$modal.msgError("库存不可为0"); + // return; + // } if (this.form.id) { updateLJGoods(this.form).then(response => { this.$modal.msgSuccess("商品信息更新成功"); diff --git a/fuintAdmin/src/views/convenienceStore/index.vue b/fuintAdmin/src/views/convenienceStore/index.vue index 0a6fe9343..718e82989 100644 --- a/fuintAdmin/src/views/convenienceStore/index.vue +++ b/fuintAdmin/src/views/convenienceStore/index.vue @@ -203,15 +203,15 @@ - - - - - {{ dict.label }} - - - - + + + + + + + + + diff --git a/fuintAdmin/src/views/member/creditIndex.vue b/fuintAdmin/src/views/member/creditIndex.vue index ef39e737a..2f4842fa2 100644 --- a/fuintAdmin/src/views/member/creditIndex.vue +++ b/fuintAdmin/src/views/member/creditIndex.vue @@ -135,7 +135,7 @@ - + 元 @@ -147,7 +147,7 @@ - + 元 @@ -159,7 +159,7 @@ - + 元 diff --git a/fuintAdmin/src/views/order/order_Added.vue b/fuintAdmin/src/views/order/order_Added.vue new file mode 100644 index 000000000..c27578aed --- /dev/null +++ b/fuintAdmin/src/views/order/order_Added.vue @@ -0,0 +1,490 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 查询 + 重置 + + + + + + + 统计 + + + + 挂账笔数 + {{ total }} + + + 挂账总额 + {{ allAmount }} + + + 归还笔数 + {{ returnTotal }} + + + 归还总额 + {{ returnAllAmount }} + + + 未还金额 + {{ noReturnAllAmount }} + + + + + + + 挂账订单列表 + + + 导出订单 + + + + + + + + + {{ props.row.mobile }} + + + {{ props.row.updateTime ? props.row.updateTime:"--" }} + + + {{ props.row.remark ? props.row.remark:"--" }} + + + {{ props.row.amount ? props.row.amount:"0" }} + + + {{ props.row.repaidAmount ? props.row.repaidAmount:"0" }} + + + {{ props.row.outstandAmount ? props.row.outstandAmount:"0" }} + + + + + + + + + + + + + + 挂账 + 归还 + + + + + + 未归还 + 已归还 + 部分归还 + + + + + + + + + {{ parseTime(scope.row.createTime) }} + + + + + + 归还详情 + + + + + + + + + + + + + + + + + + + + 单据号:{{record.orderNo}} + + + + + 操作员工: + {{ record.realName }} + + + + + 挂账单位 + {{record.unitName}} + + + 挂账人 + {{record.personCredit}} + + + 联系电话 + {{record.contactMobile}} + + + + + + + + + 挂账 + 归还 + + + + + + + {{ getPayMeth(payList,scope.row.status) }} + + + + + 未支付 + 已支付 + 支付失败 + + + + + + {{ parseTime(scope.row.payTime) }} + + + + + + + + + + + + + + + + + diff --git a/fuintAdmin/src/views/order/order_Oil.vue b/fuintAdmin/src/views/order/order_Oil.vue index 4e12f373f..75847caae 100644 --- a/fuintAdmin/src/views/order/order_Oil.vue +++ b/fuintAdmin/src/views/order/order_Oil.vue @@ -141,54 +141,51 @@ - - - - - {{ props.row.userId ? queryUser(userList,props.row.userId):"--" }} - - - {{ queryStaf(staffList,props.row.staffId) }} - - - {{ getVal(terminalList,props.row.terminal) }} - - - {{ props.row.remark ? props.row.remark:"--" }} - - - - + + + + + - - - + + + + + + + + + + + + + + + + + {{ getVal(terminalList,props.row.terminal) }} - + - + {{ getName(oilNameList,props.row.oils) }}/{{ getName1(oilGunList,props.row.oilGunNum) }} - - + + - - - - {{ (props.row.orderAmount - props.row.discountAmount - props.row.payAmount).toFixed(2) || 0 }} - 0 - - - - + + + + + {{getType(payList,scope.row.payType)}} @@ -203,6 +200,11 @@ + + + {{scope.row.remark || "--"}} + + diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/entity/LJGoods.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/entity/LJGoods.java index 827ab6901..9f0d5e230 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/entity/LJGoods.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/entity/LJGoods.java @@ -114,6 +114,10 @@ public class LJGoods extends BaseEntity implements Serializable { * 是否删除:0未删除,1已删除 */ private String ifDelete; + /** + * 可否使用兑换券兑换;0可以,1不可以 + */ + private String canUseExchange; } diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/mapper/xml/LJGoodsMapper.xml b/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/mapper/xml/LJGoodsMapper.xml index b752fae61..b98818c5e 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/mapper/xml/LJGoodsMapper.xml +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/convenienceSore/mapper/xml/LJGoodsMapper.xml @@ -32,6 +32,9 @@ and mg.status = #{goods.status} + + and mg.can_use_exchange = #{goods.canUseExchange} + and( mg.name like concat('%', #{goods.remark}, '%') diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/CreditUnitController.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/CreditUnitController.java index 4b5ffa56c..c0b6dd8dc 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/CreditUnitController.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/CreditUnitController.java @@ -27,6 +27,18 @@ public class CreditUnitController extends BaseController { return getSuccessResult(creditUnitService.selectCreditUnitList(page,creditUnit)); } + /** + * 查询所有挂账单位信息 + * @return + */ + @GetMapping("/selectList") + private ResponseObject selectList(CreditUnit creditUnit, + @RequestParam(value = "page",defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize",defaultValue = "10") Integer pageSize){ + Page page =new Page(pageNo,pageSize); + return getSuccessResult(creditUnitService.selectCreditUnitOrderList(page,creditUnit)); + } + /** * 查询所有挂账单位信息 * @return diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/HangBillController.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/HangBillController.java index b5d14b75a..9b3a2ed36 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/HangBillController.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/controller/HangBillController.java @@ -2,6 +2,7 @@ package com.fuint.business.order.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fuint.business.order.entity.CashierOrder; import com.fuint.business.order.entity.HangBill; import com.fuint.business.order.service.HangBillService; import com.fuint.business.order.vo.HangBillVo; @@ -11,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletResponse; import java.util.Map; /** @@ -135,4 +137,13 @@ public class HangBillController extends BaseController { public ResponseObject returnTotal(){ return getSuccessResult(hangBillService.selectCountReturn()); } + + /** + * 导出订单 + * @param response + */ + @PostMapping("exportExcel") + public void exportExcel(HttpServletResponse response, @RequestBody HangBillVo hangBillVo) { + hangBillService.export(response, hangBillVo); + } } diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/CreditUnit.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/CreditUnit.java index b610b2ef9..019d20f66 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/CreditUnit.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/entity/CreditUnit.java @@ -1,8 +1,10 @@ package com.fuint.business.order.entity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fuint.business.order.vo.HangBillVo; import com.fuint.framework.entity.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -10,6 +12,7 @@ import lombok.Data; import java.util.Date; import java.io.Serializable; +import java.util.List; /** * 挂账单位信息表(CreditUnit)实体类 @@ -69,6 +72,10 @@ public class CreditUnit extends BaseEntity implements Serializable { * 单位状态:启用禁用 */ private String status; - + /** + * 挂账订单列表 + */ + @TableField(exist = false) + private List hangBillVos; } diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/HangBillMapper.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/HangBillMapper.java index d857d4924..fa3bc5b47 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/HangBillMapper.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/HangBillMapper.java @@ -21,6 +21,12 @@ public interface HangBillMapper extends BaseMapper { */ public IPage selectHangBillList(Page page,@Param("hangBill") HangBillVo hangBill); + /** + * 查询所有挂账记录信息 + * @return + */ + public List selectHangBillsByCreditUnit(@Param("hangBill") HangBillVo hangBill); + /** * 查询所有挂账信息 * @param storeId diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/xml/HangBillMapper.xml b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/xml/HangBillMapper.xml index b30b80191..d42603c71 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/xml/HangBillMapper.xml +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/mapper/xml/HangBillMapper.xml @@ -36,8 +36,8 @@ and date_format(hb.create_time,'%y%m%d') <= date_format(#{hangBill.params.endTime},'%y%m%d') - order by create_time desc + order by create_time desc @@ -62,4 +62,39 @@ select sum(outstand_amount) from hang_bill where store_id = #{storeId} + + + + hb.store_id = #{hangBill.storeId} + + and hb.status = #{hangBill.status} + + + and hb.return_type = #{hangBill.returnType} + + + and hb.credit_unit_id like concat('%', #{hangBill.creditUnitId}, '%') + + + and cu.unit_name like concat('%', #{hangBill.unitName}, '%') + + + and cu.person_credit like concat('%', #{hangBill.personCredit}, '%') + + + and cu.contact_mobile like concat('%', #{hangBill.contactMobile}, '%') + + + and ms.mobile like concat('%', #{hangBill.mobile}, '%') + + + and date_format(hb.create_time,'%y%m%d') >= date_format(#{hangBill.params.beginTime},'%y%m%d') + + + and date_format(hb.create_time,'%y%m%d') <= date_format(#{hangBill.params.endTime},'%y%m%d') + + + order by create_time desc + \ No newline at end of file diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/CreditUnitService.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/CreditUnitService.java index c62ec14c6..22af11589 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/CreditUnitService.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/CreditUnitService.java @@ -21,6 +21,14 @@ public interface CreditUnitService extends IService { */ public IPage selectCreditUnitList(Page page, CreditUnit creditUnit); + /** + * 根据条件分页查询挂账单位信息和挂账单位下的订单信息 + * @param page + * @param creditUnit + * @return + */ + public IPage selectCreditUnitOrderList(Page page, CreditUnit creditUnit); + /** * 查询所有挂账单位信息 * @return diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/HangBillService.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/HangBillService.java index bc738c913..e114384b4 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/HangBillService.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/HangBillService.java @@ -4,10 +4,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.fuint.business.order.entity.HangBill; -import com.fuint.business.order.entity.ReturnRecord; import com.fuint.business.order.vo.HangBillVo; import org.springframework.transaction.annotation.Transactional; +import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; @@ -24,6 +24,12 @@ public interface HangBillService extends IService { */ public IPage selectHangBillList(Page page, HangBillVo hangBill); + /** + * 查询所有挂账记录信息 + * @return + */ + public List selectHangBillsByCreditUnit(HangBillVo hangBill); + /** * 查询所有挂账记录信息 * @return @@ -104,4 +110,6 @@ public interface HangBillService extends IService { * @return */ Double selectNoReturnAmount(); + + void export(HttpServletResponse response, HangBillVo hangBill); } diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/CreditUnitServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/CreditUnitServiceImpl.java index d9296a439..65f76e168 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/CreditUnitServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/CreditUnitServiceImpl.java @@ -8,11 +8,14 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fuint.business.order.entity.CreditUnit; import com.fuint.business.order.mapper.CreditUnitMapper; import com.fuint.business.order.service.CreditUnitService; +import com.fuint.business.order.service.HangBillService; +import com.fuint.business.order.vo.HangBillVo; import com.fuint.business.storeInformation.entity.LJStore; import com.fuint.business.storeInformation.service.ILJStoreService; import com.fuint.common.dto.AccountInfo; import com.fuint.common.util.TokenUtil; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.util.List; @@ -21,6 +24,9 @@ import java.util.List; public class CreditUnitServiceImpl extends ServiceImpl implements CreditUnitService { @Autowired private ILJStoreService storeService; + @Autowired + @Lazy + private HangBillService hangBillService; @Override public IPage selectCreditUnitList(Page page, CreditUnit creditUnit) { @@ -29,6 +35,20 @@ public class CreditUnitServiceImpl extends ServiceImpl selectCreditUnitOrderList(Page page, CreditUnit creditUnit) { + AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); + creditUnit.setStoreId(nowAccountInfo.getStoreId()); + IPage creditUnitIPage = baseMapper.selectCreditUnitList(page, creditUnit); + for (CreditUnit record : creditUnitIPage.getRecords()) { + HangBillVo hangBillVo = new HangBillVo(); + hangBillVo.setCreditUnitId(record.getId()); + List hangBillVos = hangBillService.selectHangBillsByCreditUnit(hangBillVo); + record.setHangBillVos(hangBillVos); + } + return creditUnitIPage; + } + @Override public List selectCreditUnitList() { AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/HangBillServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/HangBillServiceImpl.java index d5e5b5827..34f73d0fe 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/HangBillServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/order/service/impl/HangBillServiceImpl.java @@ -1,6 +1,7 @@ package com.fuint.business.order.service.impl; import cn.hutool.core.util.ObjectUtil; +import com.alibaba.excel.EasyExcel; import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -20,12 +21,14 @@ import com.fuint.business.order.service.AllOrderInfoService; import com.fuint.business.order.service.CreditUnitService; import com.fuint.business.order.service.HangBillService; import com.fuint.business.order.service.ReturnRecordService; +import com.fuint.business.order.vo.Excel.CashierOrderExcel; import com.fuint.business.order.vo.HangBillVo; import com.fuint.common.dto.AccountInfo; import com.fuint.common.util.TokenUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.servlet.http.HttpServletResponse; import java.text.SimpleDateFormat; import java.util.*; @@ -46,6 +49,14 @@ public class HangBillServiceImpl extends ServiceImpl i return hangBillVoIPage; } + @Override + public List selectHangBillsByCreditUnit(HangBillVo hangBill) { + AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); + Integer storeId = nowAccountInfo.getStoreId(); + hangBill.setStoreId(storeId); + return baseMapper.selectHangBillsByCreditUnit(hangBill); + } + @Override public List selectHangBills() { AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); @@ -280,6 +291,31 @@ public class HangBillServiceImpl extends ServiceImpl i return baseMapper.selectNoReturnAmount(nowAccountInfo.getStoreId()); } + @Override + public void export(HttpServletResponse response, HangBillVo hangBill) { + AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo(); + Integer storeId = nowAccountInfo.getStoreId(); + hangBill.setStoreId(storeId); +// List cashierOrderExcels = baseMapper.selectCashierOrderListExport(hangBill); + + // 设置文件名字 + String fileName = "订单"+System.currentTimeMillis() + ".xlsx"; + + // 设置响应头信息 + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + response.setHeader("Content-disposition", "attachment;filename=demo.xlsx"); + + + try{ + // 写入文件数据 +// EasyExcel.write(response.getOutputStream(), CashierOrderExcel.class).sheet("download").doWrite(cashierOrderExcels); + }catch(Exception e) { + e.printStackTrace(); + throw new RuntimeException(e); + } + } + /** * 调用支付接口 * @param map diff --git a/fuintCashierWeb/src/api/cashier/creditunit.js b/fuintCashierWeb/src/api/cashier/creditunit.js index a48f79a3a..74052fc73 100644 --- a/fuintCashierWeb/src/api/cashier/creditunit.js +++ b/fuintCashierWeb/src/api/cashier/creditunit.js @@ -8,6 +8,14 @@ export function listCreditUnit(query) { params: query }) } +// 查询挂账信息列表 +export function creditUnits(query) { + return request({ + url: '/business/creditUnit/selectList', + method: 'get', + params: query + }) +} // 新增挂账记录 export function addCreditUnit(data) { diff --git a/fuintCashierWeb/src/views/cashier/NewComponents/Order.vue b/fuintCashierWeb/src/views/cashier/NewComponents/Order.vue index c92e418ce..9fc1273ba 100644 --- a/fuintCashierWeb/src/views/cashier/NewComponents/Order.vue +++ b/fuintCashierWeb/src/views/cashier/NewComponents/Order.vue @@ -7,10 +7,10 @@ - - - - + + + + @@ -18,10 +18,10 @@ - - - - + + + + diff --git a/fuintCashierWeb/src/views/cashier/NewComponents/credit.vue b/fuintCashierWeb/src/views/cashier/NewComponents/credit.vue index ad02e5344..ebeb2db0b 100644 --- a/fuintCashierWeb/src/views/cashier/NewComponents/credit.vue +++ b/fuintCashierWeb/src/views/cashier/NewComponents/credit.vue @@ -5,18 +5,6 @@ 挂账 - - - - - - - - - - - - 列表 - 新增挂账记录 + 新增挂账单位 批量挂账归还 - + - - - {{ props.row.mobile }} - - - {{ props.row.updateTime ? props.row.updateTime:"--" }} - - - {{ props.row.remark ? props.row.remark:"--" }} - - - {{ props.row.amount ? props.row.amount:"0" }} - - - {{ props.row.repaidAmount ? props.row.repaidAmount:"0" }} - - - {{ props.row.outstandAmount ? props.row.outstandAmount:"0" }} - - + + + + + + 挂账 + 归还 + + + + + + 未归还 + 已归还 + 部分归还 + + + + + + + + {{ parseTime(scope.row.createTime) }} + + + + + + 归还 + 归还详情 + + + - - - - - + + + + + + + + + + 启用 + 禁用 + + - - - - 挂账 - 归还 - - - - - - 未归还 - 已归还 - 部分归还 - - - - - - + {{ parseTime(scope.row.createTime) }} - + - - - - - 归还 + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + >修改 归还详情 + icon="el-icon-delete" + @click="handleDelete(scope.row)" + >删除 @@ -218,6 +214,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + 元 - 0为不限额,额度为当前单位最大可挂账金额,如已挂账金额归还,额度将也同步返还 + 额度为当前单位最大可挂账金额,如已挂账金额归还,额度将也同步返还 + + + + + + + + + 元 + + + 额度为当前单位最大可挂账金额,如已挂账金额归还,额度将也同步返还 + + + + + + + + + 元 + + + 额度为当前单位最大可挂账金额,如已挂账金额归还,额度将也同步返还 @@ -683,7 +804,14 @@ import { listHangBill, queryHangBill } from "@/api/cashier/hangbill"; -import {addCreditUnit, listCreditUnit} from "@/api/cashier/creditunit"; +import { + addCreditUnit, + creditUnitInfo, + creditUnits, + deleteCreditUnit, + editCreditUnit, + listCreditUnit +} from "@/api/cashier/creditunit"; import {getDicts} from "@/api/dict/data"; import {listReturnRecord, returnRecordByOrderNo, returnRecordInfo} from "@/api/cashier/returnrecord"; @@ -761,6 +889,8 @@ import {listReturnRecord, returnRecordByOrderNo, returnRecordInfo} from "@/api/c hangBillList:[], // 归还记录列表 returnRecordList:[], + // 挂账单位列表 + creditUnitList:[], // 总条数 total: 0, total1: 0, @@ -796,11 +926,11 @@ import {listReturnRecord, returnRecordByOrderNo, returnRecordInfo} from "@/api/c } }, created() { - this.getList(); - this.getUnitList(); + // this.getList(); + // this.getUnitList(); this.getPayList(); this.getLists(); - // this.getStatistic(); + this.getCreditUnits(); }, directives: { // 注册一个局部的自定义指令 v-focus @@ -816,6 +946,34 @@ import {listReturnRecord, returnRecordByOrderNo, returnRecordInfo} from "@/api/c }, }, methods:{ + handleUpdate(data){ + creditUnitInfo(data.id).then(res => { + this.form1 = res.data + this.title = "修改挂账单位" + this.open1 = true + }) + }, + handleDelete(row){ + const name = row.unitName + this.$modal.confirm('确定删除"' + name + '"的挂账单位信息?').then(function() { + // return deleteMember(row.id); + return deleteCreditUnit(row.id); + }).then(() => { + this.queryParams.page = 1 + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + getCreditUnits(val){ + if (val!=undefined){ + this.queryParams.page = val + } + creditUnits().then(res => { + this.creditUnitList = res.data.records + this.total = res.data.total; + }) + + }, // 获取挂账统计信息 getStatistic(){ hangBillReturnTotal(this.addDateRange(this.queryParams, this.dateRange)).then(res => { @@ -1138,11 +1296,31 @@ import {listReturnRecord, returnRecordByOrderNo, returnRecordInfo} from "@/api/c addCredit(){ this.$refs["formName"].validate((valid) => { if (valid) { - addCreditUnit(this.form1).then( response => { - this.$modal.msgSuccess("挂账单位信息创建成功"); - this.open1 = false; - this.getUnitList(); - }) + if (this.form1.id){ + if (this.form1.creditLimit < this.form1.residueCreditLimit){ + this.$modal.msgError("请确保预设挂账额度大于剩余挂账额度"); + return ; + } + editCreditUnit(this.form1).then(res => { + if (res.data==1) { + this.$modal.msgSuccess("挂账单位信息修改成功"); + this.open1 = false; + this.getCreditUnits(); + }else { + this.$modal.msgError("挂账单位信息修改失败"); + } + }) + }else { + addCreditUnit(this.form1).then( response => { + if (response.data==1) { + this.$modal.msgSuccess("挂账单位信息创建成功"); + this.open1 = false; + this.getCreditUnits(); + }else { + this.$modal.msgError("挂账单位信息创建失败,挂站单位名称不可重复"); + } + }) + } }else { return false; } diff --git a/fuintCashierWeb/src/views/cashier/orderComponents/order_Added.vue b/fuintCashierWeb/src/views/cashier/orderComponents/order_Added.vue index 2d77cd51f..f207e6b7a 100644 --- a/fuintCashierWeb/src/views/cashier/orderComponents/order_Added.vue +++ b/fuintCashierWeb/src/views/cashier/orderComponents/order_Added.vue @@ -1,116 +1,174 @@ + - - - - - - - - - - 搜索 - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 查询 + 重置 + + + - 增值交易统计 + 统计 - - 订单总数 - 55 + + 挂账笔数 + {{ total }} + + + 挂账总额 + {{ allAmount }} + + + 归还笔数 + {{ returnTotal }} + + + 归还总额 + {{ returnAllAmount }} + + + 未还金额 + {{ noReturnAllAmount }} - + - 增值交易列表 + 挂账订单列表 - 新增会员 + 导出订单 - - - {{ props.row.name }} + + + {{ props.row.mobile }} + + + {{ props.row.updateTime ? props.row.updateTime:"--" }} + + + {{ props.row.remark ? props.row.remark:"--" }} + + + {{ props.row.amount ? props.row.amount:"0" }} + + + {{ props.row.repaidAmount ? props.row.repaidAmount:"0" }} + + + {{ props.row.outstandAmount ? props.row.outstandAmount:"0" }} - + + + + + - - + + + + 挂账 + 归还 + - + + + + 未归还 + 已归还 + 部分归还 + - + + - - - - - - - - - - - - - - - - - - - - - + + + + {{ parseTime(scope.row.createTime) }} + @@ -118,87 +176,253 @@ 更多操作 - + @click="returnRecord(scope.row.id)" + >归还详情 - + :total="total" + :page.sync="queryParams.page" + :limit.sync="queryParams.pageSize" + @current-change="getList"> + + + + + + + + + 单据号:{{record.orderNo}} + + + + + 操作员工: + {{ record.realName }} + + + + + 挂账单位 + {{record.unitName}} + + + 挂账人 + {{record.personCredit}} + + + 联系电话 + {{record.contactMobile}} + + + + + + + + + 挂账 + 归还 + + + + + + + {{ getPayMeth(payList,scope.row.status) }} + + + + + 未支付 + 已支付 + 支付失败 + + + + + + {{ parseTime(scope.row.payTime) }} + + + + + + + + + + + diff --git a/fuintCashierWeb/src/views/cashier/orderComponents/order_Cashier.vue b/fuintCashierWeb/src/views/cashier/orderComponents/order_Cashier.vue index 145108551..4a3fb4c93 100644 --- a/fuintCashierWeb/src/views/cashier/orderComponents/order_Cashier.vue +++ b/fuintCashierWeb/src/views/cashier/orderComponents/order_Cashier.vue @@ -19,27 +19,27 @@ + - - - - - - - - - - - - 至 - - + + + + + + + + + + 搜索 @@ -418,6 +418,8 @@ import {formatDate} from "@/utils"; queryParams: { page: 1, pageSize: 10, + beginTime:"", + endTime:"", }, orderStatistics:{ numberOfStrokes:'0', @@ -440,8 +442,8 @@ import {formatDate} from "@/utils"; methods:{ exportExcelCashier() { - this.dateRange.push(this.beginTime) - this.dateRange.push(this.endTime) + // this.dateRange.push(this.beginTime) + // this.dateRange.push(this.endTime) exportExcelCashierApi(this.addDateRange(this.queryParams, this.dateRange)).then(res=>{ const blob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }); this.$download.saveAs(blob,'收银台订单统计.xLsx') @@ -450,8 +452,8 @@ import {formatDate} from "@/utils"; // 获取订单统计信息 getOrderStatistics() { - this.dateRange.push(this.beginTime) - this.dateRange.push(this.endTime) + // this.dateRange.push(this.beginTime) + // this.dateRange.push(this.endTime) orderStatisticsApi(this.addDateRange(this.queryParams, this.dateRange)).then(res=>{ this.orderStatistics = res.data }) @@ -682,6 +684,16 @@ import {formatDate} from "@/utils"; this.goodsInfo = response.data; }) }, + parseTime1(dateTime) { + let date = new Date(dateTime); + let y = date.getFullYear() + "-"; + let mon = ((date.getMonth() + 1 < 10) ? ('0' + date.getMonth()) : date.getMonth()) + "-"; + let d = ((date.getDate() < 10) ? ('0' + date.getDate()) : date.getDate()) + " "; + let h = ((date.getHours() < 10) ? ('0' + date.getHours()) : date.getHours()) + ":"; + let m = ((date.getMinutes() < 10) ? ('0' + date.getMinutes()) : date.getMinutes()) + ":"; + let s = ((date.getSeconds() < 10) ? ('0' + date.getSeconds()) : date.getSeconds()); + return new Date(y , mon , d , h , m , s); + }, // 获取列表信息 getList(val){ if (val!=undefined){ @@ -691,17 +703,17 @@ import {formatDate} from "@/utils"; let time1 = "" let time2 = "" if (this.beginTime && this.endTime){ - let beginTime = this.beginTime.getTime() - let endTime = this.endTime.getTime() - // time1 = formatDate(beginTime, 'yyyy-MM-dd') - // time2 = formatDate(endTime, 'yyyy-MM-dd') - time1 = new Date(beginTime) - time2 = new Date(endTime) - this.$modal.msgError(time1) + // let beginTime = this.beginTime.getTime() + // let endTime = this.endTime.getTime() + time1 = this.parseTime1(this.beginTime) + time2 = this.parseTime1(this.endTime) } + let dateRange = [] // this.$modal.msgError() - this.dateRange.push(time1) - this.dateRange.push(time2) + // dateRange.push(time1.toString()) + // dateRange.push(time2.toString()) + // this.$modal.msgError(this.dateRange.toString()) + // this.dateRange = dateRange.toString() listCashierOrder(this.addDateRange(this.queryParams, this.dateRange)).then( response => { this.orderList = response.data.records; this.total = response.data.total; @@ -712,8 +724,8 @@ import {formatDate} from "@/utils"; if (val!=undefined){ this.queryParams.page = val } - this.dateRange.push(this.beginTime) - this.dateRange.push(this.endTime) + // this.dateRange.push(this.beginTime) + // this.dateRange.push(this.endTime) cashierOrderSeekZeroAmount(this.addDateRange(this.queryParams, this.dateRange)).then( response => { if (response.data) { this.seekZeroAmount = response.data diff --git a/fuintCashierWeb/src/views/cashier/orderComponents/order_Goods.vue b/fuintCashierWeb/src/views/cashier/orderComponents/order_Goods.vue index f2831fd52..aa53457ea 100644 --- a/fuintCashierWeb/src/views/cashier/orderComponents/order_Goods.vue +++ b/fuintCashierWeb/src/views/cashier/orderComponents/order_Goods.vue @@ -53,7 +53,7 @@ size="medium" value-format="yyyy-MM-dd" type="daterange" - range-separator="-" + range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" > diff --git a/fuintCashierWeb/src/views/cashier/orderComponents/order_Oil.vue b/fuintCashierWeb/src/views/cashier/orderComponents/order_Oil.vue index e891bc53f..fa24eb03d 100644 --- a/fuintCashierWeb/src/views/cashier/orderComponents/order_Oil.vue +++ b/fuintCashierWeb/src/views/cashier/orderComponents/order_Oil.vue @@ -73,7 +73,7 @@ size="medium" value-format="yyyy-MM-dd" type="daterange" - range-separator="-" + range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" > @@ -142,54 +142,51 @@ v-loading="loading" :data="oilOrderList" style="width: 100%"> - - - - - {{ props.row.userId ? queryUser(userList,props.row.userId):"--" }} - - - {{ queryStaf(staffList,props.row.staffId) }} - - - {{ getVal(terminalList,props.row.terminal) }} - - - {{ props.row.remark ? props.row.remark:"--" }} - - - - + + + + + - - - + + + + + + + + + + + + + + + + + {{ getVal(terminalList,props.row.terminal) }} - + - + {{ getName(oilNameList,props.row.oils) }}/{{ getName1(oilGunList,props.row.oilGunNum) }} - - + + - - - - {{ (props.row.orderAmount - props.row.discountAmount - props.row.payAmount).toFixed(2) || 0 }} - 0 - - - - + + + + + {{getType(payList,scope.row.payType)}} @@ -204,6 +201,11 @@ + + + {{scope.row.remark || "--"}} + + diff --git a/gasStation-uni/pagesRefuel/orderDetail/index.vue b/gasStation-uni/pagesRefuel/orderDetail/index.vue index 08f56135a..30b545ea7 100644 --- a/gasStation-uni/pagesRefuel/orderDetail/index.vue +++ b/gasStation-uni/pagesRefuel/orderDetail/index.vue @@ -311,7 +311,7 @@ activeId:this.preferentialData.activeId, cardFavorableId:this.preferentialData.cardFavorableId, type:this.preferentialData.type, - balanceAmount:this.balanceRedece, + balanceAmountSale:this.balanceRedece, oilCardAmountSale:this.oilCardRedece, }; let _this = this;