Compare commits

..

No commits in common. "0616b7543bb45197c0145392a0c091722dc35edb" and "69acef6e09343509fb49075b66fe1b20d5ced095" have entirely different histories.

13 changed files with 265 additions and 267 deletions

View File

@ -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) {

View File

@ -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;
@ -93,9 +92,7 @@ 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);
}
}
@ -107,24 +104,7 @@ 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;
return this.fybxMapper.selectZZSGL_JX_FYDJMX(userMap);
}catch (Exception e){
log.error("查询开票申请明细信息出错", e);
throw new SaveException(e);

View File

@ -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>

View File

@ -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]);

View File

@ -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)) {

View File

@ -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;

View File

@ -5,13 +5,15 @@ $(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(){
selectedObj = top.window.iframeLayerData.transParams;
selectedKpsqObj=top.window.iframeLayerData.FYBX_obj;
layui.use('laydate', function () {
var laydate = layui.laydate;
@ -23,43 +25,28 @@ var kpsq_edit = (function () {
//初始化公用可操作表格组件
var tableType=[{
"table_id": "tbSave_fymx",//动态表ID
"tr_id": "trid_fymx", //新增行模板ID
"table_id":"tbSave_kpmx",//动态表ID
"tr_id":"trid_kpmx", //新增行模板ID
"rowno_name":"rowno_kpmx",
"rowno_type":"span"
}];
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 {
//加载数据
@ -87,12 +74,8 @@ var kpsq_edit = (function () {
},
//绑定数据
bindData : function(jsonObj, xhrArgs){
tablePublic.onResetTable(tableId);
tablePublic.onInsertData(jsonObj.data, tableId);
setTimeout(function () {
initFylxSelect();
layui.form.render('select'); // 重新渲染 select 组件
}, 100);
tablePublic.onResetTable('tbSave_kpmx');
tablePublic.onInsertData(jsonObj.data,'tbSave_kpmx');
},
onSavePre: function () {
@ -108,11 +91,11 @@ var kpsq_edit = (function () {
// 保存数据
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();
@ -157,35 +140,31 @@ var kpsq_edit = (function () {
}]
});
},
/**
* 删除一行费用明细信息
* @param obj
*/
//删除一行开票信息
onDeleteKpmx:function (obj) {
var fymxList = tablePublic.onSave(tableId);
if (fymxList.length === 1) {
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) {
return false;
}
layer.confirm('是否删除这条开票信息?',{icon: 3},function (index) {
tablePublic.onDelete(obj);
layer.closeAll('dialog');
});
}
},
/**
* 查询明细历史记录并回显到界面
*/
//查询明细历史记录,并回显到界面
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){
@ -229,10 +208,45 @@ var kpsq_edit = (function () {
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
@ -249,17 +263,12 @@ var kpsq_edit = (function () {
btn: ['保存', '关闭'],
btnAlign: 'c',
success: function(layero,index) {
// 标记当前行 begin
$('#' + tableId).find('tr').attr('data-current', false);
$(el).parents('tr').attr('data-current', true);
// 标记当前行 end
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();
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);
}
};
})();

View File

@ -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);
}
};
})();

View File

@ -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 : "";
}
};
})();

View File

@ -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">

View File

@ -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{

View File

@ -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>

View File

@ -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>