代码更新
This commit is contained in:
@@ -189,4 +189,9 @@ public class CustomerbaseDto implements Serializable {
|
|||||||
* 送货单打印模板号
|
* 送货单打印模板号
|
||||||
*/
|
*/
|
||||||
private String shd_print_no;
|
private String shd_print_no;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 送货单明细数
|
||||||
|
*/
|
||||||
|
private String shd_dtl_num;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -68,7 +68,7 @@
|
|||||||
IF 输入.flag = "2"
|
IF 输入.flag = "2"
|
||||||
QUERY
|
QUERY
|
||||||
SELECT
|
SELECT
|
||||||
cust_code AS value,
|
cust_name AS value,
|
||||||
cust_name AS label
|
cust_name AS label
|
||||||
FROM
|
FROM
|
||||||
MD_CS_TransportationBase
|
MD_CS_TransportationBase
|
||||||
|
|||||||
@@ -176,4 +176,10 @@ public interface CheckOutBillService {
|
|||||||
* @param whereJson /
|
* @param whereJson /
|
||||||
*/
|
*/
|
||||||
void downloadExcel(HttpServletResponse response, Map whereJson) throws IOException;
|
void downloadExcel(HttpServletResponse response, Map whereJson) throws IOException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取分配明细条数
|
||||||
|
* @param whereJson /
|
||||||
|
*/
|
||||||
|
JSONObject getDisNum(Map whereJson);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -211,4 +211,11 @@ public class CheckOutBillController {
|
|||||||
checkOutBillService.downloadExcel(response,whereJson);
|
checkOutBillService.downloadExcel(response,whereJson);
|
||||||
return new ResponseEntity<>(HttpStatus.OK);
|
return new ResponseEntity<>(HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/getDisNum")
|
||||||
|
@Log("获取分配明细条数")
|
||||||
|
@ApiOperation("获取分配明细条数")
|
||||||
|
public ResponseEntity<Object> getDisNum(@RequestBody Map whereJson) {
|
||||||
|
return new ResponseEntity<>(checkOutBillService.getDisNum(whereJson),HttpStatus.OK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2132,6 +2132,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
|
|
||||||
WQLObject custTab = WQLObject.getWQLObject("MD_CS_CustomerBase"); // 客户基本信息表
|
WQLObject custTab = WQLObject.getWQLObject("MD_CS_CustomerBase"); // 客户基本信息表
|
||||||
WQLObject mstTab = WQLObject.getWQLObject("ST_IVT_IOStorInv"); // 出入库主表
|
WQLObject mstTab = WQLObject.getWQLObject("ST_IVT_IOStorInv"); // 出入库主表
|
||||||
|
WQLObject subTab = WQLObject.getWQLObject("pdm_bi_subpackagerelation"); // 子卷包装关系表
|
||||||
|
|
||||||
JSONObject jsonMst = mstTab.query("iostorinv_id = '" + MapUtil.getStr(whereJson, "iostorinv_id") + "'").uniqueResult(0);
|
JSONObject jsonMst = mstTab.query("iostorinv_id = '" + MapUtil.getStr(whereJson, "iostorinv_id") + "'").uniqueResult(0);
|
||||||
String cust_code = jsonMst.getString("cust_code");
|
String cust_code = jsonMst.getString("cust_code");
|
||||||
@@ -2149,22 +2150,21 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
// WriteSheet sheet = EasyExcel.writerSheet().build();
|
// WriteSheet sheet = EasyExcel.writerSheet().build();
|
||||||
// 5.单组填充
|
// 5.单组填充
|
||||||
HashMap<String, Object> oneMap = new HashMap<>();
|
HashMap<String, Object> oneMap = new HashMap<>();
|
||||||
oneMap.put("consignee", jsonMst.getString("consignee"));
|
oneMap.put("bill_code", jsonMst.getString("bill_code")); // 出库单号
|
||||||
oneMap.put("receiver", jsonMst.getString("receiver"));
|
oneMap.put("create_date", DateUtil.today()); // 出库日期
|
||||||
oneMap.put("receiptaddress", jsonMst.getString("receiptaddress"));
|
oneMap.put("consignee", jsonMst.getString("consignee")); // 客户
|
||||||
oneMap.put("receiptphone", jsonMst.getString("receiptphone"));
|
oneMap.put("receiptaddress", jsonMst.getString("receiptaddress")); // 客户地址
|
||||||
oneMap.put("logisticscompany", jsonMst.getString("logisticscompany"));
|
oneMap.put("trans_code", jsonMst.getString("trans_code")); // 承运公司
|
||||||
oneMap.put("drivername", jsonMst.getString("drivername"));
|
oneMap.put("receiptaddress2", jsonMst.getString("receiptaddress")); // 收货地址
|
||||||
oneMap.put("carno", jsonMst.getString("carno"));
|
oneMap.put("receiptphone", jsonMst.getString("receiver") +"/"+jsonMst.getString("receiptphone")); // 客户电话
|
||||||
oneMap.put("driverphone", jsonMst.getString("driverphone"));
|
oneMap.put("deliveryphone", jsonMst.getString("deliveryname") +"/"+jsonMst.getString("deliveryphone") ); // 承运人电话
|
||||||
oneMap.put("contractno", jsonMst.getString("contractno"));
|
|
||||||
// 总箱数
|
// 总箱数
|
||||||
JSONArray jsonAllBox = WQL.getWO("ST_OUTIVT02").addParam("flag", "4").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
|
/* JSONArray jsonAllBox = WQL.getWO("ST_OUTIVT02").addParam("flag", "4").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
|
||||||
oneMap.put("all_box", jsonAllBox.size());
|
oneMap.put("all_box", jsonAllBox.size());
|
||||||
oneMap.put("all_qty", "");
|
oneMap.put("all_qty", "");
|
||||||
oneMap.put("deliveryaddress", jsonMst.getString("deliveryaddress"));
|
oneMap.put("deliveryaddress", jsonMst.getString("deliveryaddress"));
|
||||||
oneMap.put("deliveryname", jsonMst.getString("deliveryname"));
|
oneMap.put("deliveryname", jsonMst.getString("deliveryname"));
|
||||||
oneMap.put("deliveryphone", jsonMst.getString("deliveryphone"));
|
oneMap.put("deliveryphone", jsonMst.getString("deliveryphone"));*/
|
||||||
// 6.多组填充
|
// 6.多组填充
|
||||||
JSONArray dtlArr = WQL.getWO("ST_OUTIVT02").addParam("flag", "3").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
|
JSONArray dtlArr = WQL.getWO("ST_OUTIVT02").addParam("flag", "3").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
|
||||||
|
|
||||||
@@ -2175,16 +2175,27 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
WriteSheet sheet = EasyExcel.writerSheet().build();
|
WriteSheet sheet = EasyExcel.writerSheet().build();
|
||||||
for (int i = 0; i < dtlArr.size(); i++) {
|
for (int i = 0; i < dtlArr.size(); i++) {
|
||||||
JSONObject json = dtlArr.getJSONObject(i);
|
JSONObject json = dtlArr.getJSONObject(i);
|
||||||
HashMap<String, Object> mapFL = new HashMap<>();
|
JSONObject jsonSub = subTab.query("package_box_sn = '" + json.getString("box_no") + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(jsonSub)) throw new BadRequestException("没有查询到子卷包装");
|
||||||
|
|
||||||
oneMap.put("vbeln", json.getString("vbeln")); // 送货单号
|
// 规格: 厚度*幅宽
|
||||||
|
String material_spec = jsonSub.getString("thickness") + "*" + jsonSub.getString("width");
|
||||||
|
// 箱号
|
||||||
|
String box_no = json.getString("box_no");
|
||||||
|
String sub_box_no = "";
|
||||||
|
if (ObjectUtil.isNotEmpty(box_no)) {
|
||||||
|
sub_box_no = box_no.substring(box_no.lastIndexOf("@")+1, box_no.length());
|
||||||
|
}
|
||||||
|
|
||||||
|
HashMap<String, Object> mapFL = new HashMap<>();
|
||||||
// 明细
|
// 明细
|
||||||
mapFL.put("index", i + 1);
|
String date_of_production = jsonSub.getString("date_of_production").replaceAll("[[\\s-:punct:]]", "");
|
||||||
mapFL.put("source_bill_code", json.getString("source_bill_code"));
|
mapFL.put("date_of_production", date_of_production); // 批号 : 子卷包装生产日期
|
||||||
mapFL.put("material_name", json.getString("material_name"));
|
mapFL.put("material_name", json.getString("material_name"));
|
||||||
mapFL.put("material_spec", json.getString("material_spec"));
|
mapFL.put("material_spec", material_spec);
|
||||||
mapFL.put("qty", json.getString("real_qty"));
|
mapFL.put("qty_unit_name", "KG");
|
||||||
mapFL.put("remark", json.getString("remark"));
|
mapFL.put("box_no", sub_box_no);
|
||||||
|
mapFL.put("qty", NumberUtil.round(json.getString("qty"), 2).toString());
|
||||||
flData.add(mapFL);
|
flData.add(mapFL);
|
||||||
}
|
}
|
||||||
workBook.fill(oneMap, sheet);
|
workBook.fill(oneMap, sheet);
|
||||||
@@ -2200,17 +2211,29 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
if (i == dtlArr.size()) {
|
if (i == dtlArr.size()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
JSONObject json = dtlArr.getJSONObject(i);
|
|
||||||
HashMap<String, Object> mapFL = new HashMap<>();
|
|
||||||
|
|
||||||
oneMap.put("vbeln", json.getString("vbeln")); // 送货单号
|
JSONObject json = dtlArr.getJSONObject(i);
|
||||||
|
JSONObject jsonSub = subTab.query("package_box_sn = '" + json.getString("box_no") + "'").uniqueResult(0);
|
||||||
|
if (ObjectUtil.isEmpty(jsonSub)) throw new BadRequestException("没有查询到子卷包装");
|
||||||
|
|
||||||
|
// 规格: 厚度*幅宽
|
||||||
|
String material_spec = jsonSub.getString("thickness") + "*" + jsonSub.getString("width");
|
||||||
|
// 箱号
|
||||||
|
String box_no = json.getString("box_no");
|
||||||
|
String sub_box_no = "";
|
||||||
|
if (ObjectUtil.isNotEmpty(box_no)) {
|
||||||
|
sub_box_no = box_no.substring(box_no.lastIndexOf("@")+1, box_no.length());
|
||||||
|
}
|
||||||
|
|
||||||
|
HashMap<String, Object> mapFL = new HashMap<>();
|
||||||
// 明细
|
// 明细
|
||||||
mapFL.put("index", i + 1);
|
String date_of_production = jsonSub.getString("date_of_production").replaceAll("[[\\s-:punct:]]", "");
|
||||||
mapFL.put("source_bill_code", json.getString("source_bill_code"));
|
mapFL.put("date_of_production", date_of_production); // 批号 : 子卷包装生产日期
|
||||||
mapFL.put("material_name", json.getString("material_name"));
|
mapFL.put("material_name", json.getString("material_name"));
|
||||||
mapFL.put("material_spec", json.getString("material_spec"));
|
mapFL.put("material_spec", material_spec);
|
||||||
mapFL.put("qty", json.getString("real_qty"));
|
mapFL.put("qty_unit_name", "KG");
|
||||||
mapFL.put("remark", json.getString("remark"));
|
mapFL.put("box_no", sub_box_no);
|
||||||
|
mapFL.put("qty", NumberUtil.round(json.getString("qty"), 2).toString());
|
||||||
flData.add(mapFL);
|
flData.add(mapFL);
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2221,6 +2244,15 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JSONObject getDisNum(Map whereJson) {
|
||||||
|
JSONArray dtlArr = WQL.getWO("ST_OUTIVT02").addParam("flag", "3").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
|
||||||
|
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
json.put("num", dtlArr.size());
|
||||||
|
return json;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新主表状态
|
* 更新主表状态
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -84,25 +84,26 @@
|
|||||||
IF 输入.flag = "3"
|
IF 输入.flag = "3"
|
||||||
QUERY
|
QUERY
|
||||||
SELECT
|
SELECT
|
||||||
dtl.*,
|
SUM(dis.real_qty) AS qty,
|
||||||
mater.material_code,
|
dis.box_no,
|
||||||
mater.material_name,
|
MAX(mater.material_name) AS material_name
|
||||||
mater.material_spec
|
|
||||||
FROM
|
FROM
|
||||||
ST_IVT_IOStorInvDtl dtl
|
ST_IVT_IOStorInvDis dis
|
||||||
LEFT JOIN md_me_materialbase mater ON mater.material_id = dtl.material_id
|
LEFT JOIN md_me_materialbase mater ON mater.material_id = dis.material_id
|
||||||
WHERE
|
WHERE
|
||||||
1 = 1
|
1 = 1
|
||||||
|
|
||||||
OPTION 输入.iostorinv_id <> ""
|
OPTION 输入.iostorinv_id <> ""
|
||||||
dtl.iostorinv_id = 输入.iostorinv_id
|
dis.iostorinv_id = 输入.iostorinv_id
|
||||||
ENDOPTION
|
ENDOPTION
|
||||||
|
|
||||||
|
group by dis.box_no
|
||||||
|
|
||||||
ENDSELECT
|
ENDSELECT
|
||||||
ENDQUERY
|
ENDQUERY
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
IF 输入.flag = "3"
|
IF 输入.flag = "4"
|
||||||
QUERY
|
QUERY
|
||||||
SELECT
|
SELECT
|
||||||
count(*) AS num
|
count(*) AS num
|
||||||
|
|||||||
@@ -92,6 +92,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="送货单打印模板路径">
|
||||||
|
<el-input v-model="form.shd_print_no" style="width: 200px;" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="送货单明细数">
|
||||||
|
<el-input-number v-model="form.shd_dtl_num" :min="1" :max="100" :precision="0" :controls="false" style="width: 200px;"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
<el-form-item label="备注">
|
<el-form-item label="备注">
|
||||||
<el-input v-model="form.remark" style="width: 600px;" type="textarea" />
|
<el-input v-model="form.remark" style="width: 600px;" type="textarea" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -115,6 +127,8 @@
|
|||||||
<el-table-column prop="corp_tele_no" label="公司电话" />
|
<el-table-column prop="corp_tele_no" label="公司电话" />
|
||||||
<el-table-column prop="corp_address" label="公司地址" />
|
<el-table-column prop="corp_address" label="公司地址" />
|
||||||
<el-table-column prop="jurid_name" label="法人代表" />
|
<el-table-column prop="jurid_name" label="法人代表" />
|
||||||
|
<el-table-column prop="shd_print_no" label="送货单打印模板路径" width="150px" show-overflow-tooltip/>
|
||||||
|
<el-table-column prop="shd_dtl_num" label="送货单明细数" />
|
||||||
<el-table-column prop="update_optname" label="修改者" />
|
<el-table-column prop="update_optname" label="修改者" />
|
||||||
<el-table-column prop="update_time" label="修改时间" width="150" />
|
<el-table-column prop="update_time" label="修改时间" width="150" />
|
||||||
<el-table-column label="启用" align="center" prop="is_used">
|
<el-table-column label="启用" align="center" prop="is_used">
|
||||||
|
|||||||
@@ -169,4 +169,11 @@ export function moneySubmit(data) {
|
|||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
export default { add, edit, del, allDiv, allCancel, getOutBillDtl, getOutBillDis, setPoint, getOutBillTask, getStructIvt, manualDiv, confirm, issueTask, finishTask, cancleTaskfinish, getInvTypes, paramByCodeType, schAreaType, backConfirm, getOutBillDisDtl, getType, allDivOne, moneySubmit }
|
export function getDisNum(data) {
|
||||||
|
return request({
|
||||||
|
url: '/api/checkoutbill/getDisNum',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export default { add, edit, del, allDiv, allCancel, getOutBillDtl, getOutBillDis, setPoint, getOutBillTask, getStructIvt, manualDiv, confirm, issueTask, finishTask, cancleTaskfinish, getInvTypes, paramByCodeType, schAreaType, backConfirm, getOutBillDisDtl, getType, allDivOne, moneySubmit, getDisNum }
|
||||||
|
|||||||
@@ -550,16 +550,18 @@ export default {
|
|||||||
return strStyle + arr.join('')
|
return strStyle + arr.join('')
|
||||||
},
|
},
|
||||||
printExcel(jo) {
|
printExcel(jo) {
|
||||||
debugger
|
checkoutbill.getDisNum({ 'iostorinv_id': jo.iostorinv_id }).then(res => {
|
||||||
const j = Math.ceil(jo.detail_count / jo.shd_dtl_num)
|
debugger
|
||||||
for (let i = 0; i < j; i++) {
|
const j = Math.ceil(res.num / jo.shd_dtl_num)
|
||||||
download('/api/checkoutbill/downloadExcel', { 'iostorinv_id': jo.iostorinv_id, 'j': i }).then(result => {
|
for (let i = 0; i < j; i++) {
|
||||||
downloadFile(result, '', 'xlsx')
|
download('/api/checkoutbill/downloadExcel', { 'iostorinv_id': jo.iostorinv_id, 'j': i }).then(result => {
|
||||||
crud.downloadLoading = false
|
downloadFile(result, '', 'xlsx')
|
||||||
}).catch(() => {
|
crud.downloadLoading = false
|
||||||
crud.downloadLoading = false
|
}).catch(() => {
|
||||||
})
|
crud.downloadLoading = false
|
||||||
}
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user