Commit 664109ac by guanzhenshan

资产负债表增加手工导入明细功能

parent 6d388260
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models
{
/// <summary>
/// 资产负债表导入明细数据表
/// </summary>
public class dc_balance_sheet_subdetail
{
public int id { get; set; }
/// <summary>
/// 类型
/// </summary>
public string type { get; set; }
/// <summary>
/// 类型说明
/// </summary>
public string type_note { get; set; }
/// <summary>
/// 统计日期
/// </summary>
public DateTime day { get; set; }
/// <summary>
/// 来源
/// </summary>
public string fromsource { get; set; }
/// <summary>
/// 金额类型或名称
/// </summary>
public string detailname { get; set; }
/// <summary>
/// 金额
/// </summary>
public decimal amount { get; set; }
/// <summary>
/// 备注1
/// </summary>
public string note1 { get; set; }
/// <summary>
/// 备注2
/// </summary>
public string note2 { get; set; }
/// <summary>
/// 备注3
/// </summary>
public string note3 { get; set; }
/// <summary>
/// 备注4
/// </summary>
public string note4 { get; set; }
/// <summary>
/// 备注5
/// </summary>
public string note5 { get; set; }
/// <summary>
///
/// </summary>
public DateTime createtime { get; set; }
/// <summary>
///
/// </summary>
public int createuserid { get; set; }
/// <summary>
///
/// </summary>
public string createusername { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
using Dapper;
using MySql.Data.MySqlClient;
using Bailun.DC.Common;
using Bailun.DC.Models;
namespace Bailun.DC.Services
{
public class BalanceSheetServices
{
/// <summary>
/// 获取资产负债表导入表格的汇总金额
/// </summary>
/// <param name="type">金额类型</param>
/// <param name="day">统计日期</param>
/// <returns></returns>
public decimal GetCount(string type, DateTime day)
{
var sql = $"select sum(amount) amount from dc_balance_sheet_subdetail where type='{type}' and day='{day.ToString("yyyy-MM-dd")}'";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
return cn.QueryFirstOrDefault<decimal?>(sql)??0;
}
}
/// <summary>
/// 获取资产负债表导入表格的列表
/// </summary>
/// <param name="type"></param>
/// <param name="day"></param>
/// <returns></returns>
public List<dc_balance_sheet_subdetail> List(string type, DateTime day,BtTableParameter parameter,ref int total)
{
var sql = $"select * from dc_balance_sheet_subdetail where type='{type}' and day='{day.ToString("yyyy-MM-dd")}'";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Page<dc_balance_sheet_subdetail>(parameter.pageIndex,parameter.limit,sql,ref total).AsList();
return obj;
}
}
/// <summary>
/// 新增资产负债表导入表格数据
/// </summary>
/// <param name="m"></param>
/// <returns></returns>
public int Add(dc_balance_sheet_subdetail m)
{
try
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var result = cn.Insert<dc_balance_sheet_subdetail>(m);
return result ?? 0;
}
}
catch (Exception ex)
{
return 0;
}
}
public int AddRang(List<dc_balance_sheet_subdetail> list)
{
var result = 0;
foreach (var item in list)
{
result += Add(item);
}
return result;
}
}
}
......@@ -970,7 +970,7 @@ namespace Bailun.DC.Services
/// <param name="currency">币种</param>
/// <param name="day">销售日期</param>
/// <returns></returns>
public dc_platform_balance GetPlatformBalance(string platform, string currency, DateTime day)
public dc_platform_balance GetPlatformBalance(string platform, string currency, DateTime day,string account)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
......@@ -979,7 +979,7 @@ namespace Bailun.DC.Services
cn.Open();
}
var obj = cn.QueryFirstOrDefault<dc_platform_balance>($"select * from dc_platform_balance where platformcode='{platform}' and currency='{currency}' and day='{day.ToString("yyyy-MM-dd")}' and delstatus=0");
var obj = cn.QueryFirstOrDefault<dc_platform_balance>($"select * from dc_platform_balance where account='{account}' and platformcode='{platform}' and currency='{currency}' and day='{day.ToString("yyyy-MM-dd")}' and delstatus=0");
return obj;
}
......@@ -1798,11 +1798,12 @@ namespace Bailun.DC.Services
var sql = $"select sum(case when platform != 'Ebay' then amount_end else 0 end) - sum(case when platform = 'Ebay' then amount_end else 0 end) as amount from dc_daily_receivable where day = '{date.ToString("yyyy-MM-dd")}'";
var objRec = cn.QueryFirstOrDefault<decimal?>(sql);
sql = $"select sum((amount - ifnull(had_pay, 0) + ifnull(compensate, 0)) * to_rmb_rate) from dc_daily_fee where recoed_time = '{date.ToString("yyyy-MM-dd")}' and company_value in (53,3,5,60,66,59,50,8,1,61,2,70)";
var objBorr = cn.QueryFirstOrDefault<decimal?>(sql);
//sql = $"select sum((amount - ifnull(had_pay, 0) + ifnull(compensate, 0)) * to_rmb_rate) from dc_daily_fee where recoed_time = '{date.ToString("yyyy-MM-dd")}' and company_value in (53,3,5,60,66,59,50,8,1,61,2,70)";
//var objBorr = cn.QueryFirstOrDefault<decimal?>(sql);
var objHander = new BalanceSheetServices().GetCount("accounts_receivable_import", date);
return new Tuple<decimal, decimal>(objRec ?? 0, objBorr ?? 0);
return new Tuple<decimal, decimal>(objRec ?? 0, objHander);
}
}
......

