Merge branch 'release/2.9.42310.01' into release/2.9.42310.01-个税

This commit is contained in:
黎永顺 2023-10-23 10:57:27 +08:00
commit 8f23fc6c8b
8 changed files with 102 additions and 29 deletions

View File

@ -7,6 +7,7 @@
import React, { Component } from "react";
import { WeaInputSearch, WeaLocaleProvider } from "ecCom";
import { Tree } from "antd";
import cs from "classnames";
import { formualSearchField, formualSearchGroup, getFormulaDes } from "../../../apis/item";
import "../index.less";
@ -139,7 +140,7 @@ class CodeAction extends Component {
return <TreeNode title={value} key={key}>
{
_.map([...children.slice(0, 1), ...itemChildren], (child, childIndex) => {
const { name, fieldId } = child;
const { name, fieldId, fieldType } = child;
return (
fieldId === "searchInput" ?
<TreeNode
@ -151,7 +152,17 @@ class CodeAction extends Component {
/>
}
key={fieldId + "_" + childIndex}/> :
<TreeNode title={name} key={fieldId}/>
<TreeNode title={
<div className="weapp-excel-code-action-list-variable">
<span className="weapp-excel-code-action-list-variable-name">{name}</span>
{
fieldType ?
<span
className={cs("weapp-excel-code-action-list-variable-tip", { "danger": fieldType === "string" })}>{fieldType === "number" ? "数字" : "文本"}</span> :
<span></span>
}
</div>
} key={fieldId}/>
);
})
}

View File

@ -186,14 +186,53 @@
.code-action-list {
padding: 10px 0;
.code-action-tips-title {
height: 22px;
line-height: 22px;
}
.code-action-tips-info {
color: #999
}
}
.weapp-excel-code-action-list-variable {
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
.weapp-excel-code-action-list-variable-name {
height: 20px;
line-height: 18px;
-webkit-flex: 1 1;
flex: 1 1;
overflow: hidden;
text-overflow: ellipsis;
word-break: keep-all;
white-space: nowrap;
cursor: pointer;
}
.danger {
color: rgb(255, 102, 106)!important;
border: 1px solid rgb(255, 193, 195)!important;
background-color: rgb(255, 223, 224)!important;
}
.weapp-excel-code-action-list-variable-tip {
width: 40px;
height: 20px;
line-height: 18px;
text-align: center;
vertical-align: middle;
color: rgb(255, 205, 80);
border: 1px solid rgb(255, 222, 138);
background-color: rgb(255, 245, 219);
border-radius: 2px;
}
}
}
}
}

View File

@ -50,7 +50,7 @@ class EditSalaryCalcSlide extends Component {
<div className="title">{getLabel(543559, "编辑薪资")}</div>
</div>
<div className="titleCol titleRightBox">
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(111, "保存并核算")}</Button>
<Button type="primary" onClick={this.save} loading={loading}>{getLabel(537558, "保存")}</Button>
</div>
</div>;
};

View File

