Browse Source

oms采购单、采购退货单

master
God 11 months ago
parent
commit
668ec05713
  1. 2
      src/main/java/com/yxt/purchase/PurchaseApplication.java
  2. 40
      src/main/java/com/yxt/purchase/apiadmin/PurchaseBillAmountRest.java
  3. 60
      src/main/java/com/yxt/purchase/apiadmin/PurchaseBillDetailRest.java
  4. 42
      src/main/java/com/yxt/purchase/apiadmin/PurchaseBillExtendRest.java
  5. 58
      src/main/java/com/yxt/purchase/apiadmin/PurchaseBillInvoiceRest.java
  6. 74
      src/main/java/com/yxt/purchase/apiadmin/PurchaseBillRest.java
  7. 74
      src/main/java/com/yxt/purchase/apiadmin/PurchasebackBillRest.java
  8. 60
      src/main/java/com/yxt/purchase/apiadmin/PurchasebackDetailRest.java
  9. 85
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBill.java
  10. 103
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillDetailsVo.java
  11. 99
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillDto.java
  12. 65
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillMapper.java
  13. 83
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillMapper.xml
  14. 84
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillQuery.java
  15. 204
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillService.java
  16. 89
      src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillVo.java
  17. 92
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetail.java
  18. 94
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailDetailsVo.java
  19. 92
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailDto.java
  20. 65
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailMapper.java
  21. 21
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailMapper.xml
  22. 50
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailQuery.java
  23. 93
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailService.java
  24. 50
      src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailVo.java
  25. 103
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBill.java
  26. 107
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillDetailsVo.java
  27. 104
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillDto.java
  28. 59
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillMapper.java
  29. 76
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillMapper.xml
  30. 79
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillQuery.java
  31. 180
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillService.java
  32. 90
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillVo.java
  33. 85
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillDetailsVo.java
  34. 79
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillQuery.java
  35. 92
      src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillVo.java
  36. 82
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmount.java
  37. 95
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountDetailsVo.java
  38. 95
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountDto.java
  39. 41
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountMapper.java
  40. 6
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountMapper.xml
  41. 50
      src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountService.java
  42. 102
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetail.java
  43. 102
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailDetailsVo.java
  44. 102
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailDto.java
  45. 65
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailMapper.java
  46. 46
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailMapper.xml
  47. 93
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailQuery.java
  48. 59
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailReportQuery.java
  49. 77
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailReportVo.java
  50. 113
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailService.java
  51. 71
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailSumVo.java
  52. 96
      src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailVo.java
  53. 72
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtend.java
  54. 70
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendDetailsVo.java
  55. 70
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendDto.java
  56. 60
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendMapper.java
  57. 6
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendMapper.xml
  58. 83
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendQuery.java
  59. 67
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendService.java
  60. 85
      src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendVo.java
  61. 81
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoice.java
  62. 81
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceDetailsVo.java
  63. 81
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceDto.java
  64. 67
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceMapper.java
  65. 13
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceMapper.xml
  66. 80
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceQuery.java
  67. 94
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceService.java
  68. 81
      src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceVo.java
  69. 1
      src/main/java/com/yxt/purchase/biz/purchasereceiptbill/PurchaseReceiptBillService.java

2
src/main/java/com/yxt/purchase/PurchaseApplication.java

@ -12,7 +12,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication(scanBasePackages = {
"com.yxt.purchase.config",
"com.yxt.common.base.config",
"com.yxt.goods"
"com.yxt.purchase"
})
// 启用自带定时任务
@EnableScheduling

40
src/main/java/com/yxt/purchase/apiadmin/PurchaseBillAmountRest.java

@ -0,0 +1,40 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购单-费用/预付款")
@RestController
@RequestMapping("/apiadmin/purchasebillamount")
public class PurchaseBillAmountRest {
@Autowired
private PurchaseBillAmountService purchaseBillAmountService;
}

60
src/main/java/com/yxt/purchase/apiadmin/PurchaseBillDetailRest.java

@ -0,0 +1,60 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.purchase.biz.purchasebilldetail.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购单据明细")
@RestController
@RequestMapping("/apiadmin/pmspurchasebilldetail")
public class PurchaseBillDetailRest {
@Autowired
private PurchaseBillDetailService purchaseBillDetailService;
@ApiOperation("采购明细报表")
@PostMapping("/purDetailReForm")
public ResultBean<PagerVo<PurchaseBillDetailReportVo>> purDetailReForm(@RequestBody PagerQuery<PurchaseBillDetailReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<PurchaseBillDetailReportVo> pv = purchaseBillDetailService.purDetailReForm(pq);
return rb.success().setData(pv);
}
@ApiOperation("采购汇总报表")
@PostMapping("/purSumReForm")
public ResultBean<PagerVo<PurchaseBillDetailSumVo>> purSumReForm(@RequestBody PagerQuery<PurchaseBillDetailReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<PurchaseBillDetailSumVo> pv = purchaseBillDetailService.purSumReForm(pq);
return rb.success().setData(pv);
}
}

42
src/main/java/com/yxt/purchase/apiadmin/PurchaseBillExtendRest.java

@ -0,0 +1,42 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.result.ResultBean;
import com.yxt.purchase.biz.purchasebillextend.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购单扩展")
@RestController
@RequestMapping("/apiadmin/pmspurchasebillextend")
public class PurchaseBillExtendRest {
@Autowired
private PurchaseBillExtendService purchaseBillExtendService;
}

58
src/main/java/com/yxt/purchase/apiadmin/PurchaseBillInvoiceRest.java

@ -0,0 +1,58 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.result.ResultBean;
import com.yxt.purchase.biz.purchasebillinvoice.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购单-发票")
@RestController
@RequestMapping("/apiadmin/pmspurchasebillinvoice")
public class PurchaseBillInvoiceRest {
@Autowired
private PurchaseBillInvoiceService purchaseBillInvoiceService;
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody PurchaseBillInvoiceDto dto){
ResultBean rb = ResultBean.fireFail();
purchaseBillInvoiceService.saveOrUpdateDto(dto);
return rb.success();
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<PurchaseBillInvoiceDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
PurchaseBillInvoiceDetailsVo vo = purchaseBillInvoiceService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

74
src/main/java/com/yxt/purchase/apiadmin/PurchaseBillRest.java

@ -0,0 +1,74 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.purchase.biz.purchasebill.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购单")
@RestController
@RequestMapping("/apiadmin/purchasebill")
public class PurchaseBillRest {
@Autowired
private PurchaseBillService purchaseBillService;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<PurchaseBillVo>> listPage(@RequestBody PagerQuery<PurchaseBillQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<PurchaseBillVo> pv = purchaseBillService.listPageVo(pq);
return rb.success().setData(pv);
}
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean<String> save(@RequestBody PurchaseBillDto dto){
ResultBean rb = ResultBean.fireFail();
String sid = purchaseBillService.saveOrUpdateDto(dto);
return rb.success().setData(sid);
}
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
return purchaseBillService.delAll(sids);
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<PurchaseBillDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
PurchaseBillDetailsVo vo = purchaseBillService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

74
src/main/java/com/yxt/purchase/apiadmin/PurchasebackBillRest.java

@ -0,0 +1,74 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.purchase.biz.purchasebackbill.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
@Api(tags = "采购退货单据")
@RestController
@RequestMapping("/apiadmin/pmspurchasebackbill")
public class PurchasebackBillRest {
@Autowired
private PurchasebackBillService purchasebackBillService;
@Autowired
HttpServletResponse response;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<PurchasebackBillVo>> listPage(@RequestBody PagerQuery<PurchasebackBillQuery> pq){
return purchasebackBillService.listPageVo(pq);
}
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean<String> save(@RequestBody PurchasebackBillDto dto){
return purchasebackBillService.saveOrUpdateDto(dto);
}
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
return purchasebackBillService.delAll(sids);
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<PurchasebackBillDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
PurchasebackBillDetailsVo vo = purchasebackBillService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

60
src/main/java/com/yxt/purchase/apiadmin/PurchasebackDetailRest.java

@ -0,0 +1,60 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.apiadmin;
import com.yxt.common.core.result.ResultBean;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDetailsVo;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDto;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "采购退货单据明细")
@RestController
@RequestMapping("/apiadmin/pmspurchasebackdetail")
public class PurchasebackDetailRest {
@Autowired
private PurchasebackDetailService purchasebackDetailService;
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody PurchasebackDetailDto dto){
ResultBean rb = ResultBean.fireFail();
purchasebackDetailService.saveOrUpdateDto(dto);
return rb.success();
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<PurchasebackDetailDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
PurchasebackDetailDetailsVo vo = purchasebackDetailService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

85
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBill.java

@ -0,0 +1,85 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
@ApiModel(value = "采购退货单据", description = "采购退货单据")
@TableName("purchaseback_bill")
public class PurchasebackBill extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid")
private String sourceBillSid; // 来源单sid
@ApiModelProperty("来源单编号")
private String sourceBillNo; // 来源单编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("退货类型Key")
private String backTypeKey; // 退货类型Key
@ApiModelProperty("退货类型Value")
private String backTypeValue; // 退货类型Value
@ApiModelProperty("仓库sid")
private String wareHouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String wareHouseName; // 仓库名称
@ApiModelProperty("配送方式Key")
private String deliveryTypeKey; // 配送方式Key
@ApiModelProperty("配送方式Value")
private String deliveryTypeValue; // 配送方式Value
@ApiModelProperty("币种")
private String currency; // 币种
@ApiModelProperty("业务员sid")
private String salesUserSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String salesName; // 业务员姓名
@ApiModelProperty("退误差调整金额")
private BigDecimal backErrorAmount; // 退误差调整金额
@ApiModelProperty("退运费")
private BigDecimal backFreight; // 退运费
@ApiModelProperty("退优惠金额")
private BigDecimal backDiscountAmount; // 退优惠金额
@ApiModelProperty("抵扣欠款")
private BigDecimal deductDebts; // 抵扣欠款
@ApiModelProperty("抵扣单号")
private String deductBillNo; // 抵扣单号
@ApiModelProperty("转入预付款")
private BigDecimal toPrepayment; // 转入预付款
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
}

103
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillDetailsVo.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDetailsVo;
import com.yxt.purchase.biz.purchasebill.PurchaseChoiceBillDetailsVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "采购退货单据 视图数据详情", description = "采购退货单据 视图数据详情")
public class PurchasebackBillDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("申请日期")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date createTime;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid")
private String sourceBillSid; // 来源单sid
@ApiModelProperty("来源单编号")
private String sourceBillNo; // 来源单编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("退货类型Key")
private String backTypeKey; // 退货类型Key
@ApiModelProperty("退货类型Value")
private String backTypeValue; // 退货类型Value
@ApiModelProperty("仓库sid")
private String wareHouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String wareHouseName; // 仓库名称
@ApiModelProperty("配送方式Key")
private String deliveryTypeKey; // 配送方式Key
@ApiModelProperty("配送方式Value")
private String deliveryTypeValue; // 配送方式Value
@ApiModelProperty("币种")
private String currency; // 币种
@ApiModelProperty("业务员sid")
private String salesUserSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String salesName; // 业务员姓名
@ApiModelProperty("退误差调整金额")
private BigDecimal backErrorAmount; // 退误差调整金额
@ApiModelProperty("退运费")
private BigDecimal backFreight; // 退运费
@ApiModelProperty("退优惠金额")
private BigDecimal backDiscountAmount; // 退优惠金额
@ApiModelProperty("抵扣欠款")
private BigDecimal deductDebts; // 抵扣欠款
@ApiModelProperty("抵扣单号")
private String deductBillNo; // 抵扣单号
@ApiModelProperty("转入预付款")
private BigDecimal toPrepayment; // 转入预付款
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("采购退货单明细")
private List<PurchasebackDetailDetailsVo> PurchasebackDetailList;
/*单独查询*/
@ApiModelProperty("初始化采购单信息")
private PurchaseChoiceBillDetailsVo PurchaseChoiceBillDetailsVo;
}

99
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillDto.java

@ -0,0 +1,99 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "采购退货单据 数据传输对象", description = "采购退货单据 数据传输对象")
public class PurchasebackBillDto implements Dto {
private String sid; // sid
@ApiModelProperty("申请日期")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date createTime;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid")
private String sourceBillSid; // 来源单sid
@ApiModelProperty("来源单编号")
private String sourceBillNo; // 来源单编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("退货类型Key")
private String backTypeKey; // 退货类型Key
@ApiModelProperty("退货类型Value")
private String backTypeValue; // 退货类型Value
@ApiModelProperty("仓库sid")
private String wareHouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String wareHouseName; // 仓库名称
@ApiModelProperty("配送方式Key")
private String deliveryTypeKey; // 配送方式Key
@ApiModelProperty("配送方式Value")
private String deliveryTypeValue; // 配送方式Value
@ApiModelProperty("币种")
private String currency; // 币种
@ApiModelProperty("业务员sid")
private String salesUserSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String salesName; // 业务员姓名
@ApiModelProperty("退误差调整金额")
private BigDecimal backErrorAmount; // 退误差调整金额
@ApiModelProperty("退运费")
private BigDecimal backFreight; // 退运费
@ApiModelProperty("退优惠金额")
private BigDecimal backDiscountAmount; // 退优惠金额
@ApiModelProperty("抵扣欠款")
private BigDecimal deductDebts; // 抵扣欠款
@ApiModelProperty("抵扣单号")
private String deductBillNo; // 抵扣单号
@ApiModelProperty("转入预付款")
private BigDecimal toPrepayment; // 转入预付款
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("采购退货单明细")
private List<PurchasebackDetailDto> PurchasebackDetailList;
}

65
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.Map;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackBillMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebackbill.PmsPurchasebackBillMapper <br/>
* Description: 采购退货单据. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:47 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchasebackBillMapper extends BaseMapper<PurchasebackBill> {
IPage<PurchasebackBillVo> selectPageVo(IPage<PurchasebackBill> page, @Param(Constants.WRAPPER) Wrapper<PurchasebackBill> qw);
String selectNum(String billNo);
int updateFlowFiled(Map<String, Object> map);
int checkNodeStateBySourceBillSid(String sourceBillSid);
BigDecimal checkPayableAmountBySourceBillSid(String sourceBillSid);
int selectBySid(String join);
}

83
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillMapper.xml

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.pms.biz.pms.pmspurchasebackbill.PmsPurchasebackBillMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.pms.biz.pms.pmspurchasebackbill.PmsPurchasebackBillVo">
SELECT
ppb.sid,
ppb.`nodeState`,
ppb.`procDefId`,
ppb.`procInstId`,
ppb.billNo,
ppb.createOrgName,
ppb.`deptName`,
ppb.createTime,
ppb.`finishTime`,
pb.billNo AS sourceBillNo,
pb.`payTypeValue`,
pb.`purchaseReasonValue`,
pb.`purchaseTypeValue`,
pb.supplierName,
SUM(ppd.backAmount) AS backAmountCount,
ppb.receivableAmount
FROM
pms_purchaseback_bill ppb
LEFT JOIN pms_purchase_bill pb
ON ppb.`sourceBillSid` = pb.`sid`
LEFT JOIN pms_purchaseback_detail ppd
ON ppb.`sid` = ppd.`billSid`
LEFT JOIN anrui_portal.sys_organization as s ON ppb.deptSid = s.sid
<where> ${ew.sqlSegment} </where>
</select>
<select id="selectNum" resultType="java.lang.String">
select RIGHT (billNo, 4)
from pms_purchaseback_bill
where billNo LIKE concat(#{billNo}, '%')
order by billNo desc
limit 1
</select>
<update id="updateFlowFiled">
UPDATE pms_purchaseback_bill
SET nodeState=#{nodeState}, nodeId=#{taskDefKey}
<if test="nodeState == '已办结' or nodeState == '终止'">
, finishTime = NOW()
</if>
<if test="procDefId != null and procDefId != ''">
, procDefId=#{procDefId}
</if>
<if test="procInsId != null and procInsId != ''">
, procInstId=#{procInsId}
</if>
<if test="taskId != null and taskId != ''">
, taskId=#{taskId}
</if>
WHERE sid=#{sid}
</update>
<select id="checkNodeStateBySourceBillSid" resultType="int">
SELECT COUNT(*)
FROM pms_purchaseback_bill
WHERE sourceBillSid = #{sourceBillSid}
AND nodeState != '已办结'
AND nodeState != '终止'
</select>
<select id="checkPayableAmountBySourceBillSid" resultType="java.math.BigDecimal">
SELECT payableAmount
FROM pms_purchaseback_bill
WHERE sourceBillSid = #{sourceBillSid}
AND nodeState = '已办结'
ORDER BY createTime DESC
LIMIT 1
</select>
<select id="selectBySid" resultType="int">
SELECT COUNT(*)
FROM pms_purchaseback_bill
WHERE nodeState != '待提交'
and find_in_set(sid, #{list})
</select>
</mapper>

84
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillQuery.java

@ -0,0 +1,84 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackBillQuery.java <br/>
* Class: com.yxt.pms.api.purchasebackbill.PmsPurchasebackBillQuery <br/>
* Description: 采购退货单据 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据 查询条件", description = "采购退货单据 查询条件")
public class PurchasebackBillQuery implements Query {
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("申请部门名称")
private String deptName;
@ApiModelProperty("申请人")
private String createByName;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("创建开始日期")
private String createStartTime;
@ApiModelProperty("创建结束日期")
private String createEndTime;
@ApiModelProperty("办结开始日期")
private String finishStartTime;
@ApiModelProperty("办结结束日期")
private String finishEndTime;
@ApiModelProperty("来源单编号")
private String sourceBillNo;
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue;
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue;
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue;
@ApiModelProperty("供应商名称")
private String supplierName;
private String orgLevelKey;
@ApiModelProperty("组织全路径")
private String orgPath;
private String userSid;
@ApiModelProperty("菜单url")
private String menuUrl;
}

204
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillService.java

@ -0,0 +1,204 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDetailsVo;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailDto;
import com.yxt.purchase.biz.purchasebackdetail.PurchasebackDetailService;
import com.yxt.purchase.biz.purchasebill.PurchaseBill;
import com.yxt.purchase.biz.purchasebill.PurchaseBillService;
import com.yxt.purchase.biz.purchasebill.PurchaseChoiceBillDetailsVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
@Service
public class PurchasebackBillService extends MybatisBaseService<PurchasebackBillMapper, PurchasebackBill> {
@Autowired
private PurchasebackDetailService purchasebackDetailService;
@Autowired
private PurchaseBillService purchaseBillService;
public ResultBean<PagerVo<PurchasebackBillVo>> listPageVo(PagerQuery<PurchasebackBillQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PurchasebackBillQuery query = pq.getParams();
QueryWrapper<PurchasebackBill> qw = new QueryWrapper<>();
//========================================数据授权开始
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getOrgLevelKey())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人) -
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = query.getOrgLevelKey();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("createBySid", query.getUserSid());
} else {
PagerVo<PurchasebackBillVo> p = new PagerVo<>();
return rb.success().setData(p);
}
}/* else {
PagerVo<WarehouseRackVo> p = new PagerVo<>();
return rb.success().setData(p);
}*/
if (StringUtils.isNotBlank(query.getCreateOrgName())) {
qw.like("ppb.createOrgName", query.getCreateOrgName());
}
if (StringUtils.isNotBlank(query.getDeptName())) {
qw.like("ppb.deptName", query.getDeptName());
}
if (StringUtils.isNotBlank(query.getCreateByName())) {
qw.like("ppb.createByName", query.getCreateByName());
}
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("ppb.billNo", query.getBillNo());
}
if (StringUtils.isNotBlank(query.getSourceBillNo())) {
qw.like("pb.billNo", query.getSourceBillNo());
}
if (StringUtils.isNotBlank(query.getPurchaseTypeValue())) {
qw.like("pb.purchaseTypeValue", query.getPurchaseTypeValue());
}
if (StringUtils.isNotBlank(query.getPurchaseReasonValue())) {
qw.like("pb.purchaseReasonValue", query.getPurchaseReasonValue());
}
if (StringUtils.isNotBlank(query.getPayTypeValue())) {
qw.like("pb.payTypeValue", query.getPayTypeValue());
}
if (StringUtils.isNotBlank(query.getSupplierName())) {
qw.like("pb.supplierName", query.getSupplierName());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (ppb.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createEndTime), "date_format (ppb.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
String finishStartTime = query.getFinishStartTime();
String finishEndTime = query.getFinishEndTime();
qw.apply(StringUtils.isNotEmpty(finishStartTime), "date_format (ppb.finishTime,'%Y-%m-%d') >= date_format('" + finishStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(finishEndTime), "date_format (ppb.finishTime,'%Y-%m-%d') <= date_format('" + finishEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("ppb.createTime");
qw.groupBy("ppb.sid");
IPage<PurchasebackBill> page = PagerUtil.queryToPage(pq);
IPage<PurchasebackBillVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<PurchasebackBillVo> p = PagerUtil.pageToVo(pagging, null);
return rb.success().setData(p);
}
public ResultBean<String> saveOrUpdateDto(PurchasebackBillDto dto) {
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
List<PurchasebackDetailDto> purchasebackDetailList = dto.getPurchasebackDetailList();
if (StringUtils.isBlank(dtoSid)) {
String sid = this.insertByDto(dto);
for (PurchasebackDetailDto purchasebackDetailDto : purchasebackDetailList) {
purchasebackDetailDto.setBillSid(sid);
purchasebackDetailService.saveOrUpdateDto(purchasebackDetailDto);
}
return rb.success().setData(sid);
}
this.updateByDto(dto);
purchasebackDetailService.delByMainSid(dtoSid);
for (PurchasebackDetailDto purchasebackDetailDto : purchasebackDetailList) {
purchasebackDetailDto.setBillSid(dtoSid);
purchasebackDetailService.saveOrUpdateDto(purchasebackDetailDto);
}
return rb.success().setData(dtoSid);
}
public String insertByDto(PurchasebackBillDto dto) {
PurchasebackBill entity = new PurchasebackBill();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
return entity.getSid();
}
public void updateByDto(PurchasebackBillDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
PurchasebackBill entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public PurchasebackBillDetailsVo fetchDetailsVoBySid(String sid) {
PurchasebackBill entity = fetchBySid(sid);
PurchasebackBillDetailsVo vo = new PurchasebackBillDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<PurchasebackDetailDetailsVo> purchasebackDetailDetailsVos = purchasebackDetailService.selByMainSid(sid);
for (PurchasebackDetailDetailsVo purchasebackDetailDetailsVo : purchasebackDetailDetailsVos) {
purchasebackDetailDetailsVo.setAmount(purchasebackDetailDetailsVo.getCount().multiply(purchasebackDetailDetailsVo.getTaxPrice()));
}
vo.setPurchasebackDetailList(purchasebackDetailDetailsVos);
PurchaseBill purchaseBill = purchaseBillService.fetchBySid(entity.getSourceBillSid());
PurchaseChoiceBillDetailsVo purchaseChoiceBillDetailsVo = new PurchaseChoiceBillDetailsVo();
BeanUtil.copyProperties(purchaseBill, purchaseChoiceBillDetailsVo);
vo.setPurchaseChoiceBillDetailsVo(purchaseChoiceBillDetailsVo);
return vo;
}
public ResultBean delAll(String[] sids) {
ResultBean rb = ResultBean.fireFail();
//查询该sid中是否有流程不是待提交的
int count = baseMapper.selectBySid(StringUtils.join(sids, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已提交或已办结审批的数据,删除失败");
}
delBySids(sids);
for (String sid : sids) {
purchasebackDetailService.delByMainSid(sid);
}
return rb.success();
}
}

89
src/main/java/com/yxt/purchase/biz/purchasebackbill/PurchasebackBillVo.java

@ -0,0 +1,89 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackbill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackBillVo.java <br/>
* Class: com.yxt.pms.api.purchasebackbill.PmsPurchasebackBillVo <br/>
* Description: 采购退货单据 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据 视图数据对象", description = "采购退货单据 视图数据对象")
public class PurchasebackBillVo implements Vo {
private String sid; // sid
@ApiModelProperty("流程状态")
private String nodeState;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("申请部门名称")
private String deptName;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("创建时间")
private Date createTime;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("办结时间")
private Date finishTime;
@ApiModelProperty("来源单编号")
private String sourceBillNo;
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue;
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue;
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue;
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("退货金额")
private String backAmountCount;
@ApiModelProperty("应收金额")
private String receivableAmount;
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("流程实例的sid")
private String procInstId;
}

92
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetail.java

@ -0,0 +1,92 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetail.java <br/>
* Class: com.yxt.pms.api.purchasebackdetail.PmsPurchasebackDetail <br/>
* Description: 采购退货单据明细. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据明细", description = "采购退货单据明细")
@TableName("purchaseback_detail")
public class PurchasebackDetail extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode; // 商品编码(图号)
@ApiModelProperty("规格")
private String goodsSkuOwnSpec; // 规格
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("已退数量")
private BigDecimal returnedCount; // 已退数量
@ApiModelProperty("退货数量")
private BigDecimal backCount; // 退货数量
@ApiModelProperty("采购数量")
private BigDecimal count;
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
@ApiModelProperty("退货金额")
private BigDecimal backAmount; // 退货金额
}

94
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailDetailsVo.java

@ -0,0 +1,94 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebackdetail.PmsPurchasebackDetailVo <br/>
* Description: 采购退货单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据明细 视图数据详情", description = "采购退货单据明细 视图数据详情")
public class PurchasebackDetailDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode; // 商品编码(图号)
@ApiModelProperty("规格")
private String goodsSkuOwnSpec; // 规格
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("已退数量")
private BigDecimal returnedCount; // 已退数量
@ApiModelProperty("退货数量")
private BigDecimal backCount; // 退货数量
@ApiModelProperty("采购数量")
private BigDecimal count;
@ApiModelProperty("采购金额")
private BigDecimal amount;
@ApiModelProperty("税额")
private BigDecimal taxAmount;
@ApiModelProperty("含税价")
private BigDecimal taxPrice;
@ApiModelProperty("退货金额")
private BigDecimal backAmount; // 退货金额
}

92
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailDto.java

@ -0,0 +1,92 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailDto.java <br/>
* Class: com.yxt.pms.api.purchasebackdetail.PmsPurchasebackDetailDto <br/>
* Description: 采购退货单据明细 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据明细 数据传输对象", description = "采购退货单据明细 数据传输对象")
public class PurchasebackDetailDto implements Dto {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode; // 商品编码(图号)
@ApiModelProperty("规格")
private String goodsSkuOwnSpec; // 规格
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("已退数量")
private BigDecimal returnedCount; // 已退数量
@ApiModelProperty("退货数量")
private BigDecimal backCount; // 退货数量
@ApiModelProperty("采购数量")
private BigDecimal count;
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice;
@ApiModelProperty("退货金额")
private BigDecimal backAmount; // 退货金额
}

65
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.math.BigDecimal;
import java.util.List;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebackdetail.PmsPurchasebackDetailMapper <br/>
* Description: 采购退货单据明细. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:47 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchasebackDetailMapper extends BaseMapper<PurchasebackDetail> {
IPage<PurchasebackDetailVo> selectPageVo(IPage<PurchasebackDetail> page, @Param(Constants.WRAPPER) Wrapper<PurchasebackDetail> qw);
@Delete("delete from pms_purchaseback_detail where billSid = #{dtoSid}")
void delByMainSid(String dtoSid);
@Select("select * from pms_purchaseback_detail where billSid = #{billSid}")
List<PurchasebackDetailDetailsVo> selByMainSid(String billSid);
BigDecimal checkReturnedCount(@Param("goodsSkuSid") String goodsSkuSid,@Param("sourceBillSid") String sourceBillSid);
}

21
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailMapper.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.pms.biz.pms.pmspurchasebackdetail.PmsPurchasebackDetailMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.pms.biz.pms.pmspurchasebackdetail.PmsPurchasebackDetailVo">
SELECT * FROM pms_purchaseback_detail <where> ${ew.sqlSegment} </where>
</select>
<select id="checkReturnedCount" resultType="java.math.BigDecimal">
SELECT
IFNULL(SUM(ppd.backCount), 0)
FROM
pms_purchaseback_detail ppd
LEFT JOIN pms_purchaseback_bill ppb
ON ppd.`billSid` = ppb.sid
WHERE ppd.goodsSkuSid = #{goodsSkuSid}
AND ppb.`sourceBillSid` = #{sourceBillSid}
AND ppb.`nodeState` = '已办结'
</select>
</mapper>

50
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailQuery.java

@ -0,0 +1,50 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailQuery.java <br/>
* Class: com.yxt.pms.api.purchasebackdetail.PmsPurchasebackDetailQuery <br/>
* Description: 采购退货单据明细 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据明细 查询条件", description = "采购退货单据明细 查询条件")
public class PurchasebackDetailQuery implements Query {
}

93
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailService.java

@ -0,0 +1,93 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.List;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailService.java <br/>
* Class: com.yxt.pms.biz.purchasebackdetail.PmsPurchasebackDetailService <br/>
* Description: 采购退货单据明细 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:47 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class PurchasebackDetailService extends MybatisBaseService<PurchasebackDetailMapper, PurchasebackDetail> {
public PagerVo<PurchasebackDetailVo> listPageVo(PagerQuery<PurchasebackDetailQuery> pq) {
PurchasebackDetailQuery query = pq.getParams();
QueryWrapper<PurchasebackDetail> qw = new QueryWrapper<>();
IPage<PurchasebackDetail> page = PagerUtil.queryToPage(pq);
IPage<PurchasebackDetailVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<PurchasebackDetailVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(PurchasebackDetailDto dto){
this.insertByDto(dto);
}
public void insertByDto(PurchasebackDetailDto dto){
PurchasebackDetail entity = new PurchasebackDetail();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public PurchasebackDetailDetailsVo fetchDetailsVoBySid(String sid){
PurchasebackDetail entity = fetchBySid(sid);
PurchasebackDetailDetailsVo vo = new PurchasebackDetailDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public List<PurchasebackDetailDetailsVo> selByMainSid(String billSid) {
return baseMapper.selByMainSid(billSid);
}
public BigDecimal checkReturnedCount(String goodsSkuSid,String sourceBillSid) {
return baseMapper.checkReturnedCount(goodsSkuSid,sourceBillSid);
}
}

50
src/main/java/com/yxt/purchase/biz/purchasebackdetail/PurchasebackDetailVo.java

@ -0,0 +1,50 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebackdetail;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchasebackDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebackdetail.PmsPurchasebackDetailVo <br/>
* Description: 采购退货单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 16:16:12 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购退货单据明细 视图数据对象", description = "采购退货单据明细 视图数据对象")
public class PurchasebackDetailVo implements Vo {
}

103
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBill.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBill.java <br/>
* Class: com.yxt.pms.api.purchasebill.PmsPurchaseBill <br/>
* Description: 采购单. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:45 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单", description = "采购单")
@TableName("purchase_bill")
public class PurchaseBill extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid(工单sid)")
private String sourceBillSid; // 来源单sid(工单sid)
@ApiModelProperty("来源单编号/外部编号")
private String sourceBillNo; // 来源单编号/外部编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("采购类型Key")
private String purchaseTypeKey; // 采购类型Key
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue; // 采购类型Value(厂家采购、外采、其他)
@ApiModelProperty("采购原因key")
private String purchaseReasonKey; // 采购原因key
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue; // 采购原因(储备/客户订单/在修车辆)
@ApiModelProperty("付款方式key")
private String payTypeKey; // 付款方式key
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue; // 付款方式value(预付款/月结/单笔付款)
@ApiModelProperty("供应商sid")
private String supplierSid; // 供应商sid
@ApiModelProperty("供应商名称")
private String supplierName; // 供应商名称
@ApiModelProperty("供应商联系电话")
private String supplierPhone; // 供应商联系电话
@ApiModelProperty("采购员sid(单选)")
private String purchaserSid; // 采购员sid(单选)
@ApiModelProperty("采购员姓名")
private String purchaserName; // 采购员姓名
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预计到货日期")
private Date deliveryDate; // 预计到货日期
@ApiModelProperty("仓库sid")
private String wareHouseSid;
@ApiModelProperty("仓库名称")
private String wareHouseName;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("创建部门sid")
private String deptSid;
@ApiModelProperty("创建部门")
private String deptName;
}

107
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillDetailsVo.java

@ -0,0 +1,107 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountDetailsVo;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountDto;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDetailsVo;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDto;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendDetailsVo;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendDto;
import com.yxt.purchase.biz.purchasebillinvoice.PurchaseBillInvoiceDetailsVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "采购单 视图数据详情", description = "采购单 视图数据详情")
public class PurchaseBillDetailsVo implements Vo {
private String sid;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid(工单sid)")
private String sourceBillSid; // 来源单sid(工单sid)
@ApiModelProperty("来源单编号/外部编号")
private String sourceBillNo; // 来源单编号/外部编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("采购类型Key")
private String purchaseTypeKey; // 采购类型Key
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue; // 采购类型Value(厂家采购、外采、其他)
@ApiModelProperty("采购原因key")
private String purchaseReasonKey; // 采购原因key
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue; // 采购原因(储备/客户订单/在修车辆)
@ApiModelProperty("付款方式key")
private String payTypeKey; // 付款方式key
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue; // 付款方式value(预付款/月结/单笔付款)
@ApiModelProperty("供应商sid")
private String supplierSid; // 供应商sid
@ApiModelProperty("供应商名称")
private String supplierName; // 供应商名称
@ApiModelProperty("供应商联系电话")
private String supplierPhone; // 供应商联系电话
@ApiModelProperty("采购员sid(单选)")
private String purchaserSid; // 采购员sid(单选)
@ApiModelProperty("采购员姓名")
private String purchaserName; // 采购员姓名
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预计到货日期")
private Date deliveryDate; // 预计到货日期
@ApiModelProperty("仓库sid")
private String wareHouseSid;
@ApiModelProperty("仓库名称")
private String wareHouseName;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("创建部门sid")
private String deptSid;
@ApiModelProperty("创建部门")
private String deptName;
@ApiModelProperty("采购单费用/预付款")
private PurchaseBillAmountDetailsVo purchaseBillAmount;
@ApiModelProperty("采购单扩展")
private PurchaseBillExtendDetailsVo purchaseBillExtend;
@ApiModelProperty("采购单商品明细")
private List<PurchaseBillDetailDetailsVo> purchaseBillDetailList;
}

104
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillDto.java

@ -0,0 +1,104 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountDto;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDto;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendDto;
import com.yxt.purchase.biz.purchasebillinvoice.PurchaseBillInvoiceDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "采购单 数据传输对象", description = "采购单 数据传输对象")
public class PurchaseBillDto implements Dto {
private String sid;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("来源单sid(工单sid)")
private String sourceBillSid; // 来源单sid(工单sid)
@ApiModelProperty("来源单编号/外部编号")
private String sourceBillNo; // 来源单编号/外部编号
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("采购类型Key")
private String purchaseTypeKey; // 采购类型Key
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue; // 采购类型Value(厂家采购、外采、其他)
@ApiModelProperty("采购原因key")
private String purchaseReasonKey; // 采购原因key
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue; // 采购原因(储备/客户订单/在修车辆)
@ApiModelProperty("付款方式key")
private String payTypeKey; // 付款方式key
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue; // 付款方式value(预付款/月结/单笔付款)
@ApiModelProperty("供应商sid")
private String supplierSid; // 供应商sid
@ApiModelProperty("供应商名称")
private String supplierName; // 供应商名称
@ApiModelProperty("供应商联系电话")
private String supplierPhone; // 供应商联系电话
@ApiModelProperty("采购员sid(单选)")
private String purchaserSid; // 采购员sid(单选)
@ApiModelProperty("采购员姓名")
private String purchaserName; // 采购员姓名
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预计到货日期")
private Date deliveryDate; // 预计到货日期
@ApiModelProperty("仓库sid")
private String wareHouseSid;
@ApiModelProperty("仓库名称")
private String wareHouseName;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("创建部门sid")
private String deptSid;
@ApiModelProperty("创建部门")
private String deptName;
@ApiModelProperty("采购单费用/预付款")
private PurchaseBillAmountDto purchaseBillAmount;
@ApiModelProperty("采购单扩展")
private PurchaseBillExtendDto purchaseBillExtend;
@ApiModelProperty("采购单商品明细")
private List<PurchaseBillDetailDto> purchaseBillDetailList;
}

59
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillMapper.java

@ -0,0 +1,59 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebill.PmsPurchaseBillMapper <br/>
* Description: 采购单. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchaseBillMapper extends BaseMapper<PurchaseBill> {
IPage<PurchaseBillVo> selectPageVo(IPage<PurchaseBill> page, @Param(Constants.WRAPPER) Wrapper<PurchaseBill> qw);
IPage<PurchaseChoiceBillVo> choiceBillListPage(IPage<PurchaseBill> page, @Param(Constants.WRAPPER) QueryWrapper<PurchaseBill> qw);
String selectNum(String billNo);
}

76
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillMapper.xml

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.purchase.biz.purchasebill.PurchaseBillMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.purchase.biz.purchasebill.PurchaseBillVo">
SELECT
pb.sid,
pb.createTime,
pb.billNo,
pb.supplierName,
pb.purchaserName,
pb.wareHouseName,
pbe.receiveStateValue,
SUM(pbd.amount) AS amountTotal,
pba.freight,
pba.otherAmount,
pba.prepayment,
pbe.logisticsNum,
pbe.productProgress,
SUM(pbd.count) AS countTotal,
pbe.deliveryStateValue,
pb.`remarks`
FROM
purchase_bill pb
LEFT JOIN purchase_bill_detail pbd
ON pbd.`billSid` = pb.`sid`
LEFT JOIN purchase_bill_extend pbe
ON pbe.billSid = pb.`sid`
LEFT JOIN purchase_bill_detail pbd
ON pbd.`billSid` = pb.`sid`
LEFT JOIN purchase_bill_amount pba
ON pba.`billSid` = pb.`sid`
<where> ${ew.sqlSegment} </where>
</select>
<select id="choiceBillListPage" resultType="com.yxt.pms.biz.pms.pmspurchasebill.PmsPurchaseChoiceBillVo">
SELECT
ppb.`sid`,
ppb.`createOrgName`,
ppb.`deptName`,
ppb.`finishTime`,
ppb.billNo,
ppb.`createTime`,
ppb.`purchaserName`,
ppb.`purchaseTypeValue`,
ppb.`purchaseReasonValue`,
ppb.`payTypeValue`,
ppb.`supplierName`,
IF(ppbi.`isInvoicing` = 1, '是','否') AS isInvoicing,
ppbi.billType,
ppbi.taxRate,
ppb.`remarks`,
SUM(ppbd.`amount`) AS amountCount,
ppb.freight,
ppb.discountAmount,
ppb.errorAmount,
ppb.`payableAmount`
FROM
pms_purchase_bill ppb
LEFT JOIN pms_purchase_bill_invoice ppbi
ON ppbi.`billSid` = ppb.`sid`
LEFT JOIN pms_purchase_bill_detail ppbd
ON ppbd.`billSid` = ppb.`sid`
<where> ${ew.sqlSegment} </where>
</select>
<select id="selectNum" resultType="java.lang.String">
select RIGHT (billNo, 4)
from pms_purchase_bill
where billNo LIKE concat(#{billNo}, '%')
order by billNo desc
limit 1
</select>
</mapper>

79
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillQuery.java

@ -0,0 +1,79 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillQuery.java <br/>
* Class: com.yxt.pms.api.purchasebill.PmsPurchaseBillQuery <br/>
* Description: 采购单 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:45 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单 查询条件", description = "采购单 查询条件")
public class PurchaseBillQuery implements Query {
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("仓库名称")
private String wareHouseName;
@ApiModelProperty("收货状态key")
private String receiveStateKey;
@ApiModelProperty("物流单号")
private String logisticsNum;
@ApiModelProperty("发货状态key")
private String deliveryStateKey;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("采购员姓名")
private String purchaserName;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建开始日期")
private String createStartTime;
@ApiModelProperty("创建结束日期")
private String createEndTime;
private String orgLevelKey;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")
private String orgPath;
@ApiModelProperty("用户sid")
private String userSid;
}

180
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillService.java

@ -0,0 +1,180 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountDetailsVo;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountDto;
import com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountService;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDetailsVo;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDto;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailService;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendDetailsVo;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendDto;
import com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
@Service
public class PurchaseBillService extends MybatisBaseService<PurchaseBillMapper, PurchaseBill> {
@Autowired
private PurchaseBillAmountService purchaseBillAmountService;
@Autowired
private PurchaseBillExtendService purchaseBillExtendService;
@Autowired
private PurchaseBillDetailService purchaseBillDetailService;
public PagerVo<PurchaseBillVo> listPageVo(PagerQuery<PurchaseBillQuery> pq) {
PurchaseBillQuery query = pq.getParams();
QueryWrapper<PurchaseBill> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getSupplierName())) {
qw.like("pb.supplierName", query.getSupplierName());
}
if (StringUtils.isNotBlank(query.getWareHouseName())) {
qw.like("pb.wareHouseName", query.getWareHouseName());
}
if (StringUtils.isNotBlank(query.getReceiveStateKey())) {
qw.eq("pbe.receiveStateValue", query.getReceiveStateKey());
}
if (StringUtils.isNotBlank(query.getLogisticsNum())) {
qw.like("pbe.logisticsNum", query.getLogisticsNum());
}
if (StringUtils.isNotBlank(query.getDeliveryStateKey())) {
qw.eq("pbe.deliveryStateValue", query.getDeliveryStateKey());
}
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("pb.billNo", query.getBillNo());
}
if (StringUtils.isNotBlank(query.getPurchaserName())) {
qw.like("pb.purchaserName", query.getPurchaserName());
}
if (StringUtils.isNotBlank(query.getRemarks())) {
qw.like("pb.remarks", query.getRemarks());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (pb.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createEndTime), "date_format (pb.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("pb.createTime");
qw.groupBy("pb.sid");
IPage<PurchaseBill> page = PagerUtil.queryToPage(pq);
IPage<PurchaseBillVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<PurchaseBillVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public String saveOrUpdateDto(PurchaseBillDto dto) {
String dtoSid = dto.getSid();
PurchaseBillAmountDto purchaseBillAmount = dto.getPurchaseBillAmount();
PurchaseBillExtendDto purchaseBillExtend = dto.getPurchaseBillExtend();
List<PurchaseBillDetailDto> purchaseBillDetailList = dto.getPurchaseBillDetailList();
if (StringUtils.isBlank(dtoSid)) {
String sid = this.insertByDto(dto);
//保存采购单费用/预付款
purchaseBillAmount.setBillSid(sid);
purchaseBillAmountService.insertByDto(purchaseBillAmount);
//保存采购单扩展
purchaseBillExtend.setBillSid(sid);
purchaseBillExtendService.insertByDto(purchaseBillExtend);
//保存商品信息
for (PurchaseBillDetailDto purchaseBillDetailDto : purchaseBillDetailList) {
purchaseBillDetailDto.setBillSid(sid);
purchaseBillDetailService.insertByDto(purchaseBillDetailDto);
}
return sid;
}
this.updateByDto(dto);
purchaseBillAmountService.delByMainSid(dtoSid);
purchaseBillExtendService.delByMainSid(dtoSid);
purchaseBillDetailService.delByMainSid(dtoSid);
//保存采购单费用/预付款
purchaseBillAmount.setBillSid(dtoSid);
purchaseBillAmountService.insertByDto(purchaseBillAmount);
//保存采购单扩展
purchaseBillExtend.setBillSid(dtoSid);
purchaseBillExtendService.insertByDto(purchaseBillExtend);
//保存商品信息
for (PurchaseBillDetailDto purchaseBillDetailDto : purchaseBillDetailList) {
purchaseBillDetailDto.setBillSid(dtoSid);
purchaseBillDetailService.insertByDto(purchaseBillDetailDto);
}
return dtoSid;
}
public String insertByDto(PurchaseBillDto dto) {
PurchaseBill entity = new PurchaseBill();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
return entity.getSid();
}
public void updateByDto(PurchaseBillDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
PurchaseBill entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public PurchaseBillDetailsVo fetchDetailsVoBySid(String sid) {
PurchaseBill entity = fetchBySid(sid);
PurchaseBillDetailsVo vo = new PurchaseBillDetailsVo();
BeanUtil.copyProperties(entity, vo);
PurchaseBillAmountDetailsVo purchaseBillAmountDetailsVo = purchaseBillAmountService.selByMainSid(sid);
vo.setPurchaseBillAmount(purchaseBillAmountDetailsVo);
PurchaseBillExtendDetailsVo purchaseBillExtendDetailsVo = purchaseBillExtendService.selByMainSid(sid);
vo.setPurchaseBillExtend(purchaseBillExtendDetailsVo);
List<PurchaseBillDetailDetailsVo> purchaseBillDetailDetailsVos = purchaseBillDetailService.selByMainSid(sid);
vo.setPurchaseBillDetailList(purchaseBillDetailDetailsVos);
return vo;
}
public ResultBean delAll(String[] sids) {
ResultBean rb = ResultBean.fireFail();
delBySids(sids);
for (String sid : sids) {
purchaseBillAmountService.delByMainSid(sid);
purchaseBillExtendService.delByMainSid(sid);
purchaseBillDetailService.delByMainSid(sid);
}
return rb.success();
}
}

90
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseBillVo.java

@ -0,0 +1,90 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillVo.java <br/>
* Class: com.yxt.pms.api.purchasebill.PmsPurchaseBillVo <br/>
* Description: 采购单 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单 视图数据对象", description = "采购单 视图数据对象")
public class PurchaseBillVo implements Vo {
private String sid; // sid
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("业务日期")
private Date createTime;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("采购员姓名")
private String purchaserName;
@ApiModelProperty("仓库名称")
private String wareHouseName;
@ApiModelProperty("收货状态value")
private Integer receiveStateValue;
@ApiModelProperty("商品总额")
private String amountTotal;
@ApiModelProperty("采购运费")
private BigDecimal freight;
@ApiModelProperty("其它费用")
private BigDecimal otherAmount;
@ApiModelProperty("预付金额")
private BigDecimal prepayment;
@ApiModelProperty("物流单号")
private String logisticsNum;
@ApiModelProperty("生产进度")
private String productProgress;
@ApiModelProperty("总采购数量")
private String countTotal;
@ApiModelProperty("发货状态value")
private Integer deliveryStateValue;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人姓名")
private String createByName;
}

85
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillDetailsVo.java

@ -0,0 +1,85 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillVo.java <br/>
* Class: com.yxt.pms.api.purchasebill.PmsPurchaseBillVo <br/>
* Description: 采购单 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单 视图数据对象", description = "采购单 视图数据对象")
public class PurchaseChoiceBillDetailsVo implements Vo {
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("单据日期")
private Date createTime;
@ApiModelProperty("采购员姓名")
private String purchaserName;
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue;
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue;
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue;
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("是否需要开发票(是1,否0)")
private String isInvoicing;
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType;
@ApiModelProperty("税率")
private BigDecimal taxRate;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("采购金额合计")
private BigDecimal amountCount;
@ApiModelProperty("运费")
private BigDecimal freight;
@ApiModelProperty("优惠金额")
private BigDecimal discountAmount;
@ApiModelProperty("误差调整金额")
private BigDecimal errorAmount;
}

79
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillQuery.java

@ -0,0 +1,79 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillQuery.java <br/>
* Class: com.yxt.pms.api.purchasebill.PmsPurchaseBillQuery <br/>
* Description: 采购单 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:45 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单原单 查询条件", description = "采购单 查询条件")
public class PurchaseChoiceBillQuery implements Query {
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("申请部门名称")
private String deptName;
@ApiModelProperty("申请人")
private String createByName;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("创建开始日期")
private String createStartTime;
@ApiModelProperty("创建结束日期")
private String createEndTime;
@ApiModelProperty("办结开始日期")
private String finishStartTime;
@ApiModelProperty("办结结束日期")
private String finishEndTime;
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue;
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue;
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue;
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("是否需要开发票(是1,否0)")
private String isInvoicing;
private String createOrgSid;
}

92
src/main/java/com/yxt/purchase/biz/purchasebill/PurchaseChoiceBillVo.java

@ -0,0 +1,92 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailDetailsVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
@ApiModel(value = "采购单 视图数据对象", description = "采购单 视图数据对象")
public class PurchaseChoiceBillVo implements Vo {
private String sid; // sid
/*仅页面展示*/
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("申请部门名称")
private String deptName;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("办结时间")
private Date finishTime;
@ApiModelProperty("单据编号")
private String billNo;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("单据日期")
private Date createTime;
@ApiModelProperty("采购员姓名")
private String purchaserName;
@ApiModelProperty("采购类型Value(厂家采购、外采、其他)")
private String purchaseTypeValue;
@ApiModelProperty("采购原因(储备/客户订单/在修车辆)")
private String purchaseReasonValue;
@ApiModelProperty("付款方式value(预付款/月结/单笔付款)")
private String payTypeValue;
@ApiModelProperty("供应商名称")
private String supplierName;
@ApiModelProperty("是否需要开发票(是1,否0)")
private String isInvoicing;
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType;
@ApiModelProperty("税率")
private BigDecimal taxRate;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("采购金额合计")
private BigDecimal amountCount;
@ApiModelProperty("运费")
private BigDecimal freight;
@ApiModelProperty("优惠金额")
private BigDecimal discountAmount;
@ApiModelProperty("误差调整金额")
private BigDecimal errorAmount;
@ApiModelProperty("应付金额(=采购金额+运费-优惠金额)")
private BigDecimal payableAmount;
@ApiModelProperty("采购单商品明细")
private List<PurchaseBillDetailDetailsVo> pmsPurchaseBillDetailList;
}

82
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmount.java

@ -0,0 +1,82 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillamount;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "采购单-费用/预付款", description = "采购单-费用/预付款")
@TableName("purchase_bill_amount")
public class PurchaseBillAmount extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("误差调整金额")
private BigDecimal errorAmount; // 误差调整金额
@ApiModelProperty("优惠金额")
private BigDecimal discountAmount; // 优惠金额
@ApiModelProperty("应付金额")
private BigDecimal payableAmount; // 应付金额
@ApiModelProperty("采购运费")
private BigDecimal freight; // 采购运费
@ApiModelProperty("运费分摊方式Key")
private String freightShareTypeKey; // 运费分摊方式Key
@ApiModelProperty("运费分摊方式Value")
private String freightShareTypeValue; // 运费分摊方式Value
@ApiModelProperty("其它费用")
private BigDecimal otherAmount; // 其它费用
@ApiModelProperty("其他费用分摊方式Key")
private String otherShareTypeKey; // 其他费用分摊方式Key
@ApiModelProperty("其他费用分摊方式Value")
private String otherShareTypeValue; // 其他费用分摊方式Value
@ApiModelProperty("结算账户")
private String settleAccount; // 结算账户
@ApiModelProperty("预付金额")
private BigDecimal prepayment; // 预付金额
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("付款期限")
private Date paymentTerm; // 付款期限
@ApiModelProperty("收款开户行")
private String bankName; // 收款开户行
@ApiModelProperty("收款账户")
private String bankAccountName; // 收款账户
@ApiModelProperty("收款银行账号")
private String bankAccount; // 收款银行账号
@ApiModelProperty("币种")
private String currency; // 币种
}

95
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountDetailsVo.java

@ -0,0 +1,95 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillamount;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: caigou(采购) <br/>
* File: PurchaseBillAmountVo.java <br/>
* Class: com.yxt.purchase.api.purchasebillamount.PurchaseBillAmountVo <br/>
* Description: 采购单-费用/预付款 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-07-03 14:44:55 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-费用/预付款 视图数据详情", description = "采购单-费用/预付款 视图数据详情")
public class PurchaseBillAmountDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("误差调整金额")
private BigDecimal errorAmount; // 误差调整金额
@ApiModelProperty("优惠金额")
private BigDecimal discountAmount; // 优惠金额
@ApiModelProperty("应付金额")
private BigDecimal payableAmount; // 应付金额
@ApiModelProperty("采购运费")
private BigDecimal freight; // 采购运费
@ApiModelProperty("运费分摊方式Key")
private String freightShareTypeKey; // 运费分摊方式Key
@ApiModelProperty("运费分摊方式Value")
private String freightShareTypeValue; // 运费分摊方式Value
@ApiModelProperty("其它费用")
private BigDecimal otherAmount; // 其它费用
@ApiModelProperty("其他费用分摊方式Key")
private String otherShareTypeKey; // 其他费用分摊方式Key
@ApiModelProperty("其他费用分摊方式Value")
private String otherShareTypeValue; // 其他费用分摊方式Value
@ApiModelProperty("结算账户")
private String settleAccount; // 结算账户
@ApiModelProperty("预付金额")
private BigDecimal prepayment; // 预付金额
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("付款期限")
private Date paymentTermStart; // 付款期限
private Date paymentTermEnd; // 付款期限
@ApiModelProperty("收款开户行")
private String bankName; // 收款开户行
@ApiModelProperty("收款账户")
private String bankAccountName; // 收款账户
@ApiModelProperty("收款银行账号")
private String bankAccount; // 收款银行账号
@ApiModelProperty("币种")
private String currency; // 币种
}

95
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountDto.java

@ -0,0 +1,95 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillamount;
import com.yxt.common.core.dto.Dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: caigou(采购) <br/>
* File: PurchaseBillAmountDto.java <br/>
* Class: com.yxt.purchase.api.purchasebillamount.PurchaseBillAmountDto <br/>
* Description: 采购单-费用/预付款 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-07-03 14:44:55 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-费用/预付款 数据传输对象", description = "采购单-费用/预付款 数据传输对象")
public class PurchaseBillAmountDto implements Dto {
private String sid; // sid
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("误差调整金额")
private BigDecimal errorAmount; // 误差调整金额
@ApiModelProperty("优惠金额")
private BigDecimal discountAmount; // 优惠金额
@ApiModelProperty("应付金额")
private BigDecimal payableAmount; // 应付金额
@ApiModelProperty("采购运费")
private BigDecimal freight; // 采购运费
@ApiModelProperty("运费分摊方式Key")
private String freightShareTypeKey; // 运费分摊方式Key
@ApiModelProperty("运费分摊方式Value")
private String freightShareTypeValue; // 运费分摊方式Value
@ApiModelProperty("其它费用")
private BigDecimal otherAmount; // 其它费用
@ApiModelProperty("其他费用分摊方式Key")
private String otherShareTypeKey; // 其他费用分摊方式Key
@ApiModelProperty("其他费用分摊方式Value")
private String otherShareTypeValue; // 其他费用分摊方式Value
@ApiModelProperty("结算账户")
private String settleAccount; // 结算账户
@ApiModelProperty("预付金额")
private BigDecimal prepayment; // 预付金额
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("付款期限")
private Date paymentTermStart; // 付款期限
private Date paymentTermEnd; // 付款期限
@ApiModelProperty("收款开户行")
private String bankName; // 收款开户行
@ApiModelProperty("收款账户")
private String bankAccountName; // 收款账户
@ApiModelProperty("收款银行账号")
private String bankAccount; // 收款银行账号
@ApiModelProperty("币种")
private String currency; // 币种
}

41
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountMapper.java

@ -0,0 +1,41 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillamount;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
@Mapper
public interface PurchaseBillAmountMapper extends BaseMapper<PurchaseBillAmount> {
@Delete("delete from purchase_bill_amount where billSid = #{dtoSid}")
void delByMainSid(String dtoSid);
@Select("select * from purchase_bill_amount where billSid = #{billSid}")
PurchaseBillAmountDetailsVo selByMainSid(String billSid);
}

6
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountMapper.xml

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.purchase.biz.purchasebillamount.PurchaseBillAmountMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

50
src/main/java/com/yxt/purchase/biz/purchasebillamount/PurchaseBillAmountService.java

@ -0,0 +1,50 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillamount;
import cn.hutool.core.bean.BeanUtil;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
@Service
public class PurchaseBillAmountService extends MybatisBaseService<PurchaseBillAmountMapper, PurchaseBillAmount> {
public void insertByDto(PurchaseBillAmountDto dto){
PurchaseBillAmount entity = new PurchaseBillAmount();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public PurchaseBillAmountDetailsVo selByMainSid(String billSid) {
return baseMapper.selByMainSid(billSid);
}
}

102
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetail.java

@ -0,0 +1,102 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetail.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetail <br/>
* Description: 采购单据明细. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细", description = "采购单据明细")
@TableName("purchase_bill_detail")
public class PurchaseBillDetail extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码")
private String goodsSkuCode; // 商品编码
@ApiModelProperty("商品条码")
private String goodsSN; // 商品条码
@ApiModelProperty("货号")
private String goodsNum; // 货号
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec; // 规格型号
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("单价")
private BigDecimal cost; // 单价
@ApiModelProperty("采购数量")
private BigDecimal count; // 采购数量
@ApiModelProperty("折扣率")
private BigDecimal discountRate; // 折扣率
@ApiModelProperty("折后单价")
private BigDecimal discountPrice; // 折后单价
@ApiModelProperty("分摊金额")
private BigDecimal shareAmount; // 分摊金额
@ApiModelProperty("分配比例")
private BigDecimal shareRate; // 分配比例
@ApiModelProperty("采购金额")
private BigDecimal amount; // 采购金额
@ApiModelProperty("采购周期")
private Integer cycle; // 采购周期
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预期到货日期")
private Date deliveryDate; // 预期到货日期
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
}

102
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailDetailsVo.java

@ -0,0 +1,102 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailVo <br/>
* Description: 采购单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 视图数据详情", description = "采购单据明细 视图数据详情")
public class PurchaseBillDetailDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码")
private String goodsSkuCode; // 商品编码
@ApiModelProperty("商品条码")
private String goodsSN; // 商品条码
@ApiModelProperty("货号")
private String goodsNum; // 货号
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec; // 规格型号
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("单价")
private BigDecimal cost; // 单价
@ApiModelProperty("采购数量")
private BigDecimal count; // 采购数量
@ApiModelProperty("折扣率")
private BigDecimal discountRate; // 折扣率
@ApiModelProperty("折后单价")
private BigDecimal discountPrice; // 折后单价
@ApiModelProperty("分摊金额")
private BigDecimal shareAmount; // 分摊金额
@ApiModelProperty("分配比例")
private BigDecimal shareRate; // 分配比例
@ApiModelProperty("采购金额")
private BigDecimal amount; // 采购金额
@ApiModelProperty("采购周期")
private Integer cycle; // 采购周期
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预期到货日期")
private Date deliveryDate; // 预期到货日期
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
}

102
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailDto.java

@ -0,0 +1,102 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailDto.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailDto <br/>
* Description: 采购单据明细 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 数据传输对象", description = "采购单据明细 数据传输对象")
public class PurchaseBillDetailDto implements Dto {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码")
private String goodsSkuCode; // 商品编码
@ApiModelProperty("商品条码")
private String goodsSN; // 商品条码
@ApiModelProperty("货号")
private String goodsNum; // 货号
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec; // 规格型号
@ApiModelProperty("计量单位")
private String unit; // 计量单位
@ApiModelProperty("单价")
private BigDecimal cost; // 单价
@ApiModelProperty("采购数量")
private BigDecimal count; // 采购数量
@ApiModelProperty("折扣率")
private BigDecimal discountRate; // 折扣率
@ApiModelProperty("折后单价")
private BigDecimal discountPrice; // 折后单价
@ApiModelProperty("分摊金额")
private BigDecimal shareAmount; // 分摊金额
@ApiModelProperty("分配比例")
private BigDecimal shareRate; // 分配比例
@ApiModelProperty("采购金额")
private BigDecimal amount; // 采购金额
@ApiModelProperty("采购周期")
private Integer cycle; // 采购周期
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("预期到货日期")
private Date deliveryDate; // 预期到货日期
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
}

65
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebilldetail.PmsPurchaseBillDetailMapper <br/>
* Description: 采购单据明细. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchaseBillDetailMapper extends BaseMapper<PurchaseBillDetail> {
@Delete("delete from purchase_bill_detail where billSid = #{dtoSid}")
void delByMainSid(String dtoSid);
@Select("select * from purchase_bill_detail where billSid = #{billSid}")
List<PurchaseBillDetailDetailsVo> selByMainSid(String billSid);
IPage<PurchaseBillDetailReportVo> purDetailReForm(IPage<PurchaseBillDetail> page, @Param(Constants.WRAPPER) QueryWrapper<PurchaseBillDetail> qw);
IPage<PurchaseBillDetailSumVo> purSumReForm(IPage<PurchaseBillDetail> page, @Param(Constants.WRAPPER) QueryWrapper<PurchaseBillDetail> qw);
}

46
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailMapper.xml

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="purDetailReForm" resultType="com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailReportVo">
SELECT
pdd.goodsSpuName,
pdd.goodsSkuCode,
pdd.cost,
pdd.cost * pdd.count AS costCount,
pdd.taxAmount,
pdd.taxAmount * pdd.count AS taxAmountCount,
pdd.taxPrice,
pdd.count,
IFNULL(ppd.backCount,0) AS retreatCount,
pdd.amount,
pdd.warehouseName,
pdd.unit
FROM pms_purchase_bill_detail pdd
LEFT JOIN pms_purchaseback_bill ppb
ON pdd.billSid = ppb.sourceBillSid
LEFT JOIN pms_purchaseback_detail ppd
ON ppb.sid = ppd.billSid
<where> ${ew.sqlSegment} </where>
</select>
<select id="purSumReForm" resultType="com.yxt.purchase.biz.purchasebilldetail.PurchaseBillDetailSumVo">
SELECT
pdd.goodsSpuName,
pdd.goodsSkuCode,
pdd.unit,
pdd.goodsSkuOwnSpec,
pdd.count,
pdd.amount,
IFNULL(ppd.backCount,0) AS retreatCount,
ppd.backAmount
FROM pms_purchase_bill_detail pdd
LEFT JOIN pms_purchaseback_bill ppb
ON pdd.billSid = ppb.sourceBillSid
LEFT JOIN pms_purchaseback_detail ppd
ON ppb.sid = ppd.billSid
<where> ${ew.sqlSegment} </where>
</select>
</mapper>

93
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailQuery.java

@ -0,0 +1,93 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailQuery.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailQuery <br/>
* Description: 采购单据明细 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 查询条件", description = "采购单据明细 查询条件")
public class PurchaseBillDetailQuery implements Query {
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode; // 商品编码(图号)
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec; // 规格型号
@ApiModelProperty("采购前库存数量")
private BigDecimal currentCount; // 采购前库存数量
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("库区/货位sid")
private String warehouseAreaSid; // 库区/货位sid
@ApiModelProperty("库区名称")
private String warehouseAreaName; // 库区名称
@ApiModelProperty("货架sid")
private String warehouseRackSid; // 货架sid
@ApiModelProperty("货架名称")
private String warehouseRackName; // 货架名称
@ApiModelProperty("单位成本(进货价)")
private BigDecimal cost; // 单位成本(进货价)
@ApiModelProperty("采购数量")
private BigDecimal count; // 采购数量
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
@ApiModelProperty("采购金额")
private BigDecimal amount; // 采购金额
}

59
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailReportQuery.java

@ -0,0 +1,59 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailVo <br/>
* Description: 采购单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 视图数据对象", description = "采购单据明细 视图数据对象")
public class PurchaseBillDetailReportQuery implements Query {
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("商品名称")
private String goodsSpuName;
}

77
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailReportVo.java

@ -0,0 +1,77 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailVo <br/>
* Description: 采购单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 视图数据对象", description = "采购单据明细 视图数据对象")
public class PurchaseBillDetailReportVo implements Vo {
@ApiModelProperty("商品名称")
private String goodsSpuName;
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode;
@ApiModelProperty("单位成本(进货价)")
private BigDecimal cost;
@ApiModelProperty("总体单位成本(进货价)")
private BigDecimal costCount;
@ApiModelProperty("税额")
private BigDecimal taxAmount;
@ApiModelProperty("税额合计")
private BigDecimal taxAmountCount;
@ApiModelProperty("含税价")
private BigDecimal taxPrice;
@ApiModelProperty("采购数量")
private BigDecimal count;
@ApiModelProperty("退货数量")
private BigDecimal retreatCount;
@ApiModelProperty("采购金额")
private BigDecimal amount;
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("单位")
private String unit;
}

113
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailService.java

@ -0,0 +1,113 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailService.java <br/>
* Class: com.yxt.pms.biz.purchasebilldetail.PmsPurchaseBillDetailService <br/>
* Description: 采购单据明细 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class PurchaseBillDetailService extends MybatisBaseService<PurchaseBillDetailMapper, PurchaseBillDetail> {
public void insertByDto(PurchaseBillDetailDto dto) {
PurchaseBillDetail entity = new PurchaseBillDetail();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public List<PurchaseBillDetailDetailsVo> selByMainSid(String billSid) {
return baseMapper.selByMainSid(billSid);
}
public PagerVo<PurchaseBillDetailReportVo> purDetailReForm(PagerQuery<PurchaseBillDetailReportQuery> pq) {
PurchaseBillDetailReportQuery query = pq.getParams();
QueryWrapper<PurchaseBillDetail> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getWarehouseName())) {
qw.like("pdd.warehouseName", query.getWarehouseName());
}
if (StringUtils.isNotBlank(query.getGoodsSkuCode())) {
qw.like("pdd.goodsSkuCode", query.getGoodsSkuCode());
}
if (StringUtils.isNotBlank(query.getGoodsSkuOwnSpec())) {
qw.like("pdd.goodsSkuOwnSpec", query.getGoodsSkuOwnSpec());
}
if (StringUtils.isNotBlank(query.getGoodsSpuName())) {
qw.like("pdd.goodsSpuName", query.getGoodsSpuName());
}
IPage<PurchaseBillDetail> page = PagerUtil.queryToPage(pq);
IPage<PurchaseBillDetailReportVo> pagging = baseMapper.purDetailReForm(page, qw);
PagerVo<PurchaseBillDetailReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<PurchaseBillDetailSumVo> purSumReForm(PagerQuery<PurchaseBillDetailReportQuery> pq) {
PurchaseBillDetailReportQuery query = pq.getParams();
QueryWrapper<PurchaseBillDetail> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getWarehouseName())) {
qw.like("pdd.warehouseName", query.getWarehouseName());
}
if (StringUtils.isNotBlank(query.getGoodsSkuCode())) {
qw.like("pdd.goodsSkuCode", query.getGoodsSkuCode());
}
if (StringUtils.isNotBlank(query.getGoodsSkuOwnSpec())) {
qw.like("pdd.goodsSkuOwnSpec", query.getGoodsSkuOwnSpec());
}
if (StringUtils.isNotBlank(query.getGoodsSpuName())) {
qw.like("pdd.goodsSpuName", query.getGoodsSpuName());
}
qw.eq("pdd.isDelete",0);
qw.groupBy("pdd.goodsSkuCode");
IPage<PurchaseBillDetail> page = PagerUtil.queryToPage(pq);
IPage<PurchaseBillDetailSumVo> pagging = baseMapper.purSumReForm(page, qw);
PagerVo<PurchaseBillDetailSumVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}

71
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailSumVo.java

@ -0,0 +1,71 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailVo <br/>
* Description: 采购单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 视图数据对象", description = "采购单据明细 视图数据对象")
public class PurchaseBillDetailSumVo implements Vo {
@ApiModelProperty("商品名称")
private String goodsSpuName;
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode;
@ApiModelProperty("单位")
private String unit;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("采购数量")
private BigDecimal count;
@ApiModelProperty("采购金额")
private BigDecimal amount;
@ApiModelProperty("退货数量")
private BigDecimal retreatCount;
@ApiModelProperty("退货金额")
private BigDecimal backAmount;
@ApiModelProperty("门店")
private String useOrgName;
}

96
src/main/java/com/yxt/purchase/biz/purchasebilldetail/PurchaseBillDetailVo.java

@ -0,0 +1,96 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebilldetail;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillDetailVo.java <br/>
* Class: com.yxt.pms.api.purchasebilldetail.PmsPurchaseBillDetailVo <br/>
* Description: 采购单据明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单据明细 视图数据对象", description = "采购单据明细 视图数据对象")
public class PurchaseBillDetailVo implements Vo {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")
private String goodsSkuSid; // 商品Skusid
@ApiModelProperty("商品Sku名称")
private String goodsSkuTitle; // 商品Sku名称
@ApiModelProperty("商品编码(图号)")
private String goodsSkuCode; // 商品编码(图号)
@ApiModelProperty("规格型号")
private String goodsSkuOwnSpec; // 规格型号
@ApiModelProperty("采购前库存数量")
private BigDecimal currentCount; // 采购前库存数量
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("库区/货位sid")
private String warehouseAreaSid; // 库区/货位sid
@ApiModelProperty("库区名称")
private String warehouseAreaName; // 库区名称
@ApiModelProperty("货架sid")
private String warehouseRackSid; // 货架sid
@ApiModelProperty("货架名称")
private String warehouseRackName; // 货架名称
@ApiModelProperty("单位成本(进货价)")
private BigDecimal cost; // 单位成本(进货价)
@ApiModelProperty("采购数量")
private BigDecimal count; // 采购数量
@ApiModelProperty("税额")
private BigDecimal taxAmount; // 税额
@ApiModelProperty("含税价")
private BigDecimal taxPrice; // 含税价
@ApiModelProperty("采购金额")
private BigDecimal amount; // 采购金额
}

72
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtend.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtend.java <br/>
* Class: com.yxt.pms.api.purchasebillextend.PmsPurchaseBillExtend <br/>
* Description: 采购单扩展. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单扩展", description = "采购单扩展")
@TableName("purchase_bill_extend")
public class PurchaseBillExtend extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("物流单号")
private String logisticsNum; // 物流单号
@ApiModelProperty("生产进度")
private String productProgress; // 生产进度
@ApiModelProperty("收货状态key")
private String receiveStateKey; // 收货状态
@ApiModelProperty("收货状态value")
private String receiveStateValue;
@ApiModelProperty("发货状态key")
private String deliveryStateKey; // 发货状态
@ApiModelProperty("发货状态value")
private String deliveryStateValue;
}

70
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendDetailsVo.java

@ -0,0 +1,70 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendVo.java <br/>
* Class: com.yxt.pms.api.purchasebillextend.PmsPurchaseBillExtendVo <br/>
* Description: 采购单扩展 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单扩展 视图数据详情", description = "采购单扩展 视图数据详情")
public class PurchaseBillExtendDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("物流单号")
private String logisticsNum; // 物流单号
@ApiModelProperty("生产进度")
private String productProgress; // 生产进度
@ApiModelProperty("收货状态key")
private String receiveStateKey; // 收货状态
@ApiModelProperty("收货状态value")
private String receiveStateValue;
@ApiModelProperty("发货状态key")
private String deliveryStateKey; // 发货状态
@ApiModelProperty("发货状态value")
private String deliveryStateValue;
}

70
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendDto.java

@ -0,0 +1,70 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendDto.java <br/>
* Class: com.yxt.pms.api.purchasebillextend.PmsPurchaseBillExtendDto <br/>
* Description: 采购单扩展 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单扩展 数据传输对象", description = "采购单扩展 数据传输对象")
public class PurchaseBillExtendDto implements Dto {
private String sid; // sid
@ApiModelProperty("采购单sid")
private String billSid; // 采购单sid
@ApiModelProperty("物流单号")
private String logisticsNum; // 物流单号
@ApiModelProperty("生产进度")
private String productProgress; // 生产进度
@ApiModelProperty("收货状态key")
private String receiveStateKey; // 收货状态
@ApiModelProperty("收货状态value")
private String receiveStateValue;
@ApiModelProperty("发货状态key")
private String deliveryStateKey; // 发货状态
@ApiModelProperty("发货状态value")
private String deliveryStateValue;
}

60
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendMapper.java

@ -0,0 +1,60 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebillextend.PmsPurchaseBillExtendMapper <br/>
* Description: 采购单扩展. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchaseBillExtendMapper extends BaseMapper<PurchaseBillExtend> {
@Delete("delete from purchase_bill_extend where billSid = #{dtoSid}")
void delByMainSid(String dtoSid);
@Select("select * from purchase_bill_extend where billSid = #{billSid}")
PurchaseBillExtendDetailsVo selByMainSid(String billSid);
}

6
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendMapper.xml

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.purchase.biz.purchasebillextend.PurchaseBillExtendMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

83
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendQuery.java

@ -0,0 +1,83 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendQuery.java <br/>
* Class: com.yxt.pms.api.purchasebillextend.PmsPurchaseBillExtendQuery <br/>
* Description: 采购单扩展 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单扩展 查询条件", description = "采购单扩展 查询条件")
public class PurchaseBillExtendQuery implements Query {
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("采购单sid")
private String purchaseBillSid; // 采购单sid
@ApiModelProperty("加价方式(统一加价率、区间加价率、仓库加价率)")
private String markupType; // 加价方式(统一加价率、区间加价率、仓库加价率)
@ApiModelProperty("进价不同时的价格策略(加权平均、分别计价)")
private String priceStrategy; // 进价不同时的价格策略(加权平均、分别计价)
@ApiModelProperty("临时加价率")
private Integer tempMarkupRate; // 临时加价率
@ApiModelProperty("发货人姓名")
private String shipperName; // 发货人姓名
@ApiModelProperty("发货人手机")
private String shipperMob; // 发货人手机
@ApiModelProperty("发货省市区sid")
private String deliveryAreaSid; // 发货省市区sid
@ApiModelProperty("发货详细地址")
private String deliveryAddress; // 发货详细地址
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("到货日期")
private Date arrivalDateStart; // 到货日期
private Date arrivalDateEnd; // 到货日期
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("付款期限")
private Date paymentTermStart; // 付款期限
private Date paymentTermEnd; // 付款期限
@ApiModelProperty("仓库sid")
private String wareHouseSid; // 仓库sid
}

67
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendService.java

@ -0,0 +1,67 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendService.java <br/>
* Class: com.yxt.pms.biz.purchasebillextend.PmsPurchaseBillExtendService <br/>
* Description: 采购单扩展 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class PurchaseBillExtendService extends MybatisBaseService<PurchaseBillExtendMapper, PurchaseBillExtend> {
public void insertByDto(PurchaseBillExtendDto dto){
PurchaseBillExtend entity = new PurchaseBillExtend();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public PurchaseBillExtendDetailsVo selByMainSid(String billSid) {
return baseMapper.selByMainSid(billSid);
}
}

85
src/main/java/com/yxt/purchase/biz/purchasebillextend/PurchaseBillExtendVo.java

@ -0,0 +1,85 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillextend;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: yxt-pms(采购) <br/>
* File: PmsPurchaseBillExtendVo.java <br/>
* Class: com.yxt.pms.api.purchasebillextend.PmsPurchaseBillExtendVo <br/>
* Description: 采购单扩展 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-19 13:51:46 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单扩展 视图数据对象", description = "采购单扩展 视图数据对象")
public class PurchaseBillExtendVo implements Vo {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("采购单sid")
private String purchaseBillSid; // 采购单sid
@ApiModelProperty("加价方式(统一加价率、区间加价率、仓库加价率)")
private String markupType; // 加价方式(统一加价率、区间加价率、仓库加价率)
@ApiModelProperty("进价不同时的价格策略(加权平均、分别计价)")
private String priceStrategy; // 进价不同时的价格策略(加权平均、分别计价)
@ApiModelProperty("临时加价率")
private Integer tempMarkupRate; // 临时加价率
@ApiModelProperty("发货人姓名")
private String shipperName; // 发货人姓名
@ApiModelProperty("发货人手机")
private String shipperMob; // 发货人手机
@ApiModelProperty("发货省市区sid")
private String deliveryAreaSid; // 发货省市区sid
@ApiModelProperty("发货详细地址")
private String deliveryAddress; // 发货详细地址
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("到货日期")
private Date arrivalDateStart; // 到货日期
private Date arrivalDateEnd; // 到货日期
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("付款期限")
private Date paymentTermStart; // 付款期限
private Date paymentTermEnd; // 付款期限
@ApiModelProperty("仓库sid")
private String wareHouseSid; // 仓库sid
}

81
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoice.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoice.java <br/>
* Class: com.yxt.pms.api.purchasebillinvoice.PmsPurchaseBillInvoice <br/>
* Description: 采购单-发票. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-发票", description = "采购单-发票")
@TableName("purchase_bill_invoice")
public class PurchaseBillInvoice extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("是否需要开发票(是1,否0)")
private Integer isInvoicing; // 是否需要开发票(是1,否0)
@ApiModelProperty("票据类型key")
private String billTypeKey; // 票据类型key
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType; // 票据类型(不含税、增值税、普通税、已含增值税)
@ApiModelProperty("开票名称")
private String invoicingName; // 开票名称
@ApiModelProperty("税号")
private String taxpayerNo; // 税号
@ApiModelProperty("发票代码")
private String invoiceCode; // 发票代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date invoiceDate; // 开票日期
@ApiModelProperty("发票金额")
private BigDecimal invoiceAmount; // 发票金额
@ApiModelProperty("税率")
private BigDecimal taxRate; // 税率
}

81
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceDetailsVo.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceVo.java <br/>
* Class: com.yxt.pms.api.purchasebillinvoice.PmsPurchaseBillInvoiceVo <br/>
* Description: 采购单-发票 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-发票 视图数据详情", description = "采购单-发票 视图数据详情")
public class PurchaseBillInvoiceDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("是否需要开发票(是1,否0)")
private String isInvoicing; // 是否需要开发票(是1,否0)
@ApiModelProperty("票据类型key")
private String billTypeKey; // 票据类型key
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType; // 票据类型(不含税、增值税、普通税、已含增值税)
@ApiModelProperty("开票名称")
private String invoicingName; // 开票名称
@ApiModelProperty("税号")
private String taxpayerNo; // 税号
@ApiModelProperty("发票代码")
private String invoiceCode; // 发票代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date invoiceDate; // 开票日期
@ApiModelProperty("发票金额")
private BigDecimal invoiceAmount; // 发票金额
@ApiModelProperty("税率")
private BigDecimal taxRate; // 税率
}

81
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceDto.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceDto.java <br/>
* Class: com.yxt.pms.api.purchasebillinvoice.PmsPurchaseBillInvoiceDto <br/>
* Description: 采购单-发票 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-发票 数据传输对象", description = "采购单-发票 数据传输对象")
public class PurchaseBillInvoiceDto implements Dto {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("是否需要开发票(是1,否0)")
private String isInvoicing; // 是否需要开发票(是1,否0)
@ApiModelProperty("票据类型key")
private String billTypeKey; // 票据类型key
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType; // 票据类型(不含税、增值税、普通税、已含增值税)
@ApiModelProperty("开票名称")
private String invoicingName; // 开票名称
@ApiModelProperty("税号")
private String taxpayerNo; // 税号
@ApiModelProperty("发票代码")
private String invoiceCode; // 发票代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date invoiceDate; // 开票日期
@ApiModelProperty("发票金额")
private BigDecimal invoiceAmount; // 发票金额
@ApiModelProperty("税率")
private BigDecimal taxRate; // 税率
}

67
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceMapper.java

@ -0,0 +1,67 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceMapper.java <br/>
* Class: com.yxt.pms.biz.purchasebillinvoice.PmsPurchaseBillInvoiceMapper <br/>
* Description: 采购单-发票. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface PurchaseBillInvoiceMapper extends BaseMapper<PurchaseBillInvoice> {
IPage<PurchaseBillInvoiceVo> selectPageVo(IPage<PurchaseBillInvoice> page, @Param(Constants.WRAPPER) Wrapper<PurchaseBillInvoice> qw);
List<PurchaseBillInvoiceVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<PurchaseBillInvoice> qw);
@Select("select * from pms_purchase_bill_invoice")
List<PurchaseBillInvoiceVo> selectListVo();
@Delete("delete from pms_purchase_bill_invoice where billSid = #{dtoSid}")
void delByMainSid(String dtoSid);
@Select("select * from pms_purchase_bill_invoice where billSid = #{sid}")
PurchaseBillInvoiceDetailsVo selByMainSid(String sid);
}

13
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceMapper.xml

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceVo">
SELECT * FROM pms_purchase_bill_invoice <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceVo">
SELECT * FROM pms_purchase_bill_invoice <where> ${ew.sqlSegment} </where>
</select>
</mapper>

80
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceQuery.java

@ -0,0 +1,80 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceQuery.java <br/>
* Class: com.yxt.pms.api.purchasebillinvoice.PmsPurchaseBillInvoiceQuery <br/>
* Description: 采购单-发票 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-发票 查询条件", description = "采购单-发票 查询条件")
public class PurchaseBillInvoiceQuery implements Query {
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("是否需要开发票(是1,否0)")
private Integer isInvoicing; // 是否需要开发票(是1,否0)
@ApiModelProperty("票据类型key")
private String billTypeKey; // 票据类型key
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType; // 票据类型(不含税、增值税、普通税、已含增值税)
@ApiModelProperty("开票名称")
private String invoicingName; // 开票名称
@ApiModelProperty("税号")
private String taxpayerNo; // 税号
@ApiModelProperty("发票代码")
private String invoiceCode; // 发票代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date invoiceDateStart; // 开票日期
private Date invoiceDateEnd; // 开票日期
@ApiModelProperty("发票金额")
private BigDecimal invoiceAmount; // 发票金额
@ApiModelProperty("税率")
private BigDecimal taxRate; // 税率
}

94
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceService.java

@ -0,0 +1,94 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Service;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceService.java <br/>
* Class: com.yxt.pms.biz.purchasebillinvoice.PmsPurchaseBillInvoiceService <br/>
* Description: 采购单-发票 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class PurchaseBillInvoiceService extends MybatisBaseService<PurchaseBillInvoiceMapper, PurchaseBillInvoice> {
private QueryWrapper<PurchaseBillInvoice> createQueryWrapper(PurchaseBillInvoiceQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<PurchaseBillInvoice> qw = new QueryWrapper<>();
return qw;
}
public PagerVo<PurchaseBillInvoiceVo> listPageVo(PagerQuery<PurchaseBillInvoiceQuery> pq) {
PurchaseBillInvoiceQuery query = pq.getParams();
QueryWrapper<PurchaseBillInvoice> qw = createQueryWrapper(query);
IPage<PurchaseBillInvoice> page = PagerUtil.queryToPage(pq);
IPage<PurchaseBillInvoiceVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<PurchaseBillInvoiceVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(PurchaseBillInvoiceDto dto){
this.insertByDto(dto);
}
public void insertByDto(PurchaseBillInvoiceDto dto){
PurchaseBillInvoice entity = new PurchaseBillInvoice();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public PurchaseBillInvoiceDetailsVo fetchDetailsVoBySid(String sid){
PurchaseBillInvoice entity = fetchBySid(sid);
PurchaseBillInvoiceDetailsVo vo = new PurchaseBillInvoiceDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public PurchaseBillInvoiceDetailsVo selByMainSid(String sid) {
return baseMapper.selByMainSid(sid);
}
}

81
src/main/java/com/yxt/purchase/biz/purchasebillinvoice/PurchaseBillInvoiceVo.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.purchase.biz.purchasebillinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: yxt-pms(采购发票) <br/>
* File: PmsPurchaseBillInvoiceVo.java <br/>
* Class: com.yxt.pms.api.purchasebillinvoice.PmsPurchaseBillInvoiceVo <br/>
* Description: 采购单-发票 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-05-08 09:51:30 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购单-发票 视图数据对象", description = "采购单-发票 视图数据对象")
public class PurchaseBillInvoiceVo implements Vo {
private String sid; // sid
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("是否需要开发票(是1,否0)")
private Integer isInvoicing; // 是否需要开发票(是1,否0)
@ApiModelProperty("票据类型key")
private String billTypeKey; // 票据类型key
@ApiModelProperty("票据类型(不含税、增值税、普通税、已含增值税)")
private String billType; // 票据类型(不含税、增值税、普通税、已含增值税)
@ApiModelProperty("开票名称")
private String invoicingName; // 开票名称
@ApiModelProperty("税号")
private String taxpayerNo; // 税号
@ApiModelProperty("发票代码")
private String invoiceCode; // 发票代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date invoiceDate; // 开票日期
@ApiModelProperty("发票金额")
private BigDecimal invoiceAmount; // 发票金额
@ApiModelProperty("税率")
private BigDecimal taxRate; // 税率
}

1
src/main/java/com/yxt/purchase/biz/purchasereceiptbill/PurchaseReceiptBillService.java

@ -51,7 +51,6 @@ public class PurchaseReceiptBillService extends MybatisBaseService<PurchaseRecei
return rb.setMsg("该单据不存在");
}
BeanUtil.copyProperties(dto, PurchaseReceiptBill, "sid");
dto.get
baseMapper.updateById(PurchaseReceiptBill);
}

Loading…
Cancel
Save