上线测试

This commit is contained in:
lyp 2025-05-23 14:19:17 +08:00
parent c178908cde
commit a00d4ccd24
3 changed files with 219 additions and 39 deletions

View File

@ -8,7 +8,7 @@ import {
message, Spin, message, Spin,
Empty, Empty,
Dropdown, Dropdown,
Button // Button
} from 'antd'; } from 'antd';
// import { // import {
// // MenuFoldOutlined, // // MenuFoldOutlined,
@ -1136,28 +1136,34 @@ export default function Correction() {
} }
</div> </div>
<Button style={{ <a style={{
display: item.applyStatus == 'APPROVED' && item.type == 'CORRECTION1' ? 'unset' : 'none', display: item.applyStatus == 'APPROVED' && item.type == 'CORRECTION1' && item.projStatus !== 'CLOSE' ? 'unset' : 'none',
marginLeft: 10,
// 下划线
textDecoration: 'underline',
// display: item.applyStatus == 'APPROVED' && item.type == 'CORRECTION1' ? 'unset' : 'none',
}} }}
onClick={() => { onClick={() => {
console.log(item.projCorrectionApplyId); // console.log('projId',item.projId);
// console.log('嘻嘻',item);
nav( nav(
`/proj-new/MATERIAL?pkg=&videoDemo=`, `/proj-new/MATERIAL?pkg=&videoDemo=`,
{ {
state: { state: {
type:'replace', type: 'replace',
price: 3800 projId: item.projId,
} }
} }
); );
}} }}
> >
</Button> </a>
<Button <a
style={{ style={{
display: item.applyStatus == 'APPROVED' && item.type == 'CORRECTION2' ? 'unset' : 'none', display: item.applyStatus == 'APPROVED' && item.type == 'CORRECTION2' ? 'unset' : 'none',
marginLeft: 10,
textDecoration: 'underline',
}} }}
onClick={() => { onClick={() => {
console.log(item.projCorrectionApplyId); console.log(item.projCorrectionApplyId);
@ -1165,14 +1171,15 @@ export default function Correction() {
`/proj-new/MATERIAL?pkg=&videoDemo=`, `/proj-new/MATERIAL?pkg=&videoDemo=`,
{ {
state: { state: {
type:'copy', type: 'copy',
projId: item.projId,
} }
} }
); );
}} }}
> >
</Button> </a>
</div> </div>
<div className='projBoxBot'> <div className='projBoxBot'>
<div className='boxTopL'> <div className='boxTopL'>
@ -1247,7 +1254,15 @@ export default function Correction() {
}} }}
style={{ display: item.applyStatus == 'PENDING' ? 'block' : 'none' }} style={{ display: item.applyStatus == 'PENDING' ? 'block' : 'none' }}
></div> ></div>
<div style={{ display: item.applyStatus == 'APPROVED' ? 'block' : 'none' }}> <div style={{
display: item.projStatus== 'CLOSE'? 'block' : 'none',
fontSize: 16,
color: '#5a5a5a',
fontWeight: 700,
}}>
</div>
<div style={{ display: item.applyStatus == 'APPROVED' && item.projStatus !== 'CLOSE' ? 'block' : 'none' }}>
<div className='correctDownBox'> <div className='correctDownBox'>
<div className='correctDownBtn' style={{ display: item.correctionType == 'CODE' || item.correctionType == 'ALL' ? 'block' : 'none' }}> <div className='correctDownBtn' style={{ display: item.correctionType == 'CODE' || item.correctionType == 'ALL' ? 'block' : 'none' }}>
<Dropdown menu={{ <Dropdown menu={{

View File

@ -54,7 +54,9 @@ import {
post, getCouponUrl post, getCouponUrl
} from '../../util/AjaxUtils.ts' } from '../../util/AjaxUtils.ts'
// import { getLanguageList, getSoftTypeList } from '../../request/api' // import { getLanguageList, getSoftTypeList } from '../../request/api'
import { setMenuActive, getMenuActive } from '../../util/cache.ts' import { setMenuActive,
// getMenuActive
} from '../../util/cache.ts'
import gpsImg from '@theme/img/right/gps.png' import gpsImg from '@theme/img/right/gps.png'
import backImg from '@theme/img/right/back.png' import backImg from '@theme/img/right/back.png'
// import { Link } from "react-router-dom"; // import { Link } from "react-router-dom";
@ -78,10 +80,10 @@ interface DataType {
} }
import app from '../../static/left/app.png' // import app from '../../static/left/app.png'
import appnew from '../../static/left/appnew.png' // import appnew from '../../static/left/appnew.png'
import tra from '../../static/left/tra.png' // import tra from '../../static/left/tra.png'
import tranew from '../../static/left/tranew.png' // import tranew from '../../static/left/tranew.png'
import topblack from '../../static/appimgs/topblack.png' import topblack from '../../static/appimgs/topblack.png'
import topblue from '../../static/appimgs/topblue.png' import topblue from '../../static/appimgs/topblue.png'
@ -1873,7 +1875,7 @@ export default function Index() {
list={agentMenu.list} list={agentMenu.list}
handleListItem={agentMenu.handleListItem} handleListItem={agentMenu.handleListItem}
/> */} /> */}
{THEME == 'mzw' ? ( {/* {THEME == 'mzw' ? (
<> <>
<div style={{ <div style={{
background: getMenuActive() == 'APP' ? 'linear-gradient(90deg, #FF9F08 0%, #FF7331 100%)' : ' var(--color-menuback)', background: getMenuActive() == 'APP' ? 'linear-gradient(90deg, #FF9F08 0%, #FF7331 100%)' : ' var(--color-menuback)',
@ -1946,7 +1948,7 @@ export default function Index() {
</> </>
) : ( ) : (
<></> <></>
)} )} */}
{THEME == 'mzw' ? ( {THEME == 'mzw' ? (
<MenuWithBottomButtom <MenuWithBottomButtom
button={sellMenu.button} button={sellMenu.button}

View File

@ -24,7 +24,7 @@ type ProjInfo = {
projIntroduction: string; projIntroduction: string;
belongPeople: string; belongPeople: string;
contacts: string; contacts: string;
projDevCompleteDate: string; projDevCompleteDate: any;
coupon?: string; coupon?: string;
projVersion: string; projVersion: string;
backendCodeLang: string; backendCodeLang: string;
@ -489,7 +489,60 @@ export default function ProjNew() {
}) })
} }
}, []); }, []);
// 换名金额
const [changePrice, setChangePrice] = useState(0)
// 换名项目原名
const [changeProjName, setChangeProjName] = useState('')
// 获取项目信息
const getProjInfo = (projId: string) => {
get<any>({
messageApi: messageApi,
url: `/api/proj/get/${projId}`,
onSuccess({ data }) {
// console.log('项目信息', data);
if (state.type == 'replace') {
setChangePrice(
data.pay.servicePackageId?0:(data.pay.payment) / 100)
}
setChangeProjName(data.projName)
// 给表单赋值
form.setFieldsValue({
projName: state.type == 'replace' ? '' : data.projName, //全称
projSubName: data.apply.projSubName, //简称
projDevCompleteDate: data.apply.projDevCompleteDate ? dayjs(data.apply.projDevCompleteDate, 'YYYY-MM-DD') : '',
projVersion: data.apply.projVersion, //版本
backendCodeLang: data.apply.envLang,
belongPeople: data.apply.authorName,
contacts: data.apply.applyContactName,
})
setBelongPeopleInfo({
authorName: data.apply.authorName,
authorType: data.apply.authorType,
authorIdCardType: data.apply.authorIdCardType,
authorIdCard: data.apply.authorIdCard,
authorCrcAccount: data.apply.authorCrcAccount,
authorId: data.apply.authorId,
authorProvinceCity: data.apply.authorProvinceCity,
authorCrcAccountUsername: data.apply.authorCrcAccountUsername,
authorCrcAccountPassword: data.apply.authorCrcAccountPassword,
})
setConcatPeopleInfo({
applyConcatId: data.apply.applyContactId,
applyContactCsaNo: data.apply.applyContactCsaNo,
applyContactEmail: data.apply.applyContactEmail,
applyContactName: data.apply.applyContactName,
applyContactPhone: data.apply.applyContactPhone,
applyContactCompany: data.apply.applyContactCompany,
})
}
})
}
useEffect(() => {
if (state && state.projId) {
getProjInfo(state.projId)
}
}, [])
return ( return (
<> <>
@ -545,8 +598,9 @@ export default function ProjNew() {
justifyContent: 'center', justifyContent: 'center',
fontSize: 18, fontSize: 18,
fontWeight: 'bold', fontWeight: 'bold',
textAlign: 'center',
}}> }}>
: {changeProjName}
</div> </div>
</div> </div>
<div style={{ <div style={{
@ -1226,7 +1280,7 @@ export default function ProjNew() {
}} }}
> >
{/* {(showPrice / 100 - couponNum) < 0 ? 0 : showPrice / 100 - couponNum} */} {/* {(showPrice / 100 - couponNum) < 0 ? 0 : showPrice / 100 - couponNum} */}
{state && state.price ? state.price / 100 : selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} {state && state.type == 'replace' ? changePrice : selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum}
{/* {selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} */} {/* {selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} */}
</span> </span>
</div> </div>
@ -1285,8 +1339,117 @@ export default function ProjNew() {
// console.log('最终',listProjChargeAdditional); // console.log('最终',listProjChargeAdditional);
// console.log(belongPeopleInfo.authorId); // console.log(belongPeopleInfo.authorId);
if (state && state.type == 'replace') { if (state && state.type == 'replace') {
alert('替换项目') console.log(concatPeopleInfo);
} else { // return
post<any>({
messageApi,
url: `/api/proj/rename/proj-id/${state.projId}`,
body: {
// packageInfoId: projInfo.packageInfoId,
projName: projInfo.projName,
projSubName: projInfo.projSubName,
projVersion: projInfo.projVersion,
backendCodeLang: projInfo.backendCodeLang,
projChargeType: pathParams.projChargeType,
listProjChargeAdditional: listProjChargeAdditional,
// dayjs(formInfo.getFieldValue('projDevCompleteDate')).format(dateFormat),
projDevCompleteDate: projInfo.projDevCompleteDate ? dayjs(projInfo.projDevCompleteDate).format(dateFormat) : '',
authorCrcAccount: belongPeopleInfo.authorCrcAccount,
authorCrcAccountPassword: belongPeopleInfo.authorCrcAccountPassword,
authorCrcAccountUsername: belongPeopleInfo.authorCrcAccountUsername,
authorId: belongPeopleInfo.authorId,
authorIdCard: belongPeopleInfo.authorIdCard,
authorIdCardType: belongPeopleInfo.authorIdCardType,
authorName: belongPeopleInfo.authorName,
authorProvinceCity: belongPeopleInfo.authorProvinceCity,
authorType: belongPeopleInfo.authorType,
applyContactCompany: concatPeopleInfo.applyContactCompany,
applyContactCsaNo: concatPeopleInfo.applyContactCsaNo,
applyContactEmail: concatPeopleInfo.applyContactEmail,
applyContactId: concatPeopleInfo.applyConcatId,
applyContactName: concatPeopleInfo.applyContactName,
applyContactPhone: concatPeopleInfo.applyContactPhone,
// couponId: couponId ? couponId : '',
// packageInfoId: packageInfoId ? packageInfoId : ''
// packageOrderId: packageOrderId ? packageOrderId : '',
},
onBefore() {
setLoading(true);
},
onSuccess({ data }) {
// console.log(data);
// return
setIsEditModalOpen(true);
setCreateProjId(data.data);
reloadUser(messageApi, globalDispatchContext).then(() => {
messageApi.success('扣款成功');
});
getMyPackNum()
},
onFinally() {
setLoading(false);
}
})
}
else if (state && state.type == 'copy') {
post<any>({
messageApi,
url: `/api/proj/copy/proj-id/${state.projId}`,
body: {
// packageInfoId: projInfo.packageInfoId,
// projName: projInfo.projName,
// projSubName: projInfo.projSubName,
// projVersion: projInfo.projVersion,
// backendCodeLang: projInfo.backendCodeLang,
projChargeType: pathParams.projChargeType,
listProjChargeAdditional: listProjChargeAdditional,
// // dayjs(formInfo.getFieldValue('projDevCompleteDate')).format(dateFormat),
// projDevCompleteDate: projInfo.projDevCompleteDate ? dayjs(projInfo.projDevCompleteDate).format(dateFormat) : '',
// authorCrcAccount: belongPeopleInfo.authorCrcAccount,
// authorCrcAccountPassword: belongPeopleInfo.authorCrcAccountPassword,
// authorCrcAccountUsername: belongPeopleInfo.authorCrcAccountUsername,
// authorId: belongPeopleInfo.authorId,
// authorIdCard: belongPeopleInfo.authorIdCard,
// authorIdCardType: belongPeopleInfo.authorIdCardType,
// authorName: belongPeopleInfo.authorName,
// authorProvinceCity: belongPeopleInfo.authorProvinceCity,
// authorType: belongPeopleInfo.authorType,
// applyContactCompany: concatPeopleInfo.applyContactCompany,
// applyContactCsaNo: concatPeopleInfo.applyContactCsaNo,
// applyContactEmail: concatPeopleInfo.applyContactEmail,
// applyContactId: concatPeopleInfo.applyConcatId,
// applyContactName: concatPeopleInfo.applyContactName,
// applyContactPhone: concatPeopleInfo.applyContactPhone,
couponId: couponId ? couponId : '',
// // packageInfoId: packageInfoId ? packageInfoId : ''
packageOrderId: packageOrderId ? packageOrderId : '',
},
onBefore() {
setLoading(true);
},
onSuccess({ data }) {
// console.log(data);
// return
setIsEditModalOpen(true);
setCreateProjId(data.data);
reloadUser(messageApi, globalDispatchContext).then(() => {
messageApi.success('扣款成功');
});
getMyPackNum()
},
onFinally() {
setLoading(false);
}
})
}
else {
post<any>({ post<any>({
messageApi, messageApi,
url: '/api/proj/create', url: '/api/proj/create',
@ -1352,7 +1515,7 @@ export default function ProjNew() {
{/* {(chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} */} {/* {(chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} */}
{/* {selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} {/* {selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum}
*/} */}
{state && state.price ? state.price / 100 : selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum} {state && state.type == 'replace' ? changePrice : selectPack ? 0 : (chargePrice / 100 - couponNum) < 0 ? 0 : chargePrice / 100 - couponNum}
</div> </div>
</Modal> </Modal>
<Modal title="提示" <Modal title="提示"