267e6de402359014f8dbc293d4c75e7d.php 112 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208
  1. <?php /*a:10:{s:81:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_main.html";i:1724841755;s:59:"D:\phpstudy_pro\WWW\caiping\app\admin\view\common\base.html";i:1723541257;s:82:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_first.html";i:1724910955;s:81:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_user.html";i:1724763756;s:83:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_report.html";i:1724824488;s:84:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_contact.html";i:1725069707;s:88:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\project_comments.html";i:1723541257;s:83:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\edit_record.html";i:1724763756;s:91:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\cost_proprietor\project_appointment.html";i:1724764538;s:72:"D:\phpstudy_pro\WWW\caiping\app\admin\view\project\projectlog\index.html";i:1723541257;}*/ ?>
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="360-site-verification" content="a7c876fae8b6e3175a52ea9f19543f51" />
  9. <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=0">
  10. <script src="/static/dist/xm-select.js"></script>
  11. <link rel="mobile-prefetch" href=""/>
  12. <title><?php echo get_system_config('web','admin_title'); ?></title>
  13. <meta name="keywords" content="<?php echo get_system_config('web','keywords'); ?>"/>
  14. <meta name="description" content="<?php echo get_system_config('web','desc'); ?>"/>
  15. <link rel="stylesheet" href="/static/assets/gougu/css/gougu.css?v=<?php echo get_system_config('web','version'); ?>" media="all">
  16. <style>
  17. .footer{
  18. display: none;
  19. }
  20. .heading th {
  21. text-align: center;
  22. }
  23. .form td {
  24. text-align: center;
  25. }
  26. /* 日志 */
  27. .log_top {
  28. padding-left: 1vw;
  29. }
  30. .log_top span {
  31. margin: 0 0.5vw;
  32. }
  33. /* 1,1,1 */
  34. .log_commentary {
  35. color: rgb(0, 176, 80);
  36. }
  37. .log_company {
  38. color: rgb(255, 33, 0);
  39. }
  40. .log_content {
  41. width: fit-content;
  42. margin: 0.3vw 1.5vw 1vw 1.5vw;
  43. padding: 0.5vw 0vw;
  44. text-indent: 1.2em;
  45. line-height: 2.1vh;
  46. background-color: rgb(255, 255, 255);
  47. border-radius: 0.5vw;
  48. box-shadow: 0.19vw 0.16vw 0.4vw 0.03vw rgba(0, 0, 0, 0.13);
  49. }
  50. .log_content_color {
  51. /* background-color: rgb(250,250,250); */
  52. }
  53. .log_content_img img {
  54. /* width: 10%; */
  55. border-radius: 0.5vw;
  56. margin: 0.3vw 0;
  57. padding-right: 18px;
  58. padding-bottom: 7px;
  59. padding-left: 2px;
  60. }
  61. .log_item_top {
  62. height: 70%;
  63. overflow: scroll;
  64. }
  65. .log_item_top {
  66. height: 60vh;
  67. /* background-color: rgb(255, 255, 255); */
  68. }
  69. .log_item_bottom {
  70. display: flex;
  71. /* height: 17vh; */
  72. /* border-top: 1px solid #eee; */
  73. margin: 0 1.5vw;
  74. /* background-color: rgb(250,250,250); */
  75. }
  76. .log_input input {
  77. width: 55vw;
  78. height: 10vh;
  79. border: #eee 1px solid;
  80. }
  81. .log_bottom_img {
  82. /* height: 5vh; */
  83. }
  84. .log_bottom_img img {
  85. height: 4vw;
  86. width: 6vw;
  87. border-radius: 0.5vw;
  88. margin: 0.5vw 0vw 0.5vw 0.3vw;
  89. }
  90. .log_bottom_left {
  91. width: 100%;
  92. margin-top: 1.5vh;
  93. }
  94. .log_bottom_right {
  95. width: 5%;
  96. }
  97. /* 上传图片 */
  98. .layui-upload-drag-self {
  99. background-color: #fbfdff;
  100. border: 1px dashed #c0ccda;
  101. border-radius: 6px;
  102. box-sizing: border-box;
  103. line-height: 4vw;
  104. vertical-align: top;
  105. display: inline-block;
  106. text-align: center;
  107. cursor: pointer;
  108. outline: 0;
  109. margin-right: 13px;
  110. float: left;
  111. }
  112. .layui-input-inlines-self {
  113. position: relative;
  114. margin-left: 90px;
  115. min-height: 36px;
  116. text-align: left;
  117. }
  118. .layui-upload-drag-self .layui-icon {
  119. font-size: 28px;
  120. color: #8c939d
  121. }
  122. .layui-upload-drag-self .img {
  123. position: relative;
  124. height: 148px;
  125. width: 148px;
  126. }
  127. .layui-upload-img {
  128. width: 148px;
  129. height: 148px;
  130. border-radius: 6px;
  131. margin-top: -3px;
  132. margin-left: -2px;
  133. }
  134. .handle {
  135. position: absolute;
  136. width: 148px;
  137. height: 100%;
  138. z-index: 100;
  139. border-radius: 6px;
  140. top: 0;
  141. background: rgba(59, 60, 61, 0.6);
  142. text-align: center;
  143. }
  144. .handle .icon-myself {
  145. z-index: 999;
  146. transition: all .3s;
  147. cursor: pointer;
  148. font-size: 25px;
  149. width: 25px;
  150. color: rgba(255, 255, 255, 0.91);
  151. margin: 0 4px;
  152. }
  153. .log_textarea {
  154. width: 89vw;
  155. height: 8vh;
  156. padding: 0.5vw;
  157. /* margin-right: 2vw; */
  158. margin: 1vw;
  159. }
  160. .log_button_img {
  161. width: 2vw;
  162. }
  163. .log_card {
  164. border: none !important;
  165. }
  166. /* 点击图片放大 */
  167. .content_img img {
  168. max-width: 100%;
  169. cursor: pointer;
  170. }
  171. .overlay {
  172. display: none;
  173. position: fixed;
  174. top: 0;
  175. left: 0;
  176. width: 100%;
  177. height: 100%;
  178. background-color: rgba(0, 0, 0, 0.7);
  179. justify-content: center;
  180. z-index: 1;
  181. }
  182. .overlay img {
  183. margin-top: 4%;
  184. max-width: 90%;
  185. max-height: 90%;
  186. object-fit: contain;
  187. }
  188. .p-4 {
  189. background-color: rgb(255, 255, 255);
  190. }
  191. /*表格*/
  192. #tabniubi {
  193. width: 100%;
  194. margin: 10px 0;
  195. background-color: #fff;
  196. color: #5f5f5f;
  197. }
  198. #tabniubi th {
  199. padding: 9px 15px;
  200. min-height: 20px;
  201. height: 40px !important;
  202. text-align: center;
  203. /* font-size: 14px; */
  204. border-width: 1px;
  205. border-style: solid;
  206. border-color: #e2e2e2;
  207. font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;
  208. }
  209. #tabniubi tr:first-child {
  210. padding: 0;
  211. min-height: 0;
  212. line-height: 0;
  213. border-width: 0;
  214. border-style: none;
  215. border-color: #fff;
  216. font-size: 0;
  217. }
  218. #tabniubi tr:first-child th {
  219. padding: 0;
  220. min-height: 0;
  221. line-height: 0;
  222. border-width: 0;
  223. border-style: none;
  224. border-color: #fff;
  225. font-size: 0;
  226. }
  227. .form-title {
  228. background-color: rgb(241, 241, 241);
  229. color: rgb(95, 95, 95);
  230. border-color: rgb(241, 241, 241);
  231. font-weight: 600;
  232. }
  233. /* .fujianimg img {
  234. width: 5vw;
  235. height: 5vh;
  236. } */
  237. .forleft {
  238. text-align: left !important;
  239. }
  240. /* .forright{
  241. text-align:right !important;
  242. } */
  243. .layui-form-select dl dd.layui-this {
  244. background-color: #f8f8f8;
  245. color: rgb(23, 145, 233);
  246. font-weight: 700;
  247. }
  248. .layui-input, .layui-textarea {
  249. /* padding-left: 3.75vw; */
  250. color: #5f5f5f;
  251. }
  252. .upimg {
  253. width: 250px;
  254. height: 250px;
  255. }
  256. /* .fujianimg img {
  257. height: 5.5vh;
  258. } */
  259. .filelist{
  260. width: 100%;
  261. overflow: auto;
  262. justify-content:flex-start;
  263. align-content: space-between;
  264. flex-direction: column-reverse;
  265. flex-wrap: wrap;
  266. display: flex;
  267. }
  268. .filelist li{
  269. padding: 0.5vw 0.8vw 0.5vw 0.8vw;
  270. white-space: nowrap;
  271. overflow: hidden;
  272. text-overflow: ellipsis;
  273. display: inline-block;
  274. border-right: 1px solid #e2e2e2;
  275. float: left;
  276. font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;
  277. }
  278. .filelist p{
  279. margin: 3px 0 5px 0;
  280. width: 7vw;
  281. overflow: hidden;
  282. text-overflow: ellipsis;
  283. text-align: center;
  284. font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;
  285. }
  286. #filesBox2 li{
  287. padding: 0.5vw 0.8vw 0.5vw 0.8vw;
  288. white-space: nowrap;
  289. overflow: hidden;
  290. text-overflow: ellipsis;
  291. display: inline-block;
  292. border-right: 1px solid #e2e2e2;
  293. float: left;
  294. font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;
  295. }
  296. /* 倒计时 */
  297. .countdown {
  298. height: 8.5vh;
  299. width: 6.5vw;
  300. font-size: 1vw;
  301. text-align: center;
  302. border: 1px solid #eee;
  303. }
  304. .countdown-top {
  305. height: 3.5vh;
  306. line-height: 3.5vh;
  307. border-bottom: 1px solid #eee;
  308. color: #fff;
  309. background-color: rgb(23, 145, 233);
  310. border-bottom: 1px solid rgb(23, 145, 233);
  311. font-size: 0.95vw;
  312. padding: 0;
  313. margin: 0;
  314. }
  315. .countdown-bottom {
  316. height: 5vh;
  317. line-height: 5vh;
  318. padding: 0;
  319. margin: 0;
  320. background-color: #fff;
  321. }
  322. /* 项目名称下面的字体变大 */
  323. .ziti{
  324. font-size: 1vw;
  325. }
  326. </style>
  327. </head>
  328. <body class="main-body">
  329. <!-- 主体 -->
  330. <div class="layui-form p-4">
  331. <div class="layui-row layui-col-space12">
  332. <div class="layui-col-md10" style="padding: 0;">
  333. <div class="layui-col-md12" style="padding: 8px;">
  334. <h1><?php echo htmlentities($detail['project_name']); ?></h1>
  335. </div>
  336. <div class="layui-col-md3" style="padding: 8px;font-size:1.1vw;">
  337. <?php echo htmlentities($detail['project_num']); ?>
  338. </div>
  339. <div class="layui-col-md3" style="padding: 8px;font-size:1.1vw;">
  340. <?php if($detail['unit_type']==0): ?>
  341. <?php echo htmlentities($detail['review_unit_name']); elseif($detail['unit_type']==2): ?>
  342. <?php echo htmlentities($detail['entrust_unit_name']); ?>
  343. <?php endif; ?>
  344. </div>
  345. <div class="layui-col-md3" style="padding: 8px;font-size:1.1vw;">
  346. <?php if($detail['maker_type']==2): ?>创建时间于:<?php echo htmlentities(date("Y-m-d",!is_numeric($detail['create_time'])? strtotime($detail['create_time']) : $detail['create_time'])); else: ?>接收时间于:<?php if($detail['project_receive_time']==0): ?>未接收<?php else: ?><?php echo htmlentities(date("Y-m-d",!is_numeric($detail['project_receive_time'])? strtotime($detail['project_receive_time']) : $detail['project_receive_time'])); ?><?php endif; ?>
  347. <?php endif; ?>
  348. </div>
  349. </div>
  350. <div class="layui-col-md1" style="padding: 0;">
  351. <div class="layui-card countdown">
  352. <div class="countdown-top" style="\font-size:1.1vw;">
  353. <?php if($detail['project_end_time']>time()): ?>剩 余<?php else: ?>逾 期<?php endif; ?>
  354. </div>
  355. <div class="countdown-bottom" style="font-size:1.1vw;">
  356. <?php echo htmlentities($advent_time); ?>
  357. </div>
  358. </div>
  359. </div>
  360. </div>
  361. </div>
  362. <div class="layui-tab layui-tab-card" lay-filter="test-hash" style="margin: 0;">
  363. <ul class="layui-tab-title">
  364. <li class="layui-this" lay-id="11">项目概览</li>
  365. <?php if($project_five['project_user'] == 1): ?>
  366. <li data-load="" data-id="4">项目人员</li>
  367. <?php endif; if($project_five['project_report'] == 1): ?>
  368. <li data-load="" data-id="3">项目报告</li>
  369. <?php endif; if($project_five['project_contact'] == 1): ?>
  370. <li data-load="" data-id="7">联系函</li>
  371. <?php endif; if($project_five['project_comments'] == 1): ?>
  372. <li lay-id="22" data-id="1">作业日志</li>
  373. <?php endif; if($project_five['project_record'] == 1): ?>
  374. <li data-load="" data-id="2">工作记录</li>
  375. <?php endif; ?>
  376. <li data-load="" data-id="8">预约看现场</li>
  377. <?php if($project_five['project_log'] == 1): ?>
  378. <li data-load="" data-id="5">项目动态</li>
  379. <?php endif; ?>
  380. </ul>
  381. <div class="layui-tab-content">
  382. <!-- 相当于组件-->
  383. <div class="layui-tab-item layui-show">
  384. <style>
  385. .heading th {
  386. text-align: center;
  387. }
  388. .form td {
  389. text-align: center;
  390. }
  391. /* 日志 */
  392. .log_top {
  393. padding-left: 1vw;
  394. }
  395. .log_top span {
  396. margin: 0 0.5vw;
  397. }
  398. /* 1,1,1 */
  399. .log_commentary {
  400. color: rgb(0, 176, 80);
  401. }
  402. .log_company {
  403. color: rgb(255, 33, 0);
  404. }
  405. .log_content {
  406. width: fit-content;
  407. margin: 0.3vw 1.5vw 1vw 1.5vw;
  408. padding: 0.5vw 0vw;
  409. text-indent: 1.2em;
  410. line-height: 2.1vh;
  411. background-color: rgb(255, 255, 255);
  412. border-radius: 0.5vw;
  413. box-shadow: 0.19vw 0.16vw 0.4vw 0.03vw rgba(0, 0, 0, 0.13);
  414. }
  415. .log_content_color {
  416. /* background-color: rgb(250,250,250); */
  417. }
  418. .log_content_img img {
  419. /* width: 10%; */
  420. border-radius: 0.5vw;
  421. margin: 0.3vw 0;
  422. padding-right: 18px;
  423. padding-bottom: 7px;
  424. padding-left: 2px;
  425. }
  426. .log_item_top {
  427. height: 70%;
  428. overflow: scroll;
  429. }
  430. .log_item_top {
  431. height: 60vh;
  432. /* background-color: rgb(255, 255, 255); */
  433. }
  434. .log_item_bottom {
  435. display: flex;
  436. /* height: 17vh; */
  437. /* border-top: 1px solid #eee; */
  438. margin: 0 1.5vw;
  439. /* background-color: rgb(250,250,250); */
  440. }
  441. .log_input input {
  442. width: 55vw;
  443. height: 10vh;
  444. border: #eee 1px solid;
  445. }
  446. .log_bottom_img {
  447. /* height: 5vh; */
  448. }
  449. .log_bottom_img img {
  450. height: 4vw;
  451. width: 6vw;
  452. border-radius: 0.5vw;
  453. margin: 0.5vw 0vw 0.5vw 0.3vw;
  454. }
  455. .log_bottom_left {
  456. width: 100%;
  457. margin-top: 1.5vh;
  458. }
  459. .log_bottom_right {
  460. width: 5%;
  461. }
  462. /* 上传图片 */
  463. .layui-upload-drag-self {
  464. background-color: #fbfdff;
  465. border: 1px dashed #c0ccda;
  466. border-radius: 6px;
  467. box-sizing: border-box;
  468. line-height: 4vw;
  469. vertical-align: top;
  470. display: inline-block;
  471. text-align: center;
  472. cursor: pointer;
  473. outline: 0;
  474. margin-right: 13px;
  475. float: left;
  476. }
  477. .layui-input-inlines-self {
  478. position: relative;
  479. margin-left: 90px;
  480. min-height: 36px;
  481. text-align: left;
  482. }
  483. .layui-upload-drag-self .layui-icon {
  484. font-size: 28px;
  485. color: #8c939d
  486. }
  487. .layui-upload-drag-self .img {
  488. position: relative;
  489. height: 148px;
  490. width: 148px;
  491. }
  492. .layui-upload-img {
  493. width: 148px;
  494. height: 148px;
  495. border-radius: 6px;
  496. margin-top: -3px;
  497. margin-left: -2px;
  498. }
  499. .handle {
  500. position: absolute;
  501. width: 148px;
  502. height: 100%;
  503. z-index: 100;
  504. border-radius: 6px;
  505. top: 0;
  506. background: rgba(59, 60, 61, 0.6);
  507. text-align: center;
  508. }
  509. .handle .icon-myself {
  510. z-index: 999;
  511. transition: all .3s;
  512. cursor: pointer;
  513. font-size: 25px;
  514. width: 25px;
  515. color: rgba(255, 255, 255, 0.91);
  516. margin: 0 4px;
  517. }
  518. .log_textarea {
  519. width: 89vw;
  520. height: 8vh;
  521. padding: 0.5vw;
  522. /* margin-right: 2vw; */
  523. margin: 1vw;
  524. }
  525. .log_button_img {
  526. width: 2vw;
  527. }
  528. .log_card {
  529. border: none !important;
  530. }
  531. /* 点击图片放大 */
  532. .content_img img {
  533. max-width: 100%;
  534. cursor: pointer;
  535. }
  536. .overlay {
  537. display: none;
  538. position: fixed;
  539. top: 0;
  540. left: 0;
  541. width: 100%;
  542. height: 100%;
  543. background-color: rgba(0, 0, 0, 0.7);
  544. justify-content: center;
  545. z-index: 1;
  546. }
  547. .overlay img {
  548. margin-top: 4%;
  549. max-width: 90%;
  550. max-height: 90%;
  551. object-fit: contain;
  552. }
  553. .p-4 {
  554. background-color: rgb(255, 255, 255);
  555. }
  556. /*表格*/
  557. #tabniubi {
  558. width: 100%;
  559. margin: 10px 0;
  560. background-color: #fff;
  561. color: #5f5f5f;
  562. }
  563. #tabniubi th {
  564. padding: 9px 15px;
  565. min-height: 20px;
  566. height: 0px;
  567. line-height:0px;
  568. text-align: center;
  569. /* font-size: 14px; */
  570. border-width: 1px;
  571. border-style: solid;
  572. border-color: #e2e2e2;
  573. font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;
  574. }
  575. #tabniubi tr:first-child {
  576. padding: 0;
  577. min-height: 0;
  578. line-height: 0;
  579. border-width: 0;
  580. border-style: none;
  581. border-color: #fff;
  582. font-size: 0;
  583. }
  584. #tabniubi tr:first-child th {
  585. padding: 0;
  586. min-height: 0;
  587. line-height: 0;
  588. border-width: 0;
  589. border-style: none;
  590. border-color: #fff;
  591. font-size: 0;
  592. height: 0 !important;
  593. }
  594. .form-title {
  595. background-color: rgb(241, 241, 241);
  596. color: rgb(95, 95, 95);
  597. border-color: rgb(241, 241, 241);
  598. font-weight: 600;
  599. }
  600. /* .fujianimg img {
  601. width: 5vw;
  602. height: 5vh;
  603. } */
  604. .forleft {
  605. text-align: left !important;
  606. }
  607. .layui-form-select dl dd.layui-this {
  608. background-color: #f8f8f8;
  609. color: rgb(23, 145, 233);
  610. font-weight: 700;
  611. }
  612. .layui-input, .layui-textarea {
  613. /* padding-left: 3.75vw; */
  614. color: #5f5f5f;
  615. }
  616. .upimg {
  617. width: 250px;
  618. height: 250px;
  619. }
  620. .fujianimg img {
  621. height: 5.5vh;
  622. }
  623. .filelist{
  624. width: 100%;
  625. overflow: auto;
  626. justify-content:flex-start;
  627. align-content: space-between;
  628. flex-direction: column-reverse;
  629. flex-wrap: wrap;
  630. display: flex;
  631. }
  632. .filelist li{
  633. padding: 0.5vw 0.8vw 0.5vw 0.8vw;
  634. white-space: nowrap;
  635. overflow: hidden;
  636. text-overflow: ellipsis;
  637. display: inline-block;
  638. border-right: 1px solid #e2e2e2;
  639. float: left;
  640. }
  641. .filelist p{
  642. margin: 3px 0 5px 0;
  643. width: 11vw;
  644. overflow: hidden;
  645. text-overflow: ellipsis;
  646. text-align: center;
  647. }
  648. #filesBox2 li{
  649. padding: 0.5vw 0.8vw 0.5vw 0.8vw;
  650. white-space: nowrap;
  651. overflow: hidden;
  652. text-overflow: ellipsis;
  653. display: inline-block;
  654. border-right: 1px solid #e2e2e2;
  655. float: left;
  656. }
  657. /* 倒计时 */
  658. .countdown {
  659. height: 8.5vh;
  660. width: 6.5vw;
  661. font-size: 1vw;
  662. text-align: center;
  663. border: 1px solid #eee;
  664. }
  665. .countdown-top {
  666. height: 3.5vh;
  667. line-height: 3.5vh;
  668. border-bottom: 1px solid #eee;
  669. color: #fff;
  670. background-color: rgb(23, 145, 233);
  671. border-bottom: 1px solid rgb(23, 145, 233);
  672. font-size: 0.95vw;
  673. padding: 0;
  674. margin: 0;
  675. }
  676. .countdown-bottom {
  677. height: 5vh;
  678. line-height: 5vh;
  679. padding: 0;
  680. margin: 0;
  681. background-color: #fff;
  682. }
  683. #filesBox2 .layui-table-tool{
  684. display: none;
  685. }
  686. #filesBox2 .layui-table-view .layui-table{
  687. width: 100% !important;
  688. }
  689. #filesBox2 .layui-table-cell{
  690. display: flex;
  691. align-items: center;
  692. justify-content: center;
  693. }
  694. .laytable-cell-1-0-1, .laytable-cell-1-0-2{
  695. justify-content: flex-start !important;
  696. }
  697. .laytable-cell-1-0-0 span, .laytable-cell-1-0-1 span, .laytable-cell-1-0-2 span, .laytable-cell-1-0-3 span, .laytable-cell-1-0-4 span, th>.laytable-cell-1-0-5 span{
  698. display: flex;
  699. font: 14px red;
  700. font-weight: 600;
  701. color: #5f5f5f;
  702. }
  703. #tabniubi tr:first-child th{
  704. border-right: 1px solid #e2e2e2 !important;
  705. }
  706. #filesBox2 th:sixth-child{
  707. border-right: none !important;
  708. }
  709. </style>
  710. <!--业主项目审核以下-->
  711. <?php if($detail['proprietor_status']<2): ?>
  712. <form class="layui-form p-4">
  713. <table id="tabniubi" cellpadding="1" cellspacing="1">
  714. <tr>
  715. <th style="width: 10%;height: 0;"></th>
  716. <th style="width: 10%;height: 0;"></th>
  717. <th style="width: 10%;height: 0;"></th>
  718. <th style="width: 10%;height: 0;"></th>
  719. <th style="width: 10%;height: 0;"></th>
  720. <th style="width: 10%;height: 0;"></th>
  721. <th style="width: 10%;height: 0;"></th>
  722. <th style="width: 10%;height: 0;"></th>
  723. <th style="width: 10%;height: 0;"></th>
  724. </tr>
  725. <tr border="1">
  726. <th class="form-title">项目名称 <font style="color: red !important;">*</font></th>
  727. <th colspan="2">
  728. <input type="text" name="project_name" lay-verify="required" lay-reqText="请完善项目名称" value="<?php echo htmlentities($detail['project_name']); ?>"
  729. autocomplete="off" placeholder="请输入项目名称" class="layui-input">
  730. </th>
  731. <th class="form-title">项目编号 <font style="color: red !important;">*</font></th>
  732. <th colspan="2">
  733. <input type="text" name="project_num" lay-verify="required" lay-reqText="请完善项目编号" value="<?php echo htmlentities($detail['project_num']); ?>"
  734. autocomplete="off" placeholder="请输入项目编号" class="layui-input">
  735. </th>
  736. <th class="form-title">工程类别</th>
  737. <th colspan="2">
  738. <select name="engineering_category" lay-verify="engineering_category" >
  739. <option value="">请选择工程类型</option>
  740. <option value="建筑物" >建筑物</option>
  741. <option value="交通" >交通</option>
  742. <option value="水利" >水利</option>
  743. <option value="土地整治" >土地整治</option>
  744. <option value="市政园林" >市政园林</option>
  745. <option value="信息网络" >信息网络</option>
  746. <option value="其他" >其他</option>
  747. </select>
  748. </th>
  749. </tr>
  750. <tr>
  751. <th class="form-title">项目类型<font style="color: red !important;">*</font></th>
  752. <th colspan="2">
  753. <div>
  754. <select name="engineering_type1" lay-verify="required">
  755. <option value="">请选择项目类型</option>
  756. <option value="1" <?php if($detail['engineering_type1'] == '1'): ?> selected <?php endif; ?>>预算</option>
  757. <option value="2"<?php if($detail['engineering_type1'] == '2'): ?> selected <?php endif; ?>>结算</option>
  758. </select>
  759. </div>
  760. </th>
  761. <th class="form-title">——</th>
  762. <th colspan="2">
  763. <div>
  764. <select name="engineering_type2" lay-verify="required">
  765. <option value="">请选择项目类型</option>
  766. <option value="1" <?php if($detail['engineering_type2'] == '1'): ?> selected <?php endif; ?>>审核</option>
  767. <option value="2" <?php if($detail['engineering_type2'] == '2'): ?> selected <?php endif; ?>>编制</option>
  768. </select>
  769. </div>
  770. </th>
  771. </tr>
  772. <tr>
  773. <th class="form-title">项目区域</th>
  774. <th colspan="2">
  775. <div>
  776. <div class="layui-form-item"
  777. style="margin-bottom: 0;display: flex;flex-direction: row;justify-content: space-between;">
  778. <div class="layui-input-inline" style="width: 6.5vw;">
  779. <select id="province" lay-filter="province" name="province"></select>
  780. </div>
  781. <div class="layui-input-inline area" style="width: 6.5vw;">
  782. <select id="city" lay-filter="city" name="city"></select>
  783. </div>
  784. <div class="layui-input-inline area" style="width: 6.5vw;">
  785. <select id="area" lay-filter="area" name="area"></select>
  786. </div>
  787. </div>
  788. </div>
  789. </th>
  790. </tr>
  791. <tr>
  792. <th class="form-title">资金性质</th>
  793. <th>
  794. <input type="radio" name="fiscal_nature" value="财政资金" title="财政资金" lay-filter="tax"
  795. <?php if($detail['fiscal_nature'] == '财政资金'): ?> checked <?php endif; ?> >
  796. <input type="radio" name="fiscal_nature" value="非财政资金" title="非财政资金" lay-filter="tax"
  797. <?php if($detail['fiscal_nature'] == '非财政资金'): ?> checked <?php endif; ?> >
  798. </th>
  799. <th class="form-title entrust_unit">委托单位 <font style="color: red !important;">*</font></th>
  800. <th colspan="2" class="entrust_unit">
  801. <input type="text" name="entrust_unit_name" autocomplete="off" readonly value="<?php echo htmlentities($detail['entrust_unit_name']); ?>" lay-reqText="当地财评委托单位" placeholder="当地财评委托单位" class="layui-input get-entrust">
  802. <input type="hidden" name="entrust_unit" value="<?php echo htmlentities($detail['entrust_unit']); ?>">
  803. </th>
  804. <tr>
  805. <th class="form-title">审批人 <font style="color: red !important;">*</font></th>
  806. <th colspan="2">
  807. <select name="sent_review_approver" lay-verify="required" lay-reqText="请选择审批人">
  808. <option value="">请选择审批人</option>
  809. {dump($person)}
  810. <?php if(is_array($person) || $person instanceof \think\Collection || $person instanceof \think\Paginator): $i = 0; $__LIST__ = $person;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$v): $mod = ($i % 2 );++$i;?>
  811. <option value="<?php echo htmlentities($v['id']); ?>" <?php if($detail['sent_review_approver'] == $v['id']): ?> selected="" <?php endif; ?>><?php echo htmlentities($v['nickname']); ?></option>
  812. <?php endforeach; endif; else: echo "" ;endif; ?>
  813. </select>
  814. </th>
  815. <th colspan="2">
  816. <select name="sent_review_second_approver" lay-reqText="请选择审批人">
  817. <option value="">请选择第二审批人(可选)</option>
  818. {dump($person)}
  819. <?php if(is_array($person) || $person instanceof \think\Collection || $person instanceof \think\Paginator): $i = 0; $__LIST__ = $person;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$v): $mod = ($i % 2 );++$i;?>
  820. <option value="<?php echo htmlentities($v['id']); ?>" <?php if($detail['sent_review_second_approver'] == $v['id']): ?> selected="" <?php endif; if(!isset($detail['sent_review_second_approver'])): ?>name=""<?php endif; ?>><?php echo htmlentities($v['nickname']); ?></option>
  821. <?php endforeach; endif; else: echo "" ;endif; ?>
  822. </select>
  823. </th>
  824. </tr>
  825. <tr>
  826. <th colspan="9" class="forleft">相关附件
  827. <button class="layui-btn layui-btn-xs layui-btn-danger" style="float: right;" type="button"
  828. id="uploadBtn">上传附件
  829. </button>
  830. </th>
  831. </tr>
  832. <tr>
  833. <th colspan="9" class="fujianimg" style="padding: 9px 0;">
  834. <div id="filesBox2">
  835. <div class="filelist" id="filesBigBox">
  836. <ul id="filesBox" style="overflow: scroll;">
  837. <?php echo fileCard($file_array); ?>
  838. </ul>
  839. </div>
  840. <?php if(empty($file_array) || (($file_array instanceof \think\Collection || $file_array instanceof \think\Paginator ) && $file_array->isEmpty())): ?>
  841. <div class="layui-data-none">暂无附件</div>
  842. <?php endif; ?>
  843. </div>
  844. </th>
  845. </tr>
  846. </table>
  847. <div class="py-3">
  848. <input type="hidden" name="id" value="<?php echo htmlentities($detail['id']); ?>"/>
  849. <?php if($detail['proprietor_status']==0): ?>
  850. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="add">保存</button>
  851. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="save">提交</button>
  852. <?php endif; ?>
  853. <!-- //审核中-->
  854. <?php if($detail['proprietor_status'] == 1): ?>
  855. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="withdraw">撤回</button>
  856. <?php endif; ?>
  857. </div>
  858. </form>
  859. <?php else: ?>
  860. <form class="layui-form p-4">
  861. <table id="tabniubi" cellpadding="1" cellspacing="1">
  862. <tr>
  863. <th style="width: 10%;height: 0;"></th>
  864. <th style="width: 10%;height: 0;"></th>
  865. <th style="width: 10%;height: 0;"></th>
  866. <th style="width: 10%;height: 0;"></th>
  867. <th style="width: 10%;height: 0;"></th>
  868. <th style="width: 10%;height: 0;"></th>
  869. <th style="width: 10%;height: 0;"></th>
  870. <th style="width: 10%;height: 0;"></th>
  871. <th style="width: 10%;height: 0;"></th>
  872. </tr>
  873. <tr border="1">
  874. <?php if($field['project_status'] == 1): ?>
  875. <th class="form-title">项目状态</th>
  876. <th>
  877. <?php switch($detail['project_status']): case "1": ?>立项中<?php break; case "2": ?>审批中<?php break; case "3": ?>待接收<?php break; case "4": ?>待分配<?php break; case "5": ?>作业中<?php break; case "6": ?>归档中<?php break; case "7": ?>退审中<?php break; case "8": ?>已归档<?php break; case "9": ?>已退审<?php break; default: ?>未知
  878. <?php endswitch; ?>
  879. </th>
  880. <?php endif; if($field['project_name'] == 1): ?>
  881. <th class="form-title">项目名称</th>
  882. <th colspan="3"><?php echo htmlentities($detail['project_name']); ?></th>
  883. <?php endif; if($field['project_num'] == 1): ?>
  884. <th class="form-title">项目编号</th>
  885. <th colspan="2"><?php echo htmlentities($detail['project_num']); ?></th>
  886. <?php endif; ?>
  887. </tr>
  888. <tr>
  889. <?php if($field['project_time'] == 1): ?>
  890. <th class="form-title">项目周期</th>
  891. <th colspan="8" style="text-align: left; padding-left: 3.5vw;"><?php echo htmlentities(date("Y-m-d",!is_numeric($detail['project_start_time'])? strtotime($detail['project_start_time']) : $detail['project_start_time'])); ?> 至 <?php echo htmlentities(date("Y-m-d",!is_numeric($detail['project_end_time'])? strtotime($detail['project_end_time']) : $detail['project_end_time'])); ?></th>
  892. <?php endif; ?>
  893. </tr>
  894. <tr>
  895. <?php if($field['engineering_type'] == 1): ?>
  896. <th class="form-title">工程类型</th>
  897. <th>
  898. <?php if($detail['engineering_type1']==1): ?>
  899. 预算
  900. <?php elseif($detail['engineering_type1']==2): ?>
  901. 结算
  902. <?php elseif($detail['engineering_type1']==3): ?>
  903. 概算
  904. <?php elseif($detail['engineering_type1']==4): ?>
  905. 决算
  906. <?php elseif($detail['engineering_type1']==5): ?>
  907. 工程总承包(EPC)
  908. <?php endif; ?>
  909. </th>
  910. <th class="form-title">——</th>
  911. <th>
  912. <?php if($detail['engineering_type2']==1): ?>审核<?php else: ?>编制<?php endif; ?>
  913. </th>
  914. <?php endif; if($field['engineering_category'] == 1): ?>
  915. <th class="form-title">工程类别</th>
  916. <th><?php echo htmlentities($detail['engineering_category']); ?></th>
  917. <?php endif; if($field['project_region'] == 1): ?>
  918. <th class="form-title">项目区域</th>
  919. <th colspan="2">
  920. <?php echo htmlentities($detail['province']); ?>-<?php echo htmlentities($detail['city']); ?>-<?php echo htmlentities($detail['area']); ?>
  921. </th>
  922. <?php endif; ?>
  923. </tr>
  924. <tr>
  925. <?php if($field['fiscal_nature'] == 1): ?>
  926. <th class="form-title">资金性质</th>
  927. <th><?php echo htmlentities($detail['fiscal_nature']); ?></th>
  928. <?php endif; if($field['project_scale'] == 1): ?>
  929. <th class="form-title">项目规模</th>
  930. <th colspan="3"><?php echo htmlentities($detail['project_scale']); ?></th>
  931. <?php endif; if($field['charge_standard'] == 1): ?>
  932. <th class="form-title">收费标准</th>
  933. <th colspan="2"><?php echo htmlentities($detail['charge_standard']); ?></th>
  934. <?php endif; ?>
  935. </tr>
  936. <?php if($field['entrust_unit'] == 1 || $field['entrust_head'] == 1 || $field['sent_review_unit'] == 1 || $field['sent_review_head'] == 1 || $field['review_unit'] == 1 || $field['review_head'] == 1 || $field['operate_name'] == 1 || $field['operate_team_names'] == 1 || $field['construction_unit'] == 1 || $field['construction_head'] == 1): ?>
  937. <tr>
  938. <th colspan="9" class="forleft">相关单位</th>
  939. </tr>
  940. <tr>
  941. <?php if($field['entrust_unit'] == 1): ?>
  942. <th class="form-title">委托单位</th>
  943. <th><?php echo htmlentities($detail['entrust_unit_name']); ?></th>
  944. <?php endif; if($field['entrust_head'] == 1): ?>
  945. <th class="form-title">负责人</th>
  946. <th><?php echo htmlentities($detail['entrust_maker_name']); ?></th>
  947. <?php endif; if($field['sent_review_unit'] == 1): ?>
  948. <th class="form-title">送审单位</th>
  949. <th><?php echo htmlentities($detail['sent_review_unit_name']); ?></th>
  950. <?php endif; if($field['sent_review_head'] == 1): ?>
  951. <th class="form-title">负责人</th>
  952. <th colspan="2"><?php echo htmlentities($detail['sent_review_head_name']); ?></th>
  953. <?php endif; ?>
  954. </tr>
  955. <tr>
  956. <?php if($field['review_unit'] == 1): ?>
  957. <th class="form-title">评审机构</th>
  958. <th><?php echo htmlentities($detail['review_unit_name']); ?></th>
  959. <?php endif; if($field['review_head'] == 1): ?>
  960. <th class="form-title">项目负责人</th>
  961. <th><?php echo htmlentities($detail['review_head_name']); ?></th>
  962. <?php endif; if($field['operate_name'] == 1): ?>
  963. <th class="form-title">作业负责人</th>
  964. <th><?php echo htmlentities($detail['operate_head_name']); ?></th>
  965. <?php endif; if($field['operate_team_names'] == 1): ?>
  966. <th class="form-title">作业成员</th>
  967. <th colspan="2"><?php echo htmlentities($detail['operate_team_names']); ?></th>
  968. <?php endif; ?>
  969. </tr>
  970. <tr>
  971. <?php if($field['construction_unit'] == 1): ?>
  972. <th class="form-title" colspan="1">施工单位</th>
  973. <th colspan="1"><?php echo htmlentities($detail['construction_unit']); ?></th>
  974. <?php endif; if($field['construction_head'] == 1): ?>
  975. <th class="form-title" colspan="1">负责人</th>
  976. <th colspan="6"><?php echo htmlentities($detail['construction_head']); ?></th>
  977. <?php endif; ?>
  978. </tr>
  979. <?php endif; if($field['sent_review_amount'] == 1 || $field['authorize_amount'] == 1 || $field['review_add_reduce_amount'] == 1 || $field['review_add_reduce_rate'] == 1 || $field['sent_review_cost'] == 1 || $field['sent_review_approver_amount'] == 1 || $field['construction_approver_amount'] == 1 || $field['report_time'] == 1): ?>
  980. <tr>
  981. <th colspan="9" class="forleft">金额详情</th>
  982. </tr>
  983. <tr>
  984. <?php if($field['sent_review_amount'] == 1): ?>
  985. <th class="form-title" colspan="1">送审金额(元)</th>
  986. <th colspan="2"><?php echo htmlentities($detail['sent_review_amount']); ?></th>
  987. <?php endif; if($field['authorize_amount'] == 1): ?>
  988. <th class="form-title" colspan="1">审定金额(元)</th>
  989. <th colspan="2"><?php echo htmlentities($detail['authorize_amount']); ?></th>
  990. <?php endif; if($field['review_add_reduce_amount'] == 1): ?>
  991. <th class="form-title" colspan="1">审增金额(元)</th>
  992. <th colspan="2"><?php echo htmlentities($detail['review_add_amount']); ?></th>
  993. <?php endif; ?>
  994. </tr>
  995. <tr>
  996. <?php if($field['review_add_reduce_amount'] == 1): ?>
  997. <th class="form-title" colspan="1">审减金额(元)</th>
  998. <th colspan="2"><?php echo htmlentities($detail['review_reduce_amount']); ?></th>
  999. <?php endif; if($field['review_add_reduce_rate'] == 1): ?>
  1000. <th class="form-title" colspan="1">审增减率(%)</th>
  1001. <th colspan="2"><?php echo htmlentities($detail['review_add_reduce_rate']); ?></th>
  1002. <?php endif; if($field['sent_review_cost'] == 1): ?>
  1003. <th class="form-title" colspan="1">送审服务费 (元)</th>
  1004. <th colspan="2"><?php echo htmlentities($detail['sent_review_cost']); ?></th>
  1005. <?php endif; ?>
  1006. </tr>
  1007. <tr>
  1008. <?php if($field['sent_review_approver_amount'] == 1): ?>
  1009. <th class="form-title forright" colspan="1">
  1010. 送审单位承担<br>审核费(元)
  1011. </th>
  1012. <th colspan="2"><?php echo htmlentities($detail['sent_review_approver_amount']); ?></th>
  1013. <?php endif; if($field['construction_approver_amount'] == 1): ?>
  1014. <th class="form-title forright" colspan="2">
  1015. 施工单位负责<br>核减超5%评审费部分(元)
  1016. </th>
  1017. <th colspan="2"><?php echo htmlentities($detail['construction_approver_amount']); ?></th>
  1018. <?php endif; if($field['report_time'] == 1): ?>
  1019. <th class="form-title" colspan="1">报告时间</th>
  1020. <th colspan="1" style="text-align: left; padding-left: 3.5vw;"><?php if($detail['report_time']!=0): ?><?php echo htmlentities(date("Y-m-d",!is_numeric($detail['report_time'])? strtotime($detail['report_time']) : $detail['report_time'])); ?><?php endif; ?>
  1021. </th>
  1022. <?php endif; ?>
  1023. </tr>
  1024. <?php endif; ?>
  1025. <tr>
  1026. <th colspan="9" class="forleft">相关附件
  1027. <!--<button class="layui-btn layui-btn-xs layui-btn-danger" style="float: right;" type="button"-->
  1028. <!-- id="uploadBtn">上传附件-->
  1029. <!--</button>-->
  1030. <!--<button type="button" class="layui-btn layui-btn-xs layui-btn-danger" lay-on="page" style="float: right;">上传附件</button>-->
  1031. <button type="button" class="layui-btn layui-btn-xs layui-btn-danger" lay-on="test-iframe-handle" style="float: right;">
  1032. 上传附件
  1033. <span id="ID-test-iframe-mark"></span>
  1034. </button>
  1035. </th>
  1036. </tr>
  1037. <tr>
  1038. <th colspan="9" class="fujianimg" style="padding: 0px 0px;">
  1039. <div id="filesBox2">
  1040. <table class="layui-hide" id="get_file" lay-filter="get_file"></table>
  1041. </div>
  1042. </th>
  1043. </tr>
  1044. </table>
  1045. <div class="py-3">
  1046. <input type="hidden" name="id" value="<?php echo htmlentities($detail['id']); ?>"/>
  1047. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="savetime">保存</button>
  1048. </div>
  1049. </form>
  1050. <?php endif; ?>
  1051. <script>
  1052. function first(){
  1053. var form = layui.form, tool = layui.tool, oaTool = layui.oaTool;
  1054. let table = layui.table;
  1055. //附件表格
  1056. var allcount;
  1057. parent.layui.get_fileTable = table.render({
  1058. elem: '#get_file',
  1059. title: '文档列表',
  1060. toolbar: '#toolbarget_file',
  1061. cellMinWidth: 80,
  1062. parseData: function (res) { // 数据解析回调函数
  1063. // 在这里可以获取数据总数
  1064. allcount = res.data.length;
  1065. return {
  1066. code: res.code, // 数据状态码
  1067. msg: res.msg, // 状态信息
  1068. count: res.count, // 数据总数
  1069. data: res.data // 当前页数据
  1070. };
  1071. },
  1072. url: "/admin/project.api/get_file",
  1073. where: {'id': project_id},
  1074. page: true, //开启分页
  1075. limit: 20,
  1076. cols: [[
  1077. {field: 'id', title: '序号', width: 80, align: 'center',
  1078. templet: function (d) {
  1079. //console.log(allcount,d.LAY_NUM)
  1080. return allcount - (d.LAY_NUM - 1);
  1081. }
  1082. },
  1083. {field: 'name', title: '附件名称', align: 'left',
  1084. },
  1085. {field: 'remark', title: '附件说明', align: 'left',
  1086. },
  1087. {field: 'admin_name', title: '上传人', align: 'center', width: 150},
  1088. {field: 'create_time', title: '上传时间', align: 'center', width: 150,
  1089. // templet:"<div>{{d.create_time}}</div>"
  1090. templet:"<div>{{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}</div>"
  1091. },
  1092. {field: 'right', fixed: 'right', title: '操作', width: 150, align: 'center',
  1093. templet: function (d) {
  1094. var html = '<div class="layui-btn-group">';
  1095. var btn1 = `<a href="https://view.officeapps.live.com/op/view.aspx?src=${d.filepath}" target="_blank" class="layui-btn layui-btn-xs">预览</a>`;
  1096. var btn2 = `<a class="layui-btn layui-btn-xs layui-bg-blue" href="${d.filepath}" download="${d.name}" lay-event="">下载</a>`;
  1097. var btn3 = `<span data-id="${d.id}" class="layui-btn layui-btn-xs layui-btn-danger file-del " >删除</span>`;
  1098. return html + btn1 + btn2 + btn3 +'</div>';
  1099. }
  1100. }
  1101. ]]
  1102. });
  1103. function res(){
  1104. table.reload('get_file');
  1105. }
  1106. $('#filesBox2').on('click', '.file-del', function (e) {
  1107. // console.log( $(this).attr('data-id'))
  1108. let id = $(this).attr('data-id');
  1109. layer.confirm('确定要删除该文件吗?请慎重', {icon: 3, title: '提示'}, function (index) {
  1110. let callback = function (e) {
  1111. layer.msg(e.msg);
  1112. if (e.code == 0) {
  1113. res()
  1114. }
  1115. }
  1116. tool.delete("/admin/project.api/delete_file", {id: id}, callback);// 删除附件
  1117. layer.close(index);
  1118. });
  1119. })
  1120. //上传附件弹出窗
  1121. layui.use(function(){
  1122. var $ = layui.$;
  1123. var layer = layui.layer;
  1124. var upload = layui.upload;
  1125. var util = layui.util;
  1126. // 事件
  1127. util.on('lay-on', {
  1128. 'test-iframe-handle': function(){
  1129. layer.open({
  1130. type: 2,
  1131. area: ['680px', '520px'],
  1132. content: 'ceshi?id=<?php echo htmlentities($detail['id']); ?>',
  1133. fixed: false, // 不固定
  1134. maxmin: true,
  1135. shadeClose: true,
  1136. title: '上传附件',
  1137. btnAlign: 'c',
  1138. yes: function(index, layero){
  1139. // 获取 iframe 的窗口对象
  1140. var iframeWin = window[layero.find('iframe')[0]['name']];
  1141. var elemMark = iframeWin.$('#mark'); // 获得 iframe 中某个输入框元素
  1142. var value = elemMark.val();
  1143. if($.trim(value) === '') return elemMark.focus();
  1144. // 显示获得的值
  1145. layer.msg('获得 iframe 中的输入框标记值:'+ value);
  1146. }
  1147. });
  1148. },
  1149. })
  1150. });
  1151. oaTool.addFile({
  1152. type: 1,
  1153. isSave: true,
  1154. ajaxSave: function (res) {
  1155. let callback = function (e) {
  1156. if("msg" in e){
  1157. layer.msg(e.msg);
  1158. }else{
  1159. layer.msg('上传成功!')
  1160. }
  1161. setTimeout(function () {
  1162. $("#filesBox2").load(location.href+" #filesBox>*","type=2")
  1163. }, 500)
  1164. }
  1165. // console.log(1);
  1166. // console.log(res,"<?php echo htmlentities($detail['id']); ?>")
  1167. tool.post("/admin/project.api/add_file", { // 上传附件
  1168. 'topic_id': "<?php echo htmlentities($detail['id']); ?>",
  1169. 'file_id': res.data.id,
  1170. 'file_name': res.data.name,
  1171. 'module': 'project'
  1172. }, callback);
  1173. }
  1174. });
  1175. // var form = layui.form, tool = layui.tool, oaTool = layui.oaTool;
  1176. //日期选择
  1177. layui.laydate.render({
  1178. elem: '#date',
  1179. range: ['#start_time', '#end_time'],
  1180. rangeLinked: true
  1181. });
  1182. var selectedNature = $('input[name="fiscal_nature"]:checked').val();
  1183. if (selectedNature == "财政资金") {
  1184. $(".entrust_unit").show();
  1185. $(".review_unit").hide();
  1186. } else {
  1187. $(".review_unit").show();
  1188. $(".entrust_unit").hide();
  1189. }
  1190. //radio选择
  1191. form.on('radio(tax)', function (data) {
  1192. if (data.value == "财政资金") {
  1193. console.log(1)
  1194. $(".entrust_unit").show();
  1195. $(".review_unit").hide();
  1196. } else {
  1197. $(".review_unit").show();
  1198. $(".entrust_unit").hide();
  1199. }
  1200. });
  1201. $('.customer-picker').on('click', function () {
  1202. let that = $(this);
  1203. let callback = function(data){
  1204. console.log(data);
  1205. $('[name="review_unit"]').val(data.id);
  1206. $('[name="review_unit_name"]').val(data.title);
  1207. }
  1208. oaTool.customerPicker(callback);
  1209. });
  1210. $('.get-entrust').on('click', function () {
  1211. let that = $(this);
  1212. let callback = function(data){
  1213. console.log(data);
  1214. $('[name="entrust_unit"]').val(data.id);
  1215. $('[name="entrust_unit_name"]').val(data.title);
  1216. }
  1217. oaTool.getEntrust(callback);
  1218. });
  1219. form.on('submit(add)', function (data) {
  1220. if(data.field.fiscal_nature=="财政资金"){
  1221. delete data.field.review_unit;
  1222. delete data.field.review_unit_name;
  1223. if(data.field.entrust_unit==""&&data.field.entrust_unit_name==""){
  1224. layer.msg("请选择委托单位")
  1225. return false;
  1226. }
  1227. }else {
  1228. delete data.field.entrust_unit;
  1229. delete data.field.entrust_unit_name;
  1230. if(data.field.review_unit==""&&data.field.review_unit_name==""){
  1231. layer.msg("请选择评审单位")
  1232. return false;
  1233. }
  1234. }
  1235. if (c) {
  1236. let callback = function (e) {
  1237. c = 1
  1238. layer.msg(e.msg);
  1239. if (e.code == 0) {
  1240. tool.sideClose(1000);
  1241. }
  1242. }
  1243. var engineering_type1 = '';
  1244. if (data.field.engineering_type1 == 1) {
  1245. engineering_type1 = '预算';
  1246. } else if (data.field.engineering_type1 == 2) {
  1247. engineering_type1 = '结算';
  1248. }
  1249. var engineering_type2 = '';
  1250. if (data.field.engineering_type2 == 1) {
  1251. engineering_type2 = '审核';
  1252. } else if (data.field.engineering_type2 == 2) {
  1253. engineering_type2 = '编制';
  1254. }
  1255. if(engineering_type1!==""&&engineering_type2!==""){
  1256. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  1257. }
  1258. tool.post("/admin/project.cost_proprietor/edit", data.field, callback);
  1259. }
  1260. c = 0
  1261. return false;
  1262. });
  1263. let a = 1;
  1264. //监听提交
  1265. form.on('submit(webform)', function (data) {
  1266. if(a){
  1267. let callback = function (e) {
  1268. a = 1
  1269. layer.msg(e.msg);
  1270. if (e.code == 0) {
  1271. tool.sideClose(1000);
  1272. }
  1273. }
  1274. if(data.field.engineering_type1!==""&&data.field.engineering_type2!==""){
  1275. var engineering_type1 ='';
  1276. if(data.field.engineering_type1==1){
  1277. engineering_type1 ='预算';
  1278. }else if(data.field.engineering_type1==2){
  1279. engineering_type1 ='结算';
  1280. }else if(data.field.engineering_type1==3){
  1281. engineering_type1 ='概算';
  1282. }else if(data.field.engineering_type1==4){
  1283. engineering_type1 ='决算';
  1284. }else if(data.field.engineering_type1==5){
  1285. engineering_type1 ='工程总承包(EPC)';
  1286. }
  1287. var engineering_type2 = '';
  1288. if(data.field.engineering_type2==1){
  1289. engineering_type2 ='审核';
  1290. }else if(data.field.engineering_type2==2) {
  1291. engineering_type2 = '编制';
  1292. }
  1293. if(engineering_type1!==""&&engineering_type2!==""){
  1294. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  1295. }
  1296. }
  1297. tool.post("/admin/project.cost_proprietor/edit_main", data.field, callback);
  1298. }
  1299. a = 0
  1300. return false;
  1301. });
  1302. let a1 = 1;
  1303. form.on('submit(save)', function (data) {
  1304. if(a1){
  1305. let callback = function (e) {
  1306. a1 = 1
  1307. layer.msg(e.msg);
  1308. if (e.code == 0) {
  1309. tool.sideClose(1000);
  1310. }
  1311. }
  1312. if(data.field.engineering_type1!==""&&data.field.engineering_type2!==""){
  1313. var engineering_type1 ='';
  1314. if(data.field.engineering_type1==1){
  1315. engineering_type1 ='预算';
  1316. }else if(data.field.engineering_type1==2){
  1317. engineering_type1 ='结算';
  1318. }else if(data.field.engineering_type1==3){
  1319. engineering_type1 ='概算';
  1320. }else if(data.field.engineering_type1==4){
  1321. engineering_type1 ='决算';
  1322. }else if(data.field.engineering_type1==5){
  1323. engineering_type1 ='工程总承包(EPC)';
  1324. }
  1325. var engineering_type2 = '';
  1326. if(data.field.engineering_type2==1){
  1327. engineering_type2 ='审核';
  1328. }else if(data.field.engineering_type2==2) {
  1329. engineering_type2 = '编制';
  1330. }
  1331. if(engineering_type1!==""&&engineering_type2!==""){
  1332. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  1333. }
  1334. }
  1335. tool.post("/admin/project.cost_proprietor/save", data.field, callback);
  1336. }
  1337. a1 = 0
  1338. return false;
  1339. });
  1340. let a2 = 1;
  1341. form.on('submit(withdraw)', function (data) {
  1342. if(a2){
  1343. let callback = function (e) {
  1344. a2 = 1
  1345. layer.msg(e.msg);
  1346. if (e.code == 0) {
  1347. tool.sideClose(1000);
  1348. }
  1349. }
  1350. if(data.field.engineering_type1!==""&&data.field.engineering_type2!==""){
  1351. var engineering_type1 ='';
  1352. if(data.field.engineering_type1==1){
  1353. engineering_type1 ='预算';
  1354. }else if(data.field.engineering_type1==2){
  1355. engineering_type1 ='结算';
  1356. }else if(data.field.engineering_type1==3){
  1357. engineering_type1 ='概算';
  1358. }else if(data.field.engineering_type1==4){
  1359. engineering_type1 ='决算';
  1360. }else if(data.field.engineering_type1==5){
  1361. engineering_type1 ='工程总承包(EPC)';
  1362. }
  1363. var engineering_type2 = '';
  1364. if(data.field.engineering_type2==1){
  1365. engineering_type2 ='审核';
  1366. }else if(data.field.engineering_type2==2) {
  1367. engineering_type2 = '编制';
  1368. }
  1369. if(engineering_type1!==""&&engineering_type2!==""){
  1370. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  1371. }
  1372. }
  1373. tool.post("/admin/project.cost_proprietor/withdraw", data.field, callback);
  1374. }
  1375. a2 = 0
  1376. return false;
  1377. });
  1378. let a3 = 1;
  1379. form.on('submit(savetime)', function (data) {
  1380. if(a3){
  1381. let callback = function (e) {
  1382. a3 = 1
  1383. layer.msg(e.msg);
  1384. if (e.code == 0) {
  1385. tool.sideClose(1000);
  1386. }
  1387. }
  1388. if(data.field.engineering_type1!==""&&data.field.engineering_type2!==""){
  1389. var engineering_type1 ='';
  1390. if(data.field.engineering_type1==1){
  1391. engineering_type1 ='预算';
  1392. }else if(data.field.engineering_type1==2){
  1393. engineering_type1 ='结算';
  1394. }else if(data.field.engineering_type1==3){
  1395. engineering_type1 ='概算';
  1396. }else if(data.field.engineering_type1==4){
  1397. engineering_type1 ='决算';
  1398. }else if(data.field.engineering_type1==5){
  1399. engineering_type1 ='工程总承包(EPC)';
  1400. }
  1401. var engineering_type2 = '';
  1402. if(data.field.engineering_type2==1){
  1403. engineering_type2 ='审核';
  1404. }else if(data.field.engineering_type2==2) {
  1405. engineering_type2 = '编制';
  1406. }
  1407. if(engineering_type1!==""&&engineering_type2!==""){
  1408. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  1409. }
  1410. }
  1411. tool.post("/admin/project.cost_proprietor/edit_main", data.field, callback);
  1412. }
  1413. a3 = 0
  1414. return false;
  1415. });
  1416. //项目区域
  1417. layui.use(['form', 'jquery'], function () {
  1418. var form = layui.form;
  1419. const $ = layui.jquery;
  1420. let adress;
  1421. $.ajax({
  1422. type: "get", //使用get方式
  1423. url: "/static/assets/layui/adress.json", //json文件相对于这个HTML的路径
  1424. dataType: "json",
  1425. async: false,
  1426. success: function (data) {
  1427. //这个data就是json数据
  1428. adress = data
  1429. var province = Object.keys(adress)
  1430. var proStrs = '<option value="">省</option>';
  1431. for (var i = 0; i < province.length; i++) {
  1432. proStrs += '<option value="' + province[i] + '">' + province[i] + '</option>';
  1433. }
  1434. $("#province").html(proStrs);
  1435. layui.form.render("select")
  1436. },
  1437. error: function () {
  1438. layer.alert("地址请求失败!! ");
  1439. }
  1440. });
  1441. function getFirstAttr(obj) {
  1442. for (var k in obj) return k;
  1443. }
  1444. function selectOption(selectedProvince, selectedCity = '', selectedArea = '') {
  1445. var proStr = '<option value="">省</option>', cityStr = '<option value="">市</option>',
  1446. areaStr = '<option value="">县</option>';
  1447. var pro = adress[selectedProvince], ci = adress[selectedProvince][selectedCity];
  1448. for (var province in adress) {
  1449. if (province == selectedProvince) proStr += '<option value="' + province + '" selected>' + province + '</option>';
  1450. else proStr += '<option value="' + province + '">' + province + '</option>';
  1451. }
  1452. $("#province").html(proStr);
  1453. for (var city in pro) {
  1454. if (city == selectedCity) cityStr += '<option value="' + city + '" selected>' + city + '</option>';
  1455. else cityStr += '<option value="' + city + '">' + city + '</option>';
  1456. }
  1457. $("#city").html(cityStr);
  1458. for (var area in ci) {
  1459. if (area == "remove") {
  1460. continue;
  1461. }
  1462. if (ci[area] == selectedArea) areaStr += '<option value="' + ci[area] + '" selected>' + ci[area] + '</option>';
  1463. else areaStr += '<option value="' + ci[area] + '">' + ci[area] + '</option>';
  1464. }
  1465. $("#area").html(areaStr);
  1466. form.render();
  1467. }
  1468. /*selectOption(1,2, 3);*/
  1469. form.on('select(province)', function (data) {
  1470. let thisProvince = data.value;
  1471. let thisCity = getFirstAttr(adress[thisProvince]);
  1472. selectOption(data.value);
  1473. });
  1474. form.on('select(city)', function (data) {
  1475. selectOption($("#province").val(), data.value, getFirstAttr(data.value));
  1476. });
  1477. selectOption("<?php echo htmlentities($detail['province']); ?>","<?php echo htmlentities($detail['city']); ?>","<?php echo htmlentities($detail['area']); ?>")
  1478. })
  1479. }
  1480. </script>
  1481. <script>
  1482. // 获取具有指定 ID 的 <ul> 元素
  1483. var ulElement = document.getElementById("filesBox");
  1484. // 检查 <ul> 元素的子元素数量
  1485. if (ulElement.children.length === 0) {
  1486. // 如果子元素数量为 0,隐藏 <ul> 元素
  1487. ulElement.style.display = "none";
  1488. }
  1489. </script>
  1490. </div>
  1491. <?php if($project_five['project_user'] == 1): ?>
  1492. <div class="layui-tab-item">
  1493. <div class="p-3 bg-white">
  1494. <table class="layui-hide" id="user" lay-filter="user"></table>
  1495. </div>
  1496. <script type="text/html" id="toolbaruser">
  1497. <div class="layui-btn-container">
  1498. <?php if($detail['maker_type']==2): ?><button class="layui-btn layui-btn-sm" lay-event="addEntrust">+ 新增委托单位成员</button><?php endif; ?>
  1499. <button class="layui-btn layui-btn-sm" lay-event="add_head">+ 新增项目负责人</button>
  1500. <button class="layui-btn layui-btn-sm" lay-event="add">+ 新增作业负责人</button>
  1501. <button class="layui-btn layui-btn-sm picker-more" lay-event="adda">+ 新增作业成员</button>
  1502. <button class="layui-btn layui-btn-sm picker-more" lay-event="adc">+ 新增送审单位成员</button>
  1503. </div>
  1504. </script>
  1505. <script>
  1506. function project_user() {
  1507. let tool = layui.tool, table = layui.table, employeepicker = layui.employeepicker;
  1508. //项目成员
  1509. parent.layui.userTable = table.render({
  1510. elem: '#user',
  1511. title: '项目成员列表',
  1512. cellMinWidth: 80,
  1513. toolbar: '#toolbaruser',
  1514. url: "/admin/project.cost_company/project_user", //数据接口
  1515. where: {'project_id': project_id},
  1516. page: false, //开启分页
  1517. limit: 20,
  1518. cols: [[ //表头
  1519. {field: 'nickname', fixed: 'left', title: '成员姓名', width: 200, align: 'center', rowspan: 2},
  1520. {field: 'unit_name', title: '所在单位', align: 'center', width: 200, rowspan: 2},
  1521. {
  1522. field: 'type', title: '成员类型', align: 'center', width: 200, rowspan: 2,
  1523. templet: function (a) {
  1524. var html = "";
  1525. if (a.type == 1) {
  1526. html = "项目负责人"
  1527. } else if (a.type == 2) {
  1528. html = "项目负责人"
  1529. } else if (a.type == 3) {
  1530. html = "作业负责人"
  1531. } else if (a.type == 4) {
  1532. html = "作业成员"
  1533. } else if (a.type == 5) {
  1534. html = "项目负责人"
  1535. } else if (a.type == 6) {
  1536. html = "项目负责人"
  1537. }
  1538. return html;
  1539. }
  1540. },
  1541. {field: 'unit_type', title: '单位类型', align: 'center', width: 200, rowspan: 2},
  1542. {field: 'mobile', title: '手机号码', align: 'center', rowspan: 2},
  1543. {field: 'email', title: '单位邮箱', align: 'center', rowspan: 2},
  1544. {
  1545. title: '操作', fixed: 'right', align: 'center', width: 150, rowspan: 2, templet: function (d) {
  1546. var html = '<span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove">移除</span>';
  1547. return html;
  1548. }
  1549. }
  1550. ]]
  1551. });
  1552. //触发事件
  1553. table.on('toolbar(user)', function (obj) {
  1554. var checkStatus = table.checkStatus(obj.config.id);
  1555. switch (obj.event) {
  1556. case 'addEntrust':
  1557. // let callback = function (){
  1558. // layui.alert("hhh")
  1559. // }
  1560. aaa()
  1561. break;
  1562. case 'add':
  1563. employeepicker.init({
  1564. type: 0,
  1565. department_url: "/admin/project.cost_company/get_department_tree",
  1566. employee_url: "/admin/project.cost_company/get_employee",
  1567. callback: function (ids, names, dids, departments) {
  1568. let callback = function (e) {
  1569. layer.msg(e.msg);
  1570. if (e.code == 0) {
  1571. parent.layui.userTable.reload();
  1572. }
  1573. }
  1574. tool.post("/admin/project.cost_company/add_user_company_type1", {
  1575. id: ids,
  1576. project_id: project_id,
  1577. type: 1
  1578. }, callback);
  1579. }
  1580. })
  1581. break;
  1582. case "adda":
  1583. employeepicker.init({
  1584. type: 0,
  1585. department_url: "/admin/project.cost_company/get_department_tree",
  1586. employee_url: "/admin/project.cost_company/get_employee",
  1587. callback: function (ids, names, dids, departments) {
  1588. let callback = function (e) {
  1589. layer.msg(e.msg);
  1590. if (e.code == 0) {
  1591. parent.layui.userTable.reload();
  1592. }
  1593. }
  1594. tool.post("/admin/project.cost_company/add_user_company_type2", {
  1595. id: ids,
  1596. project_id: project_id,
  1597. type: 2
  1598. }, callback);
  1599. }
  1600. })
  1601. break;
  1602. case "adc":
  1603. // getSentReview()
  1604. let call = function () {
  1605. layer.msg(e.msg);
  1606. if (e.code == 0) {
  1607. parent.layui.userTable.reload();
  1608. }
  1609. }
  1610. // employeepicker.init({
  1611. // type: 0,
  1612. // department_url: "/admin/project.cost_company/get_department_tree",
  1613. // employee_url: "/admin/project.cost_company/get_employee",
  1614. // callback: function (ids, names, dids, departments) {
  1615. // let callback = function (e) {
  1616. // layer.msg(e.msg);
  1617. // if (e.code == 0) {
  1618. // parent.layui.userTable.reload();
  1619. // }
  1620. // }
  1621. // tool.post("/admin/project.cost_company/add_sent_review_unit", {
  1622. // id: ids,
  1623. // project_id: project_id,
  1624. // }, callback);
  1625. // }
  1626. // })
  1627. parent.layui.tool.side('/admin/project.cost_company/add_sent_review_unit?project_id=' + project_id, call);
  1628. break;
  1629. case "add_head":
  1630. employeepicker.init({
  1631. type: 0,
  1632. department_url: "/admin/project.cost_company/get_department_tree",
  1633. employee_url: "/admin/project.cost_company/get_employee",
  1634. callback: function (ids, names, dids, departments) {
  1635. let callback = function (e) {
  1636. layer.msg(e.msg);
  1637. if (e.code == 0) {
  1638. parent.layui.userTable.reload();
  1639. }
  1640. }
  1641. tool.post("/admin/project.cost_company/add_user_company_head", {
  1642. id: ids,
  1643. project_id: project_id,
  1644. }, callback);
  1645. }
  1646. })
  1647. break;
  1648. }
  1649. });
  1650. //监听行工具事件
  1651. table.on('tool(user)', function (obj) {
  1652. let postData = {"id": obj.data.id, "project_id": project_id, "type": obj.data.type};
  1653. let callback = function (e) {
  1654. layer.closeAll();
  1655. layer.msg(e.msg);
  1656. if (e.code == 0) {
  1657. parent.layui.userTable.reload();
  1658. }
  1659. }
  1660. if (obj.event === 'remove') {
  1661. if (obj.data.type == 3 || obj.data.type == 4) {
  1662. //console.log(postData);
  1663. layer.confirm('确定要移除该项目成员吗?', {icon: 3, title: '提示'}, function (index) {
  1664. tool.delete("/admin/project.cost_company/remove_user_company", postData, callback);
  1665. });
  1666. } else if (obj.data.type == 6) {
  1667. layer.confirm('确定要移除该送审单位成员吗?', {icon: 3, title: '提示'}, function (index) {
  1668. tool.delete("/admin/project.cost_company/remove_sent_review", {
  1669. "id": obj.data.id,
  1670. "project_id": project_id,
  1671. "type": obj.data.type,
  1672. "nickname": obj.data.nickname
  1673. }, callback);
  1674. });
  1675. } else if (obj.data.type == 2) {
  1676. layer.confirm('确定要移除该送审单位成员吗?', {icon: 3, title: '提示'}, function (index) {
  1677. tool.delete("/admin/project.cost_company/remove_review_head", postData, callback);
  1678. });
  1679. } else if (obj.data.type == 1) {
  1680. layer.confirm('确定要移除该委托单位成员吗?', {icon: 3, title: '提示'}, function (index) {
  1681. tool.delete("/admin/project.cost_company/remove_entrust_head", postData, callback);
  1682. });
  1683. }else {
  1684. layer.msg("该成员不可移除");
  1685. }
  1686. }
  1687. return;
  1688. });
  1689. //委托单位
  1690. function aaa(callback){
  1691. var customeTable,form = layui.form;
  1692. const a = layer.open({
  1693. title: '选择委托单位',
  1694. area: ['600px', '580px'],
  1695. type: 1,
  1696. content: '<div class="picker-table">\
  1697. <form class="layui-form pb-2">\
  1698. <div class="layui-input-inline" style="width:480px;">\
  1699. <input type="text" name="keywords" placeholder="委托单位" class="layui-input" autocomplete="off" />\
  1700. </div>\
  1701. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="search_customer">提交搜索</button>\
  1702. </form>\
  1703. <div id="customerTable"></div></div>',
  1704. success: function () {
  1705. customeTable = table.render({
  1706. elem: '#customerTable'
  1707. , url: '/admin/project.api/get_entrust'
  1708. , page: true //开启分页
  1709. , limit: 10
  1710. , cols: [[
  1711. {type: 'radio', title: '选择'},
  1712. {field: 'title', title: '委托单位名称', align: 'center'},
  1713. {field: 'address', title: ' 评审单位地址', align: 'center'}
  1714. ]]
  1715. });
  1716. //客户搜索提交
  1717. form.on('submit(search_customer)', function (data) {
  1718. customeTable.reload({where: {keywords: data.field.keywords}, page: {curr: 1}});
  1719. return false;
  1720. });
  1721. },
  1722. btn: ['确定'],
  1723. btnAlign: 'c',
  1724. yes: function () {
  1725. var checkStatus = table.checkStatus(customeTable.config.id);
  1726. var data = checkStatus.data;
  1727. //console.log(data)
  1728. if (data.length > 0) {
  1729. bbb(data);
  1730. layer.close(a);
  1731. } else {
  1732. layer.msg('请先选择委托单位');
  1733. return false;
  1734. }
  1735. }
  1736. })
  1737. }
  1738. function bbb(e){
  1739. var entrustPeopleTable,form = layui.form;
  1740. layer.open({
  1741. title: '选择委托单位',
  1742. area: ['600px', '580px'],
  1743. type: 1,
  1744. content: '<div class="picker-table">\
  1745. <form class="layui-form pb-2">\
  1746. <div class="layui-input-inline" style="width:480px;">\
  1747. <input type="text" name="keywords" placeholder="委托单位" class="layui-input" autocomplete="off" />\
  1748. </div>\
  1749. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="entrustPeople">提交搜索</button>\
  1750. </form>\
  1751. <div id="entrustPeopleTable"></div></div>',
  1752. success: function () {
  1753. entrustPeopleTable = table.render({
  1754. elem: '#entrustPeopleTable'
  1755. , url: '/admin/project.api/get_entrust_people'
  1756. , where:{unit_id:e[0]["id"]}
  1757. , page: true //开启分页
  1758. , limit: 10
  1759. , cols: [[
  1760. {type: 'radio', title: '选择'},
  1761. {field: 'id', width: 80, title: '编号', align: 'center'},
  1762. {field: 'nickname', title: '昵称', align: 'center'},
  1763. ]]
  1764. });
  1765. //客户搜索提交
  1766. form.on('submit(entrustPeople)', function (data) {
  1767. entrustPeopleTable.reload({where: {keywords: data.field.keywords,unit_id:e[0]["id"]}, page: {curr: 1}});
  1768. return false;
  1769. });
  1770. },
  1771. btn: ['确定'],
  1772. btnAlign: 'c',
  1773. yes: function () {
  1774. var checkStatus = table.checkStatus(entrustPeopleTable.config.id);
  1775. var data = checkStatus.data;
  1776. //console.log(data)
  1777. if (data.length > 0) {
  1778. let callback = function (e) {
  1779. layer.msg(e.msg);
  1780. if (e.code == 0) {
  1781. layer.closeAll();
  1782. parent.layui.userTable.reload();
  1783. }
  1784. }
  1785. tool.post("/admin/project.cost_company/add_entrust_people", {
  1786. id: data[0]["id"],
  1787. project_id: project_id,
  1788. }, callback);
  1789. } else {
  1790. layer.msg('请先选择委托单位人员');
  1791. return false;
  1792. }
  1793. }
  1794. })
  1795. }
  1796. function getSentReview(){
  1797. var sentReviewTable,form = layui.form;
  1798. const a = layer.open({
  1799. title: '选择送审单位',
  1800. area: ['600px', '580px'],
  1801. type: 1,
  1802. content: '<div class="picker-table">\
  1803. <form class="layui-form pb-2">\
  1804. <div class="layui-input-inline" style="width:480px;">\
  1805. <input type="text" name="keywords" placeholder="委托单位" class="layui-input" autocomplete="off" />\
  1806. </div>\
  1807. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="search_customer">提交搜索</button>\
  1808. </form>\
  1809. <div id="sentReviewTable"></div></div>',
  1810. success: function () {
  1811. sentReviewTable = table.render({
  1812. elem: '#sentReviewTable'
  1813. , url: '/admin/project.api/get_sent_review'
  1814. , page: true //开启分页
  1815. , limit: 10
  1816. , cols: [[
  1817. {type: 'radio', title: '选择'},
  1818. {field: 'id', width: 80, title: '编号', align: 'center'},
  1819. {field: 'title', title: '送审单位名称', align: 'center'},
  1820. {field: 'address', title: ' 送审单位地址', align: 'center'}
  1821. ]]
  1822. });
  1823. //客户搜索提交
  1824. form.on('submit(search_customer)', function (data) {
  1825. sentReviewTable.reload({where: {keywords: data.field.keywords}, page: {curr: 1}});
  1826. return false;
  1827. });
  1828. },
  1829. btn: ['确定'],
  1830. btnAlign: 'c',
  1831. yes: function () {
  1832. var checkStatus = table.checkStatus(sentReviewTable.config.id);
  1833. var data = checkStatus.data;
  1834. //console.log(data)
  1835. if (data.length > 0) {
  1836. getSentReviewPeople(data);
  1837. layer.close(a);
  1838. } else {
  1839. layer.msg('请先选择送审单位');
  1840. return false;
  1841. }
  1842. }
  1843. })
  1844. }
  1845. function getSentReviewPeople(e){
  1846. var sentReviewPeople,form = layui.form;
  1847. layer.open({
  1848. title: '选择送审单位',
  1849. area: ['600px', '580px'],
  1850. type: 1,
  1851. content: '<div class="picker-table">\
  1852. <form class="layui-form pb-2">\
  1853. <div class="layui-input-inline" style="width:480px;">\
  1854. <input type="text" name="keywords" placeholder="委托单位" class="layui-input" autocomplete="off" />\
  1855. </div>\
  1856. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="entrustPeople">提交搜索</button>\
  1857. </form>\
  1858. <div id="sentReviewPeople"></div></div>',
  1859. success: function () {
  1860. sentReviewPeople = table.render({
  1861. elem: '#sentReviewPeople'
  1862. , url: '/admin/project.api/get_sent_review_people'
  1863. , where:{unit_id:e[0]["id"]}
  1864. , page: true //开启分页
  1865. , limit: 10
  1866. , cols: [[
  1867. {type: 'radio', title: '选择'},
  1868. {field: 'id', width: 80, title: '编号', align: 'center'},
  1869. {field: 'nickname', title: '昵称', align: 'center'},
  1870. ]]
  1871. });
  1872. //客户搜索提交
  1873. form.on('submit(entrustPeople)', function (data) {
  1874. sentReviewPeople.reload({where: {keywords: data.field.keywords,unit_id:e[0]["id"]}, page: {curr: 1}});
  1875. return false;
  1876. });
  1877. },
  1878. btn: ['确定'],
  1879. btnAlign: 'c',
  1880. yes: function () {
  1881. var checkStatus = table.checkStatus(sentReviewPeople.config.id);
  1882. var data = checkStatus.data;
  1883. //console.log(data)
  1884. if (data.length > 0) {
  1885. let callback = function (e) {
  1886. layer.msg(e.msg);
  1887. if (e.code == 0) {
  1888. layer.closeAll();
  1889. parent.layui.userTable.reload();
  1890. }
  1891. }
  1892. tool.post("/admin/project.cost_company/add_sent_review_unit", {
  1893. id: data[0]["id"],
  1894. project_id: project_id,
  1895. }, callback);
  1896. } else {
  1897. layer.msg('请先选择送审单位人员');
  1898. return false;
  1899. }
  1900. }
  1901. })
  1902. }
  1903. }
  1904. </script>
  1905. </div>
  1906. <?php endif; if($project_five['project_report'] == 1): ?>
  1907. <div class="layui-tab-item">
  1908. <div class="p-3 bg-white">
  1909. <table class="layui-hide" id="report" lay-filter="report"></table>
  1910. </div>
  1911. <div id="selectBox2" style="display: none;">
  1912. <div id="companySelect2"></div>
  1913. <button id="cc">1111</button>
  1914. </div>
  1915. <script>
  1916. function report() {
  1917. //console.log(1)
  1918. let tool = layui.tool, table = layui.table;
  1919. var allcount;
  1920. //项目任务
  1921. parent.layui.reportTable = table.render({
  1922. elem: '#report',
  1923. title: '文档列表',
  1924. toolbar: '#toolbarreport',
  1925. cellMinWidth: 80,
  1926. parseData: function (res) { // 数据解析回调函数
  1927. // 在这里可以获取数据总数
  1928. allcount = res.data.length;
  1929. return {
  1930. code: res.code, // 数据状态码
  1931. msg: res.msg, // 状态信息
  1932. count: res.count, // 数据总数
  1933. data: res.data // 当前页数据
  1934. };
  1935. },
  1936. url: "/admin/project.report/datalist_proprietor",
  1937. where: {'project_id': project_id},
  1938. page: true, //开启分页
  1939. limit: 20,
  1940. cols: [[
  1941. {field: 'id', title: '序号', width: 80, align: 'center',
  1942. templet: function (d) {
  1943. //console.log(allcount,d.LAY_NUM)
  1944. return allcount - (d.LAY_NUM - 1);
  1945. }
  1946. },
  1947. {
  1948. field: 'title', title: '报告名称', align: 'center',
  1949. templet: function (d) {
  1950. var html = "";
  1951. if (d.status == 5) {
  1952. html = '<a class="side-a" lay-event="detail" style="color: grey;text-decoration:line-through" lay-event="detail">' + d.title + '</a>';
  1953. } else {
  1954. html = '<a class="side-a" lay-event="detail" lay-event="detail">' + d.title + '</a>';
  1955. }
  1956. return '<div style="text-align:left">' + html + '</div>'
  1957. }
  1958. },
  1959. {
  1960. field: 'type', title: '报告类型', align: 'center', width: 100, templet: function (item) {
  1961. var html = '';
  1962. if (item.type === 0) {
  1963. html = "<span>初审报告</span>";
  1964. } else if (item.type === 1) {
  1965. html = "<span>对数报告</span>";
  1966. } else if (item.type === 2) {
  1967. html = "<span>审定报告</span>";
  1968. }
  1969. return html;
  1970. }
  1971. },
  1972. {
  1973. field: 'status', title: '审批状态', align: 'center', width: 150,
  1974. templet: function (d) {
  1975. var abc = '';
  1976. if (d.status == 0) {
  1977. abc = "<span>未审核(新建)</span>";
  1978. } else if (d.status == 1) {
  1979. abc = "<span>已通过(新建)</span>";
  1980. } else if (d.status == 2) {
  1981. abc = "<span>已拒绝(新建)</span>";
  1982. } else if (d.status == 3) {
  1983. abc = "<span>未审核(删除)</span>";
  1984. } else if (d.status == 4) {
  1985. abc = "<span>已通过(删除)</span>";
  1986. } else if (d.status == 5) {
  1987. abc = "<span>已拒绝(删除)</span>";
  1988. }
  1989. return abc;
  1990. }
  1991. },
  1992. {field: 'create_time', title: '创建时间', align: 'center', width: 150},
  1993. {field: 'admin_name', title: '创建人', align: 'center', width: 100},
  1994. {
  1995. field: 'right', fixed: 'right', title: '操作', width: 150, align: 'center',
  1996. templet: function (d) {
  1997. var html = '<div class="layui-btn-group">';
  1998. var btn1 = `<a class="layui-btn layui-btn-xs layui-bg-blue" href=${d.filepath} download=${d.name} lay-event="">下载</a>`;
  1999. var btn2 = '';
  2000. if (d.status == 0) {
  2001. btn2 = '<span class="layui-btn layui-btn-xs" lay-event="agree_report">同意</span><span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="un_report">拒绝</span>';
  2002. } else if (d.status == 3) {
  2003. btn2 = '<span class="layui-btn layui-btn-xs" lay-event="agree_del">同意</span><span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="unagree_del">拒绝</span>';
  2004. }
  2005. return html + btn1 + btn2 + '</div>';
  2006. }
  2007. }
  2008. ]]
  2009. });
  2010. //触发事件
  2011. table.on('toolbar(report)', function (obj) {
  2012. var checkStatus = table.checkStatus(obj.config.id);
  2013. switch (obj.event) {
  2014. case 'add':
  2015. parent.layui.tool.side('/admin/project.report/add?project_id=' + project_id); // 项目id
  2016. break;
  2017. }
  2018. });
  2019. table.on('tool(report)', function (obj) {
  2020. var data = obj.data; //获得当前行数据
  2021. if (obj.event === 'detail') { //查看
  2022. let url = '/admin/project.report/view_proprietor?id=' + data.id;// 项目id
  2023. parent.layui.tool.side(url);
  2024. }
  2025. if (obj.event === 'agree_report') {
  2026. let callback = function (e) {
  2027. layer.msg(e.msg)
  2028. parent.layui.reportTable.reload();
  2029. }
  2030. tool.post('/admin/project.report/proprietor_agree_report', {id: data.id,else_id:data.else_id}, callback);
  2031. }
  2032. if (obj.event === 'un_report') {
  2033. var ttxx = layer.prompt({
  2034. title: '请输入<span style="color: red">拒绝</span>原因',
  2035. formType: 2,
  2036. area: ['35vw', '15vw']
  2037. }, function (text, index) {
  2038. if(text==""){
  2039. layer.msg("请完善拒绝原因");
  2040. }else{
  2041. layer.close(ttxx)
  2042. let callback = function (e) {
  2043. layer.msg(e.msg)
  2044. parent.layui.reportTable.reload();
  2045. setTimeout(layer.close(index),1000);
  2046. }
  2047. tool.post('/admin/project.report/proprietor_un_report', {id: data.id,else_id:data.else_id,audit_remark:text}, callback);
  2048. }
  2049. });
  2050. }
  2051. if (obj.event === 'agree_del') {
  2052. let callback = function (e) {
  2053. layer.msg(e.msg)
  2054. parent.layui.reportTable.reload();
  2055. }
  2056. tool.post('/admin/project.report/proprietor_agree_delete', {id: data.id,else_id:data.else_id}, callback);
  2057. }
  2058. if (obj.event === 'unagree_del') {
  2059. var ttxx = layer.prompt({
  2060. title: '请输入<span style="color: red">拒绝</span>原因',
  2061. formType: 2,
  2062. area: ['35vw', '15vw']
  2063. }, function (text, index) {
  2064. layer.close(ttxx)
  2065. let callback = function (e) {
  2066. layer.msg(e.msg)
  2067. parent.layui.reportTable.reload();
  2068. setTimeout(layer.close(index),1000);
  2069. }
  2070. tool.post('/admin/project.report/proprietor_un_delete', {id: data.id,else_id:data.else_id,audit_remark:text}, callback);
  2071. });
  2072. }
  2073. })
  2074. }
  2075. </script>
  2076. </div>
  2077. <?php endif; if($project_five['project_contact'] == 1): ?>
  2078. <div class="layui-tab-item">
  2079. <div class="p-3 bg-white">
  2080. <table class="layui-hide" id="contact" lay-filter="contact"></table>
  2081. </div>
  2082. <script type="text/html" id="toolbarcontact">
  2083. <div class="layui-btn-container">
  2084. <button class="layui-btn layui-btn-sm" lay-event="add">+ 新增联系函</button>
  2085. </div>
  2086. </script>
  2087. <script>
  2088. function contact() {
  2089. let tool = layui.tool, table = layui.table;
  2090. //项目任务
  2091. var allcount;
  2092. parent.layui.contactTable = table.render({
  2093. elem: '#contact',
  2094. title: '文档列表',
  2095. toolbar: '#toolbarcontact',
  2096. cellMinWidth: 80,
  2097. parseData: function (res) { // 数据解析回调函数
  2098. // 在这里可以获取数据总数
  2099. allcount = res.data.length;
  2100. return {
  2101. code: res.code, // 数据状态码
  2102. msg: res.msg, // 状态信息
  2103. count: res.count, // 数据总数
  2104. data: res.data // 当前页数据
  2105. };
  2106. },
  2107. url: "/admin/project.contact/conlist_company",
  2108. where: {'project_id': project_id},
  2109. page: true, //开启分页
  2110. limit: 20,
  2111. cols: [[
  2112. {field: 'id', title: '序号', width: 80, align: 'center',
  2113. templet: function (d) {
  2114. console.log(allcount,d.LAY_NUM)
  2115. return allcount - (d.LAY_NUM - 1);
  2116. }
  2117. },
  2118. {field: 'title', title: '联系函名称',align: 'center',
  2119. templet: function (d) {
  2120. var html = "";
  2121. if(d.status == 5){
  2122. html = '<a class="side-a" lay-event="detail" style="color: grey;text-decoration:line-through" lay-event="detail">' + d.title + '</a>';
  2123. }else{
  2124. html = '<a class="side-a" lay-event="detail" lay-event="detail">' + d.title + '</a>';
  2125. }
  2126. return '<div style="text-align:left">' + html + '</div>'
  2127. }
  2128. },
  2129. {
  2130. field: 'status',
  2131. title: '审批状态',
  2132. align: 'center',
  2133. width: 150,
  2134. templet:function (d){
  2135. var abc = '';
  2136. if(d.status==0){
  2137. abc = "<span>未审核(新建)</span>";
  2138. }else if(d.status==1){
  2139. abc = "<span>已通过(新建)</span>";
  2140. }else if(d.status==2){
  2141. abc = "<span>已拒绝(新建)</span>";
  2142. }else if(d.status==3){
  2143. abc = "<span>未审核(删除)</span>";
  2144. }else if(d.status==4){
  2145. abc = "<span>已通过(删除)</span>";
  2146. }else if(d.status==5){
  2147. abc = "<span>已拒绝(删除)</span>";
  2148. } else if (d.status == 8) {
  2149. abc = "<span>回复</span>";
  2150. }
  2151. return abc;
  2152. }
  2153. },
  2154. {field: 'create_time', title: '创建时间', align: 'center', width: 150},
  2155. {field: 'admin_name', title: '创建人', align: 'center', width: 100},
  2156. {field: 'approver', title: '审批人', align: 'center', width: 100},
  2157. {field: 'right', fixed: 'right', title: '操作', width: 100, align: 'center',
  2158. templet: function (d) {
  2159. var html = '<div class="layui-btn-group">';
  2160. var btn1 = `<a class="layui-btn layui-btn-xs" href=${d.filepath} download=${d.name} lay-event="">下载</a>`;
  2161. var btn2 = '<span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</span>';
  2162. return html + btn1 + btn2 + '</div>';
  2163. }
  2164. }
  2165. ]]
  2166. });
  2167. //触发事件
  2168. table.on('toolbar(contact)', function (obj) {
  2169. var checkStatus = table.checkStatus(obj.config.id);
  2170. switch (obj.event) {
  2171. case 'add':
  2172. let callback = function (e) {
  2173. window.location.reload()
  2174. layer.msg(e.msg);
  2175. setTimeout(function (){
  2176. layer.close(index);
  2177. },2000)
  2178. }
  2179. parent.layui.tool.side('/admin/project.contact/add_proprietor?project_id=' + project_id,callback); // 项目id
  2180. break;
  2181. }
  2182. });
  2183. table.on('tool(contact)', function (obj) {
  2184. var data = obj.data; //获得当前行数据
  2185. console.log(data.status);
  2186. if (obj.event === 'detail') { //查看
  2187. let url = '/admin/project.contact/view_proprietor?id=' + data.id;// 项目id
  2188. parent.layui.tool.side(url);
  2189. }
  2190. if (obj.event === 'del') {
  2191. if(data.status==1){
  2192. layer.prompt({title: '请输入<span style="color: red">删除</span>原因', formType: 2,area: ['35vw', '15vw']}, function(text, index){
  2193. let callback = function (e) {
  2194. parent.layui.contactTable.reload()
  2195. layer.msg(e.msg);
  2196. setTimeout(function (){
  2197. layer.close(index);
  2198. },2000)
  2199. }
  2200. tool.post("/admin/project.contact/delete_proprietor", {id: data.id ,project_id:data.project_id,remark:text}, callback);// 项目id
  2201. });
  2202. }else {
  2203. layer.msg("不可操作");
  2204. }
  2205. }
  2206. })
  2207. }
  2208. </script>
  2209. </div>
  2210. <?php endif; ?>
  2211. <!-- 有问题-->
  2212. <div class="layui-tab-item" >
  2213. <style>
  2214. #imgdel {
  2215. font-size: 30px;
  2216. position: absolute;
  2217. top: -30px;
  2218. right: -12px;
  2219. display: none;
  2220. color: red;
  2221. }
  2222. .wrapper{
  2223. display: flex;
  2224. justify-content: space-between;
  2225. padding-top: 3px;
  2226. }
  2227. </style>
  2228. <div class="log_item_top" id="comments">
  2229. <div class="layui-tab-content">
  2230. <?php if(is_array($comment) || $comment instanceof \think\Collection || $comment instanceof \think\Paginator): $i = 0; $__LIST__ = $comment;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$vo): $mod = ($i % 2 );++$i;?>
  2231. <div class="log_top">
  2232. <span><?php echo htmlentities($vo['maker']); ?></span><span
  2233. class="<?php if($vo['unit_type']==2): ?>log_commentary<?php else: ?>log_company<?php endif; ?>"><?php echo htmlentities($vo['unit_name']); ?></span><span><?php echo htmlentities(date("y-m-d H:i",!is_numeric($vo['create_time'])? strtotime($vo['create_time']) : $vo['create_time'])); ?></span>
  2234. </div>
  2235. <div class="log_content">
  2236. <div style="word-wrap:break-word;padding: 5px 10px;">
  2237. <?php echo htmlentities($vo['content']); ?>
  2238. </div>
  2239. <?php if(!empty($vo['thumb'])): ?>
  2240. <div class="log_content_img">
  2241. <span class="content_img"><img src="<?php echo htmlentities($vo['thumb']); ?>" alt=""></span><span></span>
  2242. </div>
  2243. <?php endif; ?>
  2244. </div>
  2245. <?php endforeach; endif; else: echo "" ;endif; ?>
  2246. </div>
  2247. </div>
  2248. <hr class="ws-space-16">
  2249. <div class="log_item_bottom">
  2250. <div class="layui-form log_bottom_left">
  2251. <form class="layui-form" action="">
  2252. <div class="layui-form-item layui-form-text" style="float: left;width: 95%;">
  2253. <label class="layui-form-label">普通文本域</label>
  2254. <div class="layui-input-block" style="margin-left: 100px;">
  2255. <textarea id="text" name="content" placeholder="请输入内容" maxlength="3000"class="layui-textarea"></textarea>
  2256. </div>
  2257. <div class="wrapper">
  2258. <span></span><span class="total">0/3000字</span>
  2259. </div>
  2260. </div>
  2261. <div class="layui-form-item" style="float: left;width: 4.5%;">
  2262. <div class="layui-input-block">
  2263. <button type="submit" class="layui-btn" lay-submit lay-filter="webform" type="button"
  2264. style="width: 100%;height: 100% !important;background-color: #16baaa00 !important;margin-top: 30%;">
  2265. <img src="/static/home/images/allupload.png" height="100"
  2266. style="max-width: 40px;height: 40px;"/>
  2267. </button>
  2268. </div>
  2269. </div>
  2270. <div style="clear: both;"></div>
  2271. <div class="layui-form-item" id="imgItem">
  2272. <label class="layui-form-label">上传图片:</label>
  2273. <div class="layui-input-inlines-self">
  2274. <div class="layui-upload-drag-self">
  2275. <div id="uploadBtn" style="position:relative;">
  2276. <img src="/static/home/images/upload.png" height="100"
  2277. style="max-width: 100%; width: 100%;"/>
  2278. <input type="hidden" name="thumb" value="">
  2279. <i class="layui-icon layui-icon-clear" id="imgdel"></i>
  2280. </div>
  2281. </div>
  2282. </div>
  2283. </div>
  2284. </form>
  2285. </div>
  2286. </div>
  2287. <!--zjl,懂的都懂-->
  2288. <script>
  2289. function comment() {
  2290. var form = layui.form,tool=layui.tool,upload = layui.upload;
  2291. //头像上传
  2292. var uploadInst = upload.render({
  2293. elem: '#uploadBtn'
  2294. , url: '/admin/api/upload'
  2295. , done: function (e) {
  2296. //如果上传失败
  2297. if (e.code == 1) {
  2298. return layer.msg('上传失败');
  2299. }
  2300. //上传成功
  2301. $('#uploadBtn input').attr('value', e.data.filepath);
  2302. $('#uploadBtn img').attr('src', e.data.filepath);
  2303. $('#imgdel').show();
  2304. }
  2305. });
  2306. $('#imgdel').click(()=>{
  2307. $('#uploadBtn input').attr('value', '');
  2308. $('#uploadBtn img').attr('src', '/static/home/images/upload.png');
  2309. $('#imgdel').hide();
  2310. return false;
  2311. })
  2312. $('#uploadBtn').click(()=>{
  2313. console.log(1)
  2314. return false;
  2315. })
  2316. //监听提交
  2317. form.on('submit(webform)', function (data) {
  2318. let callback = function (e) {
  2319. layer.msg(e.msg);
  2320. $("#text").val("");
  2321. $('#uploadBtn input').attr('value', '');
  2322. $('#imgdel').hide();
  2323. $('#uploadBtn img').attr('src', '/static/home/images/upload.png');
  2324. $("#comments").load(location.href+" #comments>*","type=2")
  2325. }
  2326. if(data.field.content === '' && data.field.thumb === ''){
  2327. console.log(data.field)
  2328. layer.msg("请完善内容");
  2329. }else {
  2330. data.field["project_id"] = project_id;
  2331. tool.post("/admin/project.comment/add_proprietor", data.field, callback);
  2332. }
  2333. return false;
  2334. });
  2335. }
  2336. </script>
  2337. <script>
  2338. const tx = document.querySelector('#text')
  2339. const total = document.querySelector('.total')
  2340. tx.addEventListener('input', function () {
  2341. console.log(tx.value.length)
  2342. total.innerHTML = `${tx.value.length}/3000字`
  2343. })
  2344. </script>
  2345. </div>
  2346. <?php if($project_five['project_record'] == 1): ?>
  2347. <div class="layui-tab-item">
  2348. <style>
  2349. /* 自定义样式 */
  2350. /*.layui-table-testcss .layui-table-header,*/
  2351. /*.layui-form-testcss > div{margin-bottom: 6px;}*/
  2352. </style>
  2353. <div class="p-3 bg-white">
  2354. <table class="layui-hide" id="record" lay-filter="record"></table>
  2355. </div>
  2356. <script type="text/html" id="toolbarrecord">
  2357. <div class="layui-btn-container">
  2358. <button class="layui-btn layui-btn-sm" lay-event="add">+ 新建记录</button>
  2359. </div>
  2360. </script>
  2361. <script>
  2362. function record() {
  2363. let tool = layui.tool, table = layui.table;
  2364. //项目任务
  2365. var allcount;
  2366. parent.layui.recordTable = table.render({
  2367. elem: '#record',
  2368. title: '文档列表',
  2369. toolbar: '#toolbarrecord',
  2370. cellMinWidth: 80,
  2371. parseData: function (res) { // 数据解析回调函数
  2372. // 在这里可以获取数据总数
  2373. allcount = res.data.length;
  2374. return {
  2375. code: res.code, // 数据状态码
  2376. msg: res.msg, // 状态信息
  2377. count: res.count, // 数据总数
  2378. data: res.data // 当前页数据
  2379. };
  2380. },
  2381. className: 'layui-table-testcss', // 用于给表格主容器追加 css 类名
  2382. // lineStyle: 'height: 151px;', // 定义表格的多行样式
  2383. url: "/admin/project.record/cplist",
  2384. where: {'project_id': project_id},
  2385. page: true, //开启分页
  2386. limit: 20,
  2387. cols: [[
  2388. {field: 'id', title: '记录编号', width: 80, align: 'center',
  2389. templet: function (d) {
  2390. // console.log(allcount,d.LAY_NUM)
  2391. return allcount - (d.LAY_NUM - 1);
  2392. }
  2393. },
  2394. {field: 'title', title: '记录内容',
  2395. templet: function (d) {
  2396. var html = '<a class="side-a" lay-event="detail">' + d.content + '</a>';
  2397. return html;
  2398. }
  2399. },
  2400. {field: 'create_time', title: '创建时间', align: 'center', width: 150},
  2401. {field: 'admin_name', title: '创建人', align: 'center', width: 100},
  2402. {field: 'right', fixed: 'right', title: '操作', width: 100, align: 'center',
  2403. templet: function (d) {
  2404. var html = '<div class="layui-btn-group">';
  2405. var btn1 = '<span class="layui-btn layui-btn-xs" lay-event="edit">编辑</span>';
  2406. var btn2 = '<span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</span>';
  2407. return html + btn1 + btn2 + '</div>';
  2408. }
  2409. }
  2410. ]]
  2411. });
  2412. //触发事件
  2413. table.on('toolbar(record)', function (obj) {
  2414. var checkStatus = table.checkStatus(obj.config.id);
  2415. switch (obj.event) {
  2416. case 'add':
  2417. parent.layui.tool.side('/admin/project.record/add?project_id=' + project_id); // 项目id
  2418. break;
  2419. }
  2420. });
  2421. table.on('tool(record)', function (obj) {
  2422. var data = obj.data; //获得当前行数据
  2423. if (obj.event === 'detail') { //查看
  2424. let url = '/admin/project.record/view?id=' + data.id;// 项目id
  2425. parent.layui.tool.side(url);
  2426. }
  2427. if (obj.event === 'edit') {
  2428. parent.layui.tool.side('/admin/project.record/edit?id=' + data.id); // 项目id
  2429. return;
  2430. }
  2431. if (obj.event === 'del') {
  2432. layer.confirm('确定要删除吗?', {
  2433. icon: 3,
  2434. title: '提示'
  2435. }, function (index) {
  2436. let callback = function (e) {
  2437. layer.msg(e.msg);
  2438. if (e.code == 0) {
  2439. obj.del();
  2440. }
  2441. }
  2442. tool.delete("/admin/project.record/del", {id: data.id}, callback);// 项目id
  2443. layer.close(index);
  2444. });
  2445. }
  2446. })
  2447. }
  2448. </script>
  2449. </div>
  2450. <?php endif; ?>
  2451. <div class="layui-tab-item">
  2452. <div class="p-3 bg-white">
  2453. <table class="layui-hide" id="appointment" lay-filter="appointment"></table>
  2454. </div>
  2455. <script>
  2456. function appointment() {
  2457. let tool = layui.tool, table = layui.table;
  2458. //项目任务
  2459. var allcount;
  2460. parent.layui.appointmentTable = table.render({
  2461. elem: '#appointment',
  2462. title: '文档列表',
  2463. toolbar: '#toolbarappointment',
  2464. cellMinWidth: 80,
  2465. parseData: function (res) { // 数据解析回调函数
  2466. // 在这里可以获取数据总数
  2467. allcount = res.data.length;
  2468. return {
  2469. code: res.code, // 数据状态码
  2470. msg: res.msg, // 状态信息
  2471. count: res.count, // 数据总数
  2472. data: res.data // 当前页数据
  2473. };
  2474. },
  2475. url: "/admin/project.appointment/datalist_proprietor",
  2476. where: {'project_id': project_id},
  2477. page: false, //开启分页
  2478. limit: 20,
  2479. cols: [[
  2480. {field: 'id', title: '记录编号', width: 80, align: 'center',
  2481. templet: function (d) {
  2482. //console.log(allcount,d.LAY_NUM)
  2483. return allcount - (d.LAY_NUM - 1);
  2484. }
  2485. },
  2486. {field: 'appointment_time', title: '预约时间',align: 'center', width: 200},
  2487. {field: 'dispatch_num', title: '派遣人数', align: 'center', width: 100},
  2488. {field: 'address_or_remark', title: '地址/备注', align: 'center'},
  2489. {field: 'sponsor_name', title: '发起人', align: 'center', width: 100},
  2490. {field: 'approval_name', title: '审批人', align: 'center', width: 100},
  2491. {field: 'audit_status', title: '状态', align: 'center', width: 100,templet:function(d){
  2492. if(d.audit_status==0){
  2493. return "待审核"
  2494. }else if(d.audit_status==1){
  2495. return "已通过"
  2496. }else if(d.audit_status==2){
  2497. return "已拒绝"
  2498. }
  2499. }},
  2500. {field: 'audit_remark', title: '回执', align: 'center', width: 150},
  2501. ]]
  2502. });
  2503. //触发事件
  2504. table.on('toolbar(appointment)', function (obj) {
  2505. var checkStatus = table.checkStatus(obj.config.id);
  2506. switch (obj.event) {
  2507. case 'add':
  2508. parent.layui.tool.side('/admin/project.appointment/add_proprietor?project_id=' + project_id); // 项目id
  2509. break;
  2510. }
  2511. });
  2512. table.on('tool(appointment)', function (obj) {
  2513. var data = obj.data; //获得当前行数据
  2514. //console.log(data);
  2515. if (obj.event === 'agree') {
  2516. layer.prompt({
  2517. title: '请输入<span style="color: green">回执</span>',
  2518. formType: 2,
  2519. area: ['35vw', '15vw']
  2520. }, function (text, index) {
  2521. let callback = function (e) {
  2522. parent.layui.appointmentTable.reload()
  2523. layer.msg(e.msg);
  2524. setTimeout(function () {
  2525. layer.close(index);
  2526. }, 2000)
  2527. }
  2528. if (text !== "") {
  2529. tool.post("/admin/project.appointment/agree_proprietor", {id: data.id,audit_remark:text,project_id:data.project_id}, callback);// 项目id
  2530. } else {
  2531. layer.msg("回执不能为空")
  2532. }
  2533. })
  2534. return;
  2535. }
  2536. if (obj.event === 'disagree') {
  2537. layer.prompt({
  2538. title: '请输入<span style="color: red">回执</span>',
  2539. formType: 2,
  2540. area: ['35vw', '15vw']
  2541. }, function (text, index) {
  2542. let callback = function (e) {
  2543. parent.layui.appointmentTable.reload()
  2544. layer.msg(e.msg);
  2545. setTimeout(function () {
  2546. layer.close(index);
  2547. }, 2000)
  2548. }
  2549. if (text !== "") {
  2550. tool.post("/admin/project.appointment/disagree_proprietor", {id: data.id,audit_remark:text,project_id:data.project_id}, callback);// 项目id
  2551. } else {
  2552. layer.msg("回执不能为空")
  2553. }
  2554. })
  2555. return;
  2556. }
  2557. })
  2558. }
  2559. </script>
  2560. </div>
  2561. <?php if($project_five['project_log'] == 1): ?>
  2562. <div class="layui-tab-item">
  2563. <div class="layui-form p-4" style="height: 80vh;overflow: auto">
  2564. <?php if(is_array($project_log) || $project_log instanceof \think\Collection || $project_log instanceof \think\Paginator): $i = 0; $__LIST__ = $project_log;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$vo): $mod = ($i % 2 );++$i;?>
  2565. <div class="layui-timeline" style="padding-left: 0;">
  2566. <div class="layui-timeline-item">
  2567. <i class="layui-icon layui-timeline-axis"></i>
  2568. <div class="layui-timeline-content layui-text">
  2569. <h3 class="layui-timeline-title" style="font-size: 16px;"><?php echo htmlentities(date("Y-m-d H:i:s",!is_numeric($vo['create_time'])? strtotime($vo['create_time']) : $vo['create_time'])); ?></h3>
  2570. <p>
  2571. <span><?php echo htmlentities($vo['nickname']); ?></span><span>&nbsp;<b><?php echo htmlentities($vo['action']); ?></b>&nbsp;</span> <span style="color: #187FDD;"> 《<?php echo htmlentities($vo['content']); ?>》</span>
  2572. </p>
  2573. </div>
  2574. </div>
  2575. <?php endforeach; endif; else: echo "" ;endif; ?>
  2576. </div>
  2577. </div>
  2578. </div>
  2579. <?php endif; ?>
  2580. </div>
  2581. </div>
  2582. <!-- /主体 -->
  2583. <!-- 底部 -->
  2584. <div class="footer">
  2585. 逸管工程项目管理系统 © www.yiguanfep.com
  2586. <img src="/static/home/images/police.png" alt="" style="width:14.5px;height:16px;">
  2587. <a href="https://beian.mps.gov.cn/#/query/websearch?code=45030202000160 " rel="\&quot;noreferrer'target=\”blank\&quot;" onclick="window.open(this.href); return false;">桂公网安备45030202000160号</a>
  2588. <a href="https://beian.miit.gov.cn/#/Integrated/index" onclick="window.open(this.href); return false;">桂ICP备17000971号</a>
  2589. </div>
  2590. <!-- /底部 -->
  2591. <!-- 脚本 -->
  2592. <script>
  2593. // console.log()
  2594. const moduleInit = ['tool','oaTool','employeepicker'];
  2595. var project_id = '<?php echo htmlentities($project_id); ?>'
  2596. function gouguInit() {
  2597. var form = layui.form,tool=layui.tool,upload = layui.upload;
  2598. var element = layui.element;
  2599. first()
  2600. eliminate(1)
  2601. element.on('tab(test-hash)', function (data) {
  2602. let index = $(this).attr('data-id');
  2603. console.log(index)
  2604. if (index == 1) {
  2605. eliminate(2)
  2606. comment()
  2607. } else if (index == 2) {
  2608. eliminate(3)
  2609. record(index);
  2610. } else if (index == 3) {
  2611. eliminate(4)
  2612. report(index);
  2613. } else if (index == 4) {
  2614. eliminate(5)
  2615. project_user(index)
  2616. } else if (index == 5) {
  2617. } else if (index == 6) {
  2618. }else if (index == 7) {
  2619. eliminate(6)
  2620. contact(index)
  2621. } else if (index == 8) {
  2622. appointment();
  2623. }
  2624. });
  2625. //清除小红点
  2626. function eliminate(type){
  2627. let call=function (e){
  2628. //写清除红点的js
  2629. }
  2630. tool.post("/admin/project.api/eliminate", {type: type},call)
  2631. }
  2632. //看报告
  2633. $('[lay-data="readreport"]').click(function (){
  2634. var id = $(this).attr('data-id');
  2635. parent.layui.tool.side('/admin/project.report/proprietor_view/id/' + id); // 项目id
  2636. })
  2637. let a = 1;
  2638. //监听提交
  2639. form.on('submit(webform)', function (data) {
  2640. if(a){
  2641. let callback = function (e) {
  2642. a = 1
  2643. layer.msg(e.msg);
  2644. if (e.code == 0) {
  2645. tool.sideClose(1000);
  2646. }
  2647. }
  2648. var engineering_type1 ='';
  2649. if(data.field.engineering_type1==1){
  2650. engineering_type1 ='预算';
  2651. }else if(data.field.engineering_type1==2){
  2652. engineering_type1 ='结算';
  2653. }else if(data.field.engineering_type1==3){
  2654. engineering_type1 ='概算';
  2655. }else if(data.field.engineering_type1==4){
  2656. engineering_type1 ='决算';
  2657. }else if(data.field.engineering_type1==5){
  2658. engineering_type1 ='工程总承包(EPC)';
  2659. }
  2660. var engineering_type2 = '';
  2661. if(data.field.engineering_type2==1){
  2662. engineering_type2 ='审核';
  2663. }else if(data.field.engineering_type2==2) {
  2664. engineering_type2 = '编制';
  2665. }
  2666. if(engineering_type1!==""&&engineering_type2!==""){
  2667. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  2668. }
  2669. tool.post("/admin/project.cost_proprietor/edit", data.field, callback);
  2670. }
  2671. a = 0
  2672. return false;
  2673. });
  2674. form.on('submit(save)', function (data) {
  2675. if(a){
  2676. let callback = function (e) {
  2677. a = 1
  2678. layer.msg(e.msg);
  2679. if (e.code == 0) {
  2680. tool.sideClose(1000);
  2681. }
  2682. }
  2683. var engineering_type1 ='';
  2684. if(data.field.engineering_type1==1){
  2685. engineering_type1 ='预算';
  2686. }else if(data.field.engineering_type1==2){
  2687. engineering_type1 ='结算';
  2688. }else if(data.field.engineering_type1==3){
  2689. engineering_type1 ='概算';
  2690. }else if(data.field.engineering_type1==4){
  2691. engineering_type1 ='决算';
  2692. }else if(data.field.engineering_type1==5){
  2693. engineering_type1 ='工程总承包(EPC)';
  2694. }
  2695. var engineering_type2 = '';
  2696. if(data.field.engineering_type2==1){
  2697. engineering_type2 ='审核';
  2698. }else if(data.field.engineering_type2==2) {
  2699. engineering_type2 = '编制';
  2700. }
  2701. if(engineering_type1!==""&&engineering_type2!==""){
  2702. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  2703. }
  2704. tool.post("/admin/project.cost_proprietor/save", data.field, callback);
  2705. }
  2706. a = 0
  2707. return false;
  2708. });
  2709. form.on('submit(withdraw)', function (data) {
  2710. if(a){
  2711. let callback = function (e) {
  2712. a = 1
  2713. layer.msg(e.msg);
  2714. if (e.code == 0) {
  2715. tool.sideClose(1000);
  2716. }
  2717. }
  2718. var engineering_type1 ='';
  2719. if(data.field.engineering_type1==1){
  2720. engineering_type1 ='预算';
  2721. }else if(data.field.engineering_type1==2){
  2722. engineering_type1 ='结算';
  2723. }else if(data.field.engineering_type1==3){
  2724. engineering_type1 ='概算';
  2725. }else if(data.field.engineering_type1==4){
  2726. engineering_type1 ='决算';
  2727. }else if(data.field.engineering_type1==5){
  2728. engineering_type1 ='工程总承包(EPC)';
  2729. }
  2730. var engineering_type2 = '';
  2731. if(data.field.engineering_type2==1){
  2732. engineering_type2 ='审核';
  2733. }else if(data.field.engineering_type2==2) {
  2734. engineering_type2 = '编制';
  2735. }
  2736. if(engineering_type1!==""&&engineering_type2!==""){
  2737. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  2738. }
  2739. tool.post("/admin/project.cost_proprietor/withdraw", data.field, callback);
  2740. }
  2741. a = 0
  2742. return false;
  2743. });
  2744. form.on('submit(savetime)', function (data) {
  2745. if(a){
  2746. let callback = function (e) {
  2747. a = 1
  2748. layer.msg(e.msg);
  2749. if (e.code == 0) {
  2750. tool.sideClose(1000);
  2751. }
  2752. }
  2753. var engineering_type1 ='';
  2754. if(data.field.engineering_type1==1){
  2755. engineering_type1 ='预算';
  2756. }else if(data.field.engineering_type1==2){
  2757. engineering_type1 ='结算';
  2758. }else if(data.field.engineering_type1==3){
  2759. engineering_type1 ='概算';
  2760. }else if(data.field.engineering_type1==4){
  2761. engineering_type1 ='决算';
  2762. }else if(data.field.engineering_type1==5){
  2763. engineering_type1 ='工程总承包(EPC)';
  2764. }
  2765. var engineering_type2 = '';
  2766. if(data.field.engineering_type2==1){
  2767. engineering_type2 ='审核';
  2768. }else if(data.field.engineering_type2==2) {
  2769. engineering_type2 = '编制';
  2770. }
  2771. if(engineering_type1!==""&&engineering_type2!==""){
  2772. data.field.engineering_type = engineering_type1 + "-" + engineering_type2;
  2773. }
  2774. tool.post("/admin/project.cost_proprietor/edit", data.field, callback);
  2775. }
  2776. a = 0
  2777. return false;
  2778. });
  2779. }
  2780. </script>
  2781. <!-- /脚本 -->
  2782. <!-- <script src="/static/assets/layui/layui.js"></script> -->
  2783. <script src="/static/assets/layui/layui.js"></script>
  2784. <script src="/static/assets/third_party/echart/echarts.min.js"></script>
  2785. <script src="/static/assets/gougu/gouguInit.js"></script>
  2786. <script src="https://unpkg.com/pinyin-pro"></script>
  2787. <script>
  2788. var { pinyin } = pinyinPro;
  2789. </script>
  2790. <!-- 统计代码 -->
  2791. <!-- /统计代码 -->
  2792. </body>
  2793. </html>