Commit 8dfc4424 authored by 皮倩雯's avatar 皮倩雯

事件管理新增验证

parent f9560ad6
Pipeline #34148 skipped with stages
...@@ -42,6 +42,7 @@ const AddFlowsModal = props => { ...@@ -42,6 +42,7 @@ const AddFlowsModal = props => {
setFiled1({}) setFiled1({})
form.resetFields(); form.resetFields();
}else if(type==='edit'){ }else if(type==='edit'){
setStrr(record.FlowRoles)
console.log(record) console.log(record)
setInputValue({ setInputValue({
Roles:record.FlowRoles Roles:record.FlowRoles
...@@ -203,7 +204,7 @@ const AddFlowsModal = props => { ...@@ -203,7 +204,7 @@ const AddFlowsModal = props => {
CM_Event_EditEvenFlow({ CM_Event_EditEvenFlow({
eventTypeId: formObj.ID, eventTypeId: formObj.ID,
eventFlowId: record.ID, eventFlowId: record.ID,
roles: strr, roles: strr
}) })
.then(res => { .then(res => {
// setLoading(false); // setLoading(false);
...@@ -290,7 +291,7 @@ const AddFlowsModal = props => { ...@@ -290,7 +291,7 @@ const AddFlowsModal = props => {
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
> >
<Select <Select
style={{ width: '580px' }} style={{ width: '560px' }}
placeholder="选择受理流程" placeholder="选择受理流程"
placeholder={selectValue} placeholder={selectValue}
disabled disabled
...@@ -306,7 +307,7 @@ const AddFlowsModal = props => { ...@@ -306,7 +307,7 @@ const AddFlowsModal = props => {
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
> >
<Select <Select
style={{ width: '580px' }} style={{ width: '560px' }}
placeholder="选择受理流程" placeholder="选择受理流程"
> >
{standingTable ? standingTable.map((item, index) => { return <Option key={index} value={item}>{item}</Option> }) : ''} {standingTable ? standingTable.map((item, index) => { return <Option key={index} value={item}>{item}</Option> }) : ''}
...@@ -324,7 +325,7 @@ const AddFlowsModal = props => { ...@@ -324,7 +325,7 @@ const AddFlowsModal = props => {
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择受理权限" onChange={(e) => changeText(e, 'Roles')} value={inputValue.Roles} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择受理权限" onChange={(e) => changeText(e, 'Roles')} value={inputValue.Roles} allowClear />
<Button type="dashed" onClick={() => pickFiled1('Roles')} icon={<PlusOutlined />} style={{ marginLeft: '0.5rem', height: '100%', width: '3.5rem' }} /> <Button type="dashed" onClick={() => pickFiled1('Roles')} icon={<PlusOutlined />} style={{ marginLeft: '0.5rem', height: '100%', width: '3.2rem' }} />
</div> </div>
</Item> </Item>
</Col> </Col>
......
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState } from 'react';
import { Modal, Form, Input, notification, message, Row, Col, Select, Checkbox, Radio, Button } from 'antd'; import { Modal, Form, Input, notification, message, Row, Col, Select, Checkbox, Radio, Button, Dropdown, Menu } from 'antd';
import { GetCM_Event_LoadEventTypeTable, LoadEventFields, CM_Event_LoadDepartmentAndRoles, CM_Event_EditEventTable, GetCM_Event_QueryEventType, CM_Event_AddEventTable } from '@/services/standingBook/api' import { GetCM_Event_LoadEventTypeTable, LoadEventFields, CM_Event_LoadDepartmentAndRoles, CM_Event_EditEventTable, GetCM_Event_QueryEventType, CM_Event_AddEventTable } from '@/services/standingBook/api'
import styles from './incident.less'; import styles from './incident.less';
import ChangeAdd from './changeAdd' import ChangeAdd from './changeAdd'
import { PlusOutlined } from '@ant-design/icons' import ChangeImage from './ChangeImage'
import { PlusOutlined, DownOutlined } from '@ant-design/icons'
import { set } from 'immutable'; import { set } from 'immutable';
import { getRoleGroup } from '@/services/userCenter/roleManage/api'; import { getRoleGroup } from '@/services/userCenter/roleManage/api';
...@@ -11,6 +12,8 @@ const { Option } = Select; ...@@ -11,6 +12,8 @@ const { Option } = Select;
const AddModal = props => { const AddModal = props => {
const [inputValue, setInputValue] = useState({ SummaryFields: '', ReportFields: '', DisplayFields: '', EditableFields: '', TransitFields: '', Roles: '', RelatedEventFields: '', pictureFields: '' }); const [inputValue, setInputValue] = useState({ SummaryFields: '', ReportFields: '', DisplayFields: '', EditableFields: '', TransitFields: '', Roles: '', RelatedEventFields: '', pictureFields: '' });
const { callBackSubmit = () => { }, visible, type, formObj, treeData, maxLength, selectData } = props; const { callBackSubmit = () => { }, visible, type, formObj, treeData, maxLength, selectData } = props;
const [strChineseFirstPY, setStrChineseFirstPY] = useState("YDYQSXMWZSSXJBYMGCCZQPSSQBYCDSCDQLDYLYBSSJGYZZJJFKCCLZDHWDWZJLJPFYYNWJJTMYHZWZHFLZPPQHGSCYYYNJQYXXGJHHSDSJNKKTMOMLCRXYPSNQSECCQZGGLLYJLMYZZSECYKYYHQWJSSGGYXYZYJWWKDJHYCHMYXJTLXJYQBYXZLDWRDJRWYSRLDZJPCBZJJBRCFTLECZSTZFXXZHTRQHYBDLYCZSSYMMRFMYQZPWWJJYFCRWFDFZQPYDDWYXKYJAWJFFXYPSFTZYHHYZYSWCJYXSCLCXXWZZXNBGNNXBXLZSZSBSGPYSYZDHMDZBQBZCWDZZYYTZHBTSYYBZGNTNXQYWQSKBPHHLXGYBFMJEBJHHGQTJCYSXSTKZHLYCKGLYSMZXYALMELDCCXGZYRJXSDLTYZCQKCNNJWHJTZZCQLJSTSTBNXBTYXCEQXGKWJYFLZQLYHYXSPSFXLMPBYSXXXYDJCZYLLLSJXFHJXPJBTFFYABYXBHZZBJYZLWLCZGGBTSSMDTJZXPTHYQTGLJSCQFZKJZJQNLZWLSLHDZBWJNCJZYZSQQYCQYRZCJJWYBRTWPYFTWEXCSKDZCTBZHYZZYYJXZCFFZZMJYXXSDZZOTTBZLQWFCKSZSXFYRLNYJMBDTHJXSQQCCSBXYYTSYFBXDZTGBCNSLCYZZPSAZYZZSCJCSHZQYDXLBPJLLMQXTYDZXSQJTZPXLCGLQTZWJBHCTSYJSFXYEJJTLBGXSXJMYJQQPFZASYJNTYDJXKJCDJSZCBARTDCLYJQMWNQNCLLLKBYBZZSYHQQLTWLCCXTXLLZNTYLNEWYZYXCZXXGRKRMTCNDNJTSYYSSDQDGHSDBJGHRWRQLYBGLXHLGTGXBQJDZPYJSJYJCTMRNYMGRZJCZGJMZMGXMPRYXKJNYMSGMZJYMKMFXMLDTGFBHCJHKYLPFMDXLQJJSMTQGZSJLQDLDGJYCALCMZCSDJLLNXDJFFFFJCZFMZFFPFKHKGDPSXKTACJDHHZDDCRRCFQYJKQCCWJDXHWJLYLLZGCFCQDSMLZPBJJPLSBCJGGDCKKDEZSQCCKJGCGKDJTJDLZYCXKLQSCGJCLTFPCQCZGWPJDQYZJJBYJHSJDZWGFSJGZKQCCZLLPSPKJGQJHZZLJPLGJGJJTHJJYJZCZMLZLYQBGJWMLJKXZDZNJQSYZMLJLLJKYWXMKJLHSKJGBMCLYYMKXJQLBMLLKMDXXKWYXYSLMLPSJQQJQXYXFJTJDXMXXLLCXQBSYJBGWYMBGGBCYXPJYGPEPFGDJGBHBNSQJYZJKJKHXQFGQZKFHYGKHDKLLSDJQXPQYKYBNQSXQNSZSWHBSXWHXWBZZXDMNSJBSBKBBZKLYLXGWXDRWYQZMYWSJQLCJXXJXKJEQXSCYETLZHLYYYSDZPAQYZCMTLSHTZCFYZYXYLJSDCJQAGYSLCQLYYYSHMRQQKLDXZSCSSSYDYCJYSFSJBFRSSZQSBXXPXJYSDRCKGJLGDKZJZBDKTCSYQPYHSTCLDJDHMXMCGXYZHJDDTMHLTXZXYLYMOHYJCLTYFBQQXPFBDFHHTKSQHZYYWCNXXCRWHOWGYJLEGWDQCWGFJYCSNTMYTOLBYGWQWESJPWNMLRYDZSZTXYQPZGCWXHNGPYXSHMYQJXZTDPPBFYHZHTJYFDZWKGKZBLDNTSXHQEEGZZYLZMMZYJZGXZXKHKSTXNXXWYLYAPSTHXDWHZYMPXAGKYDXBHNHXKDPJNMYHYLPMGOCSLNZHKXXLPZZLBMLSFBHHGYGYYGGBHSCYAQTYWLXTZQCEZYDQDQMMHTKLLSZHLSJZWFYHQSWSCWLQAZYNYTLSXTHAZNKZZSZZLAXXZWWCTGQQTDDYZTCCHYQZFLXPSLZYGPZSZNGLNDQTBDLXGTCTAJDKYWNSYZLJHHZZCWNYYZYWMHYCHHYXHJKZWSXHZYXLYSKQYSPSLYZWMYPPKBYGLKZHTYXAXQSYSHXASMCHKDSCRSWJPWXSGZJLWWSCHSJHSQNHCSEGNDAQTBAALZZMSSTDQJCJKTSCJAXPLGGXHHGXXZCXPDMMHLDGTYBYSJMXHMRCPXXJZCKZXSHMLQXXTTHXWZFKHCCZDYTCJYXQHLXDHYPJQXYLSYYDZOZJNYXQEZYSQYAYXWYPDGXDDXSPPYZNDLTWRHXYDXZZJHTCXMCZLHPYYYYMHZLLHNXMYLLLMDCPPXHMXDKYCYRDLTXJCHHZZXZLCCLYLNZSHZJZZLNNRLWHYQSNJHXYNTTTKYJPYCHHYEGKCTTWLGQRLGGTGTYGYHPYHYLQYQGCWYQKPYYYTTTTLHYHLLTYTTSPLKYZXGZWGPYDSSZZDQXSKCQNMJJZZBXYQMJRTFFBTKHZKBXLJJKDXJTLBWFZPPTKQTZTGPDGNTPJYFALQMKGXBDCLZFHZCLLLLADPMXDJHLCCLGYHDZFGYDDGCYYFGYDXKSSEBDHYKDKDKHNAXXYBPBYYHXZQGAFFQYJXDMLJCSQZLLPCHBSXGJYNDYBYQSPZWJLZKSDDTACTBXZDYZYPJZQSJNKKTKNJDJGYYPGTLFYQKASDNTCYHBLWDZHBBYDWJRYGKZYHEYYFJMSDTYFZJJHGCXPLXHLDWXXJKYTCYKSSSMTWCTTQZLPBSZDZWZXGZAGYKTYWXLHLSPBCLLOQMMZSSLCMBJCSZZKYDCZJGQQDSMCYTZQQLWZQZXSSFPTTFQMDDZDSHDTDWFHTDYZJYQJQKYPBDJYYXTLJHDRQXXXHAYDHRJLKLYTWHLLRLLRCXYLBWSRSZZSYMKZZHHKYHXKSMDSYDYCJPBZBSQLFCXXXNXKXWYWSDZYQOGGQMMYHCDZTTFJYYBGSTTTYBYKJDHKYXBELHTYPJQNFXFDYKZHQKZBYJTZBXHFDXKDASWTAWAJLDYJSFHBLDNNTNQJTJNCHXFJSRFWHZFMDRYJYJWZPDJKZYJYMPCYZNYNXFBYTFYFWYGDBNZZZDNYTXZEMMQBSQEHXFZMBMFLZZSRXYMJGSXWZJSPRYDJSJGXHJJGLJJYNZZJXHGXKYMLPYYYCXYTWQZSWHWLYRJLPXSLSXMFSWWKLCTNXNYNPSJSZHDZEPTXMYYWXYYSYWLXJQZQXZDCLEEELMCPJPCLWBXSQHFWWTFFJTNQJHJQDXHWLBYZNFJLALKYYJLDXHHYCSTYYWNRJYXYWTRMDRQHWQCMFJDYZMHMYYXJWMYZQZXTLMRSPWWCHAQBXYGZYPXYYRRCLMPYMGKSJSZYSRMYJSNXTPLNBAPPYPYLXYYZKYNLDZYJZCZNNLMZHHARQMPGWQTZMXXMLLHGDZXYHXKYXYCJMFFYYHJFSBSSQLXXNDYCANNMTCJCYPRRNYTYQNYYMBMSXNDLYLYSLJRLXYSXQMLLYZLZJJJKYZZCSFBZXXMSTBJGNXYZHLXNMCWSCYZYFZLXBRNNNYLBNRTGZQYSATSWRYHYJZMZDHZGZDWYBSSCSKXSYHYTXXGCQGXZZSHYXJSCRHMKKBXCZJYJYMKQHZJFNBHMQHYSNJNZYBKNQMCLGQHWLZNZSWXKHLJHYYBQLBFCDSXDLDSPFZPSKJYZWZXZDDXJSMMEGJSCSSMGCLXXKYYYLNYPWWWGYDKZJGGGZGGSYCKNJWNJPCXBJJTQTJWDSSPJXZXNZXUMELPXFSXTLLXCLJXJJLJZXCTPSWXLYDHLYQRWHSYCSQYYBYAYWJJJQFWQCQQCJQGXALDBZZYJGKGXPLTZYFXJLTPADKYQHPMATLCPDCKBMTXYBHKLENXDLEEGQDYMSAWHZMLJTWYGXLYQZLJEEYYBQQFFNLYXRDSCTGJGXYYNKLLYQKCCTLHJLQMKKZGCYYGLLLJDZGYDHZWXPYSJBZKDZGYZZHYWYFQYTYZSZYEZZLYMHJJHTSMQWYZLKYYWZCSRKQYTLTDXWCTYJKLWSQZWBDCQYNCJSRSZJLKCDCDTLZZZACQQZZDDXYPLXZBQJYLZLLLQDDZQJYJYJZYXNYYYNYJXKXDAZWYRDLJYYYRJLXLLDYXJCYWYWNQCCLDDNYYYNYCKCZHXXCCLGZQJGKWPPCQQJYSBZZXYJSQPXJPZBSBDSFNSFPZXHDWZTDWPPTFLZZBZDMYYPQJRSDZSQZSQXBDGCPZSWDWCSQZGMDHZXMWWFYBPDGPHTMJTHZSMMBGZMBZJCFZWFZBBZMQCFMBDMCJXLGPNJBBXGYHYYJGPTZGZMQBQTCGYXJXLWZKYDPDYMGCFTPFXYZTZXDZXTGKMTYBBCLBJASKYTSSQYYMSZXFJEWLXLLSZBQJJJAKLYLXLYCCTSXMCWFKKKBSXLLLLJYXTYLTJYYTDPJHNHNNKBYQNFQYYZBYYESSESSGDYHFHWTCJBSDZZTFDMXHCNJZYMQWSRYJDZJQPDQBBSTJGGFBKJBXTGQHNGWJXJGDLLTHZHHYYYYYYSXWTYYYCCBDBPYPZYCCZYJPZYWCBDLFWZCWJDXXHYHLHWZZXJTCZLCDPXUJCZZZLYXJJTXPHFXWPYWXZPTDZZBDZCYHJHMLXBQXSBYLRDTGJRRCTTTHYTCZWMXFYTWWZCWJWXJYWCSKYBZSCCTZQNHXNWXXKHKFHTSWOCCJYBCMPZZYKBNNZPBZHHZDLSYDDYTYFJPXYNGFXBYQXCBHXCPSXTYZDMKYSNXSXLHKMZXLYHDHKWHXXSSKQYHHCJYXGLHZXCSNHEKDTGZXQYPKDHEXTYKCNYMYYYPKQYYYKXZLTHJQTBYQHXBMYHSQCKWWYLLHCYYLNNEQXQWMCFBDCCMLJGGXDQKTLXKGNQCDGZJWYJJLYHHQTTTNWCHMXCXWHWSZJYDJCCDBQCDGDNYXZTHCQRXCBHZTQCBXWGQWYYBXHMBYMYQTYEXMQKYAQYRGYZSLFYKKQHYSSQYSHJGJCNXKZYCXSBXYXHYYLSTYCXQTHYSMGSCPMMGCCCCCMTZTASMGQZJHKLOSQYLSWTMXSYQKDZLJQQYPLSYCZTCQQPBBQJZCLPKHQZYYXXDTDDTSJCXFFLLCHQXMJLWCJCXTSPYCXNDTJSHJWXDQQJSKXYAMYLSJHMLALYKXCYYDMNMDQMXMCZNNCYBZKKYFLMCHCMLHXRCJJHSYLNMTJZGZGYWJXSRXCWJGJQHQZDQJDCJJZKJKGDZQGJJYJYLXZXXCDQHHHEYTMHLFSBDJSYYSHFYSTCZQLPBDRFRZTZYKYWHSZYQKWDQZRKMSYNBCRXQBJYFAZPZZEDZCJYWBCJWHYJBQSZYWRYSZPTDKZPFPBNZTKLQYHBBZPNPPTYZZYBQNYDCPJMMCYCQMCYFZZDCMNLFPBPLNGQJTBTTNJZPZBBZNJKLJQYLNBZQHKSJZNGGQSZZKYXSHPZSNBCGZKDDZQANZHJKDRTLZLSWJLJZLYWTJNDJZJHXYAYNCBGTZCSSQMNJPJYTYSWXZFKWJQTKHTZPLBHSNJZSYZBWZZZZLSYLSBJHDWWQPSLMMFBJDWAQYZTCJTBNNWZXQXCDSLQGDSDPDZHJTQQPSWLYYJZLGYXYZLCTCBJTKTYCZJTQKBSJLGMGZDMCSGPYNJZYQYYKNXRPWSZXMTNCSZZYXYBYHYZAXYWQCJTLLCKJJTJHGDXDXYQYZZBYWDLWQCGLZGJGQRQZCZSSBCRPCSKYDZNXJSQGXSSJMYDNSTZTPBDLTKZWXQWQTZEXNQCZGWEZKSSBYBRTSSSLCCGBPSZQSZLCCGLLLZXHZQTHCZMQGYZQZNMCOCSZJMMZSQPJYGQLJYJPPLDXRGZYXCCSXHSHGTZNLZWZKJCXTCFCJXLBMQBCZZWPQDNHXLJCTHYZLGYLNLSZZPCXDSCQQHJQKSXZPBAJYEMSMJTZDXLCJYRYYNWJBNGZZTMJXLTBSLYRZPYLSSCNXPHLLHYLLQQZQLXYMRSYCXZLMMCZLTZSDWTJJLLNZGGQXPFSKYGYGHBFZPDKMWGHCXMSGDXJMCJZDYCABXJDLNBCDQYGSKYDQTXDJJYXMSZQAZDZFSLQXYJSJZYLBTXXWXQQZBJZUFBBLYLWDSLJHXJYZJWTDJCZFQZQZZDZSXZZQLZCDZFJHYSPYMPQZMLPPLFFXJJNZZYLSJEYQZFPFZKSYWJJJHRDJZZXTXXGLGHYDXCSKYSWMMZCWYBAZBJKSHFHJCXMHFQHYXXYZFTSJYZFXYXPZLCHMZMBXHZZSXYFYMNCWDABAZLXKTCSHHXKXJJZJSTHYGXSXYYHHHJWXKZXSSBZZWHHHCWTZZZPJXSNXQQJGZYZYWLLCWXZFXXYXYHXMKYYSWSQMNLNAYCYSPMJKHWCQHYLAJJMZXHMMCNZHBHXCLXTJPLTXYJHDYYLTTXFSZHYXXSJBJYAYRSMXYPLCKDUYHLXRLNLLSTYZYYQYGYHHSCCSMZCTZQXKYQFPYYRPFFLKQUNTSZLLZMWWTCQQYZWTLLMLMPWMBZSSTZRBPDDTLQJJBXZCSRZQQYGWCSXFWZLXCCRSZDZMCYGGDZQSGTJSWLJMYMMZYHFBJDGYXCCPSHXNZCSBSJYJGJMPPWAFFYFNXHYZXZYLREMZGZCYZSSZDLLJCSQFNXZKPTXZGXJJGFMYYYSNBTYLBNLHPFZDCYFBMGQRRSSSZXYSGTZRNYDZZCDGPJAFJFZKNZBLCZSZPSGCYCJSZLMLRSZBZZLDLSLLYSXSQZQLYXZLSKKBRXBRBZCYCXZZZEEYFGKLZLYYHGZSGZLFJHGTGWKRAAJYZKZQTSSHJJXDCYZUYJLZYRZDQQHGJZXSSZBYKJPBFRTJXLLFQWJHYLQTYMBLPZDXTZYGBDHZZRBGXHWNJTJXLKSCFSMWLSDQYSJTXKZSCFWJLBXFTZLLJZLLQBLSQMQQCGCZFPBPHZCZJLPYYGGDTGWDCFCZQYYYQYSSCLXZSKLZZZGFFCQNWGLHQYZJJCZLQZZYJPJZZBPDCCMHJGXDQDGDLZQMFGPSYTSDYFWWDJZJYSXYYCZCYHZWPBYKXRYLYBHKJKSFXTZJMMCKHLLTNYYMSYXYZPYJQYCSYCWMTJJKQYRHLLQXPSGTLYYCLJSCPXJYZFNMLRGJJTYZBXYZMSJYJHHFZQMSYXRSZCWTLRTQZSSTKXGQKGSPTGCZNJSJCQCXHMXGGZTQYDJKZDLBZSXJLHYQGGGTHQSZPYHJHHGYYGKGGCWJZZYLCZLXQSFTGZSLLLMLJSKCTBLLZZSZMMNYTPZSXQHJCJYQXYZXZQZCPSHKZZYSXCDFGMWQRLLQXRFZTLYSTCTMJCXJJXHJNXTNRZTZFQYHQGLLGCXSZSJDJLJCYDSJTLNYXHSZXCGJZYQPYLFHDJSBPCCZHJJJQZJQDYBSSLLCMYTTMQTBHJQNNYGKYRQYQMZGCJKPDCGMYZHQLLSLLCLMHOLZGDYYFZSLJCQZLYLZQJESHNYLLJXGJXLYSYYYXNBZLJSSZCQQCJYLLZLTJYLLZLLBNYLGQCHXYYXOXCXQKYJXXXYKLXSXXYQXCYKQXQCSGYXXYQXYGYTQOHXHXPYXXXULCYEYCHZZCBWQBBWJQZSCSZSSLZYLKDESJZWMYMCYTSDSXXSCJPQQSQYLYYZYCMDJDZYWCBTJSYDJKCYDDJLBDJJSODZYSYXQQYXDHHGQQYQHDYXWGMMMAJDYBBBPPBCMUUPLJZSMTXERXJMHQNUTPJDCBSSMSSSTKJTSSMMTRCPLZSZMLQDSDMJMQPNQDXCFYNBFSDQXYXHYAYKQYDDLQYYYSSZBYDSLNTFQTZQPZMCHDHCZCWFDXTMYQSPHQYYXSRGJCWTJTZZQMGWJJTJHTQJBBHWZPXXHYQFXXQYWYYHYSCDYDHHQMNMTMWCPBSZPPZZGLMZFOLLCFWHMMSJZTTDHZZYFFYTZZGZYSKYJXQYJZQBHMBZZLYGHGFMSHPZFZSNCLPBQSNJXZSLXXFPMTYJYGBXLLDLXPZJYZJYHHZCYWHJYLSJEXFSZZYWXKZJLUYDTMLYMQJPWXYHXSKTQJEZRPXXZHHMHWQPWQLYJJQJJZSZCPHJLCHHNXJLQWZJHBMZYXBDHHYPZLHLHLGFWLCHYYTLHJXCJMSCPXSTKPNHQXSRTYXXTESYJCTLSSLSTDLLLWWYHDHRJZSFGXTSYCZYNYHTDHWJSLHTZDQDJZXXQHGYLTZPHCSQFCLNJTCLZPFSTPDYNYLGMJLLYCQHYSSHCHYLHQYQTMZYPBYWRFQYKQSYSLZDQJMPXYYSSRHZJNYWTQDFZBWWTWWRXCWHGYHXMKMYYYQMSMZHNGCEPMLQQMTCWCTMMPXJPJJHFXYYZSXZHTYBMSTSYJTTQQQYYLHYNPYQZLCYZHZWSMYLKFJXLWGXYPJYTYSYXYMZCKTTWLKSMZSYLMPWLZWXWQZSSAQSYXYRHSSNTSRAPXCPWCMGDXHXZDZYFJHGZTTSBJHGYZSZYSMYCLLLXBTYXHBBZJKSSDMALXHYCFYGMQYPJYCQXJLLLJGSLZGQLYCJCCZOTYXMTMTTLLWTGPXYMZMKLPSZZZXHKQYSXCTYJZYHXSHYXZKXLZWPSQPYHJWPJPWXQQYLXSDHMRSLZZYZWTTCYXYSZZSHBSCCSTPLWSSCJCHNLCGCHSSPHYLHFHHXJSXYLLNYLSZDHZXYLSXLWZYKCLDYAXZCMDDYSPJTQJZLNWQPSSSWCTSTSZLBLNXSMNYYMJQBQHRZWTYYDCHQLXKPZWBGQYBKFCMZWPZLLYYLSZYDWHXPSBCMLJBSCGBHXLQHYRLJXYSWXWXZSLDFHLSLYNJLZYFLYJYCDRJLFSYZFSLLCQYQFGJYHYXZLYLMSTDJCYHBZLLNWLXXYGYYHSMGDHXXHHLZZJZXCZZZCYQZFNGWPYLCPKPYYPMCLQKDGXZGGWQBDXZZKZFBXXLZXJTPJPTTBYTSZZDWSLCHZHSLTYXHQLHYXXXYYZYSWTXZKHLXZXZPYHGCHKCFSYHUTJRLXFJXPTZTWHPLYXFCRHXSHXKYXXYHZQDXQWULHYHMJTBFLKHTXCWHJFWJCFPQRYQXCYYYQYGRPYWSGSUNGWCHKZDXYFLXXHJJBYZWTSXXNCYJJYMSWZJQRMHXZWFQSYLZJZGBHYNSLBGTTCSYBYXXWXYHXYYXNSQYXMQYWRGYQLXBBZLJSYLPSYTJZYHYZAWLRORJMKSCZJXXXYXCHDYXRYXXJDTSQFXLYLTSFFYXLMTYJMJUYYYXLTZCSXQZQHZXLYYXZHDNBRXXXJCTYHLBRLMBRLLAXKYLLLJLYXXLYCRYLCJTGJCMTLZLLCYZZPZPCYAWHJJFYBDYYZSMPCKZDQYQPBPCJPDCYZMDPBCYYDYCNNPLMTMLRMFMMGWYZBSJGYGSMZQQQZTXMKQWGXLLPJGZBQCDJJJFPKJKCXBLJMSWMDTQJXLDLPPBXCWRCQFBFQJCZAHZGMYKPHYYHZYKNDKZMBPJYXPXYHLFPNYYGXJDBKXNXHJMZJXSTRSTLDXSKZYSYBZXJLXYSLBZYSLHXJPFXPQNBYLLJQKYGZMCYZZYMCCSLCLHZFWFWYXZMWSXTYNXJHPYYMCYSPMHYSMYDYSHQYZCHMJJMZCAAGCFJBBHPLYZYLXXSDJGXDHKXXTXXNBHRMLYJSLTXMRHNLXQJXYZLLYSWQGDLBJHDCGJYQYCMHWFMJYBMBYJYJWYMDPWHXQLDYGPDFXXBCGJSPCKRSSYZJMSLBZZJFLJJJLGXZGYXYXLSZQYXBEXYXHGCXBPLDYHWETTWWCJMBTXCHXYQXLLXFLYXLLJLSSFWDPZSMYJCLMWYTCZPCHQEKCQBWLCQYDPLQPPQZQFJQDJHYMMCXTXDRMJWRHXCJZYLQXDYYNHYYHRSLSRSYWWZJYMTLTLLGTQCJZYABTCKZCJYCCQLJZQXALMZYHYWLWDXZXQDLLQSHGPJFJLJHJABCQZDJGTKHSSTCYJLPSWZLXZXRWGLDLZRLZXTGSLLLLZLYXXWGDZYGBDPHZPBRLWSXQBPFDWOFMWHLYPCBJCCLDMBZPBZZLCYQXLDOMZBLZWPDWYYGDSTTHCSQSCCRSSSYSLFYBFNTYJSZDFNDPDHDZZMBBLSLCMYFFGTJJQWFTMTPJWFNLBZCMMJTGBDZLQLPYFHYYMJYLSDCHDZJWJCCTLJCLDTLJJCPDDSQDSSZYBNDBJLGGJZXSXNLYCYBJXQYCBYLZCFZPPGKCXZDZFZTJJFJSJXZBNZYJQTTYJYHTYCZHYMDJXTTMPXSPLZCDWSLSHXYPZGTFMLCJTYCBPMGDKWYCYZCDSZZYHFLYCTYGWHKJYYLSJCXGYWJCBLLCSNDDBTZBSCLYZCZZSSQDLLMQYYHFSLQLLXFTYHABXGWNYWYYPLLSDLDLLBJCYXJZMLHLJDXYYQYTDLLLBUGBFDFBBQJZZMDPJHGCLGMJJPGAEHHBWCQXAXHHHZCHXYPHJAXHLPHJPGPZJQCQZGJJZZUZDMQYYBZZPHYHYBWHAZYJHYKFGDPFQSDLZMLJXKXGALXZDAGLMDGXMWZQYXXDXXPFDMMSSYMPFMDMMKXKSYZYSHDZKXSYSMMZZZMSYDNZZCZXFPLSTMZDNMXCKJMZTYYMZMZZMSXHHDCZJEMXXKLJSTLWLSQLYJZLLZJSSDPPMHNLZJCZYHMXXHGZCJMDHXTKGRMXFWMCGMWKDTKSXQMMMFZZYDKMSCLCMPCGMHSPXQPZDSSLCXKYXTWLWJYAHZJGZQMCSNXYYMMPMLKJXMHLMLQMXCTKZMJQYSZJSYSZHSYJZJCDAJZYBSDQJZGWZQQXFKDMSDJLFWEHKZQKJPEYPZYSZCDWYJFFMZZYLTTDZZEFMZLBNPPLPLPEPSZALLTYLKCKQZKGENQLWAGYXYDPXLHSXQQWQCQXQCLHYXXMLYCCWLYMQYSKGCHLCJNSZKPYZKCQZQLJPDMDZHLASXLBYDWQLWDNBQCRYDDZTJYBKBWSZDXDTNPJDTCTQDFXQQMGNXECLTTBKPWSLCTYQLPWYZZKLPYGZCQQPLLKCCYLPQMZCZQCLJSLQZDJXLDDHPZQDLJJXZQDXYZQKZLJCYQDYJPPYPQYKJYRMPCBYMCXKLLZLLFQPYLLLMBSGLCYSSLRSYSQTMXYXZQZFDZUYSYZTFFMZZSMZQHZSSCCMLYXWTPZGXZJGZGSJSGKDDHTQGGZLLBJDZLCBCHYXYZHZFYWXYZYMSDBZZYJGTSMTFXQYXQSTDGSLNXDLRYZZLRYYLXQHTXSRTZNGZXBNQQZFMYKMZJBZYMKBPNLYZPBLMCNQYZZZSJZHJCTZKHYZZJRDYZHNPXGLFZTLKGJTCTSSYLLGZRZBBQZZKLPKLCZYSSUYXBJFPNJZZXCDWXZYJXZZDJJKGGRSRJKMSMZJLSJYWQSKYHQJSXPJZZZLSNSHRNYPZTWCHKLPSRZLZXYJQXQKYSJYCZTLQZYBBYBWZPQDWWYZCYTJCJXCKCWDKKZXSGKDZXWWYYJQYYTCYTDLLXWKCZKKLCCLZCQQDZLQLCSFQCHQHSFSMQZZLNBJJZBSJHTSZDYSJQJPDLZCDCWJKJZZLPYCGMZWDJJBSJQZSYZYHHXJPBJYDSSXDZNCGLQMBTSFSBPDZDLZNFGFJGFSMPXJQLMBLGQCYYXBQKDJJQYRFKZTJDHCZKLBSDZCFJTPLLJGXHYXZCSSZZXSTJYGKGCKGYOQXJPLZPBPGTGYJZGHZQZZLBJLSQFZGKQQJZGYCZBZQTLDXRJXBSXXPZXHYZYCLWDXJJHXMFDZPFZHQHQMQGKSLYHTYCGFRZGNQXCLPDLBZCSCZQLLJBLHBZCYPZZPPDYMZZSGYHCKCPZJGSLJLNSCDSLDLXBMSTLDDFJMKDJDHZLZXLSZQPQPGJLLYBDSZGQLBZLSLKYYHZTTNTJYQTZZPSZQZTLLJTYYLLQLLQYZQLBDZLSLYYZYMDFSZSNHLXZNCZQZPBWSKRFBSYZMTHBLGJPMCZZLSTLXSHTCSYZLZBLFEQHLXFLCJLYLJQCBZLZJHHSSTBRMHXZHJZCLXFNBGXGTQJCZTMSFZKJMSSNXLJKBHSJXNTNLZDNTLMSJXGZJYJCZXYJYJWRWWQNZTNFJSZPZSHZJFYRDJSFSZJZBJFZQZZHZLXFYSBZQLZSGYFTZDCSZXZJBQMSZKJRHYJZCKMJKHCHGTXKXQGLXPXFXTRTYLXJXHDTSJXHJZJXZWZLCQSBTXWXGXTXXHXFTSDKFJHZYJFJXRZSDLLLTQSQQZQWZXSYQTWGWBZCGZLLYZBCLMQQTZHZXZXLJFRMYZFLXYSQXXJKXRMQDZDMMYYBSQBHGZMWFWXGMXLZPYYTGZYCCDXYZXYWGSYJYZNBHPZJSQSYXSXRTFYZGRHZTXSZZTHCBFCLSYXZLZQMZLMPLMXZJXSFLBYZMYQHXJSXRXSQZZZSSLYFRCZJRCRXHHZXQYDYHXSJJHZCXZBTYNSYSXJBQLPXZQPYMLXZKYXLXCJLCYSXXZZLXDLLLJJYHZXGYJWKJRWYHCPSGNRZLFZWFZZNSXGXFLZSXZZZBFCSYJDBRJKRDHHGXJLJJTGXJXXSTJTJXLYXQFCSGSWMSBCTLQZZWLZZKXJMLTMJYHSDDBXGZHDLBMYJFRZFSGCLYJBPMLYSMSXLSZJQQHJZFXGFQFQBPXZGYYQXGZTCQWYLTLGWSGWHRLFSFGZJMGMGBGTJFSYZZGZYZAFLSSPMLPFLCWBJZCLJJMZLPJJLYMQDMYYYFBGYGYZMLYZDXQYXRQQQHSYYYQXYLJTYXFSFSLLGNQCYHYCWFHCCCFXPYLYPLLZYXXXXXKQHHXSHJZCFZSCZJXCPZWHHHHHAPYLQALPQAFYHXDYLUKMZQGGGDDESRNNZLTZGCHYPPYSQJJHCLLJTOLNJPZLJLHYMHEYDYDSQYCDDHGZUNDZCLZYZLLZNTNYZGSLHSLPJJBDGWXPCDUTJCKLKCLWKLLCASSTKZZDNQNTTLYYZSSYSSZZRYLJQKCQDHHCRXRZYDGRGCWCGZQFFFPPJFZYNAKRGYWYQPQXXFKJTSZZXSWZDDFBBXTBGTZKZNPZZPZXZPJSZBMQHKCYXYLDKLJNYPKYGHGDZJXXEAHPNZKZTZCMXCXMMJXNKSZQNMNLWBWWXJKYHCPSTMCSQTZJYXTPCTPDTNNPGLLLZSJLSPBLPLQHDTNJNLYYRSZFFJFQWDPHZDWMRZCCLODAXNSSNYZRESTYJWJYJDBCFXNMWTTBYLWSTSZGYBLJPXGLBOCLHPCBJLTMXZLJYLZXCLTPNCLCKXTPZJSWCYXSFYSZDKNTLBYJCYJLLSTGQCBXRYZXBXKLYLHZLQZLNZCXWJZLJZJNCJHXMNZZGJZZXTZJXYCYYCXXJYYXJJXSSSJSTSSTTPPGQTCSXWZDCSYFPTFBFHFBBLZJCLZZDBXGCXLQPXKFZFLSYLTUWBMQJHSZBMDDBCYSCCLDXYCDDQLYJJWMQLLCSGLJJSYFPYYCCYLTJANTJJPWYCMMGQYYSXDXQMZHSZXPFTWWZQSWQRFKJLZJQQYFBRXJHHFWJJZYQAZMYFRHCYYBYQWLPEXCCZSTYRLTTDMQLYKMBBGMYYJPRKZNPBSXYXBHYZDJDNGHPMFSGMWFZMFQMMBCMZZCJJLCNUXYQLMLRYGQZCYXZLWJGCJCGGMCJNFYZZJHYCPRRCMTZQZXHFQGTJXCCJEAQCRJYHPLQLSZDJRBCQHQDYRHYLYXJSYMHZYDWLDFRYHBPYDTSSCNWBXGLPZMLZZTQSSCPJMXXYCSJYTYCGHYCJWYRXXLFEMWJNMKLLSWTXHYYYNCMMCWJDQDJZGLLJWJRKHPZGGFLCCSCZMCBLTBHBQJXQDSPDJZZGKGLFQYWBZYZJLTSTDHQHCTCBCHFLQMPWDSHYYTQWCNZZJTLBYMBPDYYYXSQKXWYYFLXXNCWCXYPMAELYKKJMZZZBRXYYQJFLJPFHHHYTZZXSGQQMHSPGDZQWBWPJHZJDYSCQWZKTXXSQLZYYMYSDZGRXCKKUJLWPYSYSCSYZLRMLQSYLJXBCXTLWDQZPCYCYKPPPNSXFYZJJRCEMHSZMSXLXGLRWGCSTLRSXBZGBZGZTCPLUJLSLYLYMTXMTZPALZXPXJTJWTCYYZLBLXBZLQMYLXPGHDSLSSDMXMBDZZSXWHAMLCZCPJMCNHJYSNSYGCHSKQMZZQDLLKABLWJXSFMOCDXJRRLYQZKJMYBYQLYHETFJZFRFKSRYXFJTWDSXXSYSQJYSLYXWJHSNLXYYXHBHAWHHJZXWMYLJCSSLKYDZTXBZSYFDXGXZJKHSXXYBSSXDPYNZWRPTQZCZENYGCXQFJYKJBZMLJCMQQXUOXSLYXXLYLLJDZBTYMHPFSTTQQWLHOKYBLZZALZXQLHZWRRQHLSTMYPYXJJXMQSJFNBXYXYJXXYQYLTHYLQYFMLKLJTMLLHSZWKZHLJMLHLJKLJSTLQXYLMBHHLNLZXQJHXCFXXLHYHJJGBYZZKBXSCQDJQDSUJZYYHZHHMGSXCSYMXFEBCQWWRBPYYJQTYZCYQYQQZYHMWFFHGZFRJFCDPXNTQYZPDYKHJLFRZXPPXZDBBGZQSTLGDGYLCQMLCHHMFYWLZYXKJLYPQHSYWMQQGQZMLZJNSQXJQSYJYCBEHSXFSZPXZWFLLBCYYJDYTDTHWZSFJMQQYJLMQXXLLDTTKHHYBFPWTYYSQQWNQWLGWDEBZWCMYGCULKJXTMXMYJSXHYBRWFYMWFRXYQMXYSZTZZTFYKMLDHQDXWYYNLCRYJBLPSXCXYWLSPRRJWXHQYPHTYDNXHHMMYWYTZCSQMTSSCCDALWZTCPQPYJLLQZYJSWXMZZMMYLMXCLMXCZMXMZSQTZPPQQBLPGXQZHFLJJHYTJSRXWZXSCCDLXTYJDCQJXSLQYCLZXLZZXMXQRJMHRHZJBHMFLJLMLCLQNLDXZLLLPYPSYJYSXCQQDCMQJZZXHNPNXZMEKMXHYKYQLXSXTXJYYHWDCWDZHQYYBGYBCYSCFGPSJNZDYZZJZXRZRQJJYMCANYRJTLDPPYZBSTJKXXZYPFDWFGZZRPYMTNGXZQBYXNBUFNQKRJQZMJEGRZGYCLKXZDSKKNSXKCLJSPJYYZLQQJYBZSSQLLLKJXTBKTYLCCDDBLSPPFYLGYDTZJYQGGKQTTFZXBDKTYYHYBBFYTYYBCLPDYTGDHRYRNJSPTCSNYJQHKLLLZSLYDXXWBCJQSPXBPJZJCJDZFFXXBRMLAZHCSNDLBJDSZBLPRZTSWSBXBCLLXXLZDJZSJPYLYXXYFTFFFBHJJXGBYXJPMMMPSSJZJMTLYZJXSWXTYLEDQPJMYGQZJGDJLQJWJQLLSJGJGYGMSCLJJXDTYGJQJQJCJZCJGDZZSXQGSJGGCXHQXSNQLZZBXHSGZXCXYLJXYXYYDFQQJHJFXDHCTXJYRXYSQTJXYEFYYSSYYJXNCYZXFXMSYSZXYYSCHSHXZZZGZZZGFJDLTYLNPZGYJYZYYQZPBXQBDZTZCZYXXYHHSQXSHDHGQHJHGYWSZTMZMLHYXGEBTYLZKQWYTJZRCLEKYSTDBCYKQQSAYXCJXWWGSBHJYZYDHCSJKQCXSWXFLTYNYZPZCCZJQTZWJQDZZZQZLJJXLSBHPYXXPSXSHHEZTXFPTLQYZZXHYTXNCFZYYHXGNXMYWXTZSJPTHHGYMXMXQZXTSBCZYJYXXTYYZYPCQLMMSZMJZZLLZXGXZAAJZYXJMZXWDXZSXZDZXLEYJJZQBHZWZZZQTZPSXZTDSXJJJZNYAZPHXYYSRNQDTHZHYYKYJHDZXZLSWCLYBZYECWCYCRYLCXNHZYDZYDYJDFRJJHTRSQTXYXJRJHOJYNXELXSFSFJZGHPZSXZSZDZCQZBYYKLSGSJHCZSHDGQGXYZGXCHXZJWYQWGYHKSSEQZZNDZFKWYSSTCLZSTSYMCDHJXXYWEYXCZAYDMPXMDSXYBSQMJMZJMTZQLPJYQZCGQHXJHHLXXHLHDLDJQCLDWBSXFZZYYSCHTYTYYBHECXHYKGJPXHHYZJFXHWHBDZFYZBCAPNPGNYDMSXHMMMMAMYNBYJTMPXYYMCTHJBZYFCGTYHWPHFTWZZEZSBZEGPFMTSKFTYCMHFLLHGPZJXZJGZJYXZSBBQSCZZLZCCSTPGXMJSFTCCZJZDJXCYBZLFCJSYZFGSZLYBCWZZBYZDZYPSWYJZXZBDSYUXLZZBZFYGCZXBZHZFTPBGZGEJBSTGKDMFHYZZJHZLLZZGJQZLSFDJSSCBZGPDLFZFZSZYZYZSYGCXSNXXCHCZXTZZLJFZGQSQYXZJQDCCZTQCDXZJYQJQCHXZTDLGSCXZSYQJQTZWLQDQZTQCHQQJZYEZZZPBWKDJFCJPZTYPQYQTTYNLMBDKTJZPQZQZZFPZSBNJLGYJDXJDZZKZGQKXDLPZJTCJDQBXDJQJSTCKNXBXZMSLYJCQMTJQWWCJQNJNLLLHJCWQTBZQYDZCZPZZDZYDDCYZZZCCJTTJFZDPRRTZTJDCQTQZDTJNPLZBCLLCTZSXKJZQZPZLBZRBTJDCXFCZDBCCJJLTQQPLDCGZDBBZJCQDCJWYNLLZYZCCDWLLXWZLXRXNTQQCZXKQLSGDFQTDDGLRLAJJTKUYMKQLLTZYTDYYCZGJWYXDXFRSKSTQTENQMRKQZHHQKDLDAZFKYPBGGPZREBZZYKZZSPEGJXGYKQZZZSLYSYYYZWFQZYLZZLZHWCHKYPQGNPGBLPLRRJYXCCSYYHSFZFYBZYYTGZXYLXCZWXXZJZBLFFLGSKHYJZEYJHLPLLLLCZGXDRZELRHGKLZZYHZLYQSZZJZQLJZFLNBHGWLCZCFJYSPYXZLZLXGCCPZBLLCYBBBBUBBCBPCRNNZCZYRBFSRLDCGQYYQXYGMQZWTZYTYJXYFWTEHZZJYWLCCNTZYJJZDEDPZDZTSYQJHDYMBJNYJZLXTSSTPHNDJXXBYXQTZQDDTJTDYYTGWSCSZQFLSHLGLBCZPHDLYZJYCKWTYTYLBNYTSDSYCCTYSZYYEBHEXHQDTWNYGYCLXTSZYSTQMYGZAZCCSZZDSLZCLZRQXYYELJSBYMXSXZTEMBBLLYYLLYTDQYSHYMRQWKFKBFXNXSBYCHXBWJYHTQBPBSBWDZYLKGZSKYHXQZJXHXJXGNLJKZLYYCDXLFYFGHLJGJYBXQLYBXQPQGZTZPLNCYPXDJYQYDYMRBESJYYHKXXSTMXRCZZYWXYQYBMCLLYZHQYZWQXDBXBZWZMSLPDMYSKFMZKLZCYQYCZLQXFZZYDQZPZYGYJYZMZXDZFYFYTTQTZHGSPCZMLCCYTZXJCYTJMKSLPZHYSNZLLYTPZCTZZCKTXDHXXTQCYFKSMQCCYYAZHTJPCYLZLYJBJXTPNYLJYYNRXSYLMMNXJSMYBCSYSYLZYLXJJQYLDZLPQBFZZBLFNDXQKCZFYWHGQMRDSXYCYTXNQQJZYYPFZXDYZFPRXEJDGYQBXRCNFYYQPGHYJDYZXGRHTKYLNWDZNTSMPKLBTHBPYSZBZTJZSZZJTYYXZPHSSZZBZCZPTQFZMYFLYPYBBJQXZMXXDJMTSYSKKBJZXHJCKLPSMKYJZCXTMLJYXRZZQSLXXQPYZXMKYXXXJCLJPRMYYGADYSKQLSNDHYZKQXZYZTCGHZTLMLWZYBWSYCTBHJHJFCWZTXWYTKZLXQSHLYJZJXTMPLPYCGLTBZZTLZJCYJGDTCLKLPLLQPJMZPAPXYZLKKTKDZCZZBNZDYDYQZJYJGMCTXLTGXSZLMLHBGLKFWNWZHDXUHLFMKYSLGXDTWWFRJEJZTZHYDXYKSHWFZCQSHKTMQQHTZHYMJDJSKHXZJZBZZXYMPAGQMSTPXLSKLZYNWRTSQLSZBPSPSGZWYHTLKSSSWHZZLYYTNXJGMJSZSUFWNLSOZTXGXLSAMMLBWLDSZYLAKQCQCTMYCFJBSLXCLZZCLXXKSBZQCLHJPSQPLSXXCKSLNHPSFQQYTXYJZLQLDXZQJZDYYDJNZPTUZDSKJFSLJHYLZSQZLBTXYDGTQFDBYAZXDZHZJNHHQBYKNXJJQCZMLLJZKSPLDYCLBBLXKLELXJLBQYCXJXGCNLCQPLZLZYJTZLJGYZDZPLTQCSXFDMNYCXGBTJDCZNBGBQYQJWGKFHTNPYQZQGBKPBBYZMTJDYTBLSQMPSXTBNPDXKLEMYYCJYNZCTLDYKZZXDDXHQSHDGMZSJYCCTAYRZLPYLTLKXSLZCGGEXCLFXLKJRTLQJAQZNCMBYDKKCXGLCZJZXJHPTDJJMZQYKQSECQZDSHHADMLZFMMZBGNTJNNLGBYJBRBTMLBYJDZXLCJLPLDLPCQDHLXZLYCBLCXZZJADJLNZMMSSSMYBHBSQKBHRSXXJMXSDZNZPXLGBRHWGGFCXGMSKLLTSJYYCQLTSKYWYYHYWXBXQYWPYWYKQLSQPTNTKHQCWDQKTWPXXHCPTHTWUMSSYHBWCRWXHJMKMZNGWTMLKFGHKJYLSYYCXWHYECLQHKQHTTQKHFZLDXQWYZYYDESBPKYRZPJFYYZJCEQDZZDLATZBBFJLLCXDLMJSSXEGYGSJQXCWBXSSZPDYZCXDNYXPPZYDLYJCZPLTXLSXYZYRXCYYYDYLWWNZSAHJSYQYHGYWWAXTJZDAXYSRLTDPSSYYFNEJDXYZHLXLLLZQZSJNYQYQQXYJGHZGZCYJCHZLYCDSHWSHJZYJXCLLNXZJJYYXNFXMWFPYLCYLLABWDDHWDXJMCXZTZPMLQZHSFHZYNZTLLDYWLSLXHYMMYLMBWWKYXYADTXYLLDJPYBPWUXJMWMLLSAFDLLYFLBHHHBQQLTZJCQJLDJTFFKMMMBYTHYGDCQRDDWRQJXNBYSNWZDBYYTBJHPYBYTTJXAAHGQDQTMYSTQXKBTZPKJLZRBEQQSSMJJBDJOTGTBXPGBKTLHQXJJJCTHXQDWJLWRFWQGWSHCKRYSWGFTGYGBXSDWDWRFHWYTJJXXXJYZYSLPYYYPAYXHYDQKXSHXYXGSKQHYWFDDDPPLCJLQQEEWXKSYYKDYPLTJTHKJLTCYYHHJTTPLTZZCDLTHQKZXQYSTEEYWYYZYXXYYSTTJKLLPZMCYHQGXYHSRMBXPLLNQYDQHXSXXWGDQBSHYLLPJJJTHYJKYPPTHYYKTYEZYENMDSHLCRPQFDGFXZPSFTLJXXJBSWYYSKSFLXLPPLBBBLBSFXFYZBSJSSYLPBBFFFFSSCJDSTZSXZRYYSYFFSYZYZBJTBCTSBSDHRTJJBYTCXYJEYLXCBNEBJDSYXYKGSJZBXBYTFZWGENYHHTHZHHXFWGCSTBGXKLSXYWMTMBYXJSTZSCDYQRCYTWXZFHMYMCXLZNSDJTTTXRYCFYJSBSDYERXJLJXBBDEYNJGHXGCKGSCYMBLXJMSZNSKGXFBNBPTHFJAAFXYXFPXMYPQDTZCXZZPXRSYWZDLYBBKTYQPQJPZYPZJZNJPZJLZZFYSBTTSLMPTZRTDXQSJEHBZYLZDHLJSQMLHTXTJECXSLZZSPKTLZKQQYFSYGYWPCPQFHQHYTQXZKRSGTTSQCZLPTXCDYYZXSQZSLXLZMYCPCQBZYXHBSXLZDLTCDXTYLZJYYZPZYZLTXJSJXHLPMYTXCQRBLZSSFJZZTNJYTXMYJHLHPPLCYXQJQQKZZSCPZKSWALQSBLCCZJSXGWWWYGYKTJBBZTDKHXHKGTGPBKQYSLPXPJCKBMLLXDZSTBKLGGQKQLSBKKTFXRMDKBFTPZFRTBBRFERQGXYJPZSSTLBZTPSZQZSJDHLJQLZBPMSMMSXLQQNHKNBLRDDNXXDHDDJCYYGYLXGZLXSYGMQQGKHBPMXYXLYTQWLWGCPBMQXCYZYDRJBHTDJYHQSHTMJSBYPLWHLZFFNYPMHXXHPLTBQPFBJWQDBYGPNZTPFZJGSDDTQSHZEAWZZYLLTYYBWJKXXGHLFKXDJTMSZSQYNZGGSWQSPHTLSSKMCLZXYSZQZXNCJDQGZDLFNYKLJCJLLZLMZZNHYDSSHTHZZLZZBBHQZWWYCRZHLYQQJBEYFXXXWHSRXWQHWPSLMSSKZTTYGYQQWRSLALHMJTQJSMXQBJJZJXZYZKXBYQXBJXSHZTSFJLXMXZXFGHKZSZGGYLCLSARJYHSLLLMZXELGLXYDJYTLFBHBPNLYZFBBHPTGJKWETZHKJJXZXXGLLJLSTGSHJJYQLQZFKCGNNDJSSZFDBCTWWSEQFHQJBSAQTGYPQLBXBMMYWXGSLZHGLZGQYFLZBYFZJFRYSFMBYZHQGFWZSYFYJJPHZBYYZFFWODGRLMFTWLBZGYCQXCDJYGZYYYYTYTYDWEGAZYHXJLZYYHLRMGRXXZCLHNELJJTJTPWJYBJJBXJJTJTEEKHWSLJPLPSFYZPQQBDLQJJTYYQLYZKDKSQJYYQZLDQTGJQYZJSUCMRYQTHTEJMFCTYHYPKMHYZWJDQFHYYXWSHCTXRLJHQXHCCYYYJLTKTTYTMXGTCJTZAYYOCZLYLBSZYWJYTSJYHBYSHFJLYGJXXTMZYYLTXXYPZLXYJZYZYYPNHMYMDYYLBLHLSYYQQLLNJJYMSOYQBZGDLYXYLCQYXTSZEGXHZGLHWBLJHEYXTWQMAKBPQCGYSHHEGQCMWYYWLJYJHYYZLLJJYLHZYHMGSLJLJXCJJYCLYCJPCPZJZJMMYLCQLNQLJQJSXYJMLSZLJQLYCMMHCFMMFPQQMFYLQMCFFQMMMMHMZNFHHJGTTHHKHSLNCHHYQDXTMMQDCYZYXYQMYQYLTDCYYYZAZZCYMZYDLZFFFMMYCQZWZZMABTBYZTDMNZZGGDFTYPCGQYTTSSFFWFDTZQSSYSTWXJHXYTSXXYLBYQHWWKXHZXWZNNZZJZJJQJCCCHYYXBZXZCYZTLLCQXYNJYCYYCYNZZQYYYEWYCZDCJYCCHYJLBTZYYCQWMPWPYMLGKDLDLGKQQBGYCHJXY")
const [oMultiDiff, setOMultiDiff] = useState({ "19969": "DZ", "19975": "WM", "19988": "QJ", "20048": "YL", "20056": "SC", "20060": "NM", "20094": "QG", "20127": "QJ", "20167": "QC", "20193": "YG", "20250": "KH", "20256": "ZC", "20282": "SC", "20285": "QJG", "20291": "TD", "20314": "YD", "20340": "NE", "20375": "TD", "20389": "YJ", "20391": "CZ", "20415": "PB", "20446": "YS", "20447": "SQ", "20504": "TC", "20608": "KG", "20854": "QJ", "20857": "ZC", "20911": "PF", "20504": "TC", "20608": "KG", "20854": "QJ", "20857": "ZC", "20911": "PF", "20985": "AW", "21032": "PB", "21048": "XQ", "21049": "SC", "21089": "YS", "21119": "JC", "21242": "SB", "21273": "SC", "21305": "YP", "21306": "QO", "21330": "ZC", "21333": "SDC", "21345": "QK", "21378": "CA", "21397": "SC", "21414": "XS", "21442": "SC", "21477": "JG", "21480": "TD", "21484": "ZS", "21494": "YX", "21505": "YX", "21512": "HG", "21523": "XH", "21537": "PB", "21542": "PF", "21549": "KH", "21571": "E", "21574": "DA", "21588": "TD", "21589": "O", "21618": "ZC", "21621": "KHA", "21632": "ZJ", "21654": "KG", "21679": "LKG", "21683": "KH", "21710": "A", "21719": "YH", "21734": "WOE", "21769": "A", "21780": "WN", "21804": "XH", "21834": "A", "21899": "ZD", "21903": "RN", "21908": "WO", "21939": "ZC", "21956": "SA", "21964": "YA", "21970": "TD", "22003": "A", "22031": "JG", "22040": "XS", "22060": "ZC", "22066": "ZC", "22079": "MH", "22129": "XJ", "22179": "XA", "22237": "NJ", "22244": "TD", "22280": "JQ", "22300": "YH", "22313": "XW", "22331": "YQ", "22343": "YJ", "22351": "PH", "22395": "DC", "22412": "TD", "22484": "PB", "22500": "PB", "22534": "ZD", "22549": "DH", "22561": "PB", "22612": "TD", "22771": "KQ", "22831": "HB", "22841": "JG", "22855": "QJ", "22865": "XQ", "23013": "ML", "23081": "WM", "23487": "SX", "23558": "QJ", "23561": "YW", "23586": "YW", "23614": "YW", "23615": "SN", "23631": "PB", "23646": "ZS", "23663": "ZT", "23673": "YG", "23762": "TD", "23769": "ZS", "23780": "QJ", "23884": "QK", "24055": "XH", "24113": "DC", "24162": "ZC", "24191": "GA", "24273": "QJ", "24324": "NL", "24377": "TD", "24378": "QJ", "24439": "PF", "24554": "ZS", "24683": "TD", "24694": "WE", "24733": "LK", "24925": "TN", "25094": "ZG", "25100": "XQ", "25103": "XH", "25153": "PB", "25170": "PB", "25179": "KG", "25203": "PB", "25240": "ZS", "25282": "FB", "25303": "NA", "25324": "KG", "25341": "ZY", "25373": "WZ", "25375": "XJ", "25384": "A", "25457": "A", "25528": "SD", "25530": "SC", "25552": "TD", "25774": "ZC", "25874": "ZC", "26044": "YW", "26080": "WM", "26292": "PB", "26333": "PB", "26355": "ZY", "26366": "CZ", "26397": "ZC", "26399": "QJ", "26415": "ZS", "26451": "SB", "26526": "ZC", "26552": "JG", "26561": "TD", "26588": "JG", "26597": "CZ", "26629": "ZS", "26638": "YL", "26646": "XQ", "26653": "KG", "26657": "XJ", "26727": "HG", "26894": "ZC", "26937": "ZS", "26946": "ZC", "26999": "KJ", "27099": "KJ", "27449": "YQ", "27481": "XS", "27542": "ZS", "27663": "ZS", "27748": "TS", "27784": "SC", "27788": "ZD", "27795": "TD", "27812": "O", "27850": "PB", "27852": "MB", "27895": "SL", "27898": "PL", "27973": "QJ", "27981": "KH", "27986": "HX", "27994": "XJ", "28044": "YC", "28065": "WG", "28177": "SM", "28267": "QJ", "28291": "KH", "28337": "ZQ", "28463": "TL", "28548": "DC", "28601": "TD", "28689": "PB", "28805": "JG", "28820": "QG", "28846": "PB", "28952": "TD", "28975": "ZC", "29100": "A", "29325": "QJ", "29575": "SL", "29602": "FB", "30010": "TD", "30044": "CX", "30058": "PF", "30091": "YSP", "30111": "YN", "30229": "XJ", "30427": "SC", "30465": "SX", "30631": "YQ", "30655": "QJ", "30684": "QJG", "30707": "SD", "30729": "XH", "30796": "LG", "30917": "PB", "31074": "NM", "31085": "JZ", "31109": "SC", "31181": "ZC", "31192": "MLB", "31293": "JQ", "31400": "YX", "31584": "YJ", "31896": "ZN", "31909": "ZY", "31995": "XJ", "32321": "PF", "32327": "ZY", "32418": "HG", "32420": "XQ", "32421": "HG", "32438": "LG", "32473": "GJ", "32488": "TD", "32521": "QJ", "32527": "PB", "32562": "ZSQ", "32564": "JZ", "32735": "ZD", "32793": "PB", "33071": "PF", "33098": "XL", "33100": "YA", "33152": "PB", "33261": "CX", "33324": "BP", "33333": "TD", "33406": "YA", "33426": "WM", "33432": "PB", "33445": "JG", "33486": "ZN", "33493": "TS", "33507": "QJ", "33540": "QJ", "33544": "ZC", "33564": "XQ", "33617": "YT", "33632": "QJ", "33636": "XH", "33637": "YX", "33694": "WG", "33705": "PF", "33728": "YW", "33882": "SR", "34067": "WM", "34074": "YW", "34121": "QJ", "34255": "ZC", "34259": "XL", "34425": "JH", "34430": "XH", "34485": "KH", "34503": "YS", "34532": "HG", "34552": "XS", "34558": "YE", "34593": "ZL", "34660": "YQ", "34892": "XH", "34928": "SC", "34999": "QJ", "35048": "PB", "35059": "SC", "35098": "ZC", "35203": "TQ", "35265": "JX", "35299": "JX", "35782": "SZ", "35828": "YS", "35830": "E", "35843": "TD", "35895": "YG", "35977": "MH", "36158": "JG", "36228": "QJ", "36426": "XQ", "36466": "DC", "36710": "JC", "36711": "ZYG", "36767": "PB", "36866": "SK", "36951": "YW", "37034": "YX", "37063": "XH", "37218": "ZC", "37325": "ZC", "38063": "PB", "38079": "TD", "38085": "QY", "38107": "DC", "38116": "TD", "38123": "YD", "38224": "HG", "38241": "XTC", "38271": "ZC", "38415": "YE", "38426": "KH", "38461": "YD", "38463": "AE", "38466": "PB", "38477": "XJ", "38518": "YT", "38551": "WK", "38585": "ZC", "38704": "XS", "38739": "LJ", "38761": "GJ", "38808": "SQ", "39048": "JG", "39049": "XJ", "39052": "HG", "39076": "CZ", "39271": "XT", "39534": "TD", "39552": "TD", "39584": "PB", "39647": "SB", "39730": "LG", "39748": "TPB", "40109": "ZQ", "40479": "ND", "40516": "HG", "40536": "HG", "40583": "QJ", "40765": "YQ", "40784": "QJ", "40840": "YK", "40863": "QJG" })
const CheckboxGroup = Checkbox.Group; const CheckboxGroup = Checkbox.Group;
const defaultCheckedList = ['前端', '手持'] const defaultCheckedList = ['前端', '手持']
...@@ -25,6 +28,7 @@ const AddModal = props => { ...@@ -25,6 +28,7 @@ const AddModal = props => {
const [editable, setEditable] = useState(false) const [editable, setEditable] = useState(false)
const [ReportFromMobile, setReportFromMobile] = useState(false) const [ReportFromMobile, setReportFromMobile] = useState(false)
const [ReportFromWeb, setReportFromWeb] = useState(false) const [ReportFromWeb, setReportFromWeb] = useState(false)
const [chee, setChee] = useState()
const [indeterminate, setIndeterminate] = useState(true); const [indeterminate, setIndeterminate] = useState(true);
const [checkAll, setCheckAll] = useState(true); const [checkAll, setCheckAll] = useState(true);
...@@ -36,13 +40,16 @@ const AddModal = props => { ...@@ -36,13 +40,16 @@ const AddModal = props => {
const [standingTable, setStandingTable] = useState([]); const [standingTable, setStandingTable] = useState([]);
const [filed, setFiled] = useState({}); // 传给子组件列表数据 const [filed, setFiled] = useState({}); // 传给子组件列表数据
const [filed1, setFiled1] = useState({}); // 传给子组件列表数据 const [filed1, setFiled1] = useState({}); // 传给子组件列表数据
const [flag, setFlag] = useState(0)
const [value, setValue] = useState(0);//单选 const [value, setValue] = useState(1);//单选
const [types, setTypes] = useState(''); // 弹窗类型 const [types, setTypes] = useState(''); // 弹窗类型
const [Order, setOrder] = useState(''); // 弹窗类型 const [Order, setOrder] = useState(''); // 弹窗类型
const [Type, setType] = useState('') const [Type1, setType1] = useState('')
const [isVisible, setIsVisible] = useState(false); // 弹窗 const [isVisible, setIsVisible] = useState(false); // 弹窗
const [isVisible1, setIsVisible1] = useState(false); // 弹窗
const [characterValue, setCharacterValue] = useState('') const [characterValue, setCharacterValue] = useState('')
const [form] = Form.useForm(); const [form] = Form.useForm();
const { Item } = Form; const { Item } = Form;
...@@ -50,26 +57,29 @@ const AddModal = props => { ...@@ -50,26 +57,29 @@ const AddModal = props => {
const onSubmit = () => { const onSubmit = () => {
form.validateFields().then(validate => { form.validateFields().then(validate => {
if (validate) { if (validate) {
setLoading(true); setLoading(true);
let obj = form.getFieldsValue(); let obj = form.getFieldsValue();
// console.log(obj.Reportable) obj.Code = obj.Code.toString()
console.log(obj) console.log(obj)
console.log(obj.Editable) console.log(obj.Reportable)
console.log(obj.CreateMode)
console.log(obj.ReportFromWeb) console.log(obj.ReportFromWeb)
console.log(inputValue) console.log(obj.ReportFromMobile)
console.log(obj.tableName) if (obj.TableName === undefined) {
if(obj.TableName===undefined){
console.log(selectValue) console.log(selectValue)
obj.TableName = selectValue obj.TableName = selectValue
} }
if (obj.CreateMode === undefined) {
console.log(1111)
obj.CreateMode = 0
}
if (obj.CreateMode === 0 || 1) { if (obj.CreateMode === 0 || 1) {
console.log(2222)
obj.CreateMode = obj.CreateMode.toString() obj.CreateMode = obj.CreateMode.toString()
} }
if (checkedList2 != true) { if (editable != true) {
obj.Editable = false inputValue.Editable = false
} else { } else {
obj.Editable = checkedList2 inputValue.Editable = editable
} }
if (checkedList3 === true && checkedList4 === true) { if (checkedList3 === true && checkedList4 === true) {
obj.Reportable = '均可' obj.Reportable = '均可'
...@@ -78,7 +88,7 @@ const AddModal = props => { ...@@ -78,7 +88,7 @@ const AddModal = props => {
} else if (checkedList3 === true) { } else if (checkedList3 === true) {
obj.Reportable = '前端' obj.Reportable = '前端'
obj.ReportFromMobile = '' obj.ReportFromMobile = ''
obj.ReportFromWeb = '前端' obj.ReportFromWeb = '前端'
} else if (checkedList4 === true) { } else if (checkedList4 === true) {
obj.Reportable = '手持' obj.Reportable = '手持'
obj.ReportFromMobile = '手持' obj.ReportFromMobile = '手持'
...@@ -86,103 +96,115 @@ const AddModal = props => { ...@@ -86,103 +96,115 @@ const AddModal = props => {
} else { } else {
obj.Reportable = '否' obj.Reportable = '否'
obj.ReportFromMobile = '' obj.ReportFromMobile = ''
obj.ReportFromWeb = '' obj.ReportFromWeb = ''
}
if(ReportFromWeb === true && ReportFromMobile === true){
inputValue.Reportable = '均可'
inputValue.ReportFromMobile = '手持'
inputValue.ReportFromWeb = '前端'
} else if (ReportFromWeb === true){
inputValue.Reportable = '前端'
inputValue.ReportFromMobile = ''
inputValue.ReportFromWeb = '前端'
} else if (ReportFromMobile === true){
inputValue.Reportable = '手持'
inputValue.ReportFromMobile = '手持'
inputValue.ReportFromWeb = ''
} else {
inputValue.Reportable = '否'
inputValue.ReportFromMobile = ''
inputValue.ReportFromWeb = ''
} }
console.log(type) console.log(ReportFromWeb)
console.log(ReportFromMobile)
console.log(obj) console.log(obj)
console.log(inputValue) console.log(inputValue)
console.log({ ...inputValue })
console.log({ ...obj })
console.log(inputValue)
if((obj.Reportable !== '否')&&(inputValue.Roles === '')){
notification.warning({
message: '提示',
description: '当允许客户端上报时需选择事件权限',
})
}else if(inputValue.SummaryFields===''){
notification.warning({
message: '提示',
description: '摘要字段必填',
})
}else{
let data = { ...obj, ...inputValue, Order: maxLength } let data = { ...obj, ...inputValue, Order: maxLength }
if (type == 'edit') { if((inputValue.Roles=='')&&(inputValue.Reportable!='否')){
CM_Event_EditEventTable({ notification.warning({
...inputValue, message: '提示',
ID: formObj.ID, description: '当允许客户端上报时,须填写角色权限',
Name:obj.Name, });
Code:obj.Code, }else{
BusinessType:obj.BusinessType, if (type == 'edit') {
TableName:obj.TableName, CM_Event_EditEventTable({
Reportable:obj.Reportable, ...inputValue,
ReportFromWeb:obj.ReportFromWeb, ID: formObj.ID,
ReportFromMobile:obj.ReportFromMobile, Name: obj.Name,
Editable:obj.Editable, Code: obj.Code,
CreateMode:obj.CreateMode, BusinessType: obj.BusinessType,
TopWhere:obj.TopWhere, TableName: obj.TableName,
ReportPage:obj.ReportPage, Reportable: inputValue.Reportable,
DealPage:obj.DealPage, ReportFromWeb: inputValue.ReportFromWeb,
RelatedEvents:obj.RelatedEvents, ReportFromMobile: inputValue.ReportFromMobile,
InterfaceConfig:obj.InterfaceConfig, Editable: inputValue.Editable,
}) CreateMode: obj.CreateMode,
.then(res => { TopWhere: obj.TopWhere,
setLoading(false); ReportPage: obj.ReportPage,
if (res.msg === 'Ok') { DealPage: obj.DealPage,
form.resetFields(); RelatedEvents: obj.RelatedEvents,
callBackSubmit(); InterfaceConfig: obj.InterfaceConfig,
notification.success({ })
message: '提示', .then(res => {
duration: 3, setLoading(false);
description: '编辑成功', if (res.msg === 'Ok') {
}); form.resetFields();
} else { callBackSubmit();
notification.success({
message: '提示',
duration: 3,
description: '编辑成功',
});
} else {
notification.error({
message: '提示',
duration: 3,
description: res.msg,
});
}
})
.catch(error => {
notification.error({ notification.error({
message: '提示', message: '提示',
duration: 3, duration: 3,
description: res.msg, description: '编辑失败',
}); });
} setLoading(false);
})
.catch(error => {
notification.error({
message: '提示',
duration: 3,
description: '编辑失败',
}); });
setLoading(false); setFlag(0)
}); }
} if (type == 'add') {
if (type == 'add') { CM_Event_AddEventTable(data)
CM_Event_AddEventTable(data) .then(res => {
.then(res => { setLoading(false);
setLoading(false); if (res.msg === 'Ok') {
if (res.msg === 'Ok') { form.resetFields();
form.resetFields(); callBackSubmit();
callBackSubmit(); notification.success({
notification.success({ message: '提示',
message: '提示', duration: 3,
duration: 3, description: '新增成功',
description: '新增成功', });
}); } else {
} else { notification.error({
message: '提示',
duration: 3,
description: res.msg,
});
}
})
.catch(error => {
notification.error({ notification.error({
message: '提示', message: '提示',
duration: 3, duration: 3,
description: res.msg, description: '新增失败',
}); });
} setLoading(false);
})
.catch(error => {
notification.error({
message: '提示',
duration: 3,
description: '新增失败',
}); });
setLoading(false); setFlag(0)
}); }
}
} }
} }
}); });
}; };
...@@ -191,6 +213,10 @@ const AddModal = props => { ...@@ -191,6 +213,10 @@ const AddModal = props => {
console.log(selectData) console.log(selectData)
getRole() getRole()
if (type === 'add') { if (type === 'add') {
setReportFromWeb(true)
setCheckedList3(true)
setChee(0)
setValue(0)
getEventData() getEventData()
setSelectValue(selectData[0]) setSelectValue(selectData[0])
setInputValue({ SummaryFields: '', ReportFields: '', DisplayFields: '', EditableFields: '', TransitFields: '', Roles: '', RelatedEventFields: '', pictureFields: '' }) setInputValue({ SummaryFields: '', ReportFields: '', DisplayFields: '', EditableFields: '', TransitFields: '', Roles: '', RelatedEventFields: '', pictureFields: '' })
...@@ -199,23 +225,27 @@ const AddModal = props => { ...@@ -199,23 +225,27 @@ const AddModal = props => {
form.resetFields(); form.resetFields();
setEditable(false) setEditable(false)
setReportFromMobile(false) setReportFromMobile(false)
setReportFromWeb(false) // setReportFromWeb(false)
} else if (type === 'edit') { } else if (type === 'edit') {
getEventData1() getEventData1()
GetCM_Event_QueryEventType({ eventTypeId: formObj.ID }).then(res => { GetCM_Event_QueryEventType({ eventTypeId: formObj.ID }).then(res => {
res.data.root && form.setFieldsValue({ ...res.data.root }); res.data.root && form.setFieldsValue({ ...res.data.root });
console.log(res.data.root) console.log(res.data.root)
console.log(res.data.root.Editable)
setEditable(res.data.root.Editable) setEditable(res.data.root.Editable)
setReportFromMobile(res.data.root.ReportFromMobile) setReportFromMobile(res.data.root.ReportFromMobile)
setReportFromWeb(res.data.root.ReportFromWeb) setReportFromWeb(res.data.root.ReportFromWeb)
setInputValue({ ...res.data.root }) setInputValue({ ...res.data.root })
setOrder(res.data.root.Order) setOrder(res.data.root.Order)
setType(res.data.root.BusinessType) setType1(res.data.root.BusinessType)
changTable(res.data.root.TableName) changTable(res.data.root.TableName)
}) })
} }
setFlag(0)
}, [visible]) }, [visible])
const getRole = () => { const getRole = () => {
CM_Event_LoadDepartmentAndRoles().then(res => { CM_Event_LoadDepartmentAndRoles().then(res => {
if (res.msg === 'Ok') { if (res.msg === 'Ok') {
...@@ -227,24 +257,24 @@ const AddModal = props => { ...@@ -227,24 +257,24 @@ const AddModal = props => {
} }
const getEventData = () => { const getEventData = () => {
setType('') setType1('')
GetCM_Event_LoadEventTypeTable().then(res => { GetCM_Event_LoadEventTypeTable().then(res => {
if (res.msg === 'Ok') { if (res.msg === 'Ok') {
console.log(res.data) console.log(res.data)
setStandingTable(res.data) setStandingTable(res.data)
let arr = [] let arr = []
res.data.map((item, index)=>{ res.data.map((item, index) => {
arr.push(item.text) arr.push(item.text)
}) })
console.log(arr) console.log(arr)
// setSelectValue(arr[0]) // setSelectValue(arr[0])
changTable(arr[0]) // changTable(arr[0])
} }
}) })
} }
const getEventData1 = () => { const getEventData1 = () => {
setType('') setType1('')
GetCM_Event_LoadEventTypeTable().then(res => { GetCM_Event_LoadEventTypeTable().then(res => {
if (res.msg === 'Ok') { if (res.msg === 'Ok') {
console.log(res.data) console.log(res.data)
...@@ -254,9 +284,11 @@ const AddModal = props => { ...@@ -254,9 +284,11 @@ const AddModal = props => {
} }
const changTable = (value) => { const changTable = (value) => {
setFlag(flag+1)
LoadEventFields({ eventTableName: value, distinctFields: '' }).then(res => { LoadEventFields({ eventTableName: value, distinctFields: '' }).then(res => {
if (res.data.root && res.data.root.length) { if (res.data.root) {
setFiled(formateArrDataA(res.data.root, 'group')) setFiled(formateArrDataA(res.data.root, 'group'))
console.log(filed)
console.log(res.data.root) console.log(res.data.root)
} }
...@@ -400,17 +432,49 @@ const AddModal = props => { ...@@ -400,17 +432,49 @@ const AddModal = props => {
console.log(e.target.checked) console.log(e.target.checked)
setReportFromMobile(e.target.checked) setReportFromMobile(e.target.checked)
setCheckedList4(e.target.checked);//true setCheckedList4(e.target.checked);//true
}
const changeData = () => {
} }
const onOK = prop => { const onOK = prop => {
setIsVisible(false) console.log(prop.isType)
let inputText = { ...inputValue } if (prop.isType == "app") {
inputText[prop.pickItem] = prop.str let title = prop.title
setCheckedList1(prop.checkedList) let selectData = prop.stt
setInputValue(inputText) let ff = prop.filed22
let aa = 0
title.map((item, index) => {
console.log(ff[item])
selectData.map((item1, index1) => {
console.log(item1)
if (ff[item].indexOf(item1) != -1) {
aa = 1
console.log(222)
} else {
aa = 0
}
})
})
console.log(aa)
if (aa == 0) {
notification.error({
message: '提示',
description: '权限角色部门必须都选至少一项',
});
} else {
setIsVisible(false)
let inputText = { ...inputValue }
inputText[prop.pickItem] = prop.str
setCheckedList1(prop.checkedList)
setInputValue(inputText)
}
} else {
setIsVisible(false)
let inputText = { ...inputValue }
inputText[prop.pickItem] = prop.str
setCheckedList1(prop.checkedList)
setInputValue(inputText)
}
}
const oKK = prop =>{
setIsVisible1(false)
} }
const pickFiled = (fileds) => { const pickFiled = (fileds) => {
setTypes('add') setTypes('add')
...@@ -426,19 +490,82 @@ const AddModal = props => { ...@@ -426,19 +490,82 @@ const AddModal = props => {
setPickItem(fileds) setPickItem(fileds)
setIsVisible(true) setIsVisible(true)
} }
const pickFiled2 = (fileds) => {
// setCharacterValue(inputValue[fileds])
// setCheckedList1(inputValue[fileds].split(','))
// setPickItem(fileds)
setIsVisible1(true)
}
const changeText = (e, type) => { const changeText = (e, type) => {
let inputText = { ...inputValue } let inputText = { ...inputValue }
inputText[type] = e.target.value inputText[type] = e.target.value
setInputValue(inputText) setInputValue(inputText)
} }
const prefix = (e) => { const prefix = (e) => {
setPrefixName(changPrefix(e.target.value)) let str = e.target.value
console.log(prefixName) if (typeof (str) != "string") {
form.setFieldsValue({ Code: prefixName }) throw new Error(-1, "\u51fd\u6570makePy\u9700\u8981\u5b57\u7b26\u4e32\u7c7b\u578b\u53c2\u6570!");
}
var arrResult = new Array(); //保存中间结果的数组
for (var i = 0, len = str.length; i < len; i++) {
//获得unicode码
var ch = str.charAt(i);
//检查该unicode码是否在处理范围之内,在则返回该码对映汉字的拼音首字母,不在则调用其它函数处理
arrResult.push(checkCh(ch));
}
// setPrefixName(mkRslt(arrResult))
form.setFieldsValue({ Code: mkRslt(arrResult) })
} }
const changPrefix = (item) => {
let aa = item.slice(0, 2) const checkCh = (ch) => {
return (aa) var uni = ch.charCodeAt(0);
//如果不在汉字处理范围之内,返回原字符,也可以调用自己的处理函数
if (uni > 40869 || uni < 19968) {
return ch;
} //dealWithOthers(ch);
//检查是否是多音字,是按多音字处理,不是就直接在strChineseFirstPY字符串中找对应的首字母
return (oMultiDiff[uni] ? oMultiDiff[uni] : (strChineseFirstPY.charAt(uni - 19968)));
}
const mkRslt = (arr) => {
var arrRslt = [""];
for (var i = 0, len = arr.length; i < len; i++) {
var str = arr[i];
var strlen = str.length;
if (strlen == 1) {
for (var k = 0; k < arrRslt.length; k++) {
arrRslt[k] += str;
console.log(str)
}
} else {
var tmpArr = arrRslt.slice(0);
arrRslt = [];
for (k = 0; k < strlen; k++) {
//复制一个相同的arrRslt
var tmp = tmpArr.slice(0);
//把当前字符str[k]添加到每个元素末尾
for (var j = 0; j < tmp.length; j++) {
tmp[j] += str.charAt(k);
}
//把复制并修改后的数组连接到arrRslt上
arrRslt = arrRslt.concat(tmp);
}
}
}
return arrRslt;
}
const inputType = (e) => {
setType1(e.target.value)
form.setFieldsValue({ BusinessType: e.target.value })
}
const onCancel =()=>{
setIsVisible(false)
}
const onCancel1 =()=>{
setIsVisible1(false)
} }
return ( return (
<Modal <Modal
...@@ -448,6 +575,7 @@ const AddModal = props => { ...@@ -448,6 +575,7 @@ const AddModal = props => {
destroyOnClose destroyOnClose
okText="确认" okText="确认"
cancelText="取消" cancelText="取消"
maskClosable={false}
{...props} {...props}
onOk={() => onSubmit()} onOk={() => onSubmit()}
// confirmLoading={loading} // confirmLoading={loading}
...@@ -477,7 +605,7 @@ const AddModal = props => { ...@@ -477,7 +605,7 @@ const AddModal = props => {
rules={[ rules={[
{ {
required: true, required: true,
message: '请输入编码前缀', message: '请输入事件名称',
}, },
]} ]}
> >
...@@ -485,7 +613,7 @@ const AddModal = props => { ...@@ -485,7 +613,7 @@ const AddModal = props => {
</Item> </Item>
</Col> </Col>
<Col span={23}> <Col span={23}>
<Item {/* <Item
label="业务类型" label="业务类型"
name="BusinessType" name="BusinessType"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
...@@ -499,10 +627,41 @@ const AddModal = props => { ...@@ -499,10 +627,41 @@ const AddModal = props => {
<Select <Select
style={{ width: '580px' }} style={{ width: '580px' }}
placeholder="选择业务类型" placeholder="选择业务类型"
showSearch
> >
{treeData ? treeData.map((item, index) => { return <Option key={index} value={item}>{item}</Option> }) : ''} {treeData ? treeData.map((item, index) => { return <Option key={index} value={item}>{item}</Option> }) : ''}
</Select> </Select>
</Item> */}
<Item
label="业务类型"
name="BusinessType"
labelCol={{ span: 4 }}
rules={[
{
required: true,
message: '请选择业务类型',
},
]}
>
<div>
<Input
className="ue-editable-select-input"
style={{ width: '580px' }}
onChange={inputType}
value={Type1}
>
</Input>
<Dropdown
placement='bottomRight'
style={{ width: '20rem' }}
overlay={<Menu>
{treeData.length ? treeData.map((item, index) => { return <Menu.Item onClick={() => { setType1(item); form.setFieldsValue({ BusinessType: item }) }} style={{ width: '580px', marginLeft: '-8px' }} key={index}>{item}</Menu.Item> }) : ''}
</Menu>} >
<div className={styles.linkDrowp} onClick={e => e.preventDefault()}>
<DownOutlined style={{ fontSize: '12px', color: 'rgba(0, 0, 0, 0.25)' }} />
</div>
</Dropdown>
</div>
</Item> </Item>
</Col> </Col>
<Col span={23}> <Col span={23}>
...@@ -515,14 +674,14 @@ const AddModal = props => { ...@@ -515,14 +674,14 @@ const AddModal = props => {
style={{ width: '580px' }} style={{ width: '580px' }}
placeholder="选择事件主表" placeholder="选择事件主表"
onChange={changTable} onChange={changTable}
defaultValue={selectValue} // defaultValue={selectValue}
> >
{standingTable ? standingTable.map((item, index) => { return <Option key={index} value={item.text}>{item.text}</Option> }) : ''} {standingTable ? standingTable.map((item, index) => { return <Option key={index} value={item.text}>{item.text}</Option> }) : ''}
</Select> </Select>
</Item> </Item>
</Col> </Col>
<Col span={4}> <Col span={4}>
<Item></Item> <Item></Item>
</Col> </Col>
<Col span={20}> <Col span={20}>
<Item><span>客户端上报和配单(需配置事件权限、受理流程)</span></Item> <Item><span>客户端上报和配单(需配置事件权限、受理流程)</span></Item>
...@@ -554,10 +713,10 @@ const AddModal = props => { ...@@ -554,10 +713,10 @@ const AddModal = props => {
<Item <Item
name="ReportFromWeb" name="ReportFromWeb"
> >
<Checkbox onChange={onChange3} checked={ReportFromWeb} >前端</Checkbox> <Checkbox onChange={onChange3} checked={ReportFromWeb}>前端</Checkbox>
</Item> </Item>
</Col> </Col>
<Col span={16}> <Col span={16}>
<Item <Item
name="ReportFromMobile" name="ReportFromMobile"
> >
...@@ -582,15 +741,9 @@ const AddModal = props => { ...@@ -582,15 +741,9 @@ const AddModal = props => {
label="上报方式" label="上报方式"
name="CreateMode" name="CreateMode"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
rules={[
{
required: true,
message: '请选择上报方式',
},
]}
> >
<Radio.Group onChange={onChange2} value={value}> <Radio.Group onChange={onChange2} value={value} defaultValue={chee}>
<Radio value={0} style={{ marginLeft: '5px' }}>仅上报</Radio> <Radio value={0} style={{ marginLeft: '5px' }}>仅上报</Radio>
<Radio value={1} style={{ marginLeft: '185px' }}>工单分派</Radio> <Radio value={1} style={{ marginLeft: '185px' }}>工单分派</Radio>
</Radio.Group> </Radio.Group>
...@@ -601,6 +754,16 @@ const AddModal = props => { ...@@ -601,6 +754,16 @@ const AddModal = props => {
label="摘要字段" label="摘要字段"
name="SummaryFields" name="SummaryFields"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
rules={[
{
validator: (rule, value) => {
if (inputValue.SummaryFields == "") {
return Promise.reject('摘要字段必选')
}
return Promise.resolve();
}
}
]}
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择摘要字段" onChange={(e) => changeText(e, 'SummaryFields')} value={inputValue.SummaryFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择摘要字段" onChange={(e) => changeText(e, 'SummaryFields')} value={inputValue.SummaryFields} allowClear />
...@@ -614,6 +777,16 @@ const AddModal = props => { ...@@ -614,6 +777,16 @@ const AddModal = props => {
label="上报字段" label="上报字段"
name="ReportFields" name="ReportFields"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
rules={[
{
validator: (rule, value) => {
if (inputValue.ReportFields == "") {
return Promise.reject('上报字段必选')
}
return Promise.resolve();
}
},
]}
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择上报字段" onChange={(e) => changeText(e, 'ReportFields')} value={inputValue.ReportFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择上报字段" onChange={(e) => changeText(e, 'ReportFields')} value={inputValue.ReportFields} allowClear />
...@@ -626,6 +799,16 @@ const AddModal = props => { ...@@ -626,6 +799,16 @@ const AddModal = props => {
label="显示字段" label="显示字段"
name="DisplayFields" name="DisplayFields"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
rules={[
{
validator: (rule, value) => {
if (inputValue.DisplayFields == "") {
return Promise.reject('显示字段必选')
}
return Promise.resolve();
}
},
]}
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择显示字段" onChange={(e) => changeText(e, 'DisplayFields')} value={inputValue.DisplayFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择显示字段" onChange={(e) => changeText(e, 'DisplayFields')} value={inputValue.DisplayFields} allowClear />
...@@ -638,6 +821,16 @@ const AddModal = props => { ...@@ -638,6 +821,16 @@ const AddModal = props => {
label="编辑字段" label="编辑字段"
name="EditableFields" name="EditableFields"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
rules={[
{
validator: (rule, value) => {
if (inputValue.EditableFields == "") {
return Promise.reject('编辑字段必选')
}
return Promise.resolve();
}
},
]}
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择编辑字段" onChange={(e) => changeText(e, 'EditableFields')} value={inputValue.EditableFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择编辑字段" onChange={(e) => changeText(e, 'EditableFields')} value={inputValue.EditableFields} allowClear />
...@@ -713,7 +906,7 @@ const AddModal = props => { ...@@ -713,7 +906,7 @@ const AddModal = props => {
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择关联字段" onChange={(e) => changeText(e, 'RelatedEventFields')} value={inputValue.RelatedEventFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择关联字段" onChange={(e) => changeText(e, 'RelatedEventFields')} value={inputValue.RelatedEventFields} allowClear />
<Button type="dashed" onClick={() => pickFiled('RelatedEventFields')} icon={<PlusOutlined/>} style={{ marginLeft: '0.5rem', height: '100%', width: '4rem' }} /> <Button type="dashed" onClick={() => pickFiled('RelatedEventFields')} icon={<PlusOutlined />} style={{ marginLeft: '0.5rem', height: '100%', width: '4rem' }} />
</div> </div>
</Item> </Item>
</Col> </Col>
...@@ -734,7 +927,7 @@ const AddModal = props => { ...@@ -734,7 +927,7 @@ const AddModal = props => {
> >
<div className={styles.filed_listItem} > <div className={styles.filed_listItem} >
<Input style={{ width: '500px' }} placeholder="请选择图片表达" onChange={(e) => changeText(e, 'pictureFields')} value={inputValue.pictureFields} allowClear /> <Input style={{ width: '500px' }} placeholder="请选择图片表达" onChange={(e) => changeText(e, 'pictureFields')} value={inputValue.pictureFields} allowClear />
<Button type="dashed" onClick={() => pickFiled('pictureFields')} icon={<PlusOutlined />} style={{ marginLeft: '0.5rem', height: '100%', width: '4rem' }} /> <Button type="dashed" onClick={() => pickFiled2('pictureFields')} icon={<PlusOutlined />} style={{ marginLeft: '0.5rem', height: '100%', width: '4rem' }} />
</div> </div>
</Item> </Item>
</Col> </Col>
...@@ -742,17 +935,22 @@ const AddModal = props => { ...@@ -742,17 +935,22 @@ const AddModal = props => {
</Form> </Form>
<ChangeAdd <ChangeAdd
visible={isVisible} visible={isVisible}
onCancel={() => setIsVisible(false)} onCancel={onCancel}
callBackSubmit={onOK} callBackSubmit={onOK}
newCheckedList={checkedList1} newCheckedList={checkedList1}
isType={types} isType={types}
filed={filed} filed={filed}
flag={flag}
filed1={filed1} filed1={filed1}
pickItem={pickItem} pickItem={pickItem}
characterValue={characterValue} characterValue={characterValue}
formObj={formObj} formObj={formObj}
/> />
<ChangeImage
visible={isVisible1}
callBackSubmit={oKK}
onCancel={onCancel1}
/>
</Modal> </Modal>
); );
}; };
......
...@@ -96,12 +96,18 @@ const AddViewModal = props => { ...@@ -96,12 +96,18 @@ const AddViewModal = props => {
onOk={() => onSubmit()} onOk={() => onSubmit()}
> >
<Form form={form} labelCol={{ span: 7 }} style={{ height: '23rem', overflowY: 'scroll' }}> <Form form={form} labelCol={{ span: 7 }} style={{ height: '24rem', overflowY: 'scroll' }}>
<Row> <Row>
<Col span={23}> <Col span={23}>
<Item <Item
label="前端标签" label="前端标签"
name="WebLabel" name="WebLabel"
rules={[
{
required: true,
message: '请输入前端标签',
},
]}
> >
<Input style={{ width: '17rem' }} placeholder="请输入前端标签" /> <Input style={{ width: '17rem' }} placeholder="请输入前端标签" />
</Item> </Item>
...@@ -110,6 +116,12 @@ const AddViewModal = props => { ...@@ -110,6 +116,12 @@ const AddViewModal = props => {
<Item <Item
label="前端视图" label="前端视图"
name="WebPage" name="WebPage"
rules={[
{
required: true,
message: '请输入前端视图',
},
]}
> >
<Input style={{ width: '17rem' }} placeholder="请输入前端视图" /> <Input style={{ width: '17rem' }} placeholder="请输入前端视图" />
</Item> </Item>
...@@ -119,7 +131,7 @@ const AddViewModal = props => { ...@@ -119,7 +131,7 @@ const AddViewModal = props => {
label="视图参数" label="视图参数"
name="WebParam" name="WebParam"
> >
<Input style={{ width: '17rem' }} placeholder="请输入视图参数" /> <TextArea style={{ width: '17rem' }} placeholder="请输入视图参数" />
</Item> </Item>
</Col> </Col>
<Col span={23}> <Col span={23}>
......
import React, { useState, useEffect, useCallback, useRef } from 'react';
import { Form, Modal, Space, Divider, Radio, Checkbox, notification } from 'antd';
import styles from './incident.less';
const ChangeImageModal = props => {
const { callBackSubmit = () => { }, isType, pickItem, visible, filed, filed1, characterValue, newCheckedList } = props;
const onSubmit = () =>{
callBackSubmit({ });
}
return (
<Modal
visible={visible}
title='点击选择图片文件'
bodyStyle={{ width: '100%', minHeight: '100px' }}
style={{ top: '10px' }}
width="700px"
destroyOnClose
okText="确认"
cancelText="取消"
{...props}
onOk={onSubmit}
>
</Modal>
)
}
export default ChangeImageModal;
\ No newline at end of file
...@@ -24,6 +24,7 @@ const ProcessModal = props => { ...@@ -24,6 +24,7 @@ const ProcessModal = props => {
dataIndex: 'FlowName', dataIndex: 'FlowName',
key: 'FlowName', key: 'FlowName',
width: 150, width: 150,
ellipsis: true,
render: item => ( render: item => (
<div <div
ref={r => { ref={r => {
...@@ -39,7 +40,7 @@ const ProcessModal = props => { ...@@ -39,7 +40,7 @@ const ProcessModal = props => {
title: '受理权限', title: '受理权限',
dataIndex: 'FlowRoles', dataIndex: 'FlowRoles',
key: 'FlowRoles', key: 'FlowRoles',
width: 500, width: 400,
ellipsis: true, ellipsis: true,
render: item => ( render: item => (
<div <div
...@@ -144,7 +145,7 @@ const ProcessModal = props => { ...@@ -144,7 +145,7 @@ const ProcessModal = props => {
width="800px" width="800px"
onCancel={onCancel} onCancel={onCancel}
onOk={onSumbit} onOk={onSumbit}
> >
<Tooltip title="添加事件类型"> <Tooltip title="添加事件类型">
<PlusSquareFilled <PlusSquareFilled
...@@ -153,6 +154,7 @@ const ProcessModal = props => { ...@@ -153,6 +154,7 @@ const ProcessModal = props => {
color: '#1890FF', color: '#1890FF',
fontSize: '25px', fontSize: '25px',
verticalAlign: 'middle', verticalAlign: 'middle',
marginLeft: '25px'
}} }}
/> />
</Tooltip> </Tooltip>
...@@ -160,6 +162,7 @@ const ProcessModal = props => { ...@@ -160,6 +162,7 @@ const ProcessModal = props => {
size="small" size="small"
rowKey='ID' rowKey='ID'
bordered bordered
style={{ height: '15rem', overflowY: 'scroll', width: '700px', marginLeft: '25px' }}
onRow={record => { onRow={record => {
return { return {
onDoubleClick: event => {event.stopPropagation(); editEventType(record)}, //双击 onDoubleClick: event => {event.stopPropagation(); editEventType(record)}, //双击
...@@ -168,7 +171,6 @@ const ProcessModal = props => { ...@@ -168,7 +171,6 @@ const ProcessModal = props => {
columns={columns} columns={columns}
dataSource={tableData} dataSource={tableData}
pagination={false} pagination={false}
scroll={{ x: 'max-content' }}
/> />
<AddFlowsModal <AddFlowsModal
visible={addVisible} visible={addVisible}
......
...@@ -45,7 +45,7 @@ const SortModal = props => { ...@@ -45,7 +45,7 @@ const SortModal = props => {
okText="确认" okText="确认"
cancelText="取消" cancelText="取消"
> >
<div className={styles.cardContent}> <div className={styles.cardContent} style={{width: '26rem', marginLeft:'24px'}}>
<div className={styles.doctorTable}> <div className={styles.doctorTable}>
<table> <table>
<thead> <thead>
......
...@@ -22,6 +22,7 @@ const ViewModal = props => { ...@@ -22,6 +22,7 @@ const ViewModal = props => {
dataIndex: 'WebLabel', dataIndex: 'WebLabel',
key: 'WebLabel', key: 'WebLabel',
width: 150, width: 150,
ellipsis: true,
render: item => ( render: item => (
<div <div
ref={r => { ref={r => {
...@@ -119,7 +120,7 @@ const ViewModal = props => { ...@@ -119,7 +120,7 @@ const ViewModal = props => {
title: '操作', title: '操作',
key: 'action', key: 'action',
aligin: 'center', aligin: 'center',
width: 150, width: 50,
render: record => ( render: record => (
<Space size="middle"> <Space size="middle">
...@@ -204,7 +205,7 @@ const ViewModal = props => { ...@@ -204,7 +205,7 @@ const ViewModal = props => {
title={`${title2}的辅助视图`} title={`${title2}的辅助视图`}
visible={visible} visible={visible}
onCancel={onCancel} onCancel={onCancel}
width="1300px" width="1200px"
onOk={onSumbit} onOk={onSumbit}
> >
<Tooltip title="添加"> <Tooltip title="添加">
...@@ -214,6 +215,7 @@ const ViewModal = props => { ...@@ -214,6 +215,7 @@ const ViewModal = props => {
color: '#1890FF', color: '#1890FF',
fontSize: '25px', fontSize: '25px',
verticalAlign: 'middle', verticalAlign: 'middle',
marginLeft: '25px'
}} }}
/> />
</Tooltip> </Tooltip>
...@@ -227,6 +229,7 @@ const ViewModal = props => { ...@@ -227,6 +229,7 @@ const ViewModal = props => {
}; };
}} }}
columns={columns} columns={columns}
style={{ height: '15rem', overflowY: 'scroll', marginLeft: '25px', marginRight: '25px' }}
dataSource={tableData} dataSource={tableData}
pagination={false} pagination={false}
scroll={{ x: 'max-content'}} scroll={{ x: 'max-content'}}
......
import React, { useState, useEffect, useCallback, useRef } from 'react'; import React, { useState, useEffect, useCallback, useRef } from 'react';
import { Form, Modal, Space, Divider, Radio, Checkbox } from 'antd'; import { Form, Modal, Space, Divider, Radio, Checkbox, notification } from 'antd';
import styles from './incident.less'; import styles from './incident.less';
import Sortable from 'sortablejs'; import Sortable from 'sortablejs';
const CheckboxGroup = Checkbox.Group; const CheckboxGroup = Checkbox.Group;
const AddModal = props => { const AddModal = props => {
const { callBackSubmit = () => { }, isType, pickItem, visible, filed, filed1, characterValue, newCheckedList } = props; const { callBackSubmit = () => { }, isType, pickItem, visible, filed, filed1, characterValue, newCheckedList, flag } = props;
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
const [value, setValue] = useState(''); const [value, setValue] = useState('');
const [checkValue, setCheckValue] = useState([]); const [checkValue, setCheckValue] = useState([]);
...@@ -41,7 +41,7 @@ const AddModal = props => { ...@@ -41,7 +41,7 @@ const AddModal = props => {
}; };
const onSubmit = () => { const onSubmit = () => {
isType === 'rule' ? callBackSubmit(`${value === '无' || value === '' ? '' : value + ','}${checkValue.join(',')}`) : callBackSubmit({ checkedList, str: selectData.join(","), pickItem }); isType === 'rule' ? callBackSubmit(`${value === '无' || value === '' ? '' : value + ','}${checkValue.join(',')}`) : callBackSubmit({ checkedList, str: selectData.join(","), pickItem, stt:selectData, title:title, filed22:filed1, isType:isType });
} }
const onCheckAllChange = e => { const onCheckAllChange = e => {
const indeterminateArr = [...indeterminate] const indeterminateArr = [...indeterminate]
...@@ -67,7 +67,8 @@ const AddModal = props => { ...@@ -67,7 +67,8 @@ const AddModal = props => {
} }
useEffect(() => { useEffect(() => {
if (isType != ''&&isType==='add') { if (isType != '' && isType === 'add') {
console.log(filed)
let arr = Object.keys(filed) let arr = Object.keys(filed)
console.log(arr, 'arr') console.log(arr, 'arr')
setTitle(arr) setTitle(arr)
...@@ -91,7 +92,7 @@ const AddModal = props => { ...@@ -91,7 +92,7 @@ const AddModal = props => {
let newArr = characterValue.length ? characterValue.split(",") : [] let newArr = characterValue.length ? characterValue.split(",") : []
setSelectData(newArr) setSelectData(newArr)
draftSort() draftSort()
}else if(isType==='app'){ } else if (isType === 'app') {
console.log(filed1) console.log(filed1)
let arr = Object.keys(filed1) let arr = Object.keys(filed1)
console.log(arr, 'arr') console.log(arr, 'arr')
...@@ -138,128 +139,149 @@ const AddModal = props => { ...@@ -138,128 +139,149 @@ const AddModal = props => {
} }
} }
if(isType != 'app'){ if (isType != 'app') {
return ( return (
<Modal <Modal
title={isType === 'app' ? '部门或角色' : '字段集选择'} title='字段集选择'
bodyStyle={{ width: '100%', minHeight: '100px' }} bodyStyle={{ width: '100%', minHeight: '100px' }}
style={{ top: '10px' }} style={{ top: '10px' }}
width="700px" width="700px"
destroyOnClose destroyOnClose
centered={true} centered={true}
maskClosable={false} maskClosable={false}
onOk={onSubmit} onOk={onSubmit}
okText="确认" okText="确认"
cancelText="取消" cancelText="取消"
{...props} {...props}
onOk={() => onSubmit()} forceRender={true}
forceRender={true} getContainer={false}
getContainer={false} >
> {visible && (
{visible && ( <div className={styles.listCard}>
<div className={styles.listCard}> <div className={styles.cardItem} style={{ borderRight: '1px solid #99bbe8' }}>
<div className={styles.cardItem} style={{ borderRight: '1px solid #99bbe8' }}> <Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>待选字段列表</Divider>
<Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>待选字段列表</Divider>
<div className={styles.cardContent}> {flag === 0 ?
{title.map((item, index) => { <>
return <div className={styles.cardItemData} key={index}> <div className={styles.cardContent}>
<Divider orientation="left" style={{ margin: '0 0 10px 0', color: '#15428b', borderTopColor: '#99bbe8' }}>{item} <Checkbox indeterminate={indeterminate[index]} onChange={onCheckAllChange} index={index} checkvalue={filed[item]} checked={checkAll[index]}> </Checkbox></Divider> <span style={{color: 'red',fontSize: '1.5rem', marginLeft: '25px'}}>请先选择事件主表</span>
<CheckboxGroup options={filed[item]} value={checkedList[index]} onChange={(e) => onChangeList(e, index, item)} /></div> </div>
})} </>:
<>
{JSON.stringify(filed) == "{}" ?
<>
<div className={styles.cardContent}>
<span style={{color: 'red',fontSize: '1.5rem', marginLeft: '25px'}}>表字段缺失暂无数据</span>
</div>
</>
:
<>
<div className={styles.cardContent}>
{title.map((item, index) => {
return <div className={styles.cardItemData} key={index}>
<Divider orientation="left" style={{ margin: '0 0 10px 0', color: '#15428b', borderTopColor: '#99bbe8' }}>{item} <Checkbox indeterminate={indeterminate[index]} onChange={onCheckAllChange} index={index} checkvalue={filed[item]} checked={checkAll[index]}> </Checkbox></Divider>
<CheckboxGroup options={filed[item]} value={checkedList[index]} onChange={(e) => onChangeList(e, index, item)} /></div>
})}
</div>
</>
}
</>
}
</div> </div>
</div> <div className={styles.cardItem}>
<div className={styles.cardItem}> <Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>已选字段列表</Divider>
<Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>已选字段列表</Divider> <div className={styles.cardContent}>
<div className={styles.cardContent}> <div className={styles.doctorTable}>
<div className={styles.doctorTable}> <table>
<table> <thead>
<thead> <tr>
<tr> <td>字段名</td>
<td>字段名</td> </tr>
</tr> </thead>
</thead> <tbody id='doctor-drag-items'>
<tbody id='doctor-drag-items'> {selectData && selectData.length > 0 ?
{selectData && selectData.length > 0 ? selectData.map((item, index) => {
selectData.map((item, index) => { return <tr drag-id={item} key={index} style={{ cursor: 'move' }}>
return <tr drag-id={item} key={index} style={{ cursor: 'move' }}> <td><span title={item}>{item}</span></td>
<td><span title={item}>{item}</span></td> </tr>
</tr> })
}) : <tr><td colSpan='10' style={{ textAlign: 'center' }}>暂无数据</td></tr>
: <tr><td colSpan='10' style={{ textAlign: 'center' }}>暂无数据</td></tr> }
} </tbody>
</tbody> </table>
</table> </div>
</div>
</div>
</div> </div>
</div> </div>
</div> )
)
} }
</Modal> </Modal>
); );
}else if(isType ==='app'){ } else if (isType === 'app') {
return ( return (
<Modal <Modal
title={isType === 'app' ? '部门或角色' : '字段集选择'} title= '部门或角色'
bodyStyle={{ width: '100%', minHeight: '100px' }} bodyStyle={{ width: '100%', minHeight: '100px' }}
style={{ top: '10px' }} style={{ top: '10px' }}
width="700px" width="700px"
destroyOnClose destroyOnClose
centered={true} centered={true}
maskClosable={false} maskClosable={false}
onOk={onSubmit} onOk={onSubmit}
okText="确认" okText="确认"
cancelText="取消" cancelText="取消"
{...props} {...props}
onOk={() => onSubmit()} forceRender={true}
forceRender={true} getContainer={false}
getContainer={false} >
> {visible && (
{visible && ( <div className={styles.listCard}>
<div className={styles.listCard}> <div className={styles.cardItem} style={{ borderRight: '1px solid #99bbe8' }}>
<div className={styles.cardItem} style={{ borderRight: '1px solid #99bbe8' }}> <Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>待选字段列表</Divider>
<Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>待选字段列表</Divider> <div className={styles.cardContent}>
<div className={styles.cardContent}> {title.map((item, index) => {
{title.map((item, index) => { return <div className={styles.cardItemData} key={index}>
return <div className={styles.cardItemData} key={index}> <Divider orientation="left" style={{ margin: '0 0 10px 0', color: '#15428b', borderTopColor: '#99bbe8' }}>{item} <Checkbox indeterminate={indeterminate[index]} onChange={onCheckAllChange} index={index} checkvalue={filed1[item]} checked={checkAll[index]}> </Checkbox></Divider>
<Divider orientation="left" style={{ margin: '0 0 10px 0', color: '#15428b', borderTopColor: '#99bbe8' }}>{item} <Checkbox indeterminate={indeterminate[index]} onChange={onCheckAllChange} index={index} checkvalue={filed1[item]} checked={checkAll[index]}> </Checkbox></Divider> <CheckboxGroup options={filed1[item]} value={checkedList[index]} onChange={(e) => onChangeList1(e, index, item)} /></div>
<CheckboxGroup options={filed1[item]} value={checkedList[index]} onChange={(e) => onChangeList1(e, index, item)} /></div> })}
})} </div>
</div> </div>
</div> <div className={styles.cardItem}>
<div className={styles.cardItem}> <Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>已选字段列表</Divider>
<Divider orientation="left" style={{ margin: '0 0 10px 0', backgroundColor: '#dfe8f6' }}>已选字段列表</Divider> <div className={styles.cardContent}>
<div className={styles.cardContent}> <div className={styles.doctorTable}>
<div className={styles.doctorTable}> <table>
<table> <thead>
<thead> <tr>
<tr> <td>字段名</td>
<td>字段名</td> </tr>
</tr> </thead>
</thead> <tbody id='doctor-drag-items'>
<tbody id='doctor-drag-items'> {selectData && selectData.length > 0 ?
{selectData && selectData.length > 0 ? selectData.map((item, index) => {
selectData.map((item, index) => { return <tr drag-id={item} key={index} style={{ cursor: 'move' }}>
return <tr drag-id={item} key={index} style={{ cursor: 'move' }}> <td><span title={item}>{item}</span></td>
<td><span title={item}>{item}</span></td> </tr>
</tr> })
}) : <tr><td colSpan='10' style={{ textAlign: 'center' }}>暂无数据</td></tr>
: <tr><td colSpan='10' style={{ textAlign: 'center' }}>暂无数据</td></tr> }
} </tbody>
</tbody> </table>
</table> </div>
</div>
</div>
</div> </div>
</div> </div>
</div> )
)
} }
</Modal> </Modal>
); );
} }
}; };
export default AddModal; export default AddModal;
\ No newline at end of file
.ant-modal-close-x {
line-height: 35px;
}
.incidentContainer{ .incidentContainer{
.ant-card-body { .ant-card-body {
padding: 12px 24px 24px 24px; padding: 12px 24px 24px 24px;
} }
.linkDrowp{
position: absolute;
top: 0;
left: 93.5%;
width: 1rem;
height: 100%;
display: flex;
align-items: center;
}
.listItem{ .listItem{
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
...@@ -170,7 +183,7 @@ ...@@ -170,7 +183,7 @@
.cardContent{ .cardContent{
height: 30rem; height: 30rem;
overflow-y: scroll; overflow-y: scroll;
width: 19.5rem; width: 19rem;
} }
.cardItemData{ .cardItemData{
padding: 1rem; padding: 1rem;
......
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