TempService.java
4.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package com.huaheng.api.backPass;
import com.huaheng.common.constant.QuantityConstant;
import com.huaheng.common.utils.DateUtils;
import com.huaheng.common.utils.security.ShiroUtils;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.config.material.domain.Material;
import com.huaheng.pc.config.material.service.MaterialService;
import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail;
import com.huaheng.pc.receipt.receiptDetail.service.ReceiptDetailService;
import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader;
import com.huaheng.pc.receipt.receiptHeader.service.ReceiptHeaderService;
import com.huaheng.pc.shipment.shipmentDetail.service.ShipmentDetailService;
import com.huaheng.pc.shipment.shipmentHeader.service.ShipmentHeaderService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
/***
* @author tongzonghao
*
*/
@Service
public class TempService {
@Resource
private ReceiptHeaderService receiptHeaderService;
@Resource
private ShipmentHeaderService shipmentHeaderService;
@Resource
private ShipmentDetailService shipmentDetailService;
@Resource
private ReceiptDetailService receiptDetailService;
@Resource
private MaterialService materialService;
@Transactional(rollbackFor = Exception.class)
public AjaxResult createBillBy(ReceiptDetail receiptDetail1, Integer semiInt) {
ReceiptDetail receiptDetailByRollNumber = receiptDetailService.getReceiptDetailByRollNumber(receiptDetail1.getRollNumber(), ShiroUtils.getZoneCode());
if (receiptDetailByRollNumber != null) {
return AjaxResult.success();
}
//不是半自动就不创建单据
if (semiInt != 1) {
return AjaxResult.success();
}
String materialCode = receiptDetail1.getMaterialCode();
String rollNumber = receiptDetail1.getRollNumber();
Material material = materialService.getMaterialByCode(materialCode, QuantityConstant.WAREHOUSECODE);
if (material == null) {
material = new Material();
material.setCode(materialCode);
material.setName(materialCode);
material.setSpec(materialCode);
material.setUnit(materialCode);
material.setCompanyCode(QuantityConstant.COMPANYCODE);
materialService.addSave(material);
}
String code = receiptHeaderService.createCode("DE", ShiroUtils.getZoneCode());
ReceiptHeader receiptHeader = new ReceiptHeader();
receiptHeader.setReceiptType("DE");
receiptHeader.setCode(code);
receiptHeader.setWarehouseCode(QuantityConstant.WAREHOUSECODE);
receiptHeader.setZoneCode(ShiroUtils.getZoneCode());
receiptHeader.setCompanyCode(QuantityConstant.COMPANYCODE);
receiptHeader.setFirstStatus(QuantityConstant.RECEIPT_HEADER_BUILD);
receiptHeader.setLastStatus(QuantityConstant.RECEIPT_HEADER_BUILD);
receiptHeader.setTotalLines(BigDecimal.ONE.intValue());
receiptHeader.setTotalQty(receiptDetail1.getQty());
receiptHeader.setCreatedBy("半自动创建");
receiptHeader.setCreated(DateUtils.getNowDate());
receiptHeader.setLastUpdatedBy("半自动创建");
receiptHeader.setLastUpdated(DateUtils.getNowDate());
receiptHeaderService.save(receiptHeader);
ReceiptDetail receiptDetail = new ReceiptDetail();
receiptDetail.setReceiptId(receiptHeader.getId());
receiptDetail.setReceiptCode(receiptHeader.getCode());
receiptDetail.setCompanyCode(QuantityConstant.COMPANYCODE);
receiptDetail.setWarehouseCode(QuantityConstant.WAREHOUSECODE);
receiptDetail.setInventorySts(QuantityConstant.GOOD);
receiptDetail.setMaterialCode(material.getCode());
receiptDetail.setMaterialName(material.getName());
receiptDetail.setMaterialSpec(material.getSpec());
receiptDetail.setMaterialUnit(material.getUnit());
receiptDetail.setProcessStamp(QuantityConstant.RECEIPT_HEADER_BUILD.toString());
receiptDetail.setRollNumber(rollNumber);
receiptDetail.setQty(receiptDetail1.getQty());
if (receiptDetail.getQty() == null) {
receiptDetail.setQty(BigDecimal.ONE);
} else {
receiptDetail.setQty(receiptDetail1.getQty());
}
receiptDetail.setTaskQty(BigDecimal.ZERO);
receiptDetail.setCreatedBy("半自动创建");
receiptDetail.setCreated(DateUtils.getNowDate());
receiptDetail.setLastUpdatedBy("半自动创建");
receiptDetail.setLastUpdated(DateUtils.getNowDate());
receiptDetailService.save(receiptDetail);
return AjaxResult.success();
}
}