Compare commits
No commits in common. "0616b7543bb45197c0145392a0c091722dc35edb" and "69acef6e09343509fb49075b66fe1b20d5ced095" have entirely different histories.
0616b7543b
...
69acef6e09
|
@ -21,7 +21,6 @@ import org.springframework.web.bind.annotation.RequestParam;
|
|||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
import javax.servlet.http.HttpSession;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
@ -76,12 +75,6 @@ public class FybxController extends BaseController {
|
|||
Map<String, Object> mapModel = new HashMap<>();
|
||||
try {
|
||||
List<Map> list = this.fybxService.findAll(userMap);
|
||||
list.forEach(it -> {
|
||||
Object djrq = DateUtil.formatDate((Date) it.get("DJRQ"));
|
||||
Object BXSJ = DateUtil.formatDateTime((Date) it.get("BXSJ"));
|
||||
it.put("DJRQ", djrq);
|
||||
it.put("BXSJ", BXSJ);
|
||||
});
|
||||
mapModel.put("data", getPageModel(list));
|
||||
code = 0;
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package net.htjs.pt4.zzsxt.service.impl.xxgl.xmkpgl.fybx;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.map.MapUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
|
@ -52,7 +51,7 @@ public class FybxServiceImpl implements IFybxService {
|
|||
userMap.put("FYID", map.get("FYID"));
|
||||
// 更新费用单据
|
||||
result = this.fybxMapper.updateZZSGL_JX_FYDJ(userMap);
|
||||
} else {
|
||||
}else{
|
||||
userMap.put("FYID", Get16BM.getUnquieID());
|
||||
userMap.put("BXSJ", DateUtil.date());
|
||||
// 保存费用单据
|
||||
|
@ -93,10 +92,8 @@ public class FybxServiceImpl implements IFybxService {
|
|||
deleteMap.put("FYID", userMap.get("FYID"));
|
||||
this.fybxMapper.deleteZZSGL_JX_FYDJMX(deleteMap);//先删除数据中当前申请的所有明细信息,
|
||||
// 然后把界面上的显示的明细信息全部保存到表中。
|
||||
if (CollectionUtil.isNotEmpty(fymxList))
|
||||
this.fybxMapper.insertZZSGL_JX_FYDJMX(fymxList);
|
||||
if (CollectionUtil.isNotEmpty(mxfplist))
|
||||
this.fybxMapper.insertZZSGL_JX_FYDJ_MX_FP(mxfplist);
|
||||
this.fybxMapper.insertZZSGL_JX_FYDJMX(fymxList);
|
||||
this.fybxMapper.insertZZSGL_JX_FYDJ_MX_FP(mxfplist);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,25 +104,8 @@ public class FybxServiceImpl implements IFybxService {
|
|||
@Override
|
||||
public List<Map> selectZZSGL_JX_FYDJMX(Map userMap) throws SaveException {
|
||||
try {
|
||||
|
||||
List<Map> fpList = this.selectZZSGL_JX_FYDJ_MX_FP(userMap);
|
||||
Map<String, List<String>> fpMap = new HashMap<>();
|
||||
for (Map map : fpList) {
|
||||
String fymxid = MapUtil.getStr(map, "FYMXID");
|
||||
List<String> list = fpMap.getOrDefault(fymxid, new ArrayList<>());
|
||||
list.add(MapUtil.getStr(map, "FPID"));
|
||||
fpMap.put(fymxid, list);
|
||||
}
|
||||
|
||||
List<Map> fymxList = this.fybxMapper.selectZZSGL_JX_FYDJMX(userMap);
|
||||
for (Map map : fymxList) {
|
||||
String fymxid = MapUtil.getStr(map, "FYMXID");
|
||||
List<String> fpidList = fpMap.get(fymxid);
|
||||
map.put("FPID", StrUtil.join(",", fpidList));
|
||||
}
|
||||
|
||||
return fymxList;
|
||||
} catch (Exception e) {
|
||||
return this.fybxMapper.selectZZSGL_JX_FYDJMX(userMap);
|
||||
}catch (Exception e){
|
||||
log.error("查询开票申请明细信息出错", e);
|
||||
throw new SaveException(e);
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@
|
|||
|
||||
<select id="selectZZSGL_JX_FYDJ_MX_FP" resultType="map" parameterType="map">
|
||||
select
|
||||
fp.FPID, fp.FPDM, fp.FPHM, fp.KPRQ, fp.JSHJ, mx.FYMXID, mx.FYID
|
||||
fp.FPID, fp.FPDM, fp.FPHM, fp.KPRQ, fp.JSHJ
|
||||
from ZZSGL_JX_FYDJ_MX_FP mx
|
||||
inner join ZZSGL_JX_FPXX fp on mx.FPID = fp.FPID
|
||||
<where>
|
||||
|
|
|
@ -245,7 +245,6 @@ var tablePublic = (function() {
|
|||
tr_=$("#"+table_id+" tbody").find("tr:last");
|
||||
}
|
||||
for(key in data[i]){
|
||||
$(tr_).find("select[name='"+key+"']").val(data[i][key]);
|
||||
$(tr_).find("input[name='"+key+"']").val(data[i][key]);
|
||||
$(tr_).find("span[name='"+key+"']").text(data[i][key]);
|
||||
$(tr_).find("div[name='"+key+"']").html(data[i][key]);
|
||||
|
|
|
@ -37,25 +37,52 @@ var kpsq_list = (function () {
|
|||
});
|
||||
});
|
||||
|
||||
var djlxOptions = [];
|
||||
djlxOptions.push('<option value="" >--全部--</option>');
|
||||
FybxUtil.Enums.djlx.forEach(function(item,index,arr){
|
||||
djlxOptions.push('<option value="' + item.value + '" >' + item.label + '</option>');
|
||||
});
|
||||
$("#DJLX").html(djlxOptions.join());
|
||||
var optionSqztStr = '<option value="' + kpsq_util.onGetSqztValue("全部") + '">--全部--</option>' +
|
||||
'<option value="' + kpsq_util.onGetSqztValue("未发起") + '">未发起</option>' +
|
||||
'<option value="' + kpsq_util.onGetSqztValue("未审批") + '">未审批</option>' +
|
||||
'<option value="' + kpsq_util.onGetSqztValue("审批通过") + '">审批通过</option>' +
|
||||
'<option value="' + kpsq_util.onGetSqztValue("审批中") + '">审批中</option>' +
|
||||
'<option value="' + kpsq_util.onGetSqztValue("审批不通过") + '">审批不通过</option>';
|
||||
$("#DJLX").html(optionSqztStr);
|
||||
|
||||
var bxztOptions = [];
|
||||
bxztOptions.push('<option value="" >--全部--</option>');
|
||||
FybxUtil.Enums.bxzt.forEach(function(item,index,arr){
|
||||
bxztOptions.push('<option value="' + item.value + '" >' + item.label + '</option>');
|
||||
});
|
||||
$("#BXZT").html(bxztOptions.join());
|
||||
var optionKpztStr = '<option value="' + kpsq_util.onGetKpztValue("全部") + '">--全部--</option>' +
|
||||
'<option value="' + kpsq_util.onGetKpztValue("未报销") + '">未报销</option>' +
|
||||
'<option value="' + kpsq_util.onGetKpztValue("报销中") + '">报销中</option>' +
|
||||
'<option value="' + kpsq_util.onGetKpztValue("已报销") + '">已报销</option>';
|
||||
$("#BXZT").html(optionKpztStr);
|
||||
|
||||
//页面宽度计算
|
||||
$('.content-wrapper').css('width', $(window).width() - $('.sidebar').width() - 20 + 'px');
|
||||
$(window).resize(function () {
|
||||
$('.content-wrapper').css('width', $(window).width() - $('.sidebar').width() - 20 + 'px');
|
||||
});
|
||||
})
|
||||
|
||||
// 批量删除
|
||||
$('#del').click(function () {
|
||||
layui.use('table', function () {
|
||||
var table = layui.table;
|
||||
var selectData = table.checkStatus('table_sb').data;
|
||||
if (selectData.length < 1) {
|
||||
layui.use('layer', function () {
|
||||
var layer = layui.layer;
|
||||
layer.ready(function () {
|
||||
top.layer.alert("请选择一条记录!", {icon: 0, closeBtn: 0});
|
||||
})
|
||||
});
|
||||
return false;
|
||||
}
|
||||
curSeg.onDelete(selectData);
|
||||
})
|
||||
})
|
||||
|
||||
// 修改
|
||||
$('#edit').click(function () {
|
||||
layui.use('table', function () {
|
||||
var table = layui.table;
|
||||
var selectData = table.checkStatus('table_sb').data;
|
||||
curSeg.onEdit(selectData);
|
||||
})
|
||||
})
|
||||
|
||||
// 添加
|
||||
$('#add').click(function () {
|
||||
|
@ -70,32 +97,86 @@ var kpsq_list = (function () {
|
|||
var colsObj = [
|
||||
{type: 'checkbox'},
|
||||
{field: 'DJBH', title: '单据编号', width: 160, align: 'left'},
|
||||
{field: 'DJRQ', title: '单据日期', width: 130, align: 'center'},
|
||||
{
|
||||
field: 'DJRQ', title: '单据日期', width: 130,
|
||||
templet: function (d) {
|
||||
var time = new Date(d.DJRQ);
|
||||
var year = time.getFullYear();
|
||||
var mon = time.getMonth() + 1;
|
||||
if (mon < 10) {
|
||||
mon = '0' + mon;
|
||||
}
|
||||
var day = time.getDay();
|
||||
if (day < 10) {
|
||||
day = '0' + day;
|
||||
}
|
||||
return '<div style="text-align: center;">' + year + '-' + mon + '-' + day + '</div>';
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'DJLX', title: '单据类型', width: 140, align: 'center',
|
||||
templet: function (d) {
|
||||
return FybxUtil.getDjlx_label(d.DJLX);
|
||||
var kpzt = {
|
||||
"0": "已开具",
|
||||
"1": "未开具",
|
||||
"2": "部分已开具",
|
||||
"3": "待红冲",
|
||||
"4": "已作废",
|
||||
"5": "已推送",
|
||||
"6": "推送失败"
|
||||
};
|
||||
return kpzt[d.KPZT] ? kpzt[d.KPZT] : "未被合并";
|
||||
}
|
||||
}, {
|
||||
},
|
||||
{
|
||||
field: 'DJJE', title: '单据金额', width: 120,
|
||||
templet: function (d) {
|
||||
return '<div style="text-align: right;">' + sctTools.onMoneyFormat(d.DJJE) + '</div>';
|
||||
}
|
||||
}, {
|
||||
},
|
||||
{
|
||||
field: 'DJSE', title: '单据税额', width: 130,
|
||||
templet: function (d) {
|
||||
return '<div style="text-align: right;">' + sctTools.onMoneyFormat(d.DJSE) + '</div>';
|
||||
}
|
||||
},
|
||||
{field: 'BXR', title: '报销人', width: 160, align: 'left'},
|
||||
{field: 'BXSJ', title: '报销时间', width: 180, align: 'center'},
|
||||
{field: 'BXZT', title: '报销状态', width: 120, align: 'center',
|
||||
{field: 'BXR', title: '报销人', width: 160, align: 'left'}, {
|
||||
field: 'BXSJ', title: '报销时间', width: 130,
|
||||
templet: function (d) {
|
||||
return FybxUtil.getBxzt_label(d.BXZT);
|
||||
if(!!d.BXSJ){
|
||||
var time = new Date(d.BXSJ);
|
||||
var year = time.getFullYear();
|
||||
var mon = time.getMonth() + 1;
|
||||
if (mon < 10) {
|
||||
mon = '0' + mon;
|
||||
}
|
||||
var day = time.getDay();
|
||||
if (day < 10) {
|
||||
day = '0' + day;
|
||||
}
|
||||
|
||||
return '<div style="text-align: center;">' + year + '-' + mon + '-' + day + '</div>';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'BXZT', title: '报销状态', width: 120,
|
||||
templet: function (d) {
|
||||
var text = ' ';
|
||||
if (d.BXZT === '1') {
|
||||
text = '<span style="color: #0A5FA2">未报销</span>';
|
||||
} else if (d.BXZT === '2') {
|
||||
text = '<span style="color: #00caed">报销中</span>';
|
||||
} else if (d.BXZT === '3') {
|
||||
text = '<span style="color: #333">已报销</span>';
|
||||
}
|
||||
return text;
|
||||
}
|
||||
},
|
||||
{field: 'KHSH', title: '客户税号', width: 160, align: 'left'},
|
||||
{field: 'KHMC', title: '客户名称', width: 160, align: 'left'},
|
||||
|
||||
{
|
||||
title: '操作', fixed: 'right', width: 220, align: 'center',
|
||||
templet: function (data) {
|
||||
|
@ -168,7 +249,7 @@ var kpsq_list = (function () {
|
|||
DJLX: $("#DJLX").val(),
|
||||
BXZT: $("#BXZT").val()
|
||||
},
|
||||
url: "/web/xxgl/xmkpgl/fybx/findAll",
|
||||
url: "/web/xxgl/xmkpgl/fybx/findAll.do",
|
||||
dataType: "json",
|
||||
cols: [getCols()],
|
||||
parseData: function (res) {
|
||||
|
@ -273,7 +354,6 @@ var kpsq_list = (function () {
|
|||
return false;
|
||||
} else if (data.length === 1) {
|
||||
var row = data[0];
|
||||
// 已报销
|
||||
if (row.BXZT === 3) {
|
||||
layui.use('layer', function () {
|
||||
var layer = layui.layer;
|
||||
|
@ -283,8 +363,7 @@ var kpsq_list = (function () {
|
|||
});
|
||||
return false;
|
||||
}
|
||||
// 报销中
|
||||
else if (row.BXZT === 2) {
|
||||
if (row.BXZT === 2) {
|
||||
layui.use('layer', function () {
|
||||
var layer = layui.layer;
|
||||
layer.ready(function () {
|
||||
|
@ -294,7 +373,7 @@ var kpsq_list = (function () {
|
|||
return false;
|
||||
}
|
||||
row.BJRQ = new Date(row.BJRQ);
|
||||
top.window.iframeLayerData = {transParams: row};
|
||||
top.window.iframeLayerData = {FYBX_obj: row};
|
||||
top.sctTools.openPage({
|
||||
type: 2,
|
||||
id: 'win_kpsq_editfpxx',
|
||||
|
@ -423,11 +502,11 @@ var kpsq_list = (function () {
|
|||
}
|
||||
|
||||
var ids = "";
|
||||
var ybx = 0;//多选后,批量删除时,判断其中已报销的记录数
|
||||
var ysh = 0;//多选后,批量删除时,判断其中已通过审批的开票申请记录数
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
|
||||
if (data[i].BXZT == FybxUtil.onGetSqztValue("审批通过")) {// 已报销
|
||||
ybx++;
|
||||
if (data[i].SQZT == kpsq_util.onGetSqztValue("审批通过")) {//已审批的
|
||||
ysh++;
|
||||
} else {
|
||||
ids += data[i].SQID;
|
||||
if (i < (data.length - 1)) {
|
||||
|
|
|
@ -30,12 +30,13 @@ var kpsq_add =(function(){
|
|||
}];
|
||||
tablePublic.onReset(curSeg,tableType);
|
||||
|
||||
var djlxOptions = [];
|
||||
djlxOptions.push('<option value="" >--全部--</option>');
|
||||
FybxUtil.Enums.djlx.forEach(function(item,index,arr){
|
||||
djlxOptions.push('<option value="' + item.value + '" >' + item.label + '</option>');
|
||||
});
|
||||
$("#DJLX").html(djlxOptions.join());
|
||||
var optionStr = '<option value="">--请选择--</option>' +
|
||||
'<option value="'+kpsq_util.onGetFplxValue("全电专用发票")+'">全电专用发票</option>\n' +
|
||||
'<option value="'+kpsq_util.onGetFplxValue("全电普票发票")+'">全电普票发票</option>\n' +
|
||||
'<option value="'+kpsq_util.onGetFplxValue("增值税专用发票")+'">增值税专用发票</option>\n' +
|
||||
'<option value="'+kpsq_util.onGetFplxValue("增值税普通发票")+'">增值税普通发票</option>\n' +
|
||||
'<option value="'+kpsq_util.onGetFplxValue("增值税电子发票")+'">增值税电子发票</option>';
|
||||
$('#DJLX').html(optionStr);
|
||||
|
||||
layui.use(['form','element','jquery','layer'], function () {
|
||||
form = layui.form;
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
$(function () {
|
||||
$(function(){
|
||||
kpsq_edit.onload();
|
||||
});
|
||||
|
||||
var kpsq_edit = (function () {
|
||||
var kpsq_edit =(function(){
|
||||
//私有属性
|
||||
var curSeg;
|
||||
var selectedObj;//选定的开票申请记录
|
||||
var tableId = 'tbSave_fymx';
|
||||
var selectedKpsqObj;//选定的开票申请记录
|
||||
var SQZJE;//开票申请总金额
|
||||
var selectToAddHtmx;//当前选中添加到开票明细的合同明细数据集
|
||||
var inithjhsje = 0;
|
||||
//私有方法
|
||||
//初始化页面布局
|
||||
var initLayout = function () {
|
||||
var initLayout = function(){
|
||||
|
||||
selectedObj = top.window.iframeLayerData.transParams;
|
||||
selectedKpsqObj=top.window.iframeLayerData.FYBX_obj;
|
||||
|
||||
layui.use('laydate', function () {
|
||||
var laydate = layui.laydate;
|
||||
|
@ -22,48 +24,33 @@ var kpsq_edit = (function () {
|
|||
});
|
||||
|
||||
//初始化公用可操作表格组件
|
||||
var tableType = [{
|
||||
"table_id": "tbSave_fymx",//动态表ID
|
||||
"tr_id": "trid_fymx", //新增行模板ID
|
||||
"rowno_name": "rowno_kpmx",
|
||||
"rowno_type": "span"
|
||||
var tableType=[{
|
||||
"table_id":"tbSave_kpmx",//动态表ID
|
||||
"tr_id":"trid_kpmx", //新增行模板ID
|
||||
"rowno_name":"rowno_kpmx",
|
||||
"rowno_type":"span"
|
||||
}];
|
||||
tablePublic.onReset(curSeg, tableType);
|
||||
tablePublic.onReset(curSeg,tableType);
|
||||
|
||||
var djlxOptions = [];
|
||||
djlxOptions.push('<option value="" >--全部--</option>');
|
||||
FybxUtil.Enums.djlx.forEach(function (item, index, arr) {
|
||||
djlxOptions.push('<option value="' + item.value + '" >' + item.label + '</option>');
|
||||
});
|
||||
$("#DJLX").html(djlxOptions.join());
|
||||
|
||||
initFylxSelect();
|
||||
var optionStr = '<option value="">--请选择--</option>' +
|
||||
' <option value="'+kpsq_util.onGetFplxValue("全电专用发票")+'">全电专用发票</option>\n' +
|
||||
' <option value="'+kpsq_util.onGetFplxValue("全电普票发票")+'">全电普票发票</option>\n' +
|
||||
' <option value="'+kpsq_util.onGetFplxValue("增值税专用发票")+'">增值税专用发票</option>\n' +
|
||||
' <option value="'+kpsq_util.onGetFplxValue("增值税普通发票")+'">增值税普通发票</option>\n' +
|
||||
' <option value="'+kpsq_util.onGetFplxValue("增值税电子发票")+'">增值税电子发票</option>';
|
||||
$('#DJLX').html(optionStr);
|
||||
|
||||
layui.use(['form'], function () {
|
||||
form = layui.form;
|
||||
selectedObj = JSON.stringify(selectedObj);
|
||||
selectedObj = eval('(' + selectedObj + ')');
|
||||
form.val('form_edit', selectedObj);
|
||||
selectedKpsqObj = JSON.stringify(selectedKpsqObj);
|
||||
selectedKpsqObj = eval('(' + selectedKpsqObj + ')');
|
||||
form.val('form_edit', selectedKpsqObj);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* 初始化费用类型下拉框
|
||||
*/
|
||||
function initFylxSelect() {
|
||||
var fylxOptions = [];
|
||||
fylxOptions.push('<option value="" >--请选择--</option>');
|
||||
FybxUtil.Enums.fylx.forEach(function (item, index, arr) {
|
||||
fylxOptions.push('<option value="' + item.value + '" >' + item.label + '</option>');
|
||||
});
|
||||
$("select[name=FYLX]").html(fylxOptions.join());
|
||||
// console.log($("select[name=FYLX]").html());
|
||||
}
|
||||
|
||||
//共有方法
|
||||
return {
|
||||
//加载数据
|
||||
onload: function () {
|
||||
onload : function(){
|
||||
curSeg = kpsq_edit;
|
||||
initLayout();
|
||||
curSeg.onQueryFydjmx();
|
||||
|
@ -71,7 +58,7 @@ var kpsq_edit = (function () {
|
|||
},
|
||||
|
||||
//在开票信息或分包发票扣除表格中插入或删除一行数据时的回调函数
|
||||
onTableCallBack: function (obj) {
|
||||
onTableCallBack : function(obj) {
|
||||
if (obj) {
|
||||
//删除回调
|
||||
//表格中至少保留一行,不然无法再点击删除
|
||||
|
@ -80,39 +67,35 @@ var kpsq_edit = (function () {
|
|||
if (trCount == 1) {//最少保留一行内容
|
||||
tablePublic.onInsert(this, tableId);
|
||||
}
|
||||
} else {
|
||||
}else{
|
||||
//插入回调
|
||||
form.render('select'); // 重新渲染 select 组件
|
||||
}
|
||||
},
|
||||
//绑定数据
|
||||
bindData: function (jsonObj, xhrArgs) {
|
||||
tablePublic.onResetTable(tableId);
|
||||
tablePublic.onInsertData(jsonObj.data, tableId);
|
||||
setTimeout(function () {
|
||||
initFylxSelect();
|
||||
layui.form.render('select'); // 重新渲染 select 组件
|
||||
}, 100);
|
||||
bindData : function(jsonObj, xhrArgs){
|
||||
tablePublic.onResetTable('tbSave_kpmx');
|
||||
tablePublic.onInsertData(jsonObj.data,'tbSave_kpmx');
|
||||
},
|
||||
|
||||
onSavePre: function () {
|
||||
//监听提交
|
||||
layui.use(['form'], function () {
|
||||
layui.use(['form'], function() {
|
||||
var form = layui.form;
|
||||
form.on('submit(formKpsqEdit)', function (data) {
|
||||
curSeg.onSave(data.field);
|
||||
curSeg.onSave(data.field);
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
// 保存数据
|
||||
onSave: function (data) {
|
||||
onSave : function(data){
|
||||
var url = "/web/xxgl/xmkpgl/fybx/insert";// 新增费用报销,新增和修改页面保存操作调用的是同一个后台方法
|
||||
var kpxxList = tablePublic.onSave('tbSave_fymx');
|
||||
var kpxxList = tablePublic.onSave('tbSave_kpmx');
|
||||
data["FYMX_list"] = JSON.stringify(kpxxList);
|
||||
data["DJBH"] = $("#DJBH").val();
|
||||
data["DJRQ"] = $("#DJRQ").val();
|
||||
data["DJLX"] = $("#DJLX").val();
|
||||
data["DJLX"] = $("#DJLX_DM").val();
|
||||
data["DJJE"] = $("#DJJE").val();
|
||||
data["DJSE"] = $("#DJSE").val();
|
||||
data["BXR"] = $("#BXR").val();
|
||||
|
@ -129,25 +112,25 @@ var kpsq_edit = (function () {
|
|||
baseTools.xhrAjax({
|
||||
url: url,
|
||||
params: data,
|
||||
callback: [function (jsonObj, xhrArgs) {
|
||||
if (jsonObj.code === 1) {
|
||||
callback: [function (jsonObj,xhrArgs) {
|
||||
if(jsonObj.code===1){
|
||||
kpsq_edit.calPareFuc();
|
||||
parent.layer.msg("修改成功", {
|
||||
icon: 6,
|
||||
time: 3000
|
||||
});
|
||||
} else if (jsonObj.code === -1) {
|
||||
}else if(jsonObj.code===-1){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
});
|
||||
} else if (jsonObj.code === -2) {
|
||||
}else if(jsonObj.code===-2){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
});
|
||||
baseTools.hideMash();
|
||||
} else if (jsonObj.code === -3) {
|
||||
}else if(jsonObj.code===-3){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
|
@ -157,51 +140,47 @@ var kpsq_edit = (function () {
|
|||
}]
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 删除一行费用明细信息
|
||||
* @param obj
|
||||
*/
|
||||
onDeleteKpmx: function (obj) {
|
||||
var fymxList = tablePublic.onSave(tableId);
|
||||
if (fymxList.length === 1) {
|
||||
//删除一行开票信息
|
||||
onDeleteKpmx:function (obj) {
|
||||
var kpxxList = tablePublic.onSave('tbSave_kpmx');
|
||||
if(kpxxList.length == 1){
|
||||
layui.use('layer', function () {
|
||||
var layer = layui.layer;
|
||||
layer.ready(function () {
|
||||
top.layer.alert("费用明细信息不能为空!", {icon: 0, closeBtn: 0});
|
||||
top.layer.alert("开票信息不能为空!", {icon: 0,closeBtn : 0});
|
||||
})
|
||||
})
|
||||
}else{
|
||||
layer.confirm('是否删除这条费用明细信息?', {icon: 3}, function (index) {
|
||||
tablePublic.onDelete(obj);
|
||||
layer.closeAll('dialog');
|
||||
});
|
||||
return false;
|
||||
}
|
||||
layer.confirm('是否删除这条开票信息?',{icon: 3},function (index) {
|
||||
tablePublic.onDelete(obj);
|
||||
layer.closeAll('dialog');
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 查询明细历史记录,并回显到界面
|
||||
*/
|
||||
onQueryFydjmx: function () {
|
||||
|
||||
//查询明细历史记录,并回显到界面
|
||||
onQueryFydjmx:function () {
|
||||
var url = "/web/xxgl/xmkpgl/fybx/selectZZSGL_JX_FYDJMX";
|
||||
baseTools.xhrAjax({
|
||||
url: url,
|
||||
params: {
|
||||
FYID: selectedObj.FYID
|
||||
FYID: selectedKpsqObj.FYID
|
||||
},
|
||||
callback: [function (jsonObj, xhrArgs) {
|
||||
if (jsonObj.code == 0) {
|
||||
callback: [function (jsonObj,xhrArgs) {
|
||||
if(jsonObj.code==0){
|
||||
curSeg.bindData(jsonObj, xhrArgs);
|
||||
} else if (jsonObj.code == -1) {
|
||||
}else if(jsonObj.code==-1){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
});
|
||||
} else if (jsonObj.code == -2) {
|
||||
}else if(jsonObj.code==-2){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
});
|
||||
baseTools.hideMash();
|
||||
} else if (jsonObj.code == -3) {
|
||||
}else if(jsonObj.code==-3){
|
||||
parent.layer.msg(jsonObj.msg, {
|
||||
icon: 2,
|
||||
time: 3000
|
||||
|
@ -213,29 +192,64 @@ var kpsq_edit = (function () {
|
|||
},
|
||||
|
||||
//回调父页面函数的方法 2019-7-9 14:41:52
|
||||
calPareFuc: function () {
|
||||
calPareFuc : function () {
|
||||
layui.use("layer", function () {
|
||||
var layer = layui.layer;
|
||||
for (var i = 0; i < parent.$("body").find("iframe").length; i++) {
|
||||
for(var i = 0 ; i < parent.$("body").find("iframe").length ; i++){
|
||||
var item = parent.$("body").find("iframe")[i];
|
||||
try {
|
||||
if (item.contentWindow.kpsq_list) {
|
||||
try{
|
||||
if(item.contentWindow.kpsq_list){
|
||||
item.contentWindow.kpsq_list.reOnLoad();
|
||||
}
|
||||
} catch (e) {
|
||||
}catch (e) {
|
||||
|
||||
}
|
||||
}
|
||||
parent.layer.closeAll();
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 打开发票选择窗口
|
||||
*/
|
||||
openFpxx: function (el) {
|
||||
|
||||
// 查询当前申请的开票人列表 2020-2-19 16:00:24 rdd
|
||||
onQueryKpry : function(){
|
||||
var url = "/web/xxgl/xmkpgl/kpsq/selectKPRYforKPSQ.do";
|
||||
$.ajax({
|
||||
url: url,
|
||||
data: {
|
||||
GLNSRSBH: top.window.iframeLayerData.GLNSRSBH,
|
||||
XTJS_DM: "00035",
|
||||
noPage:true
|
||||
},
|
||||
dataType: "json",
|
||||
success: function (jsonObj) {
|
||||
var data = jsonObj.data.list;
|
||||
/*if(data==null||data.length==0){
|
||||
|
||||
}*/
|
||||
//初始化开票人员下拉选框
|
||||
var user = '<option value="">--请选择--</option>';
|
||||
$.each(data,function(index,element){
|
||||
if(data.length==1){//如果只有一个总包合同,默认选中
|
||||
user += '<option value="'+ element.USERID +'" selected="selected">' + element.CZRY_MC + '</option>';
|
||||
}else{
|
||||
if(index == 0){//如果有多个总包合同,则默认选择第一个 2020-2-11 10:31:07 rdd
|
||||
user += '<option value="'+ element.USERID +'" selected="selected">' + element.CZRY_MC + '</option>';
|
||||
}else{
|
||||
user += '<option value="'+ element.USERID +'">' + element.CZRY_MC + '</option>';
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#USERID").html(user);
|
||||
layui.use('form', function () {
|
||||
var form = layui.form;
|
||||
form.render();
|
||||
});
|
||||
}
|
||||
})
|
||||
},
|
||||
openFpxx: function (){
|
||||
var _winParam = {
|
||||
other: {
|
||||
parentJs_obj: kpsq_edit
|
||||
parentJs_obj:kpsq_edit
|
||||
}
|
||||
};
|
||||
top.sctTools.openPage({
|
||||
|
@ -248,18 +262,13 @@ var kpsq_edit = (function () {
|
|||
content: '/web/xxgl/xmkpgl/fybx/index_fpxxSelector',
|
||||
btn: ['保存', '关闭'],
|
||||
btnAlign: 'c',
|
||||
success: function (layero, index) {
|
||||
// 标记当前行 begin
|
||||
$('#' + tableId).find('tr').attr('data-current', false);
|
||||
$(el).parents('tr').attr('data-current', true);
|
||||
// 标记当前行 end
|
||||
|
||||
success: function(layero,index) {
|
||||
var obj = layero.find("iframe")[0].contentWindow;
|
||||
obj.zbhtxx_spbmSelector.onload(_winParam);
|
||||
},
|
||||
yes: function (index, layero) {
|
||||
var body = top.layer.getChildFrame("body", index);
|
||||
body.find("#fymxSelectFpSubmit").click();
|
||||
var body = top.layer.getChildFrame("body",index);
|
||||
body.find("#zbhtwhAddSpbmSubmit").click();
|
||||
top.layer.close(index);
|
||||
},
|
||||
btn2: function (index, layero) {
|
||||
|
@ -267,52 +276,29 @@ var kpsq_edit = (function () {
|
|||
}
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 选择发票窗口回调方法
|
||||
* @param transData
|
||||
*/
|
||||
onSelectFapiao: function (transData) {
|
||||
//在合同明细中插入一条商品编码数据对应的各字段值 2019-6-27 19:31:17 细节需要优化
|
||||
onInsertOneSpbm:function (spbmArray) {
|
||||
console.log(spbmArray)
|
||||
var fpids = [];
|
||||
var jshj = 0,
|
||||
hjje = 0,
|
||||
hjse = 0,
|
||||
fpzs = 0;
|
||||
transData.forEach(function (item) {
|
||||
fpzs++;
|
||||
jshj += (item.JSHJ || 0);
|
||||
hjje += (item.JEBHS || 0);
|
||||
hjse += (item.SE || 0);
|
||||
var JSHJ = 0, HJJE = 0, HJSE = 0, FPZS = 0;
|
||||
for(var i = 0; i < spbmArray.length; i++){
|
||||
var item = spbmArray[i];
|
||||
FPZS++;
|
||||
JSHJ += (item.JSHJ || 0);
|
||||
HJJE += (item.JEBHS || 0);
|
||||
HJSE += (item.SE || 0);
|
||||
fpids.push(item.FPID);
|
||||
});
|
||||
|
||||
var rowData = {};
|
||||
rowData.FPID = fpids.join(',');
|
||||
rowData.FPZS = fpzs;
|
||||
rowData.JSHJ = jshj;
|
||||
rowData.HJJE = hjje;
|
||||
rowData.HJSE = hjse;
|
||||
|
||||
var currentRow = $('#' + tableId).find('tr[data-current=true]');
|
||||
if (!!currentRow.length) {
|
||||
Object.keys(rowData).forEach(name => {
|
||||
currentRow.find("select[name='" + name + "']").val(rowData[name]);
|
||||
currentRow.find("input[name='" + name + "']").val(rowData[name]);
|
||||
currentRow.find("span[name='" + name + "']").text(rowData[name]);
|
||||
currentRow.find("div[name='" + name + "']").html(rowData[name]);
|
||||
});
|
||||
} else {
|
||||
tablePublic.onInsertData([rowData], tableId);
|
||||
}
|
||||
var data = {
|
||||
FYLX: '',
|
||||
FYSY: '',
|
||||
FPID: fpids.join(','),
|
||||
FPZS: FPZS,
|
||||
JSHJ: JSHJ,
|
||||
HJJE: HJJE,
|
||||
HJSE: HJSE
|
||||
};
|
||||
tablePublic.onInsertData([data],'tbSave_kpmx');
|
||||
},
|
||||
/**
|
||||
* 添加一条费用明细
|
||||
*/
|
||||
onAddFymxRow: function (obj){
|
||||
curSeg.onInsert(obj, tableId);
|
||||
setTimeout(function () {
|
||||
initFylxSelect();
|
||||
layui.form.render('select'); // 重新渲染 select 组件
|
||||
}, 100);
|
||||
}
|
||||
};
|
||||
})();
|
||||
|
|
|
@ -164,7 +164,7 @@ var zbhtxx_spbmSelector =(function(){
|
|||
layui.use(['form'], function() {
|
||||
var form = layui.form;
|
||||
var layer = layui.layer;
|
||||
form.on('submit(formSelectFp)', function () {
|
||||
form.on('submit(formZbhtwhSaveSpbm)', function () {
|
||||
layui.use('table', function () {
|
||||
var table = layui.table;
|
||||
var selectData = table.checkStatus('table_sb').data;
|
||||
|
@ -183,7 +183,7 @@ var zbhtxx_spbmSelector =(function(){
|
|||
}
|
||||
var a = selectData;
|
||||
var parentJs_obj = _winParam.other.parentJs_obj;
|
||||
parentJs_obj.onSelectFapiao(a);
|
||||
parentJs_obj.onInsertOneSpbm(a);
|
||||
}
|
||||
};
|
||||
})();
|
|
@ -1,45 +0,0 @@
|
|||
var FybxUtil = (function (){
|
||||
|
||||
var DJLX = [
|
||||
{value: "1",label: "办公费用"},
|
||||
{value: "2",label: "通讯费"},
|
||||
{value: "3",label: "差旅费"},
|
||||
{value: "4",label: "业务费用"},
|
||||
{value: "5",label: "车辆费用"},
|
||||
];
|
||||
|
||||
var BXZT = [
|
||||
{value: "1",label: "未报销"},
|
||||
{value: "2",label: "报销中"},
|
||||
{value: "3",label: "已报销"},
|
||||
];
|
||||
|
||||
var FYLX = [
|
||||
{value: "1",label: "办公费用"},
|
||||
{value: "2",label: "通讯费"},
|
||||
{value: "3",label: "差旅费"},
|
||||
{value: "4",label: "业务费用"},
|
||||
{value: "5",label: "车辆费用"},
|
||||
];
|
||||
|
||||
|
||||
return {
|
||||
Enums: {
|
||||
djlx: DJLX,
|
||||
bxzt: BXZT,
|
||||
fylx: FYLX,
|
||||
},
|
||||
getDjlx_label: function (value){
|
||||
/*
|
||||
var arr = DJLX.filter(it=>value === it.value);
|
||||
return arr.length > 0 ? arr[0].label : "";
|
||||
*/
|
||||
var found = DJLX.find(it=>value === it.value);
|
||||
return !!found ? found.label : "";
|
||||
},
|
||||
getBxzt_label(value){
|
||||
var found = BXZT.find(it=>value === it.value);
|
||||
return !!found ? found.label : "";
|
||||
}
|
||||
};
|
||||
})();
|
|
@ -16,9 +16,9 @@
|
|||
<link rel="stylesheet" href="/commons/css/client.css" />
|
||||
<script type="text/javascript" src="/commons/common/jquery-ex.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/zzjgZtree.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/kpsqUtil.js"></script>
|
||||
<script type="text/javascript" src="/commons/js/layui_exts/excel.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index.js?v=2021020202"></script>
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index_util.js?v=2021020202"></script>
|
||||
</head>
|
||||
<body class="hb100">
|
||||
<div class="bsdt_box bsdt_box_ztree clearfix hb100 h100">
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
<link rel="stylesheet" href="/commons/common/layui/css/layui.css" />
|
||||
<link rel="stylesheet" href="/commons/css/public.css" />
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index_add.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index_util.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/table.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/commonUtil.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/kpsqUtil.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/fileUpload.js"></script>
|
||||
<style type="text/css">
|
||||
input::-webkit-input-placeholder{
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
<link rel="stylesheet" href="/commons/common/layui/css/layui.css" />
|
||||
<link rel="stylesheet" href="/commons/css/public.css" />
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index_edit.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/xxgl/xmkpgl/fybx/index_util.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/table.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/kpsqUtil.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/fileUpload.js"></script>
|
||||
<script type="text/javascript" src="/zzsxt/public/commonUtil.js"></script>
|
||||
<style type="text/css">
|
||||
|
@ -205,7 +205,7 @@
|
|||
费用明细
|
||||
</div>
|
||||
<div class="m_table table_h">
|
||||
<table cellspacing="0" cellpadding="0" border="0" class="layui-table" id="tbSave_fymx" lay-filter="tbSave_fymx" >
|
||||
<table cellspacing="0" cellpadding="0" border="0" class="layui-table" id="tbSave_kpmx" lay-filter="tbSave_kpmx" >
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 3%;">序号</th>
|
||||
|
@ -219,7 +219,7 @@
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr id="trid_fymx">
|
||||
<tr id="trid_kpmx">
|
||||
<td align="center">
|
||||
<input type="hidden" name="FYMXID"/>
|
||||
<input type="hidden" name="FYID"/>
|
||||
|
@ -228,7 +228,12 @@
|
|||
<input type="hidden" name="ROWTYPE" value="NEW" />
|
||||
</td>
|
||||
<td>
|
||||
<select name="FYLX" lay-verify="" lay-filter=""></select>
|
||||
<select name="FYLX" lay-verify="" lay-filter="">
|
||||
<option value="" >请选择</option>
|
||||
<option value="004">增值税专票</option>
|
||||
<option value="007">增值税普票</option>
|
||||
<option value="026">增值税电票</option>
|
||||
</select>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" name="FYSY" class="layui-input" placeholder="费用事由"/>
|
||||
|
@ -248,7 +253,7 @@
|
|||
<td>
|
||||
<div class="m_table_btn">
|
||||
<span class="s_fc_blue" onclick="kpsq_edit.openFpxx(this);">关联发票</span>
|
||||
<span class="s_fc_blue" onclick="kpsq_edit.onAddFymxRow(this);">增加</span>
|
||||
<span class="s_fc_blue" onclick="tablePublic.onInsert(this, 'tbSave_kpmx');">增加</span>
|
||||
<span class="s_fc_red" onclick="kpsq_edit.onDeleteKpmx(this);">删除</span>
|
||||
</div>
|
||||
</td>
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<form class="layui-form" name="selectFpForm" id="selectFpForm" method="get" action="" lay-filter="selectFpForm">
|
||||
<form class="layui-form" name="formSpbmSel" id="formSpbmSel" method="get" action="" lay-filter="formSpbmSel">
|
||||
<div class="layui-fluid g_index">
|
||||
<div class="layui-card">
|
||||
<div class="table_h">
|
||||
|
@ -59,8 +59,8 @@
|
|||
<div
|
||||
class="layui-btn save"
|
||||
lay-submit=""
|
||||
lay-filter="formSelectFp"
|
||||
id="fymxSelectFpSubmit"
|
||||
lay-filter="formZbhtwhSaveSpbm"
|
||||
id="zbhtwhAddSpbmSubmit"
|
||||
>
|
||||
保存
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue