salesContract.vue 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. <!--销售合同-->
  2. <!--2019年5月30日 20:25:16 by jlx-->
  3. <template>
  4. <div>
  5. <BaseHeaderLayout :leftSpan="16">
  6. <template slot="left">
  7. <ws-date-picker class="times"
  8. :picker-options="pickerBeginDateBefore"
  9. v-model="deptBudgetList.birthday"
  10. type="date"
  11. default-value="1980-01-01"
  12. placeholder="起始日期"
  13. format="yyyy-MM-dd"
  14. value-format="yyyy-MM-dd"
  15. />
  16. <span>至</span>
  17. <ws-date-picker class="times"
  18. :picker-options="pickerBeginDateBefore"
  19. v-model="deptBudgetList.birthday"
  20. type="date"
  21. default-value="1980-01-01"
  22. placeholder="截止日期"
  23. format="yyyy-MM-dd"
  24. value-format="yyyy-MM-dd"
  25. />
  26. <ws-input
  27. v-model="deptBudgetList.interviewOpinion"
  28. placeholder="可按照合同编号、买方名称、卖方名称进行查找"
  29. clearable
  30. maxlength="500"
  31. type="input"
  32. class="findValue"
  33. ></ws-input>
  34. <!-- v-hasPermission="'procurement.sparepart.directShip'" -->
  35. <ws-button
  36. type="primary"
  37. :disable="checkBtn"
  38. @click="enquiry(3)"
  39. v-hasPermission="
  40. `${$permission('PERMISSIONS.PURSPAPPLINFO_CREATEINSTORE')}`
  41. "
  42. >查找</ws-button
  43. >
  44. <ws-select
  45. v-model="deptBudgetList.crtDutyId"
  46. placeholder=""
  47. class="typeselect"
  48. @change="selectCrtDuty"
  49. >
  50. <ws-option class="topcenter"
  51. v-for="item in taskTypeList"
  52. :key="item.value"
  53. :label="item.value"
  54. :value="item.value"
  55. />
  56. </ws-select>
  57. </template>
  58. <template slot="right" >
  59. <ws-button
  60. type="primary"
  61. :disable="checkBtn"
  62. @click="handleAdd()"
  63. v-hasPermission="
  64. `${$permission('PERMISSIONS.PURSPAPPLINFO_CREATEINSTORE')}`
  65. "
  66. >添加</ws-button
  67. >
  68. <ws-button
  69. :disable="checkBtn"
  70. @click="enquiry(3)"
  71. v-hasPermission="
  72. `${$permission('PERMISSIONS.PURSPAPPLINFO_CREATEINSTORE')}`
  73. "
  74. >导出</ws-button
  75. >
  76. </template>
  77. </BaseHeaderLayout>
  78. <el-table :data="tableData" style="width: 100%; margin-top: 10px">
  79. <el-table-column type="index" />
  80. <el-table-column prop="date" label="合同编号" width="80">
  81. </el-table-column>
  82. <el-table-column prop="name" label="货名" width="80"> </el-table-column>
  83. <el-table-column prop="address" label="品级"> </el-table-column>
  84. <el-table-column prop="address" label="重量(吨)"> </el-table-column>
  85. <el-table-column prop="address" label="合同单价(元)"> </el-table-column>
  86. <el-table-column prop="address" label="包装方式"> </el-table-column>
  87. <el-table-column prop="address" label="买方"> </el-table-column>
  88. <el-table-column prop="address" label="卖方"> </el-table-column>
  89. <el-table-column prop="address" label="已完成(吨)"> </el-table-column>
  90. <el-table-column prop="address" label="状态"> </el-table-column>
  91. <el-table-column prop="address" label="签订日期"> </el-table-column>
  92. <el-table-column prop="address" label="未回款(元)"> </el-table-column>
  93. <el-table-column prop="address" label="附件"> </el-table-column>
  94. <el-table-column prop="address" label="操作" width="300">
  95. <template slot-scope="scope">
  96. <el-button
  97. type="success"
  98. size="small"
  99. @click="handleExamine(scope.row)"
  100. >查看</el-button
  101. >
  102. <el-button type="primary" size="small" @click="handleEdit(scope.row)"
  103. >编辑</el-button
  104. >
  105. <el-button type="danger" size="small" @click="handleDelete(scope.row)"
  106. >删除</el-button
  107. >
  108. </template>
  109. </el-table-column>
  110. </el-table>
  111. <!-- 弹出页面-审核通过 -->
  112. <BaseContentModalScrap
  113. v-model="dialogApproveFormVisible"
  114. :title="$t('common.opinion')"
  115. :isRules="false"
  116. @confirm="approve"
  117. />
  118. </div>
  119. </template>
  120. <script>
  121. import {
  122. getList
  123. } from '@/model/procurement/spare'
  124. export default {
  125. name: 'viewSpareMoney',
  126. watch: {
  127. vesselId(val) {
  128. this.getVesselData()
  129. },
  130. isShow(val) {
  131. this.showType = val
  132. },
  133. },
  134. data() {
  135. return {
  136. //弹出框
  137. dialogViewSpareMoney: false,
  138. dialogApproveFormVisible: false,
  139. // 船舶类型
  140. monetaryKey: null,
  141. // 表格显示数据
  142. tableDate: [],
  143. // 是否显示
  144. showType: true,
  145. // 年
  146. year: '',
  147. // 提交类型
  148. submitType: true,
  149. contractForm: {},
  150. categoryIndex: 0,
  151. rulesVendor: {},
  152. pickerBeginDateBefore:{},
  153. tableData: [{ date: 1111, name: 'qqqq', address: 'errrtt' }],
  154. taskTypeList: [
  155. { value: '未完成(默认)' },
  156. { value: '已完成' },
  157. { value: '待回款' },
  158. { value: '全部合同' },
  159. ],
  160. deptBudgetList: {
  161. compId: sessionStorage.getItem('ws-pf_compId'),
  162. seafarerName: '',
  163. crtDutyId: '',
  164. crtDutyName: '',
  165. seafarerSexKey: '',
  166. mobilePhone: '',
  167. birthday: '',
  168. dutyId: '',
  169. dutyName: '',
  170. intendedShipId: '',
  171. intendedShipName: '',
  172. interviewPersons: '',
  173. interviewDates: '',
  174. interviewType: '',
  175. interviewResult: '1',
  176. interviewOpinion: '',
  177. aliasName: '',
  178. },
  179. }
  180. },
  181. created() {
  182. //cg.viewBudget
  183. //cg.viewSpareMoney
  184. // this.getVesselData();
  185. this.getList()
  186. this.showType = this.isShow
  187. },
  188. methods: {
  189. getList(){
  190. getList({
  191. }).toPromise().then(response => {
  192. this.contractList = response
  193. })
  194. },
  195. selectCrtDuty(){},
  196. // 关闭 dialog时 处理文件url 初始化upload组件
  197. handleClose() {
  198. this.dialogViewSpareMoney = false
  199. },
  200. handleExamine(row) {
  201. this.$router.push({ path: 'salesContractExamine' })
  202. },
  203. handleAdd() {
  204. this.$router.push({ path: 'salesContractAdd' })
  205. },
  206. filtlistQuery() {},
  207. searchDialog() {},
  208. vesselIdSelected() {},
  209. seelctShips() {},
  210. checkBtn() {},
  211. handleEdit(row) {
  212. this.$router.push({ path: 'salesContractEdit' })
  213. },
  214. approve() {},
  215. listQuery() {},
  216. total() {},
  217. clearfiltQuery() {},
  218. },
  219. }
  220. </script>
  221. <style lang="scss" scoped>
  222. .padding-xs {
  223. padding: 15px;
  224. text-align: right;
  225. }
  226. .clearfix:after {
  227. content: '';
  228. display: block;
  229. clear: both;
  230. }
  231. .taskType {
  232. width: 100%;
  233. background-color: #fff;
  234. margin-top: 2px;
  235. margin-bottom: 10px;
  236. list-style: none;
  237. // padding-bottom: 20px;
  238. li {
  239. float: left;
  240. border: 1px solid #6ea0f3;
  241. border-radius: 5px;
  242. max-width: 190px;
  243. padding: 0 5px;
  244. text-align: center;
  245. margin: 10px 20px;
  246. cursor: pointer;
  247. font-size: 14px;
  248. p {
  249. margin: 8px 0px;
  250. span {
  251. color: #e74c3c;
  252. }
  253. }
  254. }
  255. li:hover {
  256. background-color: #e4eeff;
  257. color: #1d6ced;
  258. }
  259. }
  260. .el-date-editor--date {
  261. margin: 0 10px;
  262. }
  263. .findValue {
  264. margin: 0 10px;
  265. }
  266. .button-container {
  267. display: flex;
  268. flex-wrap: nowrap;
  269. justify-content: space-between;
  270. align-items: center;
  271. background-color: #fff;
  272. width: 100%;
  273. height: 50px;
  274. padding: 0 10px;
  275. & > div {
  276. margin-left: 10px;
  277. display: flex;
  278. flex-wrap: nowrap;
  279. flex-direction: row;
  280. & > span {
  281. line-height: 50px;
  282. }
  283. }
  284. /deep/.auditFlow-box {
  285. position: unset;
  286. margin-left: 10px;
  287. &/deep/.auditFlow-icon {
  288. width: auto;
  289. padding-right: 30px;
  290. }
  291. &/deep/.auditFlow-main {
  292. position: absolute;
  293. }
  294. }
  295. }
  296. .box-app {
  297. display: inline-block;
  298. margin-left: 30px;
  299. line-height: 50px;
  300. }
  301. /deep/.el-dialog {
  302. .el-form-item {
  303. margin-bottom: 0 !important;
  304. .el-input--medium {
  305. textarea {
  306. min-height: 100px !important;
  307. }
  308. }
  309. }
  310. }
  311. .collapse-bottom {
  312. margin-bottom: 20px;
  313. }
  314. .input-main .textarea .el-textarea__inner {
  315. width: 100%;
  316. z-index: 1;
  317. }
  318. /*.crt-main .textarea /deep/ .el-form-item__label {*/
  319. /* height: 82px;*/
  320. /*}*/
  321. // 控制select为只读的时候显示样式
  322. .hide-sel {
  323. .el-input__inner {
  324. border: 0px;
  325. }
  326. .el-icon-arrow-up {
  327. display: none;
  328. }
  329. .el-textarea__inner {
  330. background-color: #fff !important;
  331. border: 0;
  332. }
  333. .el-date-editor {
  334. i {
  335. display: none;
  336. }
  337. }
  338. .is-disabled {
  339. .el-input__inner:hover {
  340. background-color: #fff !important;
  341. border: 0;
  342. }
  343. color: #606266;
  344. .el-input__inner {
  345. background-color: #fff !important;
  346. border: 0;
  347. color: #606266;
  348. }
  349. .el-textarea__inner {
  350. background-color: #fff !important;
  351. border: 0;
  352. color: #606266;
  353. }
  354. }
  355. }
  356. // 控制select为只读的时候显示样式
  357. /deep/.ws-class-table-col {
  358. height: auto;
  359. padding: 0px 2px;
  360. /deep/.el-input__inner {
  361. padding: 0px 2px;
  362. }
  363. }
  364. /deep/.is-disabled {
  365. .el-input__prefix,
  366. .el-input__suffix {
  367. display: none;
  368. }
  369. .el-input__inner {
  370. background-color: #fff;
  371. border-color: #fff !important;
  372. color: #000 !important;
  373. font-size: 14px;
  374. cursor: text;
  375. padding: 0 !important;
  376. }
  377. }
  378. </style>