@{
ViewData["Title"] = "手工导入";
Layout = "~/Pages/Shared/_MainLayout.cshtml";
}
<div class="row">
<div class="col-sm-12">
<div class="ibox-content m-b-sm border-bottom">
<form id="toolbar">
<div class="form-inline" style="line-height:40px;">
<div class="form-group">
<label>日期</label>
<input id="day" name="day" class="form-control" style="width:120px;" value="@(ViewBag.day)" />
</div>
<div class="form-group">
<button type="button" class="btn btn-success" onclick="list();">查询</button>
<button id="btn_Upload" class="btn btn-success">导入</button>
<a id="btn_UpdateTemplate" class="btn btn-default" href="@Url.Content("~/templatefile/balance_template.xlsx")" target="_blank">下载导入模版</a>
</div>
</div>
</form>
</div>
<div class="ibox-content m-b-sm border-bottom">
<table id="roletable" style="table-layout:fixed;"></table>
</div>
</div>
</div>
@section css{
<link href="~/js/webuploader-0.1.5/webuploader.css" rel="stylesheet" />
<style>
.webuploader-pick {
position: relative;
display: block;
cursor: pointer;
background: none;
padding: 0px;
color: #fff;
text-align: center;
border-radius: 3px;
overflow: hidden;
}
.webuploader-container {
background-color: cornflowerblue !important;
}
</style>
}
@section scripts{
<script src="~/js/webuploader-0.1.5/webuploader.min.js"></script>
<script>
var BASE_URL = '@(Url.Content("~/js/webuploader-0.1.5/"))';
var tb;
$(document).ready(function () {
var height = document.body.clientHeight;
$("#roletable").attr("data-height", (height - 100));
laydate.render({ elem: '#day' });
list();
})
function list() {
var day = $('#day').val();
if (day == '') {
alert('请选择日期');
return false;
}
var columns = [
{ field: 'fromsource', title: '来源', width: '140', sortable: false, iscount: true },
{ field: 'detailname', title: '类型/名称', width: '110', sortable: false },
{ field: 'amount', title: '金额', width: '110', sortable: true, iscount: true },
{ field: 'note1', title: '备注1', width: '150', sortable: false },
{ field: 'note2', title: '备注2', width: '150', sortable: false }
];
var url = '@Url.Content("~/Reports/Finance/ListBalanceSheetSubDetailJson")' + '?type=@(ViewBag.type)&day='+day;
if (tb == undefined) {
tb = OnlyTable("roletable", columns, url, "", {
showfooter: true, loadsuccess: function (d) {
//替换汇总行的相关列值
var tr = $('.fixed-table-footer').find('tr');
for (var c in columns) {
var key = columns[c].field;
if (columns[c].iscount) {
for (var v in d.count_row) {
if (key == v) {
tr.find('td').eq(c).children('div').first().html(d.count_row[v]);
break;
}
}
}
}
uploadfile('btn_Upload',
'@Url.Content("~/Reports/Finance/UploadBalanceSheetSubDetail?type="+ ViewBag.type)' + '?uid=' + d.uid +'&username='+d.username,
function(result){
if(result.success)
{
alert('上传成功!');
list();
}
else
{
alert(result.msg);
}
});
}
});
}
else {
tb.bootstrapTable('refresh', { url: url });
}
}
function uploadfile(id,url,callback)
{
var uploader = new WebUploader.Uploader({
// swf文件路径
swf: BASE_URL + 'Uploader.swf',
// 文件接收服务端。
server: url!=undefined?url:'@Url.Content("~/File/UploadFile")',
// 选择文件的按钮。可选。
// 内部根据当前运行是创建,可能是input元素,也可能是flash.
pick: '#'+id,
// 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
resize: false,
auto:true
});
uploader.on('uploadSuccess', function (file, response) {
if(callback!=undefined)
{
callback(response);
}
});
uploader.on('uploadError', function (file) {
layer.msg("上传出错");
});
}
</script>
}
......@@ -62,7 +62,7 @@
function list() {
var columns = [
//{ field: 'company_name', title: '付款主体', width: '120', sortable: true },
{ field: 'company_name', title: '付款主体', width: '120'},
{ field: 'bank_name', title: '银行名称', width: '130', sortable: true },
{ field: 'bank_card', title: '银行卡号', width: '140', sortable: true},
{ field: 'bank_card_user', title: '持卡人', width: '160', sortable: true },
......
......@@ -20,11 +20,17 @@
<td>@(ViewBag.m.Item1.ToString("N2"))</td>
<td><a class="btn btn-xs btn-primary" onclick="showdetail('@ViewBag.date.ToString("yyyy-MM-dd") 平台应收账款','@Url.Content("~/Reports/Finance/ListReceivablesPlatform?date="+ViewBag.date+"&paycompanyid="+ViewBag.paycompanyid)')">查看明细</a></td>
</tr>
<tr>
@*<tr>
<td>2</td>
<td>借支应收账款</td>
<td>@(ViewBag.m.Item2.ToString("N2"))</td>
<td><a class="btn btn-xs btn-primary" onclick="showdetail('@ViewBag.date.ToString("yyyy-MM-dd") 借支应收账款','@Url.Content("~/Reports/Finance/ListBorrowAmount?date="+ViewBag.date+"&paycompanyid="+ViewBag.paycompanyid)')">查看明细</a></td>
</tr>*@
<tr>
<td>2</td>
<td>手工导入</td>
<td>@(ViewBag.m.Item2.ToString("N2"))</td>
<td><a class="btn btn-xs btn-primary" onclick="showdetail('@ViewBag.date.ToString("yyyy-MM-dd") 应收账款手工导入','@Url.Content("~/Reports/Finance/BalanceSheetSubDetail?day="+ViewBag.date+"&type=accounts_receivable_import")')">查看明细</a></td>
</tr>
</table>
</div>
......
......@@ -29,8 +29,8 @@
<body class="fixed-sidebar full-height-layout gray-bg" style="overflow:hidden">
<script type="text/javascript">
login_localhost();
//login();
//login_localhost();
login();
window.location = "@Url.Content("~/Home/Main")";
</script>
</body>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment