10 changed files with 292 additions and 0 deletions
-
31src/main/java/com/xujie/sys/modules/quote/controller/QuoteDetailCalculationController.java
-
42src/main/java/com/xujie/sys/modules/quote/entity/QuoteBaseCalculation.java
-
78src/main/java/com/xujie/sys/modules/quote/entity/QuoteDetailCalculation.java
-
9src/main/java/com/xujie/sys/modules/quote/mapper/QuoteBaseCalculationMapper.java
-
11src/main/java/com/xujie/sys/modules/quote/mapper/QuoteDetailCalculationMapper.java
-
7src/main/java/com/xujie/sys/modules/quote/service/QuoteBaseCalculationService.java
-
17src/main/java/com/xujie/sys/modules/quote/service/QuoteDetailCalculationService.java
-
12src/main/java/com/xujie/sys/modules/quote/service/impl/QuoteBaseCalculationServiceImpl.java
-
76src/main/java/com/xujie/sys/modules/quote/service/impl/QuoteDetailCalculationServiceImpl.java
-
9src/main/java/com/xujie/sys/modules/quote/service/impl/QuoteDetailServiceImpl.java
@ -0,0 +1,31 @@ |
|||||
|
package com.xujie.sys.modules.quote.controller; |
||||
|
|
||||
|
import com.xujie.sys.common.utils.R; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetailCalculation; |
||||
|
import com.xujie.sys.modules.quote.service.QuoteDetailCalculationService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.PostMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestBody; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
@RestController |
||||
|
@RequestMapping("/quote/detail/calculation") |
||||
|
public class QuoteDetailCalculationController { |
||||
|
|
||||
|
@Autowired |
||||
|
private QuoteDetailCalculationService quoteDetailCalculationService; |
||||
|
|
||||
|
|
||||
|
@PostMapping |
||||
|
public R queryQuoteDetailCalculation(@RequestBody QuoteDetailCalculation quoteDetailCalculation) { |
||||
|
QuoteDetailCalculation calculation = quoteDetailCalculationService.queryQuoteDetailCalculation(quoteDetailCalculation); |
||||
|
return R.ok().put("row",calculation); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("/update") |
||||
|
public R updateQuoteDetailCalculation(@RequestBody QuoteDetailCalculation quoteDetailCalculation) { |
||||
|
quoteDetailCalculationService.updateQuoteDetailCalculation(quoteDetailCalculation); |
||||
|
return R.ok("操作成功"); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,42 @@ |
|||||
|
package com.xujie.sys.modules.quote.entity; |
||||
|
|
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
|
||||
|
@TableName("plm_quote_base_calculation") |
||||
|
@Data |
||||
|
public class QuoteBaseCalculation { |
||||
|
|
||||
|
private Integer id; |
||||
|
|
||||
|
private BigDecimal laborBackendRate; |
||||
|
|
||||
|
private BigDecimal machBackendRate; |
||||
|
|
||||
|
private BigDecimal manuBackendRate; |
||||
|
|
||||
|
private BigDecimal laborParisRate; |
||||
|
|
||||
|
private BigDecimal machParisRate; |
||||
|
|
||||
|
private BigDecimal manuParisRate; |
||||
|
|
||||
|
private BigDecimal laborPrintRate; |
||||
|
|
||||
|
private BigDecimal machPrintRate; |
||||
|
|
||||
|
private BigDecimal manuPrintRate; |
||||
|
|
||||
|
private BigDecimal laborFrontRate; |
||||
|
|
||||
|
private BigDecimal machFrontRate; |
||||
|
|
||||
|
private BigDecimal manuFrontRate; |
||||
|
|
||||
|
private BigDecimal convertingRate; |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,78 @@ |
|||||
|
package com.xujie.sys.modules.quote.entity; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.io.Serializable; |
||||
|
import com.baomidou.mybatisplus.annotation.TableField; |
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
/** |
||||
|
* (PlmQuoteDetailCalculation)实体类 |
||||
|
* |
||||
|
* @author makejava |
||||
|
* @since 2025-01-06 13:07:20 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper = false) |
||||
|
@TableName("plm_quote_detail_calculation") |
||||
|
public class QuoteDetailCalculation implements Serializable { |
||||
|
private static final long serialVersionUID = -23820257744465822L; |
||||
|
|
||||
|
@TableId |
||||
|
private Long id; |
||||
|
|
||||
|
private Long quoteId; |
||||
|
|
||||
|
private Long quoteDetailId; |
||||
|
|
||||
|
private Integer quoteDetailItemNo; |
||||
|
|
||||
|
private String site; |
||||
|
|
||||
|
private String buNo; |
||||
|
|
||||
|
private String quoteNo; |
||||
|
|
||||
|
private String versionNo; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 人工后道费率 |
||||
|
*/ |
||||
|
private BigDecimal laborBackendRate; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 机器后道费率 |
||||
|
*/ |
||||
|
private BigDecimal machBackendRate; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 制造后道费率 |
||||
|
*/ |
||||
|
private BigDecimal manuBackendRate; |
||||
|
|
||||
|
private BigDecimal laborParisRate; |
||||
|
|
||||
|
private BigDecimal machParisRate; |
||||
|
|
||||
|
private BigDecimal manuParisRate; |
||||
|
|
||||
|
private BigDecimal laborPrintRate; |
||||
|
|
||||
|
private BigDecimal machPrintRate; |
||||
|
|
||||
|
private BigDecimal manuPrintRate; |
||||
|
|
||||
|
private BigDecimal laborFrontRate; |
||||
|
|
||||
|
private BigDecimal machFrontRate; |
||||
|
|
||||
|
private BigDecimal manuFrontRate; |
||||
|
|
||||
|
private BigDecimal convertingRate; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,9 @@ |
|||||
|
package com.xujie.sys.modules.quote.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteBaseCalculation; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface QuoteBaseCalculationMapper extends BaseMapper<QuoteBaseCalculation> { |
||||
|
} |
||||
@ -0,0 +1,11 @@ |
|||||
|
package com.xujie.sys.modules.quote.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetailCalculation; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface QuoteDetailCalculationMapper extends BaseMapper<QuoteDetailCalculation> { |
||||
|
|
||||
|
|
||||
|
} |
||||
@ -0,0 +1,7 @@ |
|||||
|
package com.xujie.sys.modules.quote.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.service.IService; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteBaseCalculation; |
||||
|
|
||||
|
public interface QuoteBaseCalculationService extends IService<QuoteBaseCalculation> { |
||||
|
} |
||||
@ -0,0 +1,17 @@ |
|||||
|
package com.xujie.sys.modules.quote.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.service.IService; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetail; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetailCalculation; |
||||
|
|
||||
|
public interface QuoteDetailCalculationService extends IService<QuoteDetailCalculation> { |
||||
|
|
||||
|
void initQuoteDetailCalculation(QuoteDetail quoteDetail); |
||||
|
|
||||
|
void againQuoteDetailCalculation(QuoteDetail quoteDetail, Long detailId); |
||||
|
|
||||
|
void updateQuoteDetailCalculation(QuoteDetailCalculation calculation); |
||||
|
|
||||
|
QuoteDetailCalculation queryQuoteDetailCalculation(QuoteDetailCalculation quoteDetailCalculation); |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,12 @@ |
|||||
|
package com.xujie.sys.modules.quote.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteBaseCalculation; |
||||
|
import com.xujie.sys.modules.quote.mapper.QuoteBaseCalculationMapper; |
||||
|
import com.xujie.sys.modules.quote.service.QuoteBaseCalculationService; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
@Service |
||||
|
public class QuoteBaseCalculationServiceImpl extends ServiceImpl<QuoteBaseCalculationMapper, QuoteBaseCalculation> implements QuoteBaseCalculationService { |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,76 @@ |
|||||
|
package com.xujie.sys.modules.quote.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteBaseCalculation; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetail; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetailCalculation; |
||||
|
import com.xujie.sys.modules.quote.entity.QuoteDetailTool; |
||||
|
import com.xujie.sys.modules.quote.mapper.QuoteDetailCalculationMapper; |
||||
|
import com.xujie.sys.modules.quote.service.QuoteBaseCalculationService; |
||||
|
import com.xujie.sys.modules.quote.service.QuoteDetailCalculationService; |
||||
|
import org.springframework.beans.BeanUtils; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class QuoteDetailCalculationServiceImpl extends ServiceImpl<QuoteDetailCalculationMapper, QuoteDetailCalculation> implements QuoteDetailCalculationService { |
||||
|
|
||||
|
@Autowired |
||||
|
private QuoteBaseCalculationService quoteBaseCalculationService; |
||||
|
|
||||
|
@Override |
||||
|
public void initQuoteDetailCalculation(QuoteDetail quoteDetail) { |
||||
|
QuoteBaseCalculation baseCalculation = quoteBaseCalculationService.getById(1); |
||||
|
QuoteDetailCalculation calculation = new QuoteDetailCalculation(); |
||||
|
// 复制属性 |
||||
|
BeanUtils.copyProperties(baseCalculation,calculation); |
||||
|
// 将ID设置为Null |
||||
|
calculation.setId(null); |
||||
|
// 外键信息 |
||||
|
calculation.setQuoteId(quoteDetail.getQuoteId()); |
||||
|
calculation.setQuoteDetailId(quoteDetail.getId()); |
||||
|
calculation.setQuoteDetailItemNo(quoteDetail.getItemNo()); |
||||
|
calculation.setSite(quoteDetail.getSite()); |
||||
|
calculation.setBuNo(quoteDetail.getBuNo()); |
||||
|
calculation.setQuoteNo(quoteDetail.getQuoteNo()); |
||||
|
calculation.setVersionNo(quoteDetail.getVersionNo()); |
||||
|
// 新增操作 |
||||
|
save(calculation); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void againQuoteDetailCalculation(QuoteDetail quoteDetail, Long detailId) { |
||||
|
List<QuoteDetailCalculation> list = lambdaQuery().eq(QuoteDetailCalculation::getQuoteDetailId, detailId).list(); |
||||
|
for (QuoteDetailCalculation calculation : list) { |
||||
|
calculation.setQuoteId(quoteDetail.getQuoteId()); |
||||
|
calculation.setQuoteDetailId(quoteDetail.getId()); |
||||
|
calculation.setQuoteNo(quoteDetail.getQuoteNo()); |
||||
|
calculation.setVersionNo(quoteDetail.getVersionNo()); |
||||
|
calculation.setQuoteDetailItemNo(quoteDetail.getItemNo()); |
||||
|
calculation.setId(null); |
||||
|
save(calculation); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updateQuoteDetailCalculation(QuoteDetailCalculation calculation) { |
||||
|
|
||||
|
QuoteBaseCalculation baseCalculation = new QuoteBaseCalculation(); |
||||
|
BeanUtils.copyProperties(calculation,baseCalculation); |
||||
|
|
||||
|
updateById(calculation); |
||||
|
|
||||
|
baseCalculation.setId(1); |
||||
|
|
||||
|
quoteBaseCalculationService.updateById(baseCalculation); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public QuoteDetailCalculation queryQuoteDetailCalculation(QuoteDetailCalculation quoteDetailCalculation) { |
||||
|
return lambdaQuery() |
||||
|
.eq(QuoteDetailCalculation::getQuoteDetailId,quoteDetailCalculation.getQuoteDetailId()) |
||||
|
.one(); |
||||
|
} |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue