Browse Source

1..客户名称修改,需要把customer、debt一并修改

3.后台-删除员工 不要删除 user
6.加一个修改店铺 shop_icon 的接囗

9.t dealings_record表加两个字段:充值时间、备注。app/debt/recharge 这个接口保存 app/bi/getCustomerbil接口需要返回这两个字段10.
app/checkstock/getCheckstock 盘点详情 返回每个商品的采购价
dev
wangfukang 1 year ago
parent
commit
74344fac48
  1. 14
      hiver-admin/test-output/test-report.html
  2. 11
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/bill/vo/CustomerBillSaleVo.java
  3. 6
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/bill/vo/SupplierBillPurchaseVo.java
  4. 17
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/checkstock/service/impl/CheckStockDetailServiceImpl.java
  5. 4
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/checkstock/vo/CheckStockDetailVo.java
  6. 2
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommonController.java
  7. 11
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java
  8. 20
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ShopController.java
  9. 15
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/debt/entity/Debt.java
  10. 2
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/debt/service/impl/DebtServiceImpl.java
  11. 11
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/DealingsRecord.java
  12. 3
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/vo/SaleVO.java
  13. 10
      hiver-modules/hiver-mall/src/main/resources/mapper/DealingsRecordMapper.xml

14
hiver-admin/test-output/test-report.html

@ -35,7 +35,7 @@
<a href="#"><span class="badge badge-primary">Hiver</span></a>
</li>
<li class="m-r-10">
<a href="#"><span class="badge badge-primary">十一月 06, 2024 09:30:15</span></a>
<a href="#"><span class="badge badge-primary">十一月 07, 2024 20:11:47</span></a>
</li>
</ul>
</div>
@ -84,7 +84,7 @@
<div class="test-detail">
<span class="meta text-white badge badge-sm"></span>
<p class="name">passTest</p>
<p class="text-sm"><span>09:30:15 上</span> / <span>0.016 secs</span></p>
<p class="text-sm"><span>20:11:48 下</span> / <span>0.016 secs</span></p>
</div>
<div class="test-contents d-none">
<div class="detail-head">
@ -92,8 +92,8 @@
<div class="info">
<div class='float-right'><span class='badge badge-default'>#test-id=1</span></div>
<h5 class="test-status text-pass">passTest</h5>
<span class='badge badge-success'>11.06.2024 09:30:15</span>
<span class='badge badge-danger'>11.06.2024 09:30:15</span>
<span class='badge badge-success'>11.07.2024 20:11:48</span>
<span class='badge badge-danger'>11.07.2024 20:11:48</span>
<span class='badge badge-default'>0.016 secs</span>
</div>
<div class="m-t-10 m-l-5"></div>
@ -104,7 +104,7 @@
<tbody>
<tr class="event-row">
<td><span class="badge log pass-bg">Pass</span></td>
<td>9:30:15</td>
<td>20:11:48</td>
<td>
Test passed
</td>
@ -128,13 +128,13 @@
<div class="col-md-3">
<div class="card"><div class="card-body">
<p class="m-b-0">Started</p>
<h3>十一月 06, 2024 09:30:15</h3>
<h3>十一月 07, 2024 20:11:47</h3>
</div></div>
</div>
<div class="col-md-3">
<div class="card"><div class="card-body">
<p class="m-b-0">Ended</p>
<h3>十一月 06, 2024 09:30:15</h3>
<h3>十一月 07, 2024 20:11:48</h3>
</div></div>
</div>
<div class="col-md-3">

11
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/bill/vo/CustomerBillSaleVo.java

@ -1,9 +1,12 @@
package cc.hiver.mall.bill.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
@ -59,6 +62,14 @@ public class CustomerBillSaleVo {
@ApiModelProperty(value = "交易类型:0:开单;1:退货;2:回款")
private Integer dealingsType;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "交易时间")
private Date dealingsTime;
@ApiModelProperty(value = "交易备注")
private String dealingsRecordRemark;
@ApiModelProperty(value = "删除标识")
private Integer delFlag;

6
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/bill/vo/SupplierBillPurchaseVo.java