@ -6,7 +6,6 @@
*/
import React, { Component } from "react";
import { WeaHelpfulTip, WeaLocaleProvider } from "ecCom";
import { Alert } from "antd";
import { getColumnDesc, getSalarySobCycle } from "../../../../../apis/calculate";
import { sysConfCodeRule } from "../../../../../apis/ruleconfig";
import EditCalcAdvanceSearchPannel from "./editCalcAdvanceSearchPannel";
@ -52,14 +51,10 @@ class Index extends Component {
render() {
const { salarySobCycle, showSearchAd, formulaTd, columnDesc, showTotalCell } = this.state;
const { accountExceptInfo, routeParams: { salaryAcctRecordId } } = this.props;
const { routeParams: { salaryAcctRecordId } } = this.props;
const formulaObj = _.get(columnDesc, [formulaTd]) || {};
return (
<div className="salary-edit-calc-content">
{
accountExceptInfo &&
<Alert message="" description={accountExceptInfo} type="error" closable/>
}
<div className="salary-flex-between weapp-salary-tb-tip">
<div>
<span>{getLabel(542604, "薪资所属月")}</span>

View File

@ -130,7 +130,7 @@ class Index extends Component {
}
};
renderReqBtns = () => {
const { selectedKey } = this.state;
const { selectedKey, accountExceptInfo } = this.state;
let reqBtns = [];
switch (selectedKey) {
case "calc":
@ -155,21 +155,32 @@ class Index extends Component {
<AdvanceInputBtn onOpenAdvanceSearch={() => this.calc.openAdvanceSearch()}
onAdvanceSearch={() => this.calc.onAdSearch(false)}/>
];
accountExceptInfo && reqBtns.unshift(<i className="iconfont icon-jinggao"
title={getLabel(111, "存在异常信息,点击下载!")}
onClick={() => this.downloadTxtfile(accountExceptInfo)}/>);
break;
default:
break;
}
return reqBtns;
};
downloadTxtfile = (value) => {
const element = document.createElement("a");
const file = new Blob([value], { type: "text/plain" });
element.href = URL.createObjectURL(file);
element.download = "核算异常信息.txt";
document.body.appendChild(element);
element.click();
};
renderContent = () => {
const { selectedKey, accountExceptInfo } = this.state;
const { selectedKey } = this.state;
let dom = null;
switch (selectedKey) {
case "person":
dom = <SalaryCalcPersonConfirm {...this.props}/>;
break;
case "calc":
dom = <SalaryEditCalc {...this.props} accountExceptInfo={accountExceptInfo} ref={dom => this.calc = dom}/>;
dom = <SalaryEditCalc {...this.props} ref={dom => this.calc = dom}/>;
break;
default:
break;

View File

@ -5,6 +5,13 @@
height: 100%;
background: #f6f6f6;
.icon-jinggao {
color: red;
font-size: 20px;
margin-right: 10px;
cursor: pointer;
}
.wea-new-top-req {
z-index: 0 !important;
}

View File

@ -306,6 +306,9 @@ class FieldSlide extends Component {
onChange={value => this.handleChangeFields("dataType", value)}
/>
</WeaFormItem>
{
dataType === "number" &&
<React.Fragment>
<WeaFormItem label="舍入规则" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaSelect
value={roundingMode}
@ -320,6 +323,8 @@ class FieldSlide extends Component {
onChange={value => this.handleChangeFields("pattern", value)}
/>
</WeaFormItem>
</React.Fragment>
}
<WeaFormItem label="显示顺序" labelCol={{ span: 6 }} wrapperCol={{ span: 12 }}>
<WeaInputNumber value={sortedIndex} precision={0}
onChange={value => this.handleChangeFields("sortedIndex", value)}/>

View File

@ -30,7 +30,7 @@ class SalaryItemForm extends Component {
componentDidMount() {
const { salaryItemFieldsList } = this.state;
const { request, editable, record, isAdd = false, taxAgentAdminOption, isLedger = false } = this.props;
const { systemType = "", sharedType, valueType, useInEmployeeSalary } = request;
const { systemType = "", sharedType, valueType, useInEmployeeSalary, dataType } = request;
this.setState({
salaryItemFieldsList: _.map(salaryItemFieldsList, item => {
const { key } = item;
@ -43,6 +43,9 @@ class SalaryItemForm extends Component {
viewAttr: (!isLedger && ((editable && record.canEdit) || isAdd)) ? 2 : 1,
display: !isLedger
};
case "pattern":
case "roundingMode":
return { ...item, display: dataType === "number" };
case "sortedIndex":
return { ...item };
case "useInEmployeeSalary":
@ -101,6 +104,8 @@ class SalaryItemForm extends Component {
salaryItemFieldsList: _.map(salaryItemFieldsList, item => {
if (key === "sharedType" && item.key === "taxAgentIds") {
return { ...item, display: v === "1", viewAttr: 3 };
} else if (key === "dataType" && (item.key === "roundingMode" || item.key === "pattern")) {
return { ...item, display: v === "number" };
} else if (key === "valueType" && (item.key === "originSqlContent" || item.key === "originFormulaContent")) {
return {
...item,