@ -47,6 +47,12 @@ public class SupplierBillPurchaseVo {
@ApiModelProperty(value = "交易类型:0:开单;1:退货;2:回款")
private Integer dealingsType;
@ApiModelProperty(value = "交易时间")
private Integer dealingsTime;
@ApiModelProperty(value = "交易备注")
private String dealingsRecordRemark;
@ApiModelProperty(value = "入库时间,20240727重新定义为入库单的创建时间,createTime为前台传递的入库单")
private String purchaseTime;

17
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/checkstock/service/impl/CheckStockDetailServiceImpl.java

@ -8,6 +8,8 @@ import cc.hiver.mall.checkstock.service.CheckStockDetailService;
import cc.hiver.mall.checkstock.vo.CheckStockAttributeVo;
import cc.hiver.mall.checkstock.vo.CheckStockDetailVo;
import cc.hiver.mall.deductlog.vo.WorkerDeductLogVo;
import cc.hiver.mall.entity.Product;
import cc.hiver.mall.service.mybatis.ProductService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
@ -34,6 +36,9 @@ public class CheckStockDetailServiceImpl extends ServiceImpl<CheckStockDetailMap
@Autowired
private CheckStockDetailMapper checkStockDetailMapper;
@Autowired
private ProductService productService;
/**
* 添加盘点详情信息
*
@ -173,8 +178,13 @@ public class CheckStockDetailServiceImpl extends ServiceImpl<CheckStockDetailMap
checkStockDetailListOfProduct.setRecords(new ArrayList<>());
}
checkStockPageQuery.setProductIdList(checkStockDetailListOfProduct.getRecords());
// 查询出来商品信息,获取采购价
List<Product> productList = productService.getProductList(checkStockDetailListOfProduct.getRecords());
// 商品id为key,商品信息为value封装被map
Map<String,Product> productMap = new HashMap<>();
for (Product product : productList) {
productMap.put(product.getId(),product);
}
if (!checkStockPageQuery.getProductIdList().isEmpty()) {
final List<CheckStockDetail> checkStockDetailList = checkStockDetailMapper.getByCheckStockDetailByCheckIdOfPage(checkStockPageQuery);
@ -187,6 +197,9 @@ public class CheckStockDetailServiceImpl extends ServiceImpl<CheckStockDetailMap
vo.setProductName(detail.getProductName());
vo.setProductPicture(detail.getProductPicture());
vo.setProductSn(detail.getProductSn());
if(productMap.containsKey(detail.getProductId())){
vo.setPurchasePrice(productMap.get(detail.getProductId()).getPurchasePrice());
}
vo.setCheckStockAttributeVos(new ArrayList<>());
final CheckStockAttributeVo attributeVo = new CheckStockAttributeVo();
attributeVo.setAttributeList(detail.getAttributeList());

4
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/checkstock/vo/CheckStockDetailVo.java

@ -3,6 +3,7 @@ package cc.hiver.mall.checkstock.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
@ -23,6 +24,9 @@ public class CheckStockDetailVo {
@ApiModelProperty(value = "商品货号")
private String productSn;
@ApiModelProperty(value = "采购价")
private BigDecimal purchasePrice;
@ApiModelProperty(value = "商品规格明细")
private List<CheckStockAttributeVo> checkStockAttributeVos;
}

2
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommonController.java

@ -171,7 +171,7 @@ public class CommonController {
for (String id : ids) {
final User user = userService.get(id);
// 员工信息
userService.delete(id);
// userService.delete(id);
// 员工店铺关联信息
final String shopId = securityUtil.getShopId();
shopUserService.deleteAllByShopIdAndUserId(shopId, id);

11
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CustomerController.java

@ -13,6 +13,8 @@ import cc.hiver.core.entity.UserRole;
import cc.hiver.core.service.RoleService;
import cc.hiver.core.service.UserRoleService;
import cc.hiver.core.service.UserService;
import cc.hiver.mall.debt.entity.Debt;
import cc.hiver.mall.debt.service.DebtService;
import cc.hiver.mall.entity.Customer;
import cc.hiver.mall.pojo.dto.DebtCustomer;
import cc.hiver.mall.pojo.query.CustomerPageQuery;
@ -54,6 +56,9 @@ public class CustomerController {
@Autowired
private RoleService roleService;
@Autowired
private DebtService debtService;
@RequestMapping(value = "/save", method = RequestMethod.POST)
@ApiOperation("新增客户")
@Transactional
@ -132,6 +137,12 @@ public class CustomerController {
}
final boolean result = customerService.updateById(customer);
// 更新客户欠款的名称
final Debt debt = debtService.selectByUserId(customer.getShopId(), customer.getId());
if(!customer.getName().equals(debt.getUserName())){
debt.setUserName(customer.getName());
debtService.updateById(debt);
}
if (result) {
return ResultUtil.success("修改成功");
} else {

20
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ShopController.java

@ -334,4 +334,24 @@ public class ShopController {
}
return ResultUtil.data(shop.getShopIcon());
}
/**
* 修改店铺的ShopIcon
* @author 王富康
* @date 2024/11/7
* @param shopId
* @param shopIcon
* @return Result
*/
@RequestMapping(value = "/editShopIconById", method = RequestMethod.POST)
@ApiOperation("修改店铺的ShopIcon")
public Result editShopIconById(String shopId,String shopIcon) {
if (StringUtils.isEmpty(shopId)) {
return ResultUtil.error("店铺id不能为空");
}
final Shop shop = shopService.findById(shopId);
shop.setShopIcon(shopIcon);
shopService.update(shop);
return ResultUtil.data(shop);
}
}

15
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/debt/entity/Debt.java

@ -3,12 +3,15 @@ package cc.hiver.mall.debt.entity;
import cc.hiver.core.base.HiverBaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Transient;
import java.math.BigDecimal;
import java.util.Date;
@Data
@ApiModel(value = "欠款表")
@ -47,4 +50,16 @@ public class Debt extends HiverBaseEntity {
@ApiModelProperty(value = "客户分类名称")
private String categoryName;
@Transient
@TableField(exist = false)
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "交易时间")
private Date dealingsTime;
@Transient
@TableField(exist = false)
@ApiModelProperty(value = "备注")
private String remark;
}

2
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/debt/service/impl/DebtServiceImpl.java

@ -350,6 +350,8 @@ public class DebtServiceImpl extends ServiceImpl<DebtMapper, Debt> implements De
dealingsRecord.setAmount(debt.getAmountOwed());
// 充值
dealingsRecord.setDealingsType(dealingsType);
dealingsRecord.setDealingsTime(debt.getDealingsTime());
dealingsRecord.setRemark(debt.getRemark());
dealingsRecord.setUserType(DealingsRecordConstant.TYPE[1]);
dealingsRecordService.save(dealingsRecord);

11
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/DealingsRecord.java

@ -2,16 +2,19 @@ package cc.hiver.mall.entity;
import cc.hiver.core.base.HiverBaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
@Data
@Accessors(chain = true)
@ -64,4 +67,12 @@ public class DealingsRecord extends HiverBaseEntity {
@ApiModelProperty(value = "交易类型:0:开单;1:退货;2:回款")
private Integer dealingsType;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "交易时间")
private Date dealingsTime;
@ApiModelProperty(value = "备注")
private String remark;
}

3
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/vo/SaleVO.java

@ -1,5 +1,6 @@
package cc.hiver.mall.pojo.vo;
import cc.hiver.core.base.HiverBasePageQuery;
import cc.hiver.core.common.vo.PageVo;
import cc.hiver.core.common.vo.SearchDateVo;
import io.swagger.annotations.ApiModel;
@ -9,7 +10,7 @@ import lombok.Data;
import java.io.Serializable;
@Data
@ApiModel(value = "销售单主表")
public class SaleVO implements Serializable {
public class SaleVO extends HiverBasePageQuery implements Serializable {
@ApiModelProperty(value = "销售单id")
private String saleId;

10
hiver-modules/hiver-mall/src/main/resources/mapper/DealingsRecordMapper.xml

@ -21,6 +21,8 @@
<result column="return_amount" jdbcType="DECIMAL" property="returnAmount"/>
<result column="last_debt_amount" jdbcType="DECIMAL" property="lastDebtAmount"/>
<result column="dealings_type" jdbcType="VARCHAR" property="dealingsType"/>
<result column="dealings_time" jdbcType="TIMESTAMP" property="dealingsTime"/>
<result column="remark" jdbcType="VARCHAR" property="remark"/>
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -85,7 +87,7 @@
<sql id="Base_Column_List">
id, create_by, create_by_name, create_time, update_time, update_by,
del_flag, sale_id, dealings_user_id, dealings_user_name, user_type, amount,dealings_way,balance_due,shop_id,
sale_amount,return_amount,last_debt_amount,dealings_type
sale_amount,return_amount,last_debt_amount,dealings_type,dealings_time,remark
</sql>
<!--getDealingsRecordList-->
@ -141,6 +143,8 @@
tdr.amount,
tdr.balance_due,
tdr.dealings_type,
tdr.dealings_time,
tdr.remark as dealings_record_remark,
tdr.del_flag,
tdr.dealings_user_name,
ts.total_amount,
@ -185,6 +189,8 @@
tdr.amount,
tdr.balance_due,
tdr.dealings_type,
tdr.dealings_time,
tdr.remark as dealings_record_remark,
tdr.del_flag,
ts.should_pay,
ts.balance_deduction_amount,
@ -215,6 +221,8 @@
tdr.amount,
tdr.balance_due,
tdr.dealings_type,
tdr.dealings_time,
tdr.remark as dealings_record_remark,
tdr.del_flag,
ts.should_pay,
ts.balance_deduction_amount,

Loading…
Cancel
